The SoModelMatrixElement class is used to manage the current transformation.SoModelMatrixElement contains the object-to-world matrix.  
 More...
#include <Inventor/elements/SoModelMatrixElement.h>
 | 
| 
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) | 
|   | 
| 
static SoType  | getClassTypeId (void) | 
|   | 
| 
static int  | getClassStackIndex (void) | 
|   | 
| 
static void  | initClass (void) | 
|   | 
| static void  | initClass (void) | 
|   | 
| static SoType  | getClassTypeId (void) | 
|   | 
| static int  | getClassStackIndex (void) | 
|   | 
| static void  | initElements (void) | 
|   | 
| static int  | getNumStackIndices (void) | 
|   | 
| static SoType  | getIdFromStackIndex (const int stackIndex) | 
|   | 
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 
 
 
◆ ~SoModelMatrixElement()
  
  
      
        
          | SoModelMatrixElement::~SoModelMatrixElement  | 
          ( | 
          void  | 
           | ) | 
           | 
         
       
   | 
  
protectedvirtual   | 
  
 
 
◆ createInstance()
  
  
      
        
          | 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. 
 
 
◆ initClass()
  
  
      
        
          | void SoModelMatrixElement::initClass  | 
          ( | 
          void  | 
           | ) | 
           | 
         
       
   | 
  
static   | 
  
 
 
◆ init()
  
  
      
        
          | void SoModelMatrixElement::init  | 
          ( | 
          SoState *  | 
          state | ) | 
           | 
         
       
   | 
  
virtual   | 
  
 
 
◆ push()
  
  
      
        
          | void SoModelMatrixElement::push  | 
          ( | 
          SoState *  | 
          state | ) | 
           | 
         
       
   | 
  
virtual   | 
  
 
 
◆ matches()
  
  
      
        
          | SbBool SoModelMatrixElement::matches  | 
          ( | 
          const SoElement *  | 
          element | ) | 
           const | 
         
       
   | 
  
virtual   | 
  
 
This function returns TRUE is the element matches another element (of the same class), with respect to cache validity.
If the application programmer's extension element has a matches() function, it should also have a copyMatchInfo() function. 
Reimplemented from SoAccumulatedElement.
 
 
◆ makeIdentity()
  
  
      
        
          | void SoModelMatrixElement::makeIdentity  | 
          ( | 
          SoState *const  | 
          state,  | 
         
        
           | 
           | 
          SoNode *const  | 
          node  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
static   | 
  
 
Sets the current model matrix to the identity matrix. 
 
 
◆ set()
Sets the current model matrix to matrix. 
 
 
◆ setCullMatrix()
Sets the current cull matrix. 
 
 
◆ mult()
Multiplies matrix into the model matrix. 
 
 
◆ translateBy()
  
  
      
        
          | void SoModelMatrixElement::translateBy  | 
          ( | 
          SoState *const  | 
          state,  | 
         
        
           | 
           | 
          SoNode *const  | 
          node,  | 
         
        
           | 
           | 
          const SbVec3f &  | 
          translation  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
static   | 
  
 
Appends translation to the model matrix. 
 
 
◆ rotateBy()
Appends rotation to the model matrix. 
 
 
◆ scaleBy()
  
  
      
        
          | void SoModelMatrixElement::scaleBy  | 
          ( | 
          SoState *const  | 
          state,  | 
         
        
           | 
           | 
          SoNode *const  | 
          node,  | 
         
        
           | 
           | 
          const SbVec3f &  | 
          scaleFactor  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
static   | 
  
 
Appends scaleFactor to the model matrix. 
 
 
◆ pushMatrix()
◆ popMatrix()
  
  
      
        
          | void SoModelMatrixElement::popMatrix  | 
          ( | 
          SoState *const  | 
          state,  | 
         
        
           | 
           | 
          const SbMatrix &  | 
          matrix  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
static   | 
  
 
 
◆ getCombinedCullMatrix()
  
  
      
        
          | const SbMatrix & SoModelMatrixElement::getCombinedCullMatrix  | 
          ( | 
          SoState *const  | 
          state | ) | 
           | 
         
       
   | 
  
static   | 
  
 
Returns the combined cull and model matrix. This matrix is cached. 
 
 
◆ get() [1/2]
Returns the current model matrix. 
 
 
◆ get() [2/2]
  
  
      
        
          | 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. 
 
 
◆ makeEltIdentity()
  
  
      
        
          | void SoModelMatrixElement::makeEltIdentity  | 
          ( | 
          void  | 
           | ) | 
           | 
         
       
   | 
  
protectedvirtual   | 
  
 
 
◆ setElt()
  
  
      
        
          | void SoModelMatrixElement::setElt  | 
          ( | 
          const SbMatrix &  | 
          matrix | ) | 
           | 
         
       
   | 
  
protectedvirtual   | 
  
 
 
◆ multElt()
  
  
      
        
          | void SoModelMatrixElement::multElt  | 
          ( | 
          const SbMatrix &  | 
          matrix | ) | 
           | 
         
       
   | 
  
protectedvirtual   | 
  
 
 
◆ translateEltBy()
  
  
      
        
          | void SoModelMatrixElement::translateEltBy  | 
          ( | 
          const SbVec3f &  | 
          translation | ) | 
           | 
         
       
   | 
  
protectedvirtual   | 
  
 
 
◆ rotateEltBy()
  
  
      
        
          | void SoModelMatrixElement::rotateEltBy  | 
          ( | 
          const SbRotation &  | 
          rotation | ) | 
           | 
         
       
   | 
  
protectedvirtual   | 
  
 
 
◆ scaleEltBy()
  
  
      
        
          | void SoModelMatrixElement::scaleEltBy  | 
          ( | 
          const SbVec3f &  | 
          scaleFactor | ) | 
           | 
         
       
   | 
  
protectedvirtual   | 
  
 
 
◆ pushMatrixElt()
  
  
      
        
          | SbMatrix SoModelMatrixElement::pushMatrixElt  | 
          ( | 
          void  | 
           | ) | 
           | 
         
       
   | 
  
protectedvirtual   | 
  
 
 
◆ popMatrixElt()
  
  
      
        
          | void SoModelMatrixElement::popMatrixElt  | 
          ( | 
          const SbMatrix &  | 
          matrix | ) | 
           | 
         
       
   | 
  
protectedvirtual   | 
  
 
 
◆ modelMatrix
  
  
      
        
          | SoModelMatrixElement::modelMatrix | 
         
       
   | 
  
protected   | 
  
 
 
◆ cullMatrix
  
  
      
        
          | SoModelMatrixElement::cullMatrix | 
         
       
   | 
  
protected   | 
  
 
 
◆ combinedMatrix
  
  
      
        
          | SoModelMatrixElement::combinedMatrix | 
         
       
   | 
  
protected   | 
  
 
 
◆ flags
  
  
      
        
          | SoModelMatrixElement::flags | 
         
       
   | 
  
protected   | 
  
 
 
The documentation for this class was generated from the following files: