SoShuttle — animated oscillating translation node
Contents
Action Behavior
SoGLRenderAction,SoCallbackAction,SoGetBoundingBoxAction,SoRayPickAction
Concatenates interpolated translation value with the current transformation matrix.
SoGetMatrixAction
Returns transformation matrix specified by the interpolated translation.
Description
The SoShuttle class is derived from SoTranslation, so it applies a translation to the current
transformation. Using engines connected to the realTime global field, the translation value is animated
over time between two fixed translations, achieving a shuttling effect. The period of the motion can be
adjusted by changing the speed field. The current translation at any time is available in the translation
field, inherited from SoTranslationFields
SoSFVec3ftranslation0SoSFVec3ftranslation1
These define the two fixed translations that are interpolated to create the shuttling motion.
SoSFFloatspeed
Defines the speed of the shuttle, in cycles per second.
SoSFBoolon
Allows applications to enable or disable the motion easily.
File Format/Defaults
Shuttle{translation000translation0000translation1000speed1onTRUE}Inherits From
SoBase > SoFieldContainer > SoNode > SoTransformation > SoTranslation > SoShuttle
Methods
SoShuttle()
Creates a shuttle node with default settings.
staticSoTypegetClassTypeId()
Returns type identifier for this class.
Name
SoShuttle — animated oscillating translation node
See Also
SoPendulum,SoRotorSoShuttle(3IV)()
Synopsis
#include<Inventor/nodes/SoShuttle.h>
Fields from class SoShuttle:
SoSFVec3ftranslation0SoSFVec3ftranslation1SoSFFloatspeedSoSFBoolon
Fields from class SoTranslation:
SoSFVec3ftranslation
Methods from class SoShuttle:
SoShuttle()staticSoTypegetClassTypeId()
Methods from class SoNode:
voidsetOverride(SbBoolstate)SbBoolisOverride()constSoNode*copy(SbBoolcopyConnections=FALSE)constvirtualSbBoolaffectsState()conststaticSoNode*getByName(constSbName&name)staticintgetByName(constSbName&name,SoNodeList&list)
Methods from class SoFieldContainer:
voidsetToDefaults()SbBoolhasDefaultValues()constSbBoolfieldsAreEqual(constSoFieldContainer*fc)constvoidcopyFieldValues(constSoFieldContainer*fc,SbBoolcopyConnections=FALSE)SbBoolset(constchar*fieldDataString)voidget(SbString&fieldDataString)virtualintgetFields(SoFieldList&resultList)constvirtualSoField*getField(constSbName&fieldName)constSbBoolgetFieldName(constSoField*field,SbName&fieldName)constSbBoolisNotifyEnabled()constSbBoolenableNotify(SbBoolflag)
Methods from class SoBase:
voidref()voidunref()constvoidunrefNoDelete()constvoidtouch()virtualSoTypegetTypeId()constSbBoolisOfType(SoTypetype)constvirtualvoidsetName(constSbName&name)virtualSbNamegetName()const