Open Inventor Reference
SoTextureMatrixElement Class Reference

Element that stores the current texture matrix - the cumulative transformation applied to subsequent shapes. More...

#include <Inventor/elements/SoTextureMatrixElement.h>

Inheritance diagram for SoTextureMatrixElement:
SoAccumulatedElement SoElement SoGLTextureMatrixElement

List of all members.

Public Member Functions

virtual void init (SoState *state)
 Initializes element.
virtual void push (SoState *state)
 Overrides push() method to copy values from next instance in the stack.
virtual void print (FILE *fp) const
 Prints element (for debugging)

Static Public Member Functions

static void makeIdentity (SoState *state, SoNode *node)
 Sets the texture matrix to the identity matrix.
static void mult (SoState *state, SoNode *node, const SbMatrix &matrix)
 Multiplies the given matrix into the texture matrix.
static void translateBy (SoState *state, SoNode *node, const SbVec3f &translation)
 Each of these multiplies a matrix that performs the specified transformation into the texture matrix.
static void rotateBy (SoState *state, SoNode *node, const SbRotation &rotation)
static void scaleBy (SoState *state, SoNode *node, const SbVec3f &scaleFactor)
static const SbMatrixget (SoState *state)
 Returns current matrix from the state.
static void initClass ()
 Initializes the SoTextureMatrixElement class.

Protected Member Functions

virtual void makeEltIdentity ()
 Sets the matrix in an instance to identity.
virtual void multElt (const SbMatrix &matrix)
 Multiplies into the matrix in an instance.
virtual void translateEltBy (const SbVec3f &translation)
 Each of these performs the appropriate operation on the matrix in an instance.
virtual void rotateEltBy (const SbRotation &translation)
virtual void scaleEltBy (const SbVec3f &scaleFactor)
virtual const SbMatrixgetElt () const
 Gets the matrix from an instance.
virtual ~SoTextureMatrixElement ()

Protected Attributes

SbMatrix textureMatrix

Detailed Description

Because the matrix is cumulative, this class is derived from SoAccumulatedElement. The set() method replaces the current matrix, while all the others (mult(), translateBy(), etc.) multiply into it. Node id's of the nodes that affect the element are accumulated properly.

Definition at line 75 of file SoTextureMatrixElement.h.


Constructor & Destructor Documentation

virtual SoTextureMatrixElement::~SoTextureMatrixElement ( ) [protected, virtual]

Member Function Documentation

static const SbMatrix& SoTextureMatrixElement::get ( SoState state) [static]
virtual const SbMatrix& SoTextureMatrixElement::getElt ( ) const [protected, virtual]
virtual void SoTextureMatrixElement::init ( SoState state) [virtual]

Reimplemented from SoElement.

static void SoTextureMatrixElement::initClass ( ) [static]

Reimplemented from SoAccumulatedElement.

Reimplemented in SoGLTextureMatrixElement.

virtual void SoTextureMatrixElement::makeEltIdentity ( ) [protected, virtual]

Reimplemented in SoGLTextureMatrixElement.

static void SoTextureMatrixElement::makeIdentity ( SoState state,
SoNode node 
) [static]
static void SoTextureMatrixElement::mult ( SoState state,
SoNode node,
const SbMatrix matrix 
) [static]
virtual void SoTextureMatrixElement::multElt ( const SbMatrix matrix) [protected, virtual]

Reimplemented in SoGLTextureMatrixElement.

virtual void SoTextureMatrixElement::print ( FILE *  fp) const [virtual]

Reimplemented from SoAccumulatedElement.

virtual void SoTextureMatrixElement::push ( SoState state) [virtual]

Reimplemented from SoElement.

static void SoTextureMatrixElement::rotateBy ( SoState state,
SoNode node,
const SbRotation rotation 
) [static]
virtual void SoTextureMatrixElement::rotateEltBy ( const SbRotation translation) [protected, virtual]

Reimplemented in SoGLTextureMatrixElement.

static void SoTextureMatrixElement::scaleBy ( SoState state,
SoNode node,
const SbVec3f scaleFactor 
) [static]
virtual void SoTextureMatrixElement::scaleEltBy ( const SbVec3f scaleFactor) [protected, virtual]

Reimplemented in SoGLTextureMatrixElement.

static void SoTextureMatrixElement::translateBy ( SoState state,
SoNode node,
const SbVec3f translation 
) [static]
virtual void SoTextureMatrixElement::translateEltBy ( const SbVec3f translation) [protected, virtual]

Reimplemented in SoGLTextureMatrixElement.


Member Data Documentation


The documentation for this class was generated from the following file: