Open Inventor Reference
|
Element that stores the transformation matrix from object space to some local coordinate space during application of an SoGetBoundingBoxAction. More...
#include <Inventor/elements/SoLocalBBoxMatrixElement.h>
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 bool | matches (const SoElement *elt) const |
Prints error message and returns FALSE (see class header comment) | |
virtual SoElement * | copyMatchInfo () const |
Create and return a copy of this element. | |
virtual void | print (FILE *fp) const |
Prints element (for debugging) | |
Public Member Functions inherited from SoElement | |
virtual void | init (SoState *state) |
Initializes element. | |
virtual void | push (SoState *state) |
Pushes/pops element. | |
virtual void | pop (SoState *state, const SoElement *prevTopElement) |
virtual void | print (FILE *fp) const |
Prints element (for debugging) | |
virtual bool | matches (const SoElement *elt) const =0 |
Returns TRUE if the element matches another element (of the same class, presumably) with respect to cache validity. | |
virtual SoElement * | copyMatchInfo () const =0 |
Create a copy that we can put in a cache used list and call matches() on later. | |
SoType | getTypeId () const |
Returns type identifier for element instance. | |
int | getStackIndex () const |
Returns the stack index for an element instance. | |
void | setDepth (int dpth) |
Sets stuff in an element instance. | |
void | setNext (SoElement *nxt) |
void | setNextInStack (SoElement *nxt) |
void | setNextFree (SoElement *nxt) |
int | getDepth () const |
Returns stuff from element instance. | |
SoElement * | getNext () const |
virtual | ~SoElement () |
Destructor. | |
Static Public Member Functions | |
static void | makeIdentity (SoState *state) |
Sets the local matrix to the identity matrix. | |
static void | set (SoState *state, const SbMatrix &matrix) |
Sets the local matrix to the given matrix. | |
static void | mult (SoState *state, const SbMatrix &matrix) |
Multiplies the given matrix into the local matrix. | |
static void | translateBy (SoState *state, const SbVec3f &translation) |
Each of these multiplies a matrix that performs the specified transformation into the local matrix. | |
static void | rotateBy (SoState *state, const SbRotation &rotation) |
static void | scaleBy (SoState *state, const SbVec3f &scaleFactor) |
static SbMatrix | pushMatrix (SoState *state) |
These methods are used by the TransformSeparator node. | |
static void | popMatrix (SoState *state, const SbMatrix &m) |
static void | resetAll (SoState *state) |
Resets all current instances in the state to identity. | |
static const SbMatrix & | get (SoState *state) |
Returns current matrix from the state. | |
static void | initClass () |
Initializes the SoLocalBBoxMatrixElement class. | |
Static Public Member Functions inherited from SoElement | |
static SoType | getClassTypeId () |
Returns type identifier for SoElement class. | |
static void | initElements () |
Initialize ALL Inventor element classes. | |
static void | initClass () |
Initializes the SoElement class. | |
static int | getNumStackIndices () |
Returns the number of stack indices allocated. | |
static SoType | getIdFromStackIndex (int stackIndex) |
Returns the id for the element with the given stack index. | |
Protected Member Functions | |
virtual | ~SoLocalBBoxMatrixElement () |
Protected Member Functions inherited from SoElement | |
SoElement () | |
Constructor; use typeId.createInstance to create elements. | |
void | capture (SoState *state) const |
Does whatever is necessary in state to capture this element for caching purposes. | |
virtual void | captureThis (SoState *state) const |
Really captures this element, once it has been determined that a cache is open to capture it. | |
void | setTypeId (SoType id) |
Sets typeId in instance. | |
void | setStackIndex (int index) |
Sets stackIndex in instance. | |
SoElement * | getNextInStack () const |
Returns next instance in specific element stack. | |
SoElement * | getNextFree () const |
Returns next free element in a specific element stack. | |
Protected Attributes | |
SbMatrix | localMatrix |
Additional Inherited Members | |
Static Protected Member Functions inherited from SoElement | |
static SoElement * | getElement (SoState *state, int stackIndex) |
Returns an instance of an element from the stack with the given index in the given state. | |
static const SoElement * | getConstElement (SoState *state, int stackIndex) |
Returns a read-only pointer to the top instance in the given element stack. | |
static int | createStackIndex (SoType id) |
Creates and returns a new stack index. | |
Static Protected Attributes inherited from SoElement | |
static int | classStackIndex |
Stack index for SoElement class. | |
This element is needed to allow separators (and other caching nodes) to store cached bounding boxes in their own local space. Shapes that extend the current bounding box computed by the action use this matrix to transform the bounding box into local space. Separators cache this box, then transform it into the next local space up the hierarchy.
Because this element is set to identity by separators before traversing their children, it can never have an affect on any caching separator that it is not under. Therefore, it should never be tested for cache invalidation, so its matches() method prints an error message and returns FALSE. It also means that it does not have to save node id's so there are no nodes passed in to any of the methods.
Definition at line 84 of file SoLocalBBoxMatrixElement.h.
|
protectedvirtual |
|
virtual |
Reimplemented from SoElement.
|
static |
|
static |
|
virtual |
Implements SoElement.
|
virtual |
Reimplemented from SoElement.
|
virtual |
Reimplemented from SoElement.
|
static |
|
static |
|
static |
|
static |
|
protected |
Definition at line 134 of file SoLocalBBoxMatrixElement.h.