HyperspaceExplorer 0.7.1
|
Class template to apply a geometrical transformation on a set of vertices. More...
#include <MultithreadedTransformation.h>
Classes | |
struct | MapFunctor |
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 &x) const |
Execute the transform on a set of vertices. | |
Private Member Functions | |
MultithreadedTransformation (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. | |
void | perform_transformation (const VecMath::Vector< N, NUM > &x, const VecMath::Vector< N, NUM > &xtrans) |
Private Attributes | |
struct MultithreadedTransformation::MapFunctor | functor_ |
Friends | |
class | TransformationFactory |
class | MultithreadedTransformation< 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 with a multithreaded algorithm, in parallel.
Instantiates SinglethreadedTransformation s on the VertexArray s constituting its operand and executes them in parallel.
N | Dimension of the vertices. |
P | Dimension of the parameter space. |
NUM | The numeric type of the Vector s. |
MultithreadedTransformation< N, P, NUM >::MultithreadedTransformation | ( | const VecMath::Rotation< N, NUM > & | rotation, |
const VecMath::Vector< N, NUM > & | translation, | ||
const VecMath::Vector< N, NUM > & | scale | ||
) | [inline, private] |
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 MultithreadedTransformation< N, P, NUM >::transform | ( | const value_storage_type & | x | ) | const [inline, 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 >.