The
SoRotor class is derived from
SoRotation, so it applies a rotation to the current transformation. Using engines connected to the
realTime global field, the rotation value is animated over time, achieving a spinning effect.
The period of the rotation can be adjusted by changing the
speed field.
The current rotation at any time is available in the
rotation field, inherited from
SoRotation. This field can also be set to specify the axis of rotation.
Note that unless a non-zero rotation is specified for the rotation, the node will not know which axis to use. For example, to set a rotor to spin about the y-axis, use the following:
rotor->rotation.setValue(axis, 0.1);
where
axis is a vector
containing (0,1,0). Any non-zero angle can be used in this code.