HyperspaceExplorer 0.7.1
|
Class template to apply a geometrical transformation on a set of vertices. More...
#include <SinglethreadedTransformation.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 | |
SinglethreadedTransformation (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. | |
virtual value_storage_type | transform (const value_storage_type &operand) const |
Execute the transform on a set of vertices. | |
Private Member Functions | |
void | perform_transformation (const VecMath::Vector< N, NUM > &x, const VecMath::Vector< N, NUM > &xtrans) |
Friends | |
class | TransformationFactory |
class | SinglethreadedTransformation< N, P+1, NUM > |
Class template to apply a geometrical transformation on a set of vertices.
This is an implementation that applies a transformation on every element of a MultiDimensionalVector one element after the next, sequentially, in a single threaded way. The TransformationFactory uses it as the default method to do transformations.
Recursively instantiates and performs transformations on VertexArray s of lower dimension.
N | Dimension of the vertices. |
P | Dimension of the parameter space. |
NUM | The numeric type of the Vector s. |
SinglethreadedTransformation< N, P, NUM >::SinglethreadedTransformation | ( | 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.
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. |
SinglethreadedTransformation< N, P, NUM >::value_storage_type SinglethreadedTransformation< N, P, NUM >::transform | ( | const value_storage_type & | operand | ) | const [virtual] |
Execute the transform on a set of vertices.
operand | A (multi-dimensional) array of vertices on which the transformation is performed |
Implements Transformation< N, P, NUM >.
References VecMath::MultiDimensionalVector< T, D >::size().