HyperspaceExplorer 0.7.1
|
This class creates a Transformation. Always use it instead of the Transformation constructor. More...
#include <TransformationFactory.h>
Public Types | |
enum | Method { Singlethreaded, Multithreaded } |
The methods in which a Transformation can be performed. | |
Static Public Member Functions | |
static void | setTransformationMethod (const Method &method) |
Globally set how a Transformation is performed. | |
static Method | getTransformationMethod () |
How a Transformation is performed. | |
template<unsigned N, unsigned P, typename NUM = double> | |
static const Transformation< N, P, NUM > * | create (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. | |
template<unsigned N, unsigned P, typename NUM = double> | |
static const Transformation< N, P, NUM > * | create () |
Initialize an identity Transformation. | |
Static Private Attributes | |
static Method | method_ = TransformationFactory::Singlethreaded |
This class creates a Transformation. Always use it instead of the Transformation constructor.
The method used for performing a Transformation is assigned with setTransformationMethod() and a Transformation is created (according to the globally selected Method) with create().
const Transformation< N, P, NUM > * TransformationFactory::create | ( | const VecMath::Rotation< N, NUM > & | rotation, |
const VecMath::Vector< N, NUM > & | translation, | ||
const VecMath::Vector< N, NUM > & | scale | ||
) | [static] |
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. |
References getTransformationMethod().