#include <fbxnurbscurve.h>
A Non-Uniform Rational B-Spline (NURBS) curve is a type of parametric geometry.
A NURBS curve is defined by the order, form, knot vector and control points.
Let M be the order of the curve. Let N be the number of control points of the curve.
The form of the curve can be open, closed or periodic. A curve with end points that do not meet is defined as an open curve. The number of knots in an open curve is defined as N+(M+1).
A closed curve simply has its last control point equal to its first control point. Note that this does not imply tangent continuity at the end point. The curve may have a kink at this point. In FBX the last control point is not specified by the user in the InitControlPoints() method. For example, if there are to be 10 control points in total, and the curve is to be closed, than only 9 control points need to be passed into the InitControlPoints() method. The last control point is implied to be equal to the first control point. Thus N represents the number of unique CVs.
A periodic curve has its last M control points equal to its first M control points. A periodic curve is tangent continuous at the ends. Similar to a closed curve, when creating a periodic curve, only the unique control points need to be set. For example a periodic curve of order 3 with 10 control points requires only 7 CVs to be specified in the InitControlPoints() method. The last 3 CVs, which are the same as the first 3, are not included.
The calculation of the number of knots in closed and periodic curves is more complex. Since we have excluded one CV in N in a closed curve, the number of knots is N+(M+1)+1. Similarly, we excluded M CVs in periodic curves so the number of knots is N+(M+1)+M.
Note that FBX stores one extra knot at the beginning and and end of the knot vector, compared to some other graphics applications such as Maya. The two knots are not used in calculation, but they are included so that no data is lost when converting from file formats that do store the extra knots.
Definition at line 60 of file fbxnurbscurve.h.
Public Member Functions | |
virtual FbxNodeAttribute::EType | GetAttributeType () const |
Returns the EType::eNurbsCurve node attribute type. More... | |
void | InitControlPoints (int pCount, EType pVType) |
Allocates memory space for the control points array as well as for the knot vector. More... | |
double * | GetKnotVector () const |
Returns the knot vector. More... | |
int | GetKnotCount () const |
Returns the number of elements in the knot vector. More... | |
void | SetOrder (int pOrder) |
Sets the order of the curve. More... | |
int | GetOrder () const |
Returns the NURBS curve order. More... | |
void | SetStep (int pStep) |
Sets the step of the curve. More... | |
int | GetStep () const |
Returns the NURBS curve step. More... | |
void | SetDimension (EDimension pDimension) |
Sets the dimension of the CVs. More... | |
EDimension | GetDimension () const |
Returns the control points dimension. More... | |
bool | IsRational () |
Determines if the curve is rational or not. More... | |
int | GetSpanCount () const |
Calculates the number of curve spans with the following: Where S = Number of spans N = Number of CVs M = Order of the curve. More... | |
EType | GetType () const |
Returns NURBS type. More... | |
bool | IsPolyline () const |
Checks if the curve is a poly line. More... | |
bool | IsBezier () const |
This function determines if this NURBS curve is a Bezier curve. More... | |
int | TessellateCurve (FbxArray< FbxVector4 > &pPointArray, int pStep=16) |
Evaluate the point on the curve. More... | |
FbxLine * | TessellateCurve (int pStep=16) |
Evaluate the point on the curve. More... | |
![]() | |
int | AddDeformer (FbxDeformer *pDeformer) |
Adds a deformer to this geometry (as mentioned in the description of this class, adding a deformer is a synonym for "connect a deformer"). More... | |
FbxDeformer * | RemoveDeformer (int pIndex, FbxStatus *pStatus=NULL) |
Remove a deformer. More... | |
int | GetDeformerCount () const |
Returns the number of deformers. More... | |
FbxDeformer * | GetDeformer (int pIndex, FbxStatus *pStatus=NULL) const |
Returns the deformer at the specified index. More... | |
int | GetDeformerCount (FbxDeformer::EDeformerType pType) const |
Returns the number of deformers of a specified type. More... | |
FbxDeformer * | GetDeformer (int pIndex, FbxDeformer::EDeformerType pType, FbxStatus *pStatus=NULL) const |
Returns the deformer of a specified type at the specified index. More... | |
FbxGeometryWeightedMap * | GetSourceGeometryWeightedMap () |
Returns the source geometry weighted map that is connected to this geometry. More... | |
int | GetDestinationGeometryWeightedMapCount () const |
Returns the number of destination geometry weighted map(s) that are connected to this geometry. More... | |
FbxGeometryWeightedMap * | GetDestinationGeometryWeightedMap (int pIndex) |
Returns the destination geometry weighted map at a specified index. More... | |
bool | AddShape (int pBlendShapeIndex, int pBlendShapeChannelIndex, FbxShape *pShape, double pPercent=100, FbxStatus *pStatus=NULL) |
Add a shape to the specified blend shape deformer and blend shape channel of this geometry. More... | |
void | ClearShape () |
Removes all the shapes without destroying them. More... | |
int | GetShapeCount () const |
Returns the number of shapes. More... | |
int | GetShapeCount (int pBlendShapeIndex, int pBlendShapeChannelIndex, FbxStatus *pStatus=NULL) const |
Returns the number of shapes. More... | |
FbxShape * | GetShape (int pBlendShapeIndex, int pBlendShapeChannelIndex, int pShapeIndex, FbxStatus *pStatus=NULL) |
Returns the shape found at the specified index on a blend shape channel of a blend shape deformer. More... | |
const FbxShape * | GetShape (int pBlendShapeIndex, int pBlendShapeChannelIndex, int pShapeIndex, FbxStatus *pStatus=NULL) const |
Returns the shape found at the specified index on a blend shape channel of a blend shape deformer. More... | |
FbxAnimCurve * | GetShapeChannel (int pBlendShapeIndex, int pBlendShapeChannelIndex, FbxAnimLayer *pLayer, bool pCreateAsNeeded=false, FbxStatus *pStatus=NULL) |
Get the shape animation curve. More... | |
FbxAMatrix & | GetPivot (FbxAMatrix &pXMatrix) const |
Returns the pivot matrix. More... | |
void | SetPivot (FbxAMatrix &pXMatrix) |
Sets the pivot matrix. More... | |
void | ApplyPivot () |
Applies the pivot matrix to all vertices/normals of the geometry. More... | |
void | SetDefaultShape (int pBlendShapeIndex, int pBlendShapeChannelIndex, double pPercent) |
Sets the default deformation for a specified shape. More... | |
void | SetDefaultShape (FbxBlendShapeChannel *pBlendShapeChannel, double pPercent) |
Sets the default deformation for a specified channel. More... | |
double | GetDefaultShape (int pBlendShapeIndex, int pBlendShapeChannelIndex) const |
Returns the default deformation value for the specified shape. More... | |
double | GetDefaultShape (FbxBlendShapeChannel *pBlendShapeChannel) const |
Returns the default deformation value for the specified channel. More... | |
![]() | |
virtual int | MemoryUsage () const |
Calculate the actual amount of memory used by this geometry object. More... | |
virtual void | InitControlPoints (int pCount) |
Allocates memory space for the array of control points. More... | |
void | InitNormals (int pCount=0) |
Allocates memory space for the array of normals. More... | |
void | InitNormals (FbxGeometryBase *pSrc) |
Allocates memory space for the array of normals cloned from the pSrc. More... | |
void | InitTangents (int pCount=0, const int pLayerIndex=0, const char *pName="") |
Allocates memory space for the array of tangents on specified layer. More... | |
void | InitTangents (FbxGeometryBase *pSrc, const int pLayerIndex=0) |
Allocates memory space for the array of tangents cloned from the pSrc on the specified layer. More... | |
void | InitBinormals (int pCount=0, const int pLayerIndex=0, const char *pName="") |
Allocates memory space for the array of binormals. More... | |
void | InitBinormals (FbxGeometryBase *pSrc, const int pLayerIndex=0) |
Allocates memory space for the array of binormals cloned from the pSrc. More... | |
virtual void | SetControlPointAt (const FbxVector4 &pCtrlPoint, const FbxVector4 &pNormal, int pIndex, bool pI2DSearch=false) |
Sets the control point and the normal values at the specified index. More... | |
virtual void | SetControlPointAt (const FbxVector4 &pCtrlPoint, int pIndex) |
Sets the control point at a specified index. More... | |
virtual FbxVector4 | GetControlPointAt (int pIndex) const |
Gets the control point at the specified index. More... | |
virtual void | SetControlPointNormalAt (const FbxVector4 &pNormal, int pIndex, bool pI2DSearch=false) |
Sets the control point normal value at the specified index. More... | |
virtual int | GetControlPointsCount () const |
Returns the number of control points. More... | |
virtual FbxVector4 * | GetControlPoints (FbxStatus *pStatus=NULL) const |
Returns a pointer to the array of control points. More... | |
virtual void | SetControlPointCount (int pCount) |
Allocates memory space for the array of control points. More... | |
void | ComputeBBox () |
Computes the control points Bounding box. More... | |
FbxGeometryElementNormal * | CreateElementNormal () |
Creates a normal geometry element for this geometry. More... | |
bool | RemoveElementNormal (FbxGeometryElementNormal *pElementNormal) |
Remove the normal geometry element from this geometry. More... | |
FbxGeometryElementNormal * | GetElementNormal (int pIndex=0) |
Returns this geometry's normal element. More... | |
const FbxGeometryElementNormal * | GetElementNormal (int pIndex=0) const |
Returns this geometry's normal element. More... | |
int | GetElementNormalCount () const |
Get the number of this geometry's normal geometry element. More... | |
FbxGeometryElementBinormal * | CreateElementBinormal () |
Creates a binormal geometry element for this geometry. More... | |
bool | RemoveElementBinormal (FbxGeometryElementBinormal *pElementBinormal) |
Remove the binormal geometry element from this geometry. More... | |
FbxGeometryElementBinormal * | GetElementBinormal (int pIndex=0) |
Returns this geometry's binormal element. More... | |
const FbxGeometryElementBinormal * | GetElementBinormal (int pIndex=0) const |
Returns this geometry's binormal element. More... | |
int | GetElementBinormalCount () const |
Get the number of this geometry's binormal geometry element. More... | |
FbxGeometryElementTangent * | CreateElementTangent () |
Creates a tangent geometry element for this geometry. More... | |
bool | RemoveElementTangent (FbxGeometryElementTangent *pElementTangent) |
Remove the tangent geometry element from this geometry. More... | |
FbxGeometryElementTangent * | GetElementTangent (int pIndex=0) |
Returns this geometry's tangent element. More... | |
const FbxGeometryElementTangent * | GetElementTangent (int pIndex=0) const |
Returns this geometry's tangent element. More... | |
int | GetElementTangentCount () const |
Get the number of this geometry's tangent geometry element. More... | |
FbxGeometryElementMaterial * | CreateElementMaterial () |
Creates a material geometry element for this geometry. More... | |
bool | RemoveElementMaterial (FbxGeometryElementMaterial *pElementMaterial) |
Remove the material geometry element from this geometry. More... | |
FbxGeometryElementMaterial * | GetElementMaterial (int pIndex=0) |
Returns this geometry's material element. More... | |
const FbxGeometryElementMaterial * | GetElementMaterial (int pIndex=0) const |
Returns this geometry's material element. More... | |
int | GetElementMaterialCount () const |
Get the number of this geometry's material geometry element. More... | |
FbxGeometryElementPolygonGroup * | CreateElementPolygonGroup () |
Creates a polygon group geometry element for this geometry. More... | |
bool | RemoveElementPolygonGroup (FbxGeometryElementPolygonGroup *pElementPolygonGroup) |
Remove the polygon group geometry element from this geometry. More... | |
FbxGeometryElementPolygonGroup * | GetElementPolygonGroup (int pIndex=0) |
Returns this geometry's polygon group element. More... | |
const FbxGeometryElementPolygonGroup * | GetElementPolygonGroup (int pIndex=0) const |
Returns this geometry's polygon group element. More... | |
int | GetElementPolygonGroupCount () const |
Get the number of this geometry's polygon group geometry element. More... | |
FbxGeometryElementVertexColor * | CreateElementVertexColor () |
Creates a vertex color geometry element for this geometry. More... | |
bool | RemoveElementVertexColor (FbxGeometryElementVertexColor *pElementVertexColor) |
Remove the vertex color geometry element from this geometry. More... | |
FbxGeometryElementVertexColor * | GetElementVertexColor (int pIndex=0) |
Returns this geometry's vertex color element. More... | |
const FbxGeometryElementVertexColor * | GetElementVertexColor (int pIndex=0) const |
Returns this geometry's vertex color element. More... | |
int | GetElementVertexColorCount () const |
Get the number of this geometry's vertex color geometry element. More... | |
FbxGeometryElementSmoothing * | CreateElementSmoothing () |
Creates a smoothing geometry element for this geometry. More... | |
bool | RemoveElementSmoothing (FbxGeometryElementSmoothing *pElementSmoothing) |
Remove the smoothing geometry element from this geometry. More... | |
FbxGeometryElementSmoothing * | GetElementSmoothing (int pIndex=0) |
Returns this geometry's smoothing element. More... | |
const FbxGeometryElementSmoothing * | GetElementSmoothing (int pIndex=0) const |
Returns this geometry's smoothing element. More... | |
int | GetElementSmoothingCount () const |
Get the number of this geometry's smoothing geometry element. More... | |
FbxGeometryElementCrease * | CreateElementVertexCrease () |
Creates a vertex crease geometry element for this geometry. More... | |
bool | RemoveElementVertexCrease (FbxGeometryElementCrease *pElementCrease) |
Remove the vertex crease geometry element from this geometry. More... | |
FbxGeometryElementCrease * | GetElementVertexCrease (int pIndex=0) |
Returns this geometry's vertex crease element. More... | |
const FbxGeometryElementCrease * | GetElementVertexCrease (int pIndex=0) const |
Returns this geometry's vertex crease element. More... | |
int | GetElementVertexCreaseCount () const |
Get the number of this geometry's vertex crease geometry element. More... | |
FbxGeometryElementCrease * | CreateElementEdgeCrease () |
Creates an edge crease geometry element for this geometry. More... | |
bool | RemoveElementEdgeCrease (FbxGeometryElementCrease *pElementCrease) |
Remove the edge crease geometry element from this geometry. More... | |
FbxGeometryElementCrease * | GetElementEdgeCrease (int pIndex=0) |
Returns this geometry's edge crease element. More... | |
const FbxGeometryElementCrease * | GetElementEdgeCrease (int pIndex=0) const |
Returns this geometry's edge crease element. More... | |
int | GetElementEdgeCreaseCount () const |
Get the number of this geometry's edge crease geometry element. More... | |
FbxGeometryElementHole * | CreateElementHole () |
Creates a hole geometry element for this geometry. More... | |
bool | RemoveElementHole (FbxGeometryElementHole *pElementHole) |
Remove the hole geometry element from this geometry. More... | |
FbxGeometryElementHole * | GetElementHole (int pIndex=0) |
Returns this geometry's hole element. More... | |
const FbxGeometryElementHole * | GetElementHole (int pIndex=0) const |
Returns this geometry's hole element. More... | |
int | GetElementHoleCount () const |
Get the number of this geometry's hole geometry element. More... | |
FbxGeometryElementUserData * | CreateElementUserData () |
Creates a user data geometry element for this geometry. More... | |
bool | RemoveElementUserData (FbxGeometryElementUserData *pElementUserData) |
Remove the user data geometry element from this geometry. More... | |
FbxGeometryElementUserData * | GetElementUserData (int pIndex=0) |
Returns this geometry's user data element. More... | |
const FbxGeometryElementUserData * | GetElementUserData (int pIndex=0) const |
Returns this geometry's user data element. More... | |
int | GetElementUserDataCount () const |
Get the number of this geometry's user data geometry element. More... | |
FbxGeometryElementVisibility * | CreateElementVisibility () |
Creates a visibility geometry element for this geometry. More... | |
bool | RemoveElementVisibility (FbxGeometryElementVisibility *pElementVisibility) |
Remove the visibility geometry element from this geometry. More... | |
FbxGeometryElementVisibility * | GetElementVisibility (int pIndex=0) |
Returns this geometry's visibility element. More... | |
const FbxGeometryElementVisibility * | GetElementVisibility (int pIndex=0) const |
Returns this geometry's visibility element. More... | |
int | GetElementVisibilityCount () const |
Get the number of this geometry's visibility geometry element. More... | |
FbxGeometryElementUV * | CreateElementUV (const char *pUVSetName, FbxLayerElement::EType pTypeIdentifier=FbxLayerElement::eTextureDiffuse) |
Creates a UV geometry element for this geometry. More... | |
bool | RemoveElementUV (FbxGeometryElementUV *pElementUV) |
Remove the UV geometry element from this geometry. More... | |
FbxGeometryElementUV * | GetElementUV (int pIndex=0, FbxLayerElement::EType pTypeIdentifier=FbxLayerElement::eUnknown) |
Returns this geometry's UV element. More... | |
const FbxGeometryElementUV * | GetElementUV (int pIndex=0, FbxLayerElement::EType pTypeIdentifier=FbxLayerElement::eUnknown) const |
Returns this geometry's UV element. More... | |
int | GetElementUVCount (FbxLayerElement::EType pTypeIdentifier=FbxLayerElement::eUnknown) const |
Get the number of this geometry's UV geometry element. More... | |
FbxGeometryElementUV * | GetElementUV (const char *pUVSetName) |
Returns this geometry's UV element. More... | |
const FbxGeometryElementUV * | GetElementUV (const char *pUVSetName) const |
Returns this geometry's UV element. More... | |
void | GetUVSetNames (FbxStringList &pUVSetNameList) const |
Returns this geometry's all UV set names. More... | |
virtual bool | ContentWriteTo (FbxStream &pStream) const |
Writes the content of the geometry object to the specified stream. More... | |
virtual bool | ContentReadFrom (const FbxStream &pStream) |
Reads the content of the geometry object from the specified stream. More... | |
![]() | |
bool | ConvertDirectToIndexToDirect (int pLayer) |
Converts the reference mode from eDirect to eIndexToDirect. More... | |
int | CreateLayer () |
Creates a new layer on top of existing layers. More... | |
void | ClearLayers () |
Deletes all layers. More... | |
int | GetLayerCount () const |
Returns the number of layers. More... | |
int | GetLayerCount (FbxLayerElement::EType pType, bool pUVCount=false) const |
Returns the number of layers that contain the specified layer element type. More... | |
FbxLayer * | GetLayer (int pIndex) |
Returns the layer at the specified index. More... | |
const FbxLayer * | GetLayer (int pIndex) const |
Returns the layer at the specified index. More... | |
FbxLayer * | GetLayer (int pIndex, FbxLayerElement::EType pType, bool pIsUV=false) |
Returns the n'th layer as specified by pIndex that contains the specified layer element type. More... | |
const FbxLayer * | GetLayer (int pIndex, FbxLayerElement::EType pType, bool pIsUV=false) const |
Returns the n'th layer as specified by pIndex that contains the specified layer element type. More... | |
int | GetLayerIndex (int pIndex, FbxLayerElement::EType pType, bool pIsUV=false) const |
Returns the global index of the n'th layer as specified by pIndex that contains the specified layer element type. More... | |
int | GetLayerTypedIndex (int pGlobalIndex, FbxLayerElement::EType pType, bool pIsUV=false) const |
Converts the layer's global index to a type-specific index. More... | |
![]() | |
int | GetNodeCount () const |
Return the node count using this attribute. More... | |
FbxNode * | GetNode (int pIndex=0) const |
Return the node this attribute is set to. More... | |
![]() | |
virtual void | Compact () |
Compact the memory used by this object. More... | |
FBX_DEPRECATED bool | Is (const FbxClassId &pClassId) const |
Test if this class is a hierarchical children of the specified class type. More... | |
template<class T > | |
bool | Is () const |
Templated test if this class is a hierarchical children of the specified class type. More... | |
FbxManager * | GetFbxManager () const |
Retrieve the FbxManager this object belongs to. More... | |
FbxDocument * | GetDocument () const |
Returns a const pointer to the document that contains this object. More... | |
FbxDocument * | GetRootDocument () const |
Returns a const pointer to the root document that contains this object. More... | |
FbxScene * | GetScene () const |
Returns a const pointer to the scene that contains this object. More... | |
void | Destroy (bool pRecursive=false) |
Unregister and delete this object from memory. More... | |
void | ResetProperties () |
Reset all the properties of this object to their default values. More... | |
virtual bool | GetSelected () |
Returns if this object is currently in a selected state. More... | |
virtual void | SetSelected (bool pSelected) |
Sets whether this object is currently selected. More... | |
void | SetUserDataPtr (const FbxUInt64 &pUserID, void *pUserData) |
Sets the data pointer for an user data record whose ID is pUserID. More... | |
void * | GetUserDataPtr (const FbxUInt64 &pUserID) const |
Returns the data pointer of an user data record whose ID is pUserID. More... | |
void | SetUserDataPtr (void *pUserData) |
Sets the data pointer for the user data record whose ID is the object ID. More... | |
void * | GetUserDataPtr () const |
Returns the data pointer of the user data record whose ID is the object ID. More... | |
bool | ConnectSrcObject (FbxObject *pObject, FbxConnection::EType pType=FbxConnection::eNone) |
Connects this object to a source object. More... | |
bool | IsConnectedSrcObject (const FbxObject *pObject) const |
Judges whether this object connects with the source object. More... | |
bool | DisconnectSrcObject (FbxObject *pObject) |
Disconnects this object from a source object. More... | |
bool | DisconnectAllSrcObject () |
Disconnects this object from all source objects. More... | |
bool | DisconnectAllSrcObject (const FbxCriteria &pCriteria) |
Disconnects this object from all source objects that satisfy a given criteria. More... | |
FBX_DEPRECATED bool | DisconnectAllSrcObject (FbxClassId pClassId) |
Disconnects this object from all source objects of a specific class type. More... | |
int | GetSrcObjectCount () const |
Returns the number of source objects with which this object connects. More... | |
int | GetSrcObjectCount (const FbxCriteria &pCriteria) const |
Returns the number of source objects that satisfy the given criteria with which this object connects. More... | |
FBX_DEPRECATED int | GetSrcObjectCount (FbxClassId pClassId) const |
Returns the number of source objects of the specific class type with which this object connects. More... | |
FbxObject * | GetSrcObject (int pIndex=0) const |
Returns the source object with which this object connects at the specified index. More... | |
FbxObject * | GetSrcObject (const FbxCriteria &pCriteria, int pIndex=0) const |
Returns the source object that satisfies the criteria at the specified index with which this object connects. More... | |
FBX_DEPRECATED FbxObject * | GetSrcObject (FbxClassId pClassId, int pIndex=0) const |
Returns the source object of the specified class type at the specified index with which this object connects. More... | |
FbxObject * | FindSrcObject (const char *pName, int pStartIndex=0) const |
Searches the source object with the specified name, starting at the specified index. More... | |
FbxObject * | FindSrcObject (const FbxCriteria &pCriteria, const char *pName, int pStartIndex=0) const |
Searches the source object with the specified name which satisfies the given criteria, starting at the specified index. More... | |
FBX_DEPRECATED FbxObject * | FindSrcObject (FbxClassId pClassId, const char *pName, int pStartIndex=0) const |
Searches the source object with the specified name which is also the specified class type, starting at the specified index. More... | |
template<class T > | |
bool | DisconnectAllSrcObject () |
Disconnects this object from all source objects of the specified class type. More... | |
template<class T > | |
bool | DisconnectAllSrcObject (const FbxCriteria &pCriteria) |
Disconnects this object from all source objects that are of the specified class type and that satisfy the given criteria. More... | |
template<class T > | |
int | GetSrcObjectCount () const |
Returns the number of source objects of a specific class type with which this object connects. More... | |
template<class T > | |
int | GetSrcObjectCount (const FbxCriteria &pCriteria) const |
Returns the number of source objects with which this object connects that are the specified class type and that satisfy the given criteria. More... | |
template<class T > | |
T * | GetSrcObject (int pIndex=0) const |
Returns the source object of the specified class type at the specified index. More... | |
template<class T > | |
T * | GetSrcObject (const FbxCriteria &pCriteria, int pIndex=0) const |
Returns the source object that is the specified class type and that satisfies the given criteria at the specified index. More... | |
template<class T > | |
T * | FindSrcObject (const char *pName, int pStartIndex=0) const |
Searches the source object with the specified name that is the specified class type, starting at the specified index. More... | |
template<class T > | |
T * | FindSrcObject (const FbxCriteria &pCriteria, const char *pName, int pStartIndex=0) const |
Searches the source object with the specified name that is the specified class type and that satisfies the given criteria, starting at the specified index. More... | |
bool | ConnectDstObject (FbxObject *pObject, FbxConnection::EType pType=FbxConnection::eNone) |
Connects this object to one destination object. More... | |
bool | IsConnectedDstObject (const FbxObject *pObject) const |
Judges whether this object connects with the destination object. More... | |
bool | DisconnectDstObject (FbxObject *pObject) |
Disconnects this object from the destination object. More... | |
bool | DisconnectAllDstObject () |
Disconnects this object from all destination objects. More... | |
bool | DisconnectAllDstObject (const FbxCriteria &pCriteria) |
Disconnects this object from all destination objects that satisfy given criteria. More... | |
FBX_DEPRECATED bool | DisconnectAllDstObject (FbxClassId pClassId) |
Disconnects this object from all destination objects of the specified class type. More... | |
int | GetDstObjectCount () const |
Returns the number of destination objects with which this object connects. More... | |
int | GetDstObjectCount (const FbxCriteria &pCriteria) const |
Returns the number of destination objects with which this object connects that satisfy the given criteria. More... | |
FBX_DEPRECATED int | GetDstObjectCount (FbxClassId pClassId) const |
Returns the number of destination objects of the specified class type with which this object connects. More... | |
FbxObject * | GetDstObject (int pIndex=0) const |
Returns the destination object at the specified index with which this object connects. More... | |
FbxObject * | GetDstObject (const FbxCriteria &pCriteria, int pIndex=0) const |
Returns the destination object with which this object connects that satisfies the given criteria at the specified index. More... | |
FBX_DEPRECATED FbxObject * | GetDstObject (FbxClassId pClassId, int pIndex=0) const |
Returns the destination object of the specified class type with which this object connects at the specified index. More... | |
FbxObject * | FindDstObject (const char *pName, int pStartIndex=0) const |
Searches the destination object with the specified name, starting at the specified index. More... | |
FbxObject * | FindDstObject (const FbxCriteria &pCriteria, const char *pName, int pStartIndex=0) const |
Searches the destination object with the specified name which satisfies the given criteria, starting at the specified index. More... | |
FBX_DEPRECATED FbxObject * | FindDstObject (FbxClassId pClassId, const char *pName, int pStartIndex=0) const |
Searches the destination object with the specified name which is the specified class type, starting at the specified index. More... | |
template<class T > | |
bool | DisconnectAllDstObject () |
Disconnects this object from all destination objects of the specified class type. More... | |
template<class T > | |
bool | DisconnectAllDstObject (const FbxCriteria &pCriteria) |
Disconnects this object from all destination objects that are the specified class type and that satisfy the given criteria. More... | |
template<class T > | |
int | GetDstObjectCount () const |
Returns the number of destination objects of the specified class type with which this object connects. More... | |
template<class T > | |
int | GetDstObjectCount (const FbxCriteria &pCriteria) const |
Returns the number of destination objects with which this object connects that are the specified class type and that satisfy the given criteria. More... | |
template<class T > | |
T * | GetDstObject (int pIndex=0) const |
Returns the destination object with which this object connects that is the specified class type at the specified index. More... | |
template<class T > | |
T * | GetDstObject (const FbxCriteria &pCriteria, int pIndex=0) const |
Returns the destination object with which this object connects that is the specified class type and that satisfies the given criteria at the specified index. More... | |
template<class T > | |
T * | FindDstObject (const char *pName, int pStartIndex=0) const |
Searches the destination object with the specified name which is of the specified class type, starting at the specified index. More... | |
template<class T > | |
T * | FindDstObject (const FbxCriteria &pCriteria, const char *pName, int pStartIndex=0) const |
Searches the destination object with the specified name that is the specified class type and that satisfies the given criteria, starting at the specified index. More... | |
FbxProperty | GetFirstProperty () const |
Returns the first property of this object. More... | |
FbxProperty | GetNextProperty (const FbxProperty &pProperty) const |
Returns the next property of this object that follows the specified property. More... | |
FbxProperty | FindProperty (const char *pName, bool pCaseSensitive=true) const |
Searches a property by name. More... | |
FbxProperty | FindProperty (const char *pName, const FbxDataType &pDataType, bool pCaseSensitive=true) const |
Searches a property by name and data type. More... | |
FbxProperty | FindPropertyHierarchical (const char *pName, bool pCaseSensitive=true) const |
Searches a property by full name. More... | |
FbxProperty | FindPropertyHierarchical (const char *pName, const FbxDataType &pDataType, bool pCaseSensitive=true) const |
Searches a property by full name and data type. More... | |
FbxProperty | GetClassRootProperty () |
Returns the class root property. More... | |
bool | ConnectSrcProperty (const FbxProperty &pProperty) |
Connects this object to a source property. More... | |
bool | IsConnectedSrcProperty (const FbxProperty &pProperty) |
Determines whether this object connects with the specified source property. More... | |
bool | DisconnectSrcProperty (const FbxProperty &pProperty) |
Disconnects this object from the specified source property. More... | |
int | GetSrcPropertyCount () const |
Returns the number of source properties with which this object connects. More... | |
FbxProperty | GetSrcProperty (int pIndex=0) const |
Returns the source property at the specified index with which this object connects. More... | |
FbxProperty | FindSrcProperty (const char *pName, int pStartIndex=0) const |
Searches a source property with which this object connects that has a specific name, starting at the specified index. More... | |
bool | ConnectDstProperty (const FbxProperty &pProperty) |
Connects this object to a destination property. More... | |
bool | IsConnectedDstProperty (const FbxProperty &pProperty) |
Determines if this object connects with the specified destination property. More... | |
bool | DisconnectDstProperty (const FbxProperty &pProperty) |
Disconnects this object from the specified destination property. More... | |
int | GetDstPropertyCount () const |
Returns the number of destination properties with which this object connects. More... | |
FbxProperty | GetDstProperty (int pIndex=0) const |
Returns the destination property at the specified index with which this object connects. More... | |
FbxProperty | FindDstProperty (const char *pName, int pStartIndex=0) const |
Searches a destination property with which this object connects that has a specific name, starting at the specified index. More... | |
int | ContentUnload () |
Unloads this object's content using the offload peripheral that is currently set in the document then flushes it from memory. More... | |
int | ContentLoad () |
Loads this object's content using the offload peripheral that is currently set in the document. More... | |
bool | ContentIsLoaded () const |
Judges if this object's content is loaded. More... | |
void | ContentDecrementLockCount () |
Decreases the content lock count of an object. More... | |
void | ContentIncrementLockCount () |
Increases the content lock count of an object. More... | |
bool | ContentIsLocked () const |
Judges if this object's content is locked. More... | |
void | EmitMessage (FbxMessage *pMessage) const |
Emits a message in all available message emitters in the document or SDK manager. More... | |
virtual const char * | Localize (const char *pID, const char *pDefault=NULL) const |
Localization helper function, it calls the implementation of FBX SDK manager. More... | |
FbxLibrary * | GetParentLibrary () const |
Returns a handle on the parent library of this object. More... | |
bool | AddImplementation (FbxImplementation *pImplementation) |
Adds an implementation. More... | |
bool | RemoveImplementation (FbxImplementation *pImplementation) |
Removes an implementation. More... | |
bool | HasDefaultImplementation (void) const |
Determines if this shading node has a default implementation. More... | |
FbxImplementation * | GetDefaultImplementation (void) const |
Returns the default implementation of this shading node. More... | |
bool | SetDefaultImplementation (FbxImplementation *pImplementation) |
Sets the default implementation of this shading node. More... | |
int | GetImplementationCount (const FbxImplementationFilter *pCriteria=NULL) const |
Returns the number of implementations that satisfy a given criteria. More... | |
FbxImplementation * | GetImplementation (int pIndex, const FbxImplementationFilter *pCriteria=NULL) const |
Returns the implementation at the specified index that satisfies the given criteria. More... | |
virtual FbxString | GetUrl () const |
Returns the URL of this object. More... | |
virtual bool | SetUrl (char *pUrl) |
Sets the URL of this object. More... | |
void | SetRuntimeClassId (const FbxClassId &pClassId) |
Set the run-time ClassId for this class. More... | |
FbxClassId | GetRuntimeClassId () const |
Retrieve the run-time ClassId for this object. More... | |
bool | IsRuntime (const FbxClassId &pClassId) const |
Test if this class is a hierarchical children of the specified class type. More... | |
bool | IsRuntimePlug () const |
Find out if the ClassId was registered during run-time rather than at compile time. More... | |
void | SetObjectFlags (EObjectFlag pFlags, bool pValue) |
Set the state of object flags. More... | |
bool | GetObjectFlags (EObjectFlag pFlags) const |
Get the state of object flags. More... | |
void | SetAllObjectFlags (FbxUInt pFlags) |
Override all object flags at once. More... | |
FbxUInt | GetAllObjectFlags () const |
Get all object flags at once. More... | |
virtual FbxObject & | Copy (const FbxObject &pObject) |
Copy an object content into this object. More... | |
virtual FbxObject * | Clone (FbxObject::ECloneType pCloneType=eDeepClone, FbxObject *pContainer=NULL, void *pSet=NULL) const |
Creates a clone of this object. More... | |
bool | IsAReferenceTo () const |
Checks if this object is a reference clone of another object. More... | |
FbxObject * | GetReferenceTo () const |
If this object is a reference clone, returns the original object (from which the clone originates). More... | |
bool | IsReferencedBy () const |
Checks if any objects are reference cloned from this object. More... | |
int | GetReferencedByCount () const |
Returns the number of objects that are reference clones of this object. More... | |
FbxObject * | GetReferencedBy (int pIndex) const |
Returns a reference clone of this object at the specified index. More... | |
void | SetName (const char *pName) |
Sets the name of this object. More... | |
const char * | GetName () const |
Returns the full name of this object. More... | |
FbxString | GetNameWithoutNameSpacePrefix () const |
Returns the name of the object without the namespace qualifier. More... | |
FbxString | GetNameWithNameSpacePrefix () const |
Returns the name of the object with the namespace qualifier. More... | |
void | SetInitialName (const char *pName) |
Sets the initial name of the object. More... | |
const char * | GetInitialName () const |
Returns the initial name of the object. More... | |
FbxString | GetNameSpaceOnly () |
Returns the namespace of the object. More... | |
void | SetNameSpace (FbxString pNameSpace) |
Sets the namespace of the object. More... | |
FbxArray< FbxString * > | GetNameSpaceArray (char identifier) |
Returns an array of all the namespaces for this object. More... | |
FbxString | GetNameOnly () const |
Returns only the name (no namespace or prefix) of the object. More... | |
FbxString | GetNameSpacePrefix () const |
Returns the namespace qualifier. More... | |
const FbxUInt64 & | GetUniqueID () const |
Returns the unique ID of this object. More... | |
![]() | |
void | AddListener (FbxEventHandler &pHandler) |
Add the specified event handler to current emitter list. More... | |
void | RemoveListener (FbxEventHandler &pHandler) |
Remove the specified event handler from current emitter list. More... | |
template<typename EventType > | |
void | Emit (const EventType &pEvent) const |
Emit an event with the specified the event type. More... | |
Additional Inherited Members | |
![]() | |
static FbxString | RemovePrefix (char *pName) |
Removes the prefix of pName. More... | |
static FbxString | StripPrefix (FbxString &lName) |
Strips the prefix of pName. More... | |
static FbxString | StripPrefix (const char *pName) |
Strips the prefix of pName. More... | |
![]() | |
FbxPropertyT< FbxBool > | PrimaryVisibility |
Control the geometry render state. Geometry can still cast shadows even if this is turned off. More... | |
FbxPropertyT< FbxBool > | CastShadow |
If true, the geometry will produce shadows. More... | |
FbxPropertyT< FbxBool > | ReceiveShadow |
If true, the geometry will receive shadows. More... | |
FbxPropertyT< FbxDouble3 > | BBoxMin |
The minimum value of the control points bounding box. More... | |
FbxPropertyT< FbxDouble3 > | BBoxMax |
The maximum value of the control points bounding box. More... | |
![]() | |
FbxPropertyT< FbxDouble3 > | Color |
This property handles the color. More... | |
![]() | |
FbxProperty | RootProperty |
The root property that holds all children property for this object. More... | |
![]() | |
static const char * | sColor |
Property Names. More... | |
static const FbxDouble3 | sDefaultColor |
Property Default Values. More... | |
![]() | |
virtual void | Construct (const FbxObject *pFrom) |
Optional constructor override, automatically called by default constructor. More... | |
virtual void | ConstructProperties (bool pForceSet) |
Optional property constructor override, automatically called by default constructor. More... | |
virtual void | Destruct (bool pRecursive) |
Optional destructor override, automatically called by default destructor. More... | |
virtual void | ContentClear () |
Clears this object's content from memory. More... | |
virtual FbxPeripheral * | GetPeripheral () |
Retrieves the peripheral of that object. More... | |
enum EDimension |
The dimension of the CVs.
Enumerator | |
---|---|
e2D | |
e3D |
Definition at line 72 of file fbxnurbscurve.h.
enum EType |
The curve's form.
Enumerator | |
---|---|
eOpen | |
eClosed | |
ePeriodic |
Definition at line 83 of file fbxnurbscurve.h.
|
virtual |
Returns the EType::eNurbsCurve node attribute type.
Reimplemented from FbxGeometry.
void InitControlPoints | ( | int | pCount, |
EType | pVType | ||
) |
Allocates memory space for the control points array as well as for the knot vector.
pCount | Number of control points. |
pVType | NURBS type. |
|
inline |
Returns the knot vector.
Definition at line 101 of file fbxnurbscurve.h.
int GetKnotCount | ( | ) | const |
Returns the number of elements in the knot vector.
|
inline |
Sets the order of the curve.
pOrder | The curve order. |
Definition at line 112 of file fbxnurbscurve.h.
|
inline |
Returns the NURBS curve order.
Definition at line 117 of file fbxnurbscurve.h.
|
inline |
Sets the step of the curve.
pStep | The curve step. |
Definition at line 123 of file fbxnurbscurve.h.
|
inline |
Returns the NURBS curve step.
Definition at line 129 of file fbxnurbscurve.h.
|
inline |
Sets the dimension of the CVs.
For 3D curves: control point = ( x, y, z, w ), where w is the weight. For 2D curves: control point = ( x, y, 0, w ), where the z component is unused, and w is the weight.
pDimension | The control points dimension(3D or 2D). |
Definition at line 136 of file fbxnurbscurve.h.
|
inline |
Returns the control points dimension.
Definition at line 141 of file fbxnurbscurve.h.
bool IsRational | ( | ) |
Determines if the curve is rational or not.
True
if the curve is rational, return false
if not. int GetSpanCount | ( | ) | const |
Calculates the number of curve spans with the following: Where S = Number of spans N = Number of CVs M = Order of the curve.
S = N - M + 1;
In this calculation N includes the duplicate CVs for closed and periodic curves.
|
inline |
|
inline |
Checks if the curve is a poly line.
(A poly line is a linear NURBS curve )
True
if curve is a poly line, return false
if it is not a poly line. Definition at line 172 of file fbxnurbscurve.h.
bool IsBezier | ( | ) | const |
This function determines if this NURBS curve is a Bezier curve.
Bezier curves are a special case of NURBS curve.
True
if curve is a Bezier curve. If it is not a Bezier curve return false
. int TessellateCurve | ( | FbxArray< FbxVector4 > & | pPointArray, |
int | pStep = 16 |
||
) |
Evaluate the point on the curve.
Save the result as a point array. Meanwhile, return the length of the point array.
pPointArray | Save the evaluate result as a point array. |
pStep | The evaluation frequency between two neighbor knots. Its default value is 16, which is same as Maya. |
FbxLine* TessellateCurve | ( | int | pStep = 16 | ) |
Evaluate the point on the curve.
Per the evaluation result, create a FbxLine and return the pointer to the line.
pStep | The evaluation frequency between two neighbor knots. Its default value is 16, which is same as Maya. |