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.
Copyright © 2010-2025 Platon Technologies, s.r.o.           Index | Man stránky | tLDP | Dokumenty | Utilitky | O projekte
Design by styleshout