HyperspaceExplorer 0.7.1
|
Interface for applying a geometrical transformation on a set of vertices. More...
#include <Transformation.h>
Public Types | |
typedef FunctionValueGrid< N, P, NUM >::value_storage_type | value_storage_type |
Type for the storage of the function values on all grid points. | |
Public Member Functions | |
virtual value_storage_type | transform (const value_storage_type &operand) const =0 |
Execute the transform on a set of vertices. | |
Static Public Member Functions | |
static VecMath::Vector< N, NUM > | perform (const VecMath::Vector< N, NUM > &x, const VecMath::Matrix< N, NUM > &rot, const VecMath::Vector< N, NUM > &trans, const VecMath::Vector< N, NUM > &scale) |
Protected Member Functions | |
Transformation (const VecMath::Rotation< N, NUM > &rotation, const VecMath::Vector< N, NUM > &translation, const VecMath::Vector< N, NUM > &scale) | |
Initialize a Transformation with a Rotation, a translation Vector and a scaling Vector. |
Interface for applying a geometrical transformation on a set of vertices.
This class defines the interface to which all implementations conform. The interface basically consists of the constructor, which should only be used by the TransformationFactory class, and the transform() method.
N | Dimension of the vertices. |
P | Dimension of the parameter space. |
NUM | The numeric type of the Vector s. |
Transformation< N, P, NUM >::Transformation | ( | const VecMath::Rotation< N, NUM > & | rotation, |
const VecMath::Vector< N, NUM > & | translation, | ||
const VecMath::Vector< N, NUM > & | scale | ||
) | [protected] |
Initialize a Transformation with a Rotation, a translation Vector and a scaling Vector.
rotation | The amount the target is rotated. |
translation | The translation Vector to add to all vertices. |
scale | Scale the target, with independent values for each direction. |
virtual value_storage_type Transformation< N, P, NUM >::transform | ( | const value_storage_type & | operand | ) | const [pure virtual] |
Execute the transform on a set of vertices.
operand | A (multi-dimensional) array of vertices on which the transformation is performed |
Implemented in MultithreadedTransformation< N, P, NUM >, MultithreadedTransformation< N, 1, NUM >, SinglethreadedTransformation< N, P, NUM >, and SinglethreadedTransformation< N, 1, NUM >.