Home | Hierarchy | Members | Alphabetical | Related Pages |
#include <texturetransform.h>
Inherits Node.
Inheritance diagram for TextureTransform:
Public Member Functions | |
TextureTransform (const char *name="") | |
virtual | ~TextureTransform () |
virtual unsigned int | nbFields () const |
virtual FieldHandle | field (const std::string &n) |
virtual FieldHandle | field (const unsigned int i) |
virtual bool | isSetToDefaultValue (const unsigned int i) const |
virtual unsigned int | nbEventsIn () const |
virtual EventInHandle | eventIn (const std::string &n) |
virtual EventInHandle | eventIn (const unsigned int i) |
virtual unsigned int | nbEventsOut () const |
virtual EventOutHandle | eventOut (const std::string &n) |
virtual EventOutHandle | eventOut (const unsigned int i) |
const char * | typeName () const |
virtual Node * | duplicate () const |
virtual Node * | duplicate (std::map< const Node *, Node * > &) const |
Public Attributes | |
Exposed Fields | |
A field that is capable of receiving events via an eventIn to change its value(s), and generating events via an eventOut when its value(s) change. | |
SFVec2f | center |
SFFloat | rotation |
SFVec2f | scale |
SFVec2f | translation |
Events In | |
EventIn< SFVec2f > | set_center |
EventIn< SFFloat > | set_rotation |
EventIn< SFVec2f > | set_scale |
EventIn< SFVec2f > | set_translation |
Events Out | |
EventOut< SFVec2f > | center_changed |
EventOut< SFFloat > | rotation_changed |
EventOut< SFVec2f > | scale_changed |
EventOut< SFVec2f > | translation_changed |
The TextureTransform node defines a 2D transformation that is applied to texture coordinates (see 6.48, TextureCoordinate). This node affects the way textures coordinates are applied to the geometric surface. The transformation consists of (in order):
These parameters support changes to the size, orientation, and position
of textures on shapes. Note that these operations appear reversed when viewed
on 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 /2 of the texture coordinates
results in a -
/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 shall be
in the range (-,
). The rotation
field specifies a rotation in radians of the texture coordinates about the
center point after the scale has been applied. A positive rotation
value makes the texture coordinates rotate counterclockwise about the centre,
thereby rotating the appearance of the texture itself clockwise. The translation
field specifies a translation of the texture coordinates.
In matrix transformation notation, where Tc is the untransformed texture coordinate, Tc' is the transformed texture coordinate, C (center), T (translation), R (rotation), and S (scale) are the intermediate transformation matrices,
Tc' = -C ื S ื R ื C ื T ื Tc
Note that this transformation order is the reverse of the Transform node transformation order since the texture coordinates, not the texture, are being transformed (i.e., the texture coordinate system).
|
Construct a node with all its fields set to default value, which is equivalent to the code below: center.setXY(0,0); rotation = 0; scale.setXY(1,1); translation.setXY(0,0); |
|
Virtual destructor, does nothing |
|
Implements Node. |
|
Returns a deep copy of this node, that is a fully independant node with all children (if any) also copied. This is mainly useful for instanciating protos. Implements Node. |
|
Return a handle on the Implements Node. |
|
Return a handle on the event in named
Implements Node. |
|
Return a handle on the
Implements Node. |
|
Return a handle on the event out named
Implements Node. |
|
Return a handle on the
Implements Node. |
|
Return a handle on the field named
Implements Node. |
|
Implements Node. |
|
Returns the number of events in for this node type. Implements Node. |
|
Returns the number of events out for this node type. Implements Node. |
|
Returns the number of fields (exposed or not) for this node type. Implements Node. |
|
Returns Implements Node. |
|
See Detailed Description for meaning of this field. Default value is set to center.setXY(0,0); |
|
Changed event associated to exposedField center |
|
See Detailed Description for meaning of this field. Default value is set to rotation = 0; |
|
Changed event associated to exposedField rotation |
|
See Detailed Description for meaning of this field. Default value is set to scale.setXY(1,1); |
|
Changed event associated to exposedField scale |
|
Set event associated to exposedField center |
|
Set event associated to exposedField rotation |
|
Set event associated to exposedField scale |
|
Set event associated to exposedField translation |
|
See Detailed Description for meaning of this field. Default value is set to translation.setXY(0,0); |
|
Changed event associated to exposedField translation |
Generated on 24 Feb 2005 with
![]() |
|