![]() |
OpenWalnut
1.5.0dev
|
This class is an OSG Callback which allows simple linear translation of a matrix transform node along a specified axis. More...
#include <WGELinearTranslationCallback.h>
Inheritance diagram for WGELinearTranslationCallback< T >:
Collaboration diagram for WGELinearTranslationCallback< T >:Public Member Functions | |
| WGELinearTranslationCallback (osg::Vec3 axe, T property, osg::ref_ptr< osg::TexMat > texMatrix, double scaler=1.0) | |
| Constructor. More... | |
| WGELinearTranslationCallback (osg::Vec3 axe, T property, osg::ref_ptr< osg::Uniform > uniform, double scaler=1.0) | |
| Constructor. More... | |
| WGELinearTranslationCallback (osg::Vec3 axe, T property, double scaler=1.0) | |
| Constructor. More... | |
| virtual | ~WGELinearTranslationCallback () |
| Destructor. More... | |
| virtual void | operator() (osg::Node *node, osg::NodeVisitor *nv) |
| This operator gets called by OSG every update cycle. More... | |
Protected Attributes | |
| osg::Vec3 | m_axe |
| The axis to transform along. More... | |
| T | m_pos |
| The position. More... | |
| double | m_oldPos |
| Cache the old position for proper update. More... | |
| osg::ref_ptr< osg::TexMat > | m_texMat |
| Texture matrix that contains normalized translation. More... | |
| osg::ref_ptr< osg::Uniform > | m_uniform |
| The uniform to set the matrix to. More... | |
| double | m_scaler |
| Scale the property prior to creating the matrix. More... | |
This class is an OSG Callback which allows simple linear translation of a matrix transform node along a specified axis.
It is controlled by a WPropDouble. This way, one can simply implement movable slices and similar.
| T | the type used as control mechanism. Typically, this should be an property whose type is cast-able to double. The type specified must support access via T->get(). Specialize the class if you do not specify a pointer. |
Definition at line 46 of file WGELinearTranslationCallback.h.
| WGELinearTranslationCallback< T >::WGELinearTranslationCallback | ( | osg::Vec3 | axe, |
| T | property, | ||
| osg::ref_ptr< osg::TexMat > | texMatrix, | ||
| double | scaler = 1.0 |
||
| ) |
Constructor.
Creates the callback. You still need to add it to the desired node.
| axe | the axe to translate along. Should be normalized. If not, it scales the translation. |
| property | the property containing the value |
| texMatrix | optional pointer to a texture matrix which can be modified too to contain the normalized translation. |
| scaler | scales the property by this value before creating the matrix. |
Definition at line 126 of file WGELinearTranslationCallback.h.
| WGELinearTranslationCallback< T >::WGELinearTranslationCallback | ( | osg::Vec3 | axe, |
| T | property, | ||
| osg::ref_ptr< osg::Uniform > | uniform, | ||
| double | scaler = 1.0 |
||
| ) |
Constructor.
Creates the callback. You still need to add it to the desired node.
| axe | the axe to translate along. Should be normalized. If not, it scales the translation. |
| property | the property containing the value |
| uniform | optional pointer to a uniform that will contain the matrix. Useful if no tex-matrix is available anymore. The matrix is the matrix that is NOT scaled to be in texture space. |
| scaler | scales the property by this value before creating the matrix. |
Definition at line 138 of file WGELinearTranslationCallback.h.
| WGELinearTranslationCallback< T >::WGELinearTranslationCallback | ( | osg::Vec3 | axe, |
| T | property, | ||
| double | scaler = 1.0 |
||
| ) |
Constructor.
Creates the callback. You still need to add it to the desired node.
| axe | the axe to translate along. Should be normalized. If not, it scales the translation. |
| property | the property containing the value |
| scaler | scales the property by this value before creating the matrix. |
Definition at line 150 of file WGELinearTranslationCallback.h.
|
virtual |
Destructor.
Definition at line 161 of file WGELinearTranslationCallback.h.
|
virtual |
This operator gets called by OSG every update cycle.
It moves the underlying MatrixTransform according to the specified axis and value.
| node | the osg node |
| nv | the node visitor |
Definition at line 167 of file WGELinearTranslationCallback.h.
|
protected |
The axis to transform along.
Definition at line 96 of file WGELinearTranslationCallback.h.
|
protected |
Cache the old position for proper update.
Definition at line 106 of file WGELinearTranslationCallback.h.
|
protected |
The position.
Definition at line 101 of file WGELinearTranslationCallback.h.
|
protected |
Scale the property prior to creating the matrix.
Definition at line 121 of file WGELinearTranslationCallback.h.
|
protected |
Texture matrix that contains normalized translation.
Definition at line 111 of file WGELinearTranslationCallback.h.
|
protected |
The uniform to set the matrix to.
Definition at line 116 of file WGELinearTranslationCallback.h.