This reference page is linked to from the following overview topics: FBModel - Transformation Data and the Scene Graph.
Path 3D model class.
Definition at line 63 of file fbmodelpath3d.h.
#include <fbmodelpath3d.h>

Public Member Functions |
|
| FBModelPath3D (const char *pName, HIObject pObject=NULL) | |
| Constructor. |
|
| void | ShowCurveControls (bool pShow) |
| Enable or disable displaying Curve Controls
for the 3D model path. |
|
| void | ShowCurvePoints (bool pShow) |
| Enable or disable displaying Curve Points
for the 3D model path. |
|
| int | PathKeyGetCount () |
| Query the number of keys present in the
path. |
|
| FBVector4d | PathKeyGet (int pKeyIndex) |
| Get path's key vector for at a particular
key index. |
|
| void | PathKeySet (int pKeyIndex, FBVector4d pTLocal, bool pUpdate=true) |
| Set the local coordinate vector values for
path at a particular key index. |
|
| K_DEPRECATED void | PathSetKeyLeftRightTangeant (int pKeyIndex, FBVector4d pKeyTLocal, FBVector4d pLeftTangentTLocal, FBVector4d pRightTangentTLocal, bool pUpdate=true) |
| void | PathKeySetLeftRightTangent (int pKeyIndex, FBVector4d pKeyTLocal, FBVector4d pLeftTangentTLocal, FBVector4d pRightTangentTLocal, bool pUpdate=true) |
| Set path's vectors for key, left tangent and
right tangent at a particular key index. |
|
| void | PathKeyRemove (int pKeyIndex) |
| Remove key at a particular index. |
|
| void | PathKeyClear () |
| Clear the path keys. |
|
| K_DEPRECATED void | PathKeySetLeftTangeant (int pKeyIndex, FBVector4d pTLocal, bool pUpdate=true) |
| void | PathKeySetLeftTangent (int pKeyIndex, FBVector4d pTLocal, bool pUpdate=true) |
| Set path's key left tangent vector for
designated index. |
|
| K_DEPRECATED void | PathKeySetRightTangeant (int pKeyIndex, FBVector4d pTLocal, bool pUpdate=true) |
| void | PathKeySetRightTangent (int pKeyIndex, FBVector4d pTLocal, bool pUpdate=true) |
| Set 3D path's key right tangent vector for
designated index. |
|
| K_DEPRECATED FBVector4d | PathKeyGetLeftTangeant (int pKeyIndex) |
| FBVector4d | PathKeyGetLeftTangent (int pKeyIndex) |
| Get the path key left tangent's vector value
for designated index. |
|
| K_DEPRECATED FBVector4d | PathKeyGetRightTangeant (int pKeyIndex) |
| FBVector4d | PathKeyGetRightTangent (int pKeyIndex) |
| Get the path key right tangent's vector
value for designated index. |
|
| void | PathKeySetXDerivative (int pKeyIndex, double pDerivative, bool pUpdate) |
| Set derivative in X coordinate for a path
tangent. |
|
| void | PathKeySetYDerivative (int pKeyIndex, double pDerivative, bool pUpdate) |
| Set derivative in Y coordinate for a path
tangent. |
|
| void | PathKeySetZDerivative (int pKeyIndex, double pDerivative, bool pUpdate) |
| Set derivative in Z coordinate for a path
tangent. |
|
| void | PathKeySetXYZDerivative (int pKeyIndex, FBVector4d pDerivative, bool pUpdate) |
| Set derivative in XYZ coordinates for a path
tangent. |
|
| FBVector4d | PathKeyGetXYZDerivative (int pKeyIndex) |
| Get vector in XYZ coordinates for a path
tangent. |
|
| K_DEPRECATED double | PatKeyGetLeftTangeantLength (int pKeyIndex) |
| double | PathKeyGetLeftTangentLength (int pKeyIndex) |
| Query the length of the left tangent.
|
|
| K_DEPRECATED double | PatKeyGetRightTangeantLength (int pKeyIndex) |
| double | PathKeyGetRightTangentLength (int pKeyIndex) |
| Query the value of the right tangent.
|
|
| int | GetSelectedPathKeyCount () |
| Query the number of keys present in the
selected path. |
|
| void | PathKeyRemoveSelected () |
| Remove the selected keys from the path.
|
|
| int | InsertNewStartKey () |
| Insert a new key at the start of the path.
|
|
| int | InsertNewEndKey () |
| Insert a new key at the end of the path.
|
|
| int | PathKeyStartAdd (FBVector4d pTLocal) |
| Adds a new key to the start of the path
(with time gap of 1 sec). |
|
| int | PathKeyEndAdd (FBVector4d pTLocal) |
| Adds a new key to the end of the path (with
time gap of 1 sec). |
|
| int | Total_PathKeyAdd (double pTotalPercent, FBVector4d pTLocal) |
| Adds a new key either at the start, end or
along the path as per specified. |
|
| int | Total_IsPathKey (double pTotalPercent) |
| Query whether a percentage value has a key
associated at that point in the path. |
|
| FBVector4d | Total_GlobalPathEvaluate (double pTotalPercent) |
| Get the path's vector at a particular point
within the curve, in global coordinates. |
|
| FBVector4d | Total_LocalPathEvaluate (double pTotalPercent) |
| Get the path's vector at a particular point
within the curve, in local coordinates. |
|
| FBVector4d | Total_GlobalPathEvaluateDerivative (double pTotalPercent) |
| Get the path's derivative at a particular
point within the curve, in global coordinates. |
|
| FBVector4d | Total_LocalPathEvaluateDerivative (double pTotalPercent) |
| Get the path's derivative at a particular
point within the curve, in local coordinates. |
|
| int | Segment_PathKeyAdd (double pSegmentPercent, FBVector4d pTLocal) |
| Adds a new key either at the start, end or
along the path as per specified. |
|
| int | Segment_IsPathKey (double pSegmentPercent) |
| Query whether a percentage value has a key
associated at that point in the path. |
|
| FBVector4d | Segment_GlobalPathEvaluate (double pSegmentPercent) |
| Get the path's vector at a particular point
within the curve, in global coordinates. |
|
| FBVector4d | Segment_LocalPathEvaluate (double pSegmentPercent) |
| Get the path's vector at a particular point
within the curve, in local coordinates. |
|
| FBVector4d | Segment_GlobalPathEvaluateDerivative (double pSegmentPercent) |
| Get the path's derivative at a particular
point within the curve, in global coordinates. |
|
| FBVector4d | Segment_LocalPathEvaluateDerivative (double pSegmentPercent) |
| Get the path's derivative at a particular
point within the curve, in local coordinates. |
|
| double | ConvertTotalPercentToSegmentPercent (double pPercent) |
| Converting one key type Total (percent) to
Segment (time). |
|
| double | ConvertSegmentPercentToTotalPercent (double pPercent) |
| Converting one key type Segment (time) to
Total (percent). |
|
| double | ConvertToSegmentPercentFactor () |
| Get factor for multiplying the derivative of
a key for segment mode. |
|
| double | ConvertToTotalPercentFactor () |
| Get factor for multiplying the derivative of
a key for total mode. |
|
| void | UpdateGeometry () |
| Update path geometry explicitly. |
|
Public Attributes |
|
| FBPropertyAnimatableColor | Color |
| FBModelPath3D | ( | const char * | pName, |
| HIObject | pObject =
NULL |
||
| ) |
Constructor.
| pName | Name of Path 3D. |
| pObject | For internal use only(default=NULL). |
Python sample code:
Script Sample.
from pyfbsdk import *
path = FBModelPath3D("Test")
path.Show = True
der = path.Total_LocalPathEvaluateDerivative(1)
path.PathKeySetLeftTangeant(1,FBVector4d(25,25,25,25),True)
## Add keys at start and end
path.PathKeyStartAdd(FBVector4d(0,0,100,0))
path.PathKeyEndAdd(FBVector4d(100,0,0,0))
## Add keys within the path
path.Segment_PathKeyAdd(75.0,FBVector4d(25,25,25,25))
path.Segment_PathKeyAdd(25.0,FBVector4d(25,0,25,25))
| void ShowCurveControls | ( | bool | pShow | ) |
Enable or disable displaying Curve Controls for the 3D model path.
| pShow | true if curve controls are to be displayed false if not required |
| void ShowCurvePoints | ( | bool | pShow | ) |
Enable or disable displaying Curve Points for the 3D model path.
| pShow | true if curve points are to be displayed false if not required |
| int PathKeyGetCount | ( | ) |
Query the number of keys present in the path.
| FBVector4d PathKeyGet | ( | int | pKeyIndex | ) |
Get path's key vector for at a particular key index.
| pKeyIndex | Key ID to set with |
| void PathKeySet | ( | int | pKeyIndex, |
| FBVector4d | pTLocal, | ||
| bool | pUpdate =
true |
||
| ) |
Set the local coordinate vector values for path at a particular key index.
| pKeyIndex | Key ID to set with |
| pTLocal | Vector to use to set values to Key |
| pUpdate | true if geometry update is required, false if not required (default=true) |
| K_DEPRECATED void PathSetKeyLeftRightTangeant | ( | int | pKeyIndex, |
| FBVector4d | pKeyTLocal, | ||
| FBVector4d | pLeftTangentTLocal, | ||
| FBVector4d | pRightTangentTLocal, | ||
| bool | pUpdate =
true |
||
| ) |
Set path's vectors for key, left tangent and right tangent at a particular key index.
| pKeyIndex | Key ID to set key for left and right tangents |
| pKeyTLocal | Vector to use to set values to Key |
| pLeftTangentTLocal | Vector to use to set values to Key Left Tangent |
| pRightTangentTLocal | Vector to use to set values to Key Right Tangent |
| pUpdate | true if geometry update is required, false if not required (default=true) |
| void PathKeySetLeftRightTangent | ( | int | pKeyIndex, |
| FBVector4d | pKeyTLocal, | ||
| FBVector4d | pLeftTangentTLocal, | ||
| FBVector4d | pRightTangentTLocal, | ||
| bool | pUpdate =
true |
||
| ) |
Set path's vectors for key, left tangent and right tangent at a particular key index.
| pKeyIndex | Key ID to set key for left and right tangents |
| pKeyTLocal | Vector to use to set values to Key |
| pLeftTangentTLocal | Vector to use to set values to Key Left Tangent |
| pRightTangentTLocal | Vector to use to set values to Key Right Tangent |
| pUpdate | true if geometry update is required, false if not required (default=true) |
| void PathKeyRemove | ( | int | pKeyIndex | ) |
Remove key at a particular index.
| pKeyIndex | Key ID at which key is to be removed. |
| void PathKeyClear | ( | ) |
Clear the path keys.
| K_DEPRECATED void PathKeySetLeftTangeant | ( | int | pKeyIndex, |
| FBVector4d | pTLocal, | ||
| bool | pUpdate =
true |
||
| ) |
Set path's key left tangent vector for designated index.
| pKeyIndex | Key ID at which left tangent is to be set |
| pKeyTLocal | Vector to use to set values to Key |
| pUpdate | true if geometry update is required, false if not required (default=true) |
| void PathKeySetLeftTangent | ( | int | pKeyIndex, |
| FBVector4d | pTLocal, | ||
| bool | pUpdate =
true |
||
| ) |
Set path's key left tangent vector for designated index.
| pKeyIndex | Key ID at which left tangent is to be set |
| pKeyTLocal | Vector to use to set values to Key |
| pUpdate | true if geometry update is required, false if not required (default=true) |
| K_DEPRECATED void PathKeySetRightTangeant | ( | int | pKeyIndex, |
| FBVector4d | pTLocal, | ||
| bool | pUpdate =
true |
||
| ) |
Set 3D path's key right tangent vector for designated index.
| pKeyIndex | Key ID at which right tangent is to be set |
| pKeyTLocal | Vector to use to set values to Key |
| pUpdate | true if geometry update is required, false if not required (default=true) |
| void PathKeySetRightTangent | ( | int | pKeyIndex, |
| FBVector4d | pTLocal, | ||
| bool | pUpdate =
true |
||
| ) |
Set 3D path's key right tangent vector for designated index.
| pKeyIndex | Key ID at which right tangent is to be set |
| pKeyTLocal | Vector to use to set values to Key |
| pUpdate | true if geometry update is required, false if not required (default=true) |
| K_DEPRECATED FBVector4d PathKeyGetLeftTangeant | ( | int | pKeyIndex | ) |
Get the path key left tangent's vector value for designated index.
| pKeyIndex | Key ID at which left tangent value is required |
| FBVector4d PathKeyGetLeftTangent | ( | int | pKeyIndex | ) |
Get the path key left tangent's vector value for designated index.
| pKeyIndex | Key ID at which left tangent value is required |
| K_DEPRECATED FBVector4d PathKeyGetRightTangeant | ( | int | pKeyIndex | ) |
Get the path key right tangent's vector value for designated index.
| pKeyIndex | Key ID to set with |
| FBVector4d PathKeyGetRightTangent | ( | int | pKeyIndex | ) |
Get the path key right tangent's vector value for designated index.
| pKeyIndex | Key ID to set with |
| void PathKeySetXDerivative | ( | int | pKeyIndex, |
| double | pDerivative, | ||
| bool | pUpdate | ||
| ) |
Set derivative in X coordinate for a path tangent.
This works only if key interpolation type is CUBIC and tangent mode is User, Break or Auto.
| pKeyIndex | Key ID to set with |
| pDerivative | Value of the derivative to apply to tangent |
| pUpdate | true if geometry update is required, false if not required (default=true) |
| void PathKeySetYDerivative | ( | int | pKeyIndex, |
| double | pDerivative, | ||
| bool | pUpdate | ||
| ) |
Set derivative in Y coordinate for a path tangent.
This works only if key interpolation type is CUBIC and tangent mode is User, Break or Auto.
| pKeyIndex | Key ID to set with |
| pDerivative | Value of the derivative to apply to tangent |
| pUpdate | true if geometry update is required, false if not required (default=true) |
| void PathKeySetZDerivative | ( | int | pKeyIndex, |
| double | pDerivative, | ||
| bool | pUpdate | ||
| ) |
Set derivative in Z coordinate for a path tangent.
This works only if key interpolation type is CUBIC and tangent mode is User, Break or Auto.
| pKeyIndex | Key ID to set with |
| pDerivative | Value of the derivative to apply to tangent |
| pUpdate | true if geometry update is required, false if not required (default=true) |
| void PathKeySetXYZDerivative | ( | int | pKeyIndex, |
| FBVector4d | pDerivative, | ||
| bool | pUpdate | ||
| ) |
Set derivative in XYZ coordinates for a path tangent.
This works only if key interpolation type is CUBIC and tangent mode is User, Break or Auto.
| pKeyIndex | Key ID to set with |
| pDerivative | Value of the derivative to apply to tangent |
| pUpdate | true if geometry update is required, false if not required (default=true) |
| FBVector4d PathKeyGetXYZDerivative | ( | int | pKeyIndex | ) |
Get vector in XYZ coordinates for a path tangent.
This works only if key interpolation type is CUBIC and tangent mode is User, Break or Auto.
| pKeyIndex | Key ID to set with |
| K_DEPRECATED double PatKeyGetLeftTangeantLength | ( | int | pKeyIndex | ) |
Query the length of the left tangent.
| pKeyIndex | Key ID to set with |
| double PathKeyGetLeftTangentLength | ( | int | pKeyIndex | ) |
Query the length of the left tangent.
| pKeyIndex | Key ID to set with |
| K_DEPRECATED double PatKeyGetRightTangeantLength | ( | int | pKeyIndex | ) |
Query the value of the right tangent.
| pKeyIndex | Key ID to set with |
| double PathKeyGetRightTangentLength | ( | int | pKeyIndex | ) |
Query the value of the right tangent.
| pKeyIndex | Key ID to set with |
| int GetSelectedPathKeyCount | ( | ) |
Query the number of keys present in the selected path.
| void PathKeyRemoveSelected | ( | ) |
Remove the selected keys from the path.
| int InsertNewStartKey | ( | ) |
Insert a new key at the start of the path.
| int InsertNewEndKey | ( | ) |
Insert a new key at the end of the path.
| int PathKeyStartAdd | ( | FBVector4d | pTLocal | ) |
Adds a new key to the start of the path (with time gap of 1 sec).
The derivative value for the new key is copied from the right tangent of the first key.
| pTLocal | Vector value for the new added Key |
| int PathKeyEndAdd | ( | FBVector4d | pTLocal | ) |
Adds a new key to the end of the path (with time gap of 1 sec).
The derivative value for the new key is copied from the left tangent of the last key.
| pTLocal | Vector value for the new added Key |
| int Total_PathKeyAdd | ( | double | pTotalPercent, |
| FBVector4d | pTLocal | ||
| ) |
Adds a new key either at the start, end or along the path as per specified.
| pTotalPercent | Double value indicating where the key is to be added. If < 0, key added before start of the path, if > 0, key added at end of path, otherwise it is added somewhere along the path depending on value specified |
| pTLocal | Vector to use to set values to Key |
| int Total_IsPathKey | ( | double | pTotalPercent | ) |
Query whether a percentage value has a key associated at that point in the path.
| pTotalPercent | Double value (as percentage) at which the path would be queried for existence of key |
| FBVector4d Total_GlobalPathEvaluate | ( | double | pTotalPercent | ) |
Get the path's vector at a particular point within the curve, in global coordinates.
| pTotalPercent | Double value (as percentage) at which the path vector would be computed |
| FBVector4d Total_LocalPathEvaluate | ( | double | pTotalPercent | ) |
Get the path's vector at a particular point within the curve, in local coordinates.
| pTotalPercent | Double value (as percentage) at which the path vector would be computed |
| FBVector4d Total_GlobalPathEvaluateDerivative | ( | double | pTotalPercent | ) |
Get the path's derivative at a particular point within the curve, in global coordinates.
| pTotalPercent | Double value (as percentage) at which the path derivative would be computed |
| FBVector4d Total_LocalPathEvaluateDerivative | ( | double | pTotalPercent | ) |
Get the path's derivative at a particular point within the curve, in local coordinates.
| pTotalPercent | Double value (as percentage) at which the path derivative would be computed |
| int Segment_PathKeyAdd | ( | double | pSegmentPercent, |
| FBVector4d | pTLocal | ||
| ) |
Adds a new key either at the start, end or along the path as per specified.
| pTotalPercent | Double value indicating where the key is to be added. If < 0, key added before start of the path, if > 0, key added at end of path, otherwise it is added somewhere along the path depending on value specified |
| pTLocal | Vector to use to set values to Key |
| int Segment_IsPathKey | ( | double | pSegmentPercent | ) |
Query whether a percentage value has a key associated at that point in the path.
| pTotalPercent | Double value (as time) at which the path would be queried for existence of key |
| FBVector4d Segment_GlobalPathEvaluate | ( | double | pSegmentPercent | ) |
Get the path's vector at a particular point within the curve, in global coordinates.
| pTotalPercent | Double value (as time) at which the path vector would be computed |
| FBVector4d Segment_LocalPathEvaluate | ( | double | pSegmentPercent | ) |
Get the path's vector at a particular point within the curve, in local coordinates.
| pTotalPercent | Double value (as time) at which the path vector would be computed |
| FBVector4d Segment_GlobalPathEvaluateDerivative | ( | double | pSegmentPercent | ) |
Get the path's derivative at a particular point within the curve, in global coordinates.
| pTotalPercent | Double value (as time) at which the path derivative would be computed |
| FBVector4d Segment_LocalPathEvaluateDerivative | ( | double | pSegmentPercent | ) |
Get the path's derivative at a particular point within the curve, in local coordinates.
| pTotalPercent | Double value (as time) at which the path derivative would be computed |
| double ConvertTotalPercentToSegmentPercent | ( | double | pPercent | ) |
Converting one key type Total (percent) to Segment (time).
| pPercent | Double value (as percentage) |
| double ConvertSegmentPercentToTotalPercent | ( | double | pPercent | ) |
Converting one key type Segment (time) to Total (percent).
| pPercent | Double value (as time) |
| double ConvertToSegmentPercentFactor | ( | ) |
Get factor for multiplying the derivative of a key for segment mode.
| double ConvertToTotalPercentFactor | ( | ) |
Get factor for multiplying the derivative of a key for total mode.
| void UpdateGeometry | ( | ) |
Update path geometry explicitly.
Definition at line 69 of file fbmodelpath3d.h.