SoModelMatrixElement Class |
Stores the current model matrix.
Namespace: OIV.Inventor.Elements
The SoModelMatrixElement type exposes the following members.
Name | Description | |
---|---|---|
Equals | Determines whether the specified Object is equal to the current Object. (Inherited from Object.) | |
Get(SoState) | Returns current model matrix from the state. | |
Get(SoState, Boolean) | Returns current model matrix from the state, sets given flag to true if matrix is known to be identity. | |
GetClassStackIndex | Obsolete. Returns the stack id for this element. | |
GetCombinedCullMatrix | This method gets the model*cullMatrix combined matrix (which is cached by this element). | |
GetHashCode |
Overrides GetHashCode().
(Inherited from SoNetBase.) | |
GetType | Gets the Type of the current instance. (Inherited from Object.) | |
MakeIdentity | Sets the model matrix to the identity matrix. | |
Mult | Multiplies the given matrix into the model matrix. | |
Pop | Pops element. | |
PopMatrix | This method is used by the TransformSeparator node. | |
Push | Overrides OIV.Inventor.Elements.SoModelMatrixElement.Push(OIV.Inventor.Misc.SoState) method to copy values from next instance in the stack. | |
PushMatrix | This method is used by the TransformSeparator node. | |
RotateBy | This multiplies a matrix that performs the specified transformation into the model matrix. | |
ScaleBy | This multiplies a matrix that performs the specified transformation into the model matrix. | |
Set(SoState, SoNode, SbMatrix) | Calls Set(state, node, matrix, true). | |
Set(SoState, SoNode, SbMatrix, Boolean) | Sets the model matrix to the given matrix. | |
SetCullMatrix | Sets the transformation that defines the volume that view-volume culling should be tested against. | |
ToString | Returns a string that represents the current object. (Inherited from Object.) | |
TranslateBy | This multiplies a matrix that performs the specified transformation into the model matrix. |
This element stores the current model matrix - the cumulative transformation applied to subsequent shapes. Because the matrix is cumulative, this class is derived from OIV.Inventor.Elements.SoAccumulatedElement. The OIV.Inventor.Elements.SoModelMatrixElement.Set(OIV.Inventor.Misc.SoState, OIV.Inventor.Nodes.SoNode, OIV.Inventor.SbMatrix, System.Boolean) method replaces the current matrix, while all the others (OIV.Inventor.Elements.SoModelMatrixElement.Mult(OIV.Inventor.Misc.SoState, OIV.Inventor.Nodes.SoNode, OIV.Inventor.SbMatrix), OIV.Inventor.Elements.SoModelMatrixElement.TranslateBy(OIV.Inventor.Misc.SoState, OIV.Inventor.Nodes.SoNode, OIV.Inventor.SbVec3f), 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.