public class SoModelMatrixElement extends SoAccumulatedElement
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.
This element also stores the current view-volume culling transformation, which is normally the view*projection matrices (set by cameras), but which may be modified by sophisticated culling schemes.
See also:
SoMatrixTransform
, SoRotation
, SoRotationXYZ
, SoScale
, SoTransform
, SoTranslation
, SoUnits
, SoVRMLTransform
Inventor.ConstructorCommand
VERBOSE_LEVEL, ZeroHandle
Modifier and Type | Method and Description |
---|---|
static SbMatrix |
get(SoState state)
Returns current model matrix from the state.
|
static int |
getClassStackIndex()
Deprecated.
As of Open Inventor 9.3 replaced by SoElement.getClassStackIndex(Class)
|
static SbMatrix |
getCombinedCullMatrix(SoState state)
This method gets the model*cullMatrix combined matrix (which is cached by this element).
|
static void |
makeIdentity(SoState state,
SoNode node)
Sets the model matrix to the identity matrix.
|
static void |
mult(SoState state,
SoNode node,
SbMatrix matrix)
Multiplies the given matrix into the model matrix.
|
static void |
popMatrix(SoState state,
SbMatrix m)
This method is used by the TransformSeparator node.
|
void |
push(SoState state)
Overrides
push() method to copy values from next instance in the stack. |
static SbMatrix |
pushMatrix(SoState state)
This method is used by the TransformSeparator node.
|
static void |
rotateBy(SoState state,
SoNode node,
SbRotation rotation)
This multiplies a matrix that performs the specified transformation into the model matrix.
|
static void |
scaleBy(SoState state,
SoNode node,
SbVec3f scaleFactor)
This multiplies a matrix that performs the specified transformation into the model matrix.
|
static void |
set(SoState state,
SoNode node,
SbMatrix matrix)
Calls set(state, node, matrix, true).
|
static void |
set(SoState state,
SoNode node,
SbMatrix matrix,
boolean sendToGL)
Sets the model matrix to the given matrix.
|
static void |
setCullMatrix(SoState state,
SoNode node,
SbMatrix matrix)
Sets the transformation that defines the volume that view-volume culling should be tested against.
|
static void |
translateBy(SoState state,
SoNode node,
SbVec3f translation)
This multiplies a matrix that performs the specified transformation into the model matrix.
|
getClassStackIndex, pop
dispose, getAddress, getNativeResourceHandle, startInternalThreads, stopInternalThreads
public static void set(SoState state, SoNode node, SbMatrix matrix)
public static void scaleBy(SoState state, SoNode node, SbVec3f scaleFactor)
@Deprecated public static int getClassStackIndex()
public static void makeIdentity(SoState state, SoNode node)
public static void rotateBy(SoState state, SoNode node, SbRotation rotation)
public static void translateBy(SoState state, SoNode node, SbVec3f translation)
public static void setCullMatrix(SoState state, SoNode node, SbMatrix matrix)
public static void popMatrix(SoState state, SbMatrix m)
public static SbMatrix pushMatrix(SoState state)
public static SbMatrix getCombinedCullMatrix(SoState state)
public static void set(SoState state, SoNode node, SbMatrix matrix, boolean sendToGL)
public static void mult(SoState state, SoNode node, SbMatrix matrix)
public void push(SoState state)
push()
method to copy values from next instance in the stack.push
in class SoAccumulatedElement
Generated on January 23, 2025, Copyright © Thermo Fisher Scientific. All rights reserved. http://www.openinventor.com