SoVRMLTextureTransform Class |
Note: This API is now obsolete.
Defines a 2D transformation.
Namespace: OIV.Inventor.VRMLnodes
The SoVRMLTextureTransform type exposes the following members.
Name | Description | |
---|---|---|
![]() | SoVRMLTextureTransform | Constructor. |
Name | Description | |
---|---|---|
![]() | AffectsState | Returns true if a node has an effect on the state during traversal. |
![]() | Callback | (Overrides SoNodeCallback(SoCallbackAction).) |
![]() | Copy | Calls Copy(false). (Inherited from SoNode.) |
![]() | Copy(Boolean) | Creates and returns an exact copy of the node. |
![]() | CopyFieldValues(SoFieldContainer) | Calls CopyFieldValues(fc, false). (Inherited from SoFieldContainer.) |
![]() | CopyFieldValues(SoFieldContainer, Boolean) | Copies the contents of fc's fields into this object's fields. |
![]() | Dispose |
Releases all resources used by SoDisposable.
(Inherited from SoDisposable.) |
![]() | Distribute | (Inherited from SoNode.) |
![]() | DoAction | (Overrides SoNodeDoAction(SoAction).) |
![]() | EnableNotify | Notification at this Field Container is enabled (if flag == true) or disabled (if flag == false). |
![]() | Equals | (Inherited from Object.) |
![]() | FieldsAreEqual | Returns true if this object's fields are exactly equal to fc's fields. |
![]() | Get | Returns the values of the fields of this object in the Open Inventor ASCII file format in the given string. |
![]() | GetAllFields | Returns a list of fields, including the eventIn's and eventOut's. |
![]() | GetAlternateRep | This method is called by actions to allow the node to provide an "alternate representation" when appropriate (typically depending on the action type). |
![]() | GetBoundingBox | (Inherited from SoNode.) |
![]() | GetEventIn | Returns a the eventIn with the given name. |
![]() | GetEventOut | Returns the eventOut with the given name. |
![]() | GetField | Returns a the field of this object whose name is fieldName. |
![]() | GetFieldName | Returns the name of the given field in the fieldName argument. |
![]() | GetFields | Appends references to all of this object's fields to resultList, and returns the number of fields appended. |
![]() | GetHashCode |
Overrides GetHashCode().
(Inherited from SoNetBase.) |
![]() | GetMatrix | (Overrides SoNodeGetMatrix(SoGetMatrixAction).) |
![]() | GetName | Returns the name of an instance. |
![]() | GetPrimitiveCount | (Inherited from SoNode.) |
![]() | GetRenderUnitID | (Inherited from SoNode.) |
![]() | GetStringName | (Inherited from SoBase.) |
![]() | GetType | Gets the Type of the current instance. (Inherited from Object.) |
![]() | GLRender | (Overrides SoVRMLNodeGLRender(SoGLRenderAction).) |
![]() | GLRenderBelowPath | (Inherited from SoNode.) |
![]() | GLRenderInPath | (Inherited from SoNode.) |
![]() | GLRenderOffPath | (Inherited from SoNode.) |
![]() | GrabEventsCleanup | (Inherited from SoNode.) |
![]() | GrabEventsSetup | (Inherited from SoNode.) |
![]() | HandleEvent | (Inherited from SoNode.) |
![]() | HasDefaultValues | Returns true if all of the object's fields have their default values. |
![]() | IsBoundingBoxIgnoring | This method is used by getBoundingBox action traversal to know if the current node must be traversed or not, ie the bounding should be ignored. |
![]() | IsNotifyEnabled | Notification is the process of telling interested objects that this object has changed. |
![]() | IsOverride | Returns the state of the override flag. |
![]() | IsSynchronizable | Gets the ScaleViz synchronizable state of this object. |
![]() | Pick | (Overrides SoNodePick(SoPickAction).) |
![]() | RayPick | (Inherited from SoNode.) |
![]() | Search | (Inherited from SoNode.) |
![]() | Set | Sets one or more fields in this object to the values specified in the given string, which should be a string in the Open Inventor file format. |
![]() | SetName | (Inherited from SoBase.) |
![]() | SetOverride | Turns the override flag on or off. |
![]() | SetSynchronizable | Sets this to be a ScaleViz synchronizable object. |
![]() | SetToDefaults | Sets all fields in this object to their default values. |
![]() | ToString |
Converts this SoBase structure to a human readable string.
(Inherited from SoBase.) |
![]() | Touch | Marks an instance as modified, simulating a change to it. |
![]() | Write | (Inherited from SoNode.) |
Name | Description | |
---|---|---|
![]() | center | Specifies a translation offset in texture coordinate space about which the rotation and scale fields are applied. |
![]() | IsDisposable | ISafeDisposable interface implementation.
(Inherited from SoDisposable.) |
![]() | metadata | Specifies the metadata node. |
![]() | rotation | Specifies a rotation in radians of the texture coordinates about the center after the scale has taken place. |
![]() | scale | Scaling factors in S and T. |
![]() | translation | Translation in S and T. |
![]() | UserData |
Gets or sets the user data to be contained by the field container.
(Inherited from SoFieldContainer.) |
The SoVRMLTextureTransform node defines a 2D transformation that is applied to texture coordinates (see SoVRMLTextureCoordinate). This node affects the way textures are applied to the surface of geometry. The transformation consists of (in order) a non-uniform scale about an arbitrary center point, a rotation about the center point, and a translation. This allows for changes to the size, orientation, and position of textures on shapes. Note that these changes appear reversed when viewed in the surface of geometry. For example, a scale value of 2 2 will scale the texture coordinates and have the net effect of shrinking the texture size by a factor of 2 (texture coordinates are twice as large and thus cause the texture to repeat). A translation of 0.5 0.0 translates the texture coordinates +.5 units along the S-axis and has the net effect of translating the texture -0.5 along the S-axis on the geometry's surface. A rotation of pi/2 of the texture coordinates results in a - pi/2 rotation of the texture on the geometry.
Note: The VRML97 specification indicates that transformations should be performed in the order translate, rotate, and scale. Open Inventor performs the transformations in the order scale, rotate, translate.
<font color="#0000FF">NOTE:</font> This class does not exist in Open Inventor 10.0 and later.
This section describes the expected behavior of the node in a conforming VRML97 browser application. In some cases, the application is responsible for implementing portions of the expected behavior. Open Inventor viewer classes and IVF classes implement some of the application behaviors.
This section may reference portions of the VRML97 specification that are not present in this help file. The complete VRML97 spec is available at http://www.web3d.org.
The SoVRMLTextureTransform node defines a 2D transformation that is applied to texture coordinates (see SoVRMLTextureCoordinate). This node affects the way textures are applied to the surface of geometry. The transformation consists of (in order) a translation, a rotation about an arbitrary center point, and a non-uniform scale about the center point. This allows for changes to the size, orientation, and position of textures on shapes. Note that these changes appear reversed when viewed in the surface of geometry. For example, a scale value of 2 2 will scale the texture coordinates and have the net effect of shrinking the texture size by a factor of 2 (texture coordinates are twice as large and thus cause the texture to repeat). A translation of 0.5 0.0 translates the texture coordinates +.5 units along the S-axis and has the net effect of translating the texture -0.5 along the S-axis on the geometry's surface. A rotation of pi/2 of the texture coordinates results in a - pi/2 rotation of the texture on the geometry.
The center field specifies a translation offset in texture coordinate space about which the rotation and scale fields are applied. The scale field specifies a scaling factor in S and T of the texture coordinates about the center point - scale values must be >= 0.0. The rotation field specifies a rotation in radians of the texture coordinates about the center point after the scale has taken place. The translation field specifies a translation of the texture coordinates.
Given a 2-dimensional texture coordinate T and an SoVRMLTextureTransform node, T is transformed into point T ' by a series of intermediate transformations. In matrix-transformation notation, where C (center), T (translation), R (rotation), and S (scale) are the equivalent transformation matrices,
T' = TT x C x R x S x -TC x T (where T is a column vector)Note that SoVRMLTextureTransforms cannot combine or accumulate.
VRMLTextureTransform {
center | 0 0 |
rotation | 0 |
scale | 1 1 |
translation | 0 0 |
metadata | NULL |
SoGLRenderAction, SoPickAction, SoCallbackAction, SoGetMatrixAction Sets: SoTextureMatrixElement
SoSFVec2f | set_center |
SoSFFloat | set_rotation |
SoSFVec2f | set_scale |
SoSFVec2f | set_translation |
SoSFNode | set_metadata |
SoSFVec2f | center_changed |
SoSFFloat | rotation_changed |
SoSFVec2f | scale_changed |
SoSFVec2f | translation_changed |
SoSFNode | metadata_changed |