XdkWrl: TransformatorHierarchy Class Reference

Home | Hierarchy | Members | Alphabetical | Related Pages

# TransformatorHierarchy Class Reference
[Tools]

`#include <transformator.h>`

List of all members.

## Public Member Functions
| TransformatorHierarchy ()
void | push (const Transformator &t)
void | pop ()
void | transform (const float *src, float *dst) const
void | transformByInverseTranspose (const float *src, float *dst) const
## Friends
bool | operator== (const TransformatorHierarchy &th0, const TransformatorHierarchy &th1)
bool | operator!= (const TransformatorHierarchy &th0, const TransformatorHierarchy &th1)
bool | operator< (const TransformatorHierarchy &th0, const TransformatorHierarchy &th1)
std::ostream & | operator<< (std::ostream &s, const wrl::TransformatorHierarchy &t)

## Detailed Description

A class to represent a hierarchy of tranform. It is designed for efficiency, that is when using transform(), the full hierarchy is not re-evaluated . Instead the resulting transformation is maintained by push() and pop(), using a stack to guarantee exactness when pushing/popping.

## Constructor & Destructor Documentation

TransformatorHierarchy | ( |  | ) |

Create an empty hierarchy equivalent to identity transform.

## Member Function Documentation

void push | ( | const Transformator & | t | ) | `[inline]`

void pop | ( |  | ) |

void transform | ( | const float * | src,
|  | float * | dst |
| ) |  |  | const`[inline]`

Apply the sequence of Transformator pushed in the hierarchy by applying it in reverse order, that is last pushed first. The src and dst vectors can be the same (temporary values are used).

void transformByInverseTranspose | ( | const float * | src,
|  | float * | dst |
| ) |  |  | const`[inline]`

Apply the sequence of Transformator pushed in the hierarchy by applying it in reverse order, that is last pushed first. Inverse transpose are used. This function should be used when transforming normals.

## Friends And Related Function Documentation

bool operator== | ( | const TransformatorHierarchy & | th0,
|  | const TransformatorHierarchy & | th1 |
| ) |  |  | `[friend]`

Return true iff the resulting transformations of the 2 hierarchies are the same.

bool operator!= | ( | const TransformatorHierarchy & | th0,
|  | const TransformatorHierarchy & | th1 |
| ) |  |  | `[friend]`

Return true iff the resulting transformations of the 2 hierarchies are different.

bool operator< | ( | const TransformatorHierarchy & | th0,
|  | const TransformatorHierarchy & | th1 |
| ) |  |  | `[friend]`

Provide strict ordering.

std::ostream& operator<< | ( | std::ostream & | s,
|  | const wrl::TransformatorHierarchy & | t |
| ) |  |  | `[friend]`

Generated on 5 Jan 2007 with version 1.5.1. |