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.