Unigine::WorldTransformPath Class
Header: | #include <UnigineWorlds.h> |
Inherits: | Node |
This class is used to create a frame-based succession of transformations from a loaded path. For other nodes to move along with these transformations, they should be assigned as WorldTransformPath children.
The path is a spline along which an object can be moved.
WorldTransformPath Class
Members
static WorldTransformPathPtr create(const char * name, int unique = 0)
Constructor. Creates a transformer defined by a path in world coordinates.Arguments
- const char * name - Path to the *.path file.
- int unique - The dynamic flag:
- 0 - If the path is changed in run-time, paths loaded from the same file will be also changed.
- 1 - If the path is changed in run-time, paths loaded from the same file won't be changed
Ptr<WorldTransformPath> cast(const Ptr<Node> & node)
Casts a WorldTransformPath out of the Node instance.Arguments
- const Ptr<Node> & node - Pointer to Node.
Return value
Pointer to WorldTransformPath.void setLoop(int loop)
Sets a value indicating if the transformation defined by the path should be looped.Arguments
- int loop - 1 to loop the transformation defined by the path; 0 to play it only once.
int getLoop()
Returns a value indicating if the transformation defined by the path is looped.Return value
1 if the transformation is looped; otherwise, 0.void setOrientation(int orientation)
Sets a value indicating if an object should be oriented along the path.Arguments
- int orientation - 1 to orient an object along the path; 0 to keep the initial orientation of the object.
int getOrientation()
Returns a value indicating if an object is oriented along the path.Return value
1 if an object is oriented along the path; 0 if the object initial orientation is kept.Ptr<Path> getPath()
Returns the path, by which the transformation is defined. By using this function, you can edit the current path or change velocity or transformation of the object moving along the path.Return value
Instance of the Path class.void setPathName(const char * name, int unique = 0)
Reloads the internal path transformation.Arguments
- const char * name - The path name to be set.
- int unique - The dynamic flag:
- 0 - If the reloaded path is changed, paths loaded from the same file will be also changed.
- 1 - If the reloaded path is changed, paths loaded from the same file won't be changed.
const char * getPathName()
Returns the name of the path, by which the transformation is defined.Return value
The path name.int isPlaying()
Returns a value indicating if the transformation defined by the path is played.Return value
1 if the transformation is played; otherwise, 0.void setRadius(float radius)
Sets the radius for applying the transformer defined by the path (valid only outside the view frustum). If the child object transformed according to the path gets outside the view frustum, but stays in the radius range, the playback of the transformation sequence does not stop.Arguments
- float radius - Radius of the sphere in units.
float getRadius()
Returns the radius of applying the transformer defined by the path (valid only outside the view frustum). If the child object transformed according to the path gets outside the view frustum, but stays in the radius range, the playback of the transformation sequence does not stop.Return value
Radius in units.void setSpeed(float speed)
Sets the speed of playback of the transformation defined by the path.Arguments
- float speed - Speed of the transformation playback. Negative value controls reverse playback.
float getSpeed()
Returns the speed of playback of the transformation defined by the path.Return value
The playback speed.int isStopped()
Returns a value indicating if the transformation defined by the path is stopped.Return value
1 if the transformation is stopped; otherwise, 0.void setTime(float time)
Sets the time, from which the playback of the transformation defined by the path starts. If the object is oriented along the path, its transformation will be correspond to the path transformation at the specified time. Otherwise, only position of the object will change.Arguments
- float time - The playback time to be set.
float getTime()
Returns the time from which the playback of the transformation defined by the path starts.Return value
The playback time.void play()
Continues playback of the transformation defined by the path, if it is paused, or starts playback if it is stopped.void stop()
Stops playback of the transformation defined by the path. This function saves the playback position so that playing of the transformation defined by the path can be resumed from the same point.int type()
Returns the type of the node.Return value
World type identifier.Last update: 2018-08-10
Help improve this article
Was this article helpful?
(or select a word/phrase and press Ctrl+Enter)