somodelmatrixelement(3)
NAME
SoModelMatrixElement - The SoModelMatrixElement class is used to manage
the current transformation.
SoModelMatrixElement contains the object-to-world matrix.
SYNOPSIS
#include <Inventor/elements/SoModelMatrixElement.h> Inherits SoAccumulatedElement. Inherited by SoBBoxModelMatrixElement, and SoGLModelMatrixElement. Public Member Functions virtual void init (SoState *state) virtual void push (SoState *state) virtual SbBool matches (const SoElement *element) const const SbMatrix & getModelMatrix (void) const Static Public Member Functions static SoType getClassTypeId (void) static int getClassStackIndex (void) static void * createInstance (void) static void initClass (void) static void makeIdentity (SoState *const state, SoNode *const node) static void set (SoState *const state, SoNode *const node, const SbMatrix &matrix) static void setCullMatrix (SoState *state, SoNode *node, const SbMatrix &matrix) static void mult (SoState *const state, SoNode *const node, const SbMatrix &matrix) static void translateBy (SoState *const state, SoNode *const node, const SbVec3f &translation) static void rotateBy (SoState *const state, SoNode *const node, const SbRotation &rotation) static void scaleBy (SoState *const state, SoNode *const node, const SbVec3f &scaleFactor) static SbMatrix pushMatrix (SoState *const state) static void popMatrix (SoState *const state, const SbMatrix &matrix) static const SbMatrix & getCombinedCullMatrix (SoState *const state) static const SbMatrix & get (SoState *const state) static const SbMatrix & get (SoState *const state, SbBool &isIdentity) Protected Member Functions virtual ~SoModelMatrixElement () virtual void makeEltIdentity (void) virtual void setElt (const SbMatrix &matrix) virtual void multElt (const SbMatrix &matrix) virtual void translateEltBy (const SbVec3f &translation) virtual void rotateEltBy (const SbRotation &rotation) virtual void scaleEltBy (const SbVec3f &scaleFactor) virtual SbMatrix pushMatrixElt (void) virtual void popMatrixElt (const SbMatrix &matrix) Protected Attributes SbMatrix modelMatrix SbMatrix cullMatrix SbMatrix combinedMatrix uint32_t flags
Detailed Description
The SoModelMatrixElement class is used to manage the current
transformation.
SoModelMatrixElement contains the object-to-world matrix.
The world-to-camera transformation is stored in the
SoViewingMatrixElement class.
Note that one thing that can be a little confusing with the API is that
SoModelMatrixElement does not contain the same matrix as the OpenGL
GL_MODELVIEW matrix.
- See also:
- SoViewingMatrixElement
Constructor & Destructor Documentation
- SoModelMatrixElement::~SoModelMatrixElement (void) [protected, virtual]
- The destructor.
Member Function Documentation
- SoType SoModelMatrixElement::getClassTypeId (void) [static]
- This static method returns the class type.
- Reimplemented from SoAccumulatedElement.
- Reimplemented in SoBBoxModelMatrixElement, and SoGLModelMatrixElement.
- int SoModelMatrixElement::getClassStackIndex (void) [static]
- This static method returns the state stack index for the class.
- Reimplemented from SoAccumulatedElement.
- Reimplemented in SoBBoxModelMatrixElement, and SoGLModelMatrixElement.
- void * SoModelMatrixElement::createInstance (void) [static]
- This API member is considered internal to the library, as it is not likely to be of interest to the application programmer.
- Reimplemented in SoBBoxModelMatrixElement, and SoGLModelMatrixElement.
- void SoModelMatrixElement::initClass (void) [static]
- This static method initializes static data for the SoModelMatrixElement class.
- Reimplemented from SoAccumulatedElement.
- Reimplemented in SoBBoxModelMatrixElement, and SoGLModelMatrixElement.
- void SoModelMatrixElement::makeIdentity (SoState *const state, SoNode
- *const node) [static]
Sets the current model matrix to the identity matrix. - void SoModelMatrixElement::set (SoState *const state, SoNode *const node,
- const SbMatrix & matrix) [static] Sets the current model matrix to matrix.
- void SoModelMatrixElement::mult (SoState *const state, SoNode *const
- node, const SbMatrix & matrix) [static] Multiplies matrix into the model matrix.
- void SoModelMatrixElement::translateBy (SoState *const state, SoNode
- *const node, const SbVec3f & translation) [static] Appends translation to the model matrix.
- void SoModelMatrixElement::rotateBy (SoState *const state, SoNode *const
- node, const SbRotation & rotation) [static] Appends rotation to the model matrix.
- void SoModelMatrixElement::scaleBy (SoState *const state, SoNode *const
- node, const SbVec3f & scaleFactor) [static] Appends scaleFactor to the model matrix.
- SbMatrix SoModelMatrixElement::pushMatrix (SoState *const state) [static]
- Used by SoTransformSeparator to store and restore model matrix. Don't use it for any other reason.
- void SoModelMatrixElement::popMatrix (SoState *const state, const SbMatrix
- & matrix) [static]
Used by SoTransformSeparator to store and restore model matrix. Don't use it for any other reason. - const SbMatrix & SoModelMatrixElement::getCombinedCullMatrix (SoState
- *const state) [static]
Returns the combined cull and model matrix. This matrix is cached. - const SbMatrix & SoModelMatrixElement::get (SoState *const state) [static]
- Returns the current model matrix.
- const SbMatrix & SoModelMatrixElement::get (SoState *const state, SbBool &
- isIdentity) [static]
Returns the current model matrix. Sets isIdentity to TRUE if the model matrix is known to be an identity matrix. - void SoModelMatrixElement::makeEltIdentity (void) [protected, virtual]
- virtual method which is called from the static method makeIdentity(). Sets element model matrix to identity.
- Reimplemented in SoBBoxModelMatrixElement, and SoGLModelMatrixElement.
- void SoModelMatrixElement::setElt (const SbMatrix & matrix) [protected,
- virtual]
virtual method which is called from the static method set(). Sets element model matrix to matrix. - Reimplemented in SoBBoxModelMatrixElement, and SoGLModelMatrixElement.
- void SoModelMatrixElement::multElt (const SbMatrix & matrix) [protected,
- virtual]
virtual method which is called from the static method mult(). Multiplies matrix into element model matrix. - Reimplemented in SoBBoxModelMatrixElement, and SoGLModelMatrixElement.
- void SoModelMatrixElement::translateEltBy (const SbVec3f & translation)
- [protected, virtual]
virtual method which is called from the static method translateBy(). Appends translation to element model matrix. - Reimplemented in SoBBoxModelMatrixElement, and SoGLModelMatrixElement.
- void SoModelMatrixElement::rotateEltBy (const SbRotation & rotation)
- [protected, virtual]
virtual method which is called from the static method rotateBy(). Appends rotation to element model matrix. - Reimplemented in SoBBoxModelMatrixElement, and SoGLModelMatrixElement.
- void SoModelMatrixElement::scaleEltBy (const SbVec3f & scaleFactor)
- [protected, virtual]
virtual method which is called from the static method scaleBy(). Appends scaleFactor to element model matrix. - Reimplemented in SoBBoxModelMatrixElement, and SoGLModelMatrixElement.
- SbMatrix SoModelMatrixElement::pushMatrixElt (void) [protected, virtual]
- virtual method which is called from the static method pushMatrix(). Returns current model matrix.
- Reimplemented in SoBBoxModelMatrixElement, and SoGLModelMatrixElement.
- void SoModelMatrixElement::popMatrixElt (const SbMatrix & matrix)
- [protected, virtual]
virtual method which is called from the static method popMatrix(). Retores model matrix to the matrix returned from pushMatrix(). - Reimplemented in SoBBoxModelMatrixElement, and SoGLModelMatrixElement.
Member Data Documentation
- SoModelMatrixElement::modelMatrix [protected]
- FIXME: write doc.
- SoModelMatrixElement::cullMatrix [protected]
- FIXME: write doc.
- SoModelMatrixElement::combinedMatrix [protected]
- FIXME: write doc.
- SoModelMatrixElement::flags [protected]
- FIXME: write doc.
Author
- Generated automatically by Doxygen for Coin from the source code.