VPath
Public Static Attributes
bool
Disables rendering of all instances of this type.
bool
Disables selection of all instances of this type.
Public Functions
void
addNode(TransformF transform, float weight, int location)
Add a node with the given properties. Nodes represent physical points that attached objects move towards or between, but the PathType determines "how" they move between them.
void
attachObject(SimObject pObject, bool pForward, float pSpeed, bool pRelative, int pStartNode)
Attach an object to this path with the given properties. If the object is already attached to a path, then a warning will be displayed and the object will not be attached to this path.
void
deleteNode(int nodeIndex)
Delete the node with the given index. If you delete a node that an attached object is moving to, or from then the object's movement will adjust so that it has a valid path.
void
detachObject(SceneObject sceneObject)
Detach the object from this path in place.
int
Get the number of nodes in this path.
float
getNodeLength(int nodeIndex)
Get the length of the given node.
Point3F
getNodeLocalPosition(int nodeIndex)
Get the position of the given node.
AngAxisF
getNodeLocalRotation(int nodeIndex)
Get the Local Rotation of the given node.
string
getNodeLocalTransform(int nodeIndex)
Get the local transform (local position and rotation) of the given node.
string
getNodeOrientationMode(int nodeIndex)
Gets the current orientation mode of the node.
float
getNodeWeight(int nodeIndex)
Get the weight of the given node.
Point3F
getNodeWorldPosition(int nodeIndex)
Get the position of the given node.
AngAxisF
getNodeWorldRotation(int nodeIndex)
Get the World Rotation of the given node.
TransformF
getNodeWorldTransform(int nodeIndex)
Get the World Transform (position and rotation) of the given node.
int
getPathObjectEndNode(SceneObject sceneObject)
Get the index of the node this object is meant to stop upon reaching.
float
getPathObjectInterp(SceneObject sceneObject)
Get the current interp position of the path object.
int
getPathObjectNode(SceneObject sceneObject)
Gets the last node of the object.
string
getPathObjectOffset(SceneObject sceneObject)
Get the position offset assigned to this object.
string
getPathObjectOrientationMode(SceneObject sceneObject)
Gets the current orientation mode of the object.
float
getPathObjectSpeed(SceneObject sceneObject)
Get the speed this object is traveling along the path at.
string
getPathPosition(int srcNodeIndex, int dstNodeIndex, float timeInterp)
Get the world position of the path at the interp point between two nodes.
string
getPathTransform(int srcNodeIndex, int dstNodeIndex, float timeInterp)
Get the transform of the path at the interp point between two nodes.
bool
isObjectAttached(SceneObject sceneObject)
Is the object attached to this path?
bool
isPathObjectActive(SceneObject sceneObject)
Is the object actively traveling around this path?
bool
isPathObjectForward(SceneObject sceneObject)
Get if this object is traveling forwards along the path.
void
setNodeOrientationMode(int pNodeIndex, string pOrientationType)
Set the orientation mode of the node.
void
setNodePosition(int nodeIndex, Point3F position)
Set the position of the given node.
void
setNodeRotation(int nodeIndex, AngAxisF aa)
Set the rotation of the given node.
void
setNodeTransform(int nodeIndex, TransformF transform)
Set the transform of the given node.
void
setNodeWeight(int nodeIndex, float nodeWeight)
Set the weight of the given node.
void
setPathObjectActive(SceneObject sceneObject, bool isActive)
Enable or disable the object from traveling around this path. Inactive objects are still attached to the path, but are not updated.
void
setPathObjectEndNode(SceneObject sceneObject, int nodeIndex)
Set end node of the path object. If a value of "-1" is applied, the object will path indefinitely.
void
setPathObjectForward(SceneObject sceneObject, bool forward)
Set the travel direction of the object.
void
setPathObjectInterp(SceneObject sceneObject, float timeInterp)
Set the interp position of the object between its current nodes.
void
setPathObjectNode(SceneObject sceneObject, int nodeIndex)
Move the object to the node's position. You may also want to observe the "setPathObjectInterp" method.
void
setPathObjectOffset(SceneObject sceneObject, Point3F offset)
Set the position offset of the object. As the object is moving along the path, its position is offset by this value. Setting the "Relative" parameter while attaching an object will automatically apply an offset value.
void
setPathObjectOrientationMode(SimObject pObject, string pOrientationType)
Set the orientation mode of the object. This property affects the rotation of the object. If you wish to ignore the object's rotation altogether, set the mode to "FREE".
void
setPathObjectSpeed(SceneObject sceneObject, float speed)
Set the speed of the object.
void
setPathType(String pathType)
The path type dictates how attached objects move between nodes. There are currently two supported path types, "BEZIER" and "LINEAR".
Detailed Description
UNDOCUMENTED!
Public Static Attributes
bool isRenderable
Disables rendering of all instances of this type.
bool isSelectable
Disables selection of all instances of this type.
Public Attributes
VPathType PathType
The type of path this is.
Public Functions
addNode(TransformF transform, float weight, int location)
Add a node with the given properties. Nodes represent physical points that attached objects move towards or between, but the PathType determines "how" they move between them.
Parameters:
pTransform | The position and rotation of the new node. |
pWeight | The weight of the new node. |
pLocation | The index of the new node. |
No return value.
attachObject(SimObject pObject, bool pForward, float pSpeed, bool pRelative, int pStartNode)
Attach an object to this path with the given properties. If the object is already attached to a path, then a warning will be displayed and the object will not be attached to this path.
Parameters:
pObject | The SimObjectID of the object to be attached. |
pForward | Should the object be moving forward? |
pSpeed | The speed that the object will travel around the path. |
pRelative | Offset the object based on the difference between the start node and its current position. |
pStartNode | The index of the node this object starts pathing from. |
pEndNode | The index of the node this object will stop pathing at. |
No return value.
deleteNode(int nodeIndex)
Delete the node with the given index. If you delete a node that an attached object is moving to, or from then the object's movement will adjust so that it has a valid path.
Parameters:
pNodeIndex | The index of the node to be deleted. |
No return value.
detachObject(SceneObject sceneObject)
Detach the object from this path in place.
Parameters:
pObject | The SimObjectID of the object to be detached. |
No return value.
getNodeCount()
Get the number of nodes in this path.
Returns the number of nodes.
getNodeLength(int nodeIndex)
Get the length of the given node.
Parameters:
pNodeIndex | The index of the node. |
Returns the length of the given node.
getNodeLocalPosition(int nodeIndex)
Get the position of the given node.
Parameters:
pNodeIndex | The index of the node. |
Returns the Local Position of the given node.
getNodeLocalRotation(int nodeIndex)
Get the Local Rotation of the given node.
Parameters:
pNodeIndex | The index of the node. |
Returns the Local Rotation of the given node.
getNodeLocalTransform(int nodeIndex)
Get the local transform (local position and rotation) of the given node.
Parameters:
pNodeIndex | The index of the node. |
Returns the transform of the given node.
getNodeOrientationMode(int nodeIndex)
Gets the current orientation mode of the node.
Parameters:
pNodeIndex | The index of the node. |
Returns a string indicating the orientation mode and its properties.
getNodeWeight(int nodeIndex)
Get the weight of the given node.
Parameters:
pNodeIndex | The index of the node. |
Returns the weight of the given node.
getNodeWorldPosition(int nodeIndex)
Get the position of the given node.
Parameters:
pNodeIndex | The index of the node. |
Returns the World Position of the given node.
getNodeWorldRotation(int nodeIndex)
Get the World Rotation of the given node.
Parameters:
pNodeIndex | The index of the node. |
Returns the World Rotation of the given node.
getNodeWorldTransform(int nodeIndex)
Get the World Transform (position and rotation) of the given node.
Parameters:
pNodeIndex | The index of the node. |
Returns the transform of the given node.
getPathObjectEndNode(SceneObject sceneObject)
Get the index of the node this object is meant to stop upon reaching.
Parameters:
pObject | The SimObjectID of the object being observed. |
Returns the node index.
getPathObjectInterp(SceneObject sceneObject)
Get the current interp position of the path object.
Parameters:
pObject | The SimObjectID of the object being observed. |
Returns the current interp position.
getPathObjectNode(SceneObject sceneObject)
Gets the last node of the object.
Parameters:
pObject | The SimObjectID of the object being observed. |
Returns the node index.
getPathObjectOffset(SceneObject sceneObject)
Get the position offset assigned to this object.
Parameters:
pObject | The SimObjectID of the object being observed. |
Returns the position offset.
getPathObjectOrientationMode(SceneObject sceneObject)
Gets the current orientation mode of the object.
Parameters:
pObject | The SimObjectID of the object being observed. |
Returns a string indicating the orientation mode and its properties.
getPathObjectSpeed(SceneObject sceneObject)
Get the speed this object is traveling along the path at.
Parameters:
pObject | The SimObjectID of the object being observed. |
Returns the speed of the object.
getPathPosition(int srcNodeIndex, int dstNodeIndex, float timeInterp)
Get the world position of the path at the interp point between two nodes.
Parameters:
pSrcNodeIndex | The first node. |
pDstNodeIndex | The second node. |
pTimeInterp | The time to interp between the two nodes. Value is between 0.0 and 1.0. |
Returns the world position of the interp time between the two given nodes.
getPathTransform(int srcNodeIndex, int dstNodeIndex, float timeInterp)
Get the transform of the path at the interp point between two nodes.
Parameters:
pSrcNodeIndex | The first node. |
pDstNodeIndex | The second node. |
pTimeInterp | The time to interp between the two nodes. Value is between 0.0 and 1.0. |
Returns the transform of the interp time between the two given nodes.
isObjectAttached(SceneObject sceneObject)
Is the object attached to this path?
Parameters:
pObject | The SimObjectID of the object you wish to check. |
Returns true if the object is attached to this path.
isPathObjectActive(SceneObject sceneObject)
Is the object actively traveling around this path?
Parameters:
pObject | The SimObjectID of the object being observed. |
Returns true of the object is active.
isPathObjectForward(SceneObject sceneObject)
Get if this object is traveling forwards along the path.
Parameters:
pObject | The SimObjectID of the object being observed. |
Returns true if the object is traveling forwards.
setNodeOrientationMode(int pNodeIndex, string pOrientationType)
Set the orientation mode of the node.
Parameters:
pNodeIndex | The index of the node. |
pOrientationType | The new orientation type of the object. |
pPoint | If the orientation type is set to POINT, this parameter must be a vector. |
No return value.
setNodePosition(int nodeIndex, Point3F position)
Set the position of the given node.
Parameters:
pNodeIndex | The index of the node. |
pPosition | The new position to be applied to the node. |
No return value.
setNodeRotation(int nodeIndex, AngAxisF aa)
Set the rotation of the given node.
Parameters:
pNodeIndex | The index of the node. |
pRotation | The new rotation to be applied to the node. |
No return value.
setNodeTransform(int nodeIndex, TransformF transform)
Set the transform of the given node.
Parameters:
pNodeIndex | The index of the node. |
pTransform | The new transform to be applied to the node. |
No return value.
setNodeWeight(int nodeIndex, float nodeWeight)
Set the weight of the given node.
Parameters:
pNodeIndex | The index of the node. |
pWeight | The new weight to be applied to the node. |
No return value.
setPathObjectActive(SceneObject sceneObject, bool isActive)
Enable or disable the object from traveling around this path. Inactive objects are still attached to the path, but are not updated.
Parameters:
pObject | The SimObjectID of the object being altered. |
pActive | The new status of the object. |
No return value.
setPathObjectEndNode(SceneObject sceneObject, int nodeIndex)
Set end node of the path object. If a value of "-1" is applied, the object will path indefinitely.
Parameters:
pObject | The SimObjectID of the object being altered. |
pNodeIndex | The index of the node that the object will cease pathing upon reaching. |
No return value.
setPathObjectForward(SceneObject sceneObject, bool forward)
Set the travel direction of the object.
Parameters:
pObject | The SimObjectID of the object being altered. |
pForward | The direction of the object. |
No return value.
setPathObjectInterp(SceneObject sceneObject, float timeInterp)
Set the interp position of the object between its current nodes.
Parameters:
pObject | The SimObjectID of the object being altered. |
pTimeInterp | The new interp position of the object. |
No return value.
setPathObjectNode(SceneObject sceneObject, int nodeIndex)
Move the object to the node's position. You may also want to observe the "setPathObjectInterp" method.
Parameters:
pObject | The SimObjectID of the object being altered. |
pNodeIndex | The index of the node that the object will reposition to. |
No return value.
setPathObjectOffset(SceneObject sceneObject, Point3F offset)
Set the position offset of the object. As the object is moving along the path, its position is offset by this value. Setting the "Relative" parameter while attaching an object will automatically apply an offset value.
Parameters:
pObject | The SimObjectID of the object being altered. |
pOffset | The new position offset of the object. |
No return value.
setPathObjectOrientationMode(SimObject pObject, string pOrientationType)
Set the orientation mode of the object. This property affects the rotation of the object. If you wish to ignore the object's rotation altogether, set the mode to "FREE".
Parameters:
pObject | The SimObjectID of the object being altered. |
pOrientationType | The new orientation type of the object. |
pObject | If the orientation type is set to OBJECT, this parameter must be the SimObjectID of a scene object. |
pPoint | If the orientation type is set to POINT, this parameter must be a vector. |
No return value.
setPathObjectSpeed(SceneObject sceneObject, float speed)
Set the speed of the object.
Parameters:
pObject | The SimObjectID of the object being altered. |
pSpeed | The new speed of the object. |
No return value.
setPathType(String pathType)
The path type dictates how attached objects move between nodes. There are currently two supported path types, "BEZIER" and "LINEAR".
No return value.