- Main Page
- Classes
- Files
- Directories
- Examples

- Class List
- Class Hierarchy
- Class Members

Public Types | Public Member Functions | Public Attributes | Protected Member Functions | Friends

# FbxNode Class Reference

This reference page is linked to from the following overview topics: Supported Scene Elements, Information and Technical Support, Your First FBX SDK Program, FBX SDK Object Model, Managing Memory with the FBX SDK Manager, FBX Properties, Connections, Nodes and the Scene Graph, FBX Scenes, FBX Nodes, Transformation Data, Computing Transformation Matrices, FBX Node Attributes, Lights, Cameras, Geometry, Meshes, Materials and Textures, Instancing - Sharing a Mesh, Materials, Textures, Layered Textures, Migrating to the new data structures for animation, Animation classes and their interrelationships, Evaluating the animation in a scene, Animating a Node, List of Python Fbx classes.

Search for all occurrences

## Detailed Description

Represents an element in the scene graph.

A scene graph is a tree of FbxNode objects. The tree management services are self contained in this class.

Note:
  The FBX SDK does not test the validity of the constructed scene graph. It is the responsibility of the caller to make sure that it does not generate cyclic graphs in a node hierarchy.

Besides the tree management, this class defines all the properties required to describe the position of the object in the scene. This information include the basic Translation, Rotation and Scaling properties and the more advanced options for pivots, limits, and IK joints attributes such the stiffness and dampening.

When it is first created, the FbxNode object is "empty" (i.e: it is an object without any graphical representation that only contains the position information). In this state, it can be used to represent parents in the node tree structure but not much more. The normal use of this type of objects is to add them an attribute that will specialize the node (see the "Node Attribute Management" section).

The node attribute is an object in itself and is connected to the the FbxNode. This also means that the same node attribute can be shared among multiple nodes. FbxCamera, FbxLight, FbxMesh, etc... are all node attributes and they all derive from the base class FbxNodeAttribute.

Examples:

  Camera/main.cxx, Common/GeometryUtility.cxx, Common/GeometryUtility.h, ExportDocument/main.cxx, ExportScene01/main.cxx, ExportScene02/main.cxx, ExportScene03/main.cxx, ExportScene04/main.cxx, ExportScene05/main.cxx, ExportShader/main.cxx, ImportScene/DisplayAnimation.cxx, ImportScene/DisplayAnimation.h, ImportScene/DisplayCamera.cxx, ImportScene/DisplayCamera.h, ImportScene/DisplayGenericInfo.cxx, ImportScene/DisplayHierarchy.cxx, ImportScene/DisplayHierarchy.h, ImportScene/DisplayLight.cxx, ImportScene/DisplayLight.h, ImportScene/DisplayLodGroup.cxx, ImportScene/DisplayLodGroup.h, ImportScene/DisplayMarker.cxx, ImportScene/DisplayMarker.h, ImportScene/DisplayMaterial.cxx, ImportScene/DisplayMesh.cxx, ImportScene/DisplayMesh.h, ImportScene/DisplayNurb.cxx, ImportScene/DisplayNurb.h, ImportScene/DisplayPatch.cxx, ImportScene/DisplayPatch.h, ImportScene/DisplayPivotsAndLimits.cxx, ImportScene/DisplayPivotsAndLimits.h, ImportScene/DisplaySkeleton.cxx, ImportScene/DisplaySkeleton.h, ImportScene/main.cxx, Instances/main.cxx, Layers/main.cxx, MyOwnWriterReader/MyOwnReader.cxx, MyOwnWriterReader/MyOwnWriter.cxx, MyOwnWriterReader/MyOwnWriter.h, Normals/main.cxx, Pivot/main.cxx, ProceduralTexture/main.cxx, StereoCamera/main.cxx, Transformations/main.cxx, UserProperties/main.cxx, UVSample/main.cxx, ViewScene/DrawScene.cxx, ViewScene/DrawScene.h, ViewScene/GetPosition.cxx, ViewScene/GetPosition.h, ViewScene/SceneContext.cxx, ViewScene/SceneContext.h, and ViewScene/SetCamera.cxx.

Definition at line 83 of file fbxnode.h.

`#include <fbxnode.h>`

Inheritance diagram for FbxNode:
[legend]

List of all members.

## Public Types
enum | ECullingType { eCullingOff, eCullingOnCCW, eCullingOnCW }
## Public Member Functions
virtual bool | GetAnimationInterval (FbxTimeSpan &pSpan, FbxAnimStack *pAnimStack=NULL, int pAnimLayerId=0)
| Find out start and end time of the animation curves for this node (and its children).
void | AddChildName (char *pChildName)
char * | GetChildName (FbxUInt pIndex) const
FbxUInt | GetChildNameCount () const
FbxTransform & | GetTransform ()
FbxLimits & | GetTranslationLimits ()
FbxLimits & | GetRotationLimits ()
FbxLimits & | GetScalingLimits ()
void | UpdatePivotsAndLimitsFromProperties ()
void | UpdatePropertiesFromPivotsAndLimits ()
void | SetRotationActiveProperty (bool pVal)
void | PivotSetToMBTransform (EPivotSet pPivotSet)
int | AddCharacterLink (FbxCharacter *pCharacter, int pCharacterLinkType, int pNodeId, int pNodeSubId)
int | RemoveCharacterLink (FbxCharacter *pCharacter, int pCharacterLinkType, int pNodeId, int pNodeSubId)
virtual FbxObject & | Copy (const FbxObject &pObject)
| Copy an object content into this object.
virtual const char * | GetTypeName () const
virtual FbxStringList | GetTypeFlags () const
virtual bool | PropertyNotify (EPropertyNotifyType pType, FbxProperty *pProperty)
Node Tree Management
FbxNode * | GetParent ()
| Get the parent node.
FbxNode const * | GetParent () const
bool | AddChild (FbxNode *pNode)
| Add a child node and its underlying node tree.
FbxNode * | RemoveChild (FbxNode *pNode)
| Remove the child node.
int | GetChildCount (bool pRecursive=false) const
| Get the number of children nodes.
FbxNode * | GetChild (int pIndex)
| Get child by index.
FbxNode const * | GetChild (int pIndex) const
| Get child by index.
FbxNode * | FindChild (char const *pName, bool pRecursive=true, bool pInitial=false)
| Finds a child node by name.
Node Target Management
The FbxNode class allows the client to set a "follow" target node. This target forces the node to re-align itself so it points to the target. By default, the node uses its X axis as the aiming constraint. A rotation offset can be added to change this behavior. While the default relative orientation to the target (the X axis) is sufficient for the FBX cameras (with a (0,0,0) rotation vector, they are aiming along the X axis), this rotation offset becomes particularly useful with the lights objects because their default orientation (when they have a 0,0,0 rotation vector) is to point along the -Y axis and they need to be adjusted with a 90-degree offset on the Z axis. The FbxNode class also permits the use of node to define an Up-vector. By default, the node's up vector points towards the Up node. If the Up node is not specified, then the node's Up vector points towards the Y axis. Here too, a rotation offset can be added to change the default behavior. Of course, these offsets can be applied to anything, not only the cameras and lights. Note: Objects in the FBX SDK are always created in the right handed, Y-Up system and need to be adjusted for any other axis system by explicitly convert them (the class FbxAxisSystem can help in that process).
void | SetTarget (FbxNode *pNode)
| The target must be part of the same scene and it cannot be itself.
FbxNode * | GetTarget () const
| Get the target for this node.
void | SetPostTargetRotation (FbxVector4 pVector)
| Set rotation offset from default relative orientation to target.
FbxVector4 | GetPostTargetRotation () const
| Get rotation offset from default relative orientation to target.
void | SetTargetUp (FbxNode *pNode)
| The target up node must be part of the same scene and it cannot be itself.
FbxNode * | GetTargetUp () const
| Get the target up node.
void | SetTargetUpVector (FbxVector4 pVector)
| Set up vector offset from default relative target up vector.
FbxVector4 | GetTargetUpVector () const
| Get up vector offset from default relative target up vector.
Node Attribute Management
FbxNodeAttribute * | SetNodeAttribute (FbxNodeAttribute *pNodeAttribute)
| Set the node attribute.
FbxNodeAttribute * | GetNodeAttribute ()
| Get the default node attribute.
FbxNodeAttribute const * | GetNodeAttribute () const
| Get the default node attribute.
int | GetNodeAttributeCount () const
| Get the number of node attribute(s) connected to this node.
int | GetDefaultNodeAttributeIndex () const
| Get the index, in the list of connected node attributes, of the node attribute that is set to be the default one.
bool | SetDefaultNodeAttributeIndex (int pIndex)
| Set index of the default node attribute.
FbxNodeAttribute * | GetNodeAttributeByIndex (int pIndex)
| Get the connected node attribute by specifying its index in the connection list.
FbxNodeAttribute const * | GetNodeAttributeByIndex (int pIndex) const
| Get the connected node attribute by specifying its index in the connection list.
int | GetNodeAttributeIndex (FbxNodeAttribute *pNodeAttribute) const
| Get the connection index of the specified node attribute.
bool | AddNodeAttribute (FbxNodeAttribute *pNodeAttribute)
| Add the new node attribute to this node.
FbxNodeAttribute * | RemoveNodeAttribute (FbxNodeAttribute *pNodeAttribute)
| Remove the node attribute from the connection list of this node.
FbxNodeAttribute * | RemoveNodeAttributeByIndex (int pIndex)
| Remove the node attribute, specified by the connection index, from the connection list of this node.
FbxCachedEffect * | GetCachedEffect ()
| Get the default node attribute casted to a FbxCachedEffect pointer.
FbxLODGroup * | GetLodGroup ()
| Get the default node attribute casted to a FbxLODGroup pointer.
FbxNull * | GetNull ()
| Get the default node attribute casted to a FbxNull pointer.
FbxMarker * | GetMarker ()
| Get the node attribute casted to a FbxMarker pointer.
FbxSkeleton * | GetSkeleton ()
| Get the node attribute casted to a FbxSkeleton pointer.
FbxGeometry * | GetGeometry ()
| Get the node attribute casted to a FbxGeometry pointer.
FbxMesh * | GetMesh ()
| Get the node attribute casted to a FbxMesh pointer.
FbxNurbs * | GetNurbs ()
| Get the node attribute casted to a FbxNurbs pointer.
FbxNurbsSurface * | GetNurbsSurface ()
| Get the node attribute casted to a FbxNurbsSurface pointer.
FbxNurbsCurve * | GetNurbsCurve ()
| Get the node attribute casted to a FbxNurbsCurve pointer.
FbxLine * | GetLine ()
| Get the node attribute casted to a FbxLine pointer.
FbxTrimNurbsSurface * | GetTrimNurbsSurface ()
| Get the node attribute casted to a FbxTrimNurbsSurface pointer.
FbxSubDiv * | GetSubdiv ()
| Get the node attribute casted to a FbxSubDiv pointer.
FbxPatch * | GetPatch ()
| Get the node attribute casted to a FbxPatch pointer.
FbxCamera * | GetCamera ()
| Get the node attribute casted to a FbxCamera pointer.
const FbxCamera * | GetCamera () const
FbxCameraStereo * | GetCameraStereo ()
| Get the node attribute casted to a FbxCameraStereo pointer.
FbxCameraSwitcher * | GetCameraSwitcher ()
| Get the node attribute casted to a FbxCameraSwitcher pointer.
FbxLight * | GetLight ()
| Get the node attribute casted to a FbxLight pointer.
const FbxLight * | GetLight () const
FbxOpticalReference * | GetOpticalReference ()
| Get the node attribute casted to a FbxOpticalReference pointer.
Transformation propagation
This set of functions provides direct access to the transformation propagations settings of the FbxNode. These settings determine how transformations must be applied when evaluating a node's transformation matrix. The possible values are: eInheritRrSs : Scaling of parent is applied in the child world after the local child rotation. eInheritRSrs : Scaling of parent is applied in the parent world. eInheritRrs : Scaling of parent does not affect the scaling of children.
void | SetTransformationInheritType (FbxTransform::EInheritType pInheritType)
| Sets how child transforms are inherited from parent transforms.
void | GetTransformationInheritType (FbxTransform::EInheritType &pInheritType) const
| Get transformation inherit type.
Node Transform Evaluation
FbxAMatrix & | EvaluateGlobalTransform (FbxTime pTime=FBXSDK_TIME_INFINITE, FbxNode::EPivotSet pPivotSet=FbxNode::eSourcePivot, bool pApplyTarget=false, bool pForceEval=false)
| Returns this node's global transformation matrix at the specified time.
FbxAMatrix & | EvaluateLocalTransform (FbxTime pTime=FBXSDK_TIME_INFINITE, FbxNode::EPivotSet pPivotSet=FbxNode::eSourcePivot, bool pApplyTarget=false, bool pForceEval=false)
| Returns this node's local transformation matrix at the specified time.
FbxVector4 & | EvaluateLocalTranslation (FbxTime pTime=FBXSDK_TIME_INFINITE, FbxNode::EPivotSet pPivotSet=FbxNode::eSourcePivot, bool pApplyTarget=false, bool pForceEval=false)
| Returns this node's LclTranslation property at the specified time.
FbxVector4 & | EvaluateLocalRotation (FbxTime pTime=FBXSDK_TIME_INFINITE, FbxNode::EPivotSet pPivotSet=FbxNode::eSourcePivot, bool pApplyTarget=false, bool pForceEval=false)
| Returns this node's LclRotation property at the specified time.
FbxVector4 & | EvaluateLocalScaling (FbxTime pTime=FBXSDK_TIME_INFINITE, FbxNode::EPivotSet pPivotSet=FbxNode::eSourcePivot, bool pApplyTarget=false, bool pForceEval=false)
| Returns this node's LclScaling property at the specified time.
Character Link
int | GetCharacterLinkCount () const
| Get number of character links.
bool | GetCharacterLink (int pIndex, FbxCharacter **pCharacter, int *pCharacterLinkType, int *pNodeId, int *pNodeSubId)
| Get character link at given index.
int | FindCharacterLink (FbxCharacter *pCharacter, int pCharacterLinkType, int pNodeId, int pNodeSubId) const
| Looks if the given character link exists on this node.
Material Management
int | AddMaterial (FbxSurfaceMaterial *pMaterial)
| Add a material to this node.
bool | RemoveMaterial (FbxSurfaceMaterial *pMaterial)
| Remove a material from this node.
int | GetMaterialCount () const
FbxSurfaceMaterial * | GetMaterial (int pIndex) const
| Access a material on this node.
void | RemoveAllMaterials ()
| Remove all materials applied to this node.
int | GetMaterialIndex (char const *pName) const
| Find an applied material with the given name.
## Public Attributes
ECullingType | mCullingType
bool | mCorrectInheritType
Public and fast access Properties
FbxPropertyT< FbxDouble3 > | LclTranslation
| This property contains the translation information of the node.
FbxPropertyT< FbxDouble3 > | LclRotation
| This property contains the rotation information of the node.
FbxPropertyT< FbxDouble3 > | LclScaling
| This property contains the scaling information of the node.
FbxPropertyT< FbxDouble > | Visibility
| This property contains the visibility information of the node.
FbxPropertyT< FbxBool > | VisibilityInheritance
| This property contains the visibility inheritance flag that allow applications to modify the Visibility property interpretation.
FbxPropertyT< EFbxQuatInterpMode > | QuaternionInterpolate
| This property contains the quaternion interpolate flag of the node.
FbxPropertyT< FbxDouble3 > | RotationOffset
| This property contains the rotation offset information of the node.
FbxPropertyT< FbxDouble3 > | RotationPivot
| This property contains the rotation pivot information of the node.
FbxPropertyT< FbxDouble3 > | ScalingOffset
| This property contains the scaling offset information of the node.
FbxPropertyT< FbxDouble3 > | ScalingPivot
| This property contains the scaling pivot information of the node.
FbxPropertyT< FbxBool > | TranslationActive
| This property contains the translation active information of the node.
FbxPropertyT< FbxDouble3 > | Translation
| This property contains the translation information of the node.
FbxPropertyT< FbxDouble3 > | TranslationMin
| This property contains the min translation limit information of the node.
FbxPropertyT< FbxDouble3 > | TranslationMax
| This property contains the max translation limit information of the node.
FbxPropertyT< FbxBool > | TranslationMinX
| This property contains the flag which actives the x component of min translation limit of the node.
FbxPropertyT< FbxBool > | TranslationMinY
| This property contains the flag which actives the y component of min translation limit of the node.
FbxPropertyT< FbxBool > | TranslationMinZ
| This property contains the flag which actives the z component of min translation limit of the node.
FbxPropertyT< FbxBool > | TranslationMaxX
| This property contains the flag which actives the x component of max translation limit of the node.
FbxPropertyT< FbxBool > | TranslationMaxY
| This property contains the flag which actives the y component of max translation limit of the node.
FbxPropertyT< FbxBool > | TranslationMaxZ
| This property contains the flag which actives the z component of max translation limit of the node.
FbxPropertyT< EFbxRotationOrder > | RotationOrder
| This property contains the rotation order information of the node.
FbxPropertyT< FbxBool > | RotationSpaceForLimitOnly
| This property contains the rotation space for limit only flag of the node.
FbxPropertyT< FbxDouble > | RotationStiffnessX
| This property contains the x value of the rotation stiffness of the node.
FbxPropertyT< FbxDouble > | RotationStiffnessY
| This property contains the y value of the rotation stiffness of the node.
FbxPropertyT< FbxDouble > | RotationStiffnessZ
| This property contains the z value of the rotation stiffness of the node.
FbxPropertyT< FbxDouble > | AxisLen
| This property contains axis length information of the node.
FbxPropertyT< FbxDouble3 > | PreRotation
| This property contains pre-rotation information of the node.
FbxPropertyT< FbxDouble3 > | PostRotation
| This property contains post-rotation information of the node.
FbxPropertyT< FbxBool > | RotationActive
| This property contains rotation active information of the node.
FbxPropertyT< FbxDouble3 > | RotationMin
| This property contains the min rotation limit information of the node.
FbxPropertyT< FbxDouble3 > | RotationMax
| This property contains the max rotation limit information of the node.
FbxPropertyT< FbxBool > | RotationMinX
| This property contains the flag which actives the x component of min rotation limit of the node.
FbxPropertyT< FbxBool > | RotationMinY
| This property contains the flag which actives the y component of min rotation limit of the node.
FbxPropertyT< FbxBool > | RotationMinZ
| This property contains the flag which actives the z component of min rotation limit of the node.
FbxPropertyT< FbxBool > | RotationMaxX
| This property contains the flag which actives the x component of max rotation limit of the node.
FbxPropertyT< FbxBool > | RotationMaxY
| This property contains the flag which actives the y component of max rotation limit of the node.
FbxPropertyT< FbxBool > | RotationMaxZ
| This property contains the flag which actives the z component of max rotation limit of the node.
FbxPropertyT < FbxTransform::EInheritType > | InheritType
| This property contains inherit type information of the node.
FbxPropertyT< FbxBool > | ScalingActive
| This property contains scaling active information of the node.
FbxPropertyT< FbxDouble3 > | Scaling
| This property contains scaling information of the node.
FbxPropertyT< FbxDouble3 > | ScalingMin
| This property contains the min scaling limit information of the node.
FbxPropertyT< FbxDouble3 > | ScalingMax
| This property contains the max scaling limit information of the node.
FbxPropertyT< FbxBool > | ScalingMinX
| This property contains the flag which actives the x component of min scaling limit of the node.
FbxPropertyT< FbxBool > | ScalingMinY
| This property contains the flag which actives the y component of min scaling limit of the node.
FbxPropertyT< FbxBool > | ScalingMinZ
| This property contains the flag which actives the z component of min scaling limit of the node.
FbxPropertyT< FbxBool > | ScalingMaxX
| This property contains the flag which actives the x component of max scaling limit of the node.
FbxPropertyT< FbxBool > | ScalingMaxY
| This property contains the flag which actives the y component of max scaling limit of the node.
FbxPropertyT< FbxBool > | ScalingMaxZ
| This property contains the flag which actives the z component of max scaling limit of the node.
FbxPropertyT< FbxDouble3 > | GeometricTranslation
| This property contains geometric translation information of the node.
FbxPropertyT< FbxDouble3 > | GeometricRotation
| This property contains geometric rotation information of the node.
FbxPropertyT< FbxDouble3 > | GeometricScaling
| This property contains geometric scaling information of the node.
FbxPropertyT< FbxDouble > | MinDampRangeX
| This property contains the x component of the minimum damp range angles of the node.
FbxPropertyT< FbxDouble > | MinDampRangeY
| This property contains the y component of the minimum damp range angles of the node.
FbxPropertyT< FbxDouble > | MinDampRangeZ
| This property contains the z component of the minimum damp range angles of the node.
FbxPropertyT< FbxDouble > | MaxDampRangeX
| This property contains the x component of the maximum damp range angles of the node.
FbxPropertyT< FbxDouble > | MaxDampRangeY
| This property contains the y component of the maximum damp range angles of the node.
FbxPropertyT< FbxDouble > | MaxDampRangeZ
| This property contains the z component of the maximum damp range angles of the node.
FbxPropertyT< FbxDouble > | MinDampStrengthX
| This property contains the x component of the minimum damp strength of the node.
FbxPropertyT< FbxDouble > | MinDampStrengthY
| This property contains the y component of the minimum damp strength of the node.
FbxPropertyT< FbxDouble > | MinDampStrengthZ
| This property contains the z component of the minimum damp strength of the node.
FbxPropertyT< FbxDouble > | MaxDampStrengthX
| This property contains the x component of the maximum damp strength of the node.
FbxPropertyT< FbxDouble > | MaxDampStrengthY
| This property contains the y component of the maximum damp strength of the node.
FbxPropertyT< FbxDouble > | MaxDampStrengthZ
| This property contains the z component of the maximum damp strength of the node.
FbxPropertyT< FbxDouble > | PreferedAngleX
| This property contains the x component of the preferred angle of the node.
FbxPropertyT< FbxDouble > | PreferedAngleY
| This property contains the y component of the preferred angle of the node.
FbxPropertyT< FbxDouble > | PreferedAngleZ
| This property contains the z component of the preferred angle of the node.
FbxPropertyT< FbxReference > | LookAtProperty
| This property contains lookat property of the node.
FbxPropertyT< FbxReference > | UpVectorProperty
| This property contains the up vector property of the node.
FbxPropertyT< FbxBool > | Show
| This property contains the show information of the node.
FbxPropertyT< FbxBool > | NegativePercentShapeSupport
| This property contains negative percent shape support information of the node.
FbxPropertyT< FbxInt > | DefaultAttributeIndex
| This property contains default attribute index information of the node.
FbxPropertyT< FbxBool > | Freeze
| This property contains manipulation state information of the node.
FbxPropertyT< FbxBool > | LODBox
| This property contains level of detail mode information of the node.
## Protected Member Functions
| FbxNode (FbxManager &pManager, char const *pName)
virtual void | Construct (const FbxNode *pFrom)
virtual bool | ConstructProperties (bool pForceSet)
virtual void | Destruct (bool pRecursive, bool pDependents)
void | Reset ()
bool | GetAnimationIntervalRecursive (FbxTimeSpan &pTimeInterval, FbxAnimLayer *pAnimLayer)
## Friends
class | FbxScene
class | FbxGeometry
class | FbxLight
class | FbxNodeFinderDuplicateName
class | FbxCharacter
class | FbxControlSet
class | FbxNode_internal
class | FbxNodeEvalState
## Node Display Parameters
enum | EShadingMode { eHardShading, eWireFrame, eFlatShading, eLightShading, eTextureShading, eFullShading }
| Shading modes. More...
void | SetVisibility (bool pIsVisible)
| Set the node Visibility value from the boolean parameter.
bool | GetVisibility () const
| Get the current value of the Visibility property.
void | SetShadingMode (EShadingMode pShadingMode)
| Set the shading mode.
EShadingMode | GetShadingMode () const
| Get the shading mode.
## Pivot Management
Pivots are used to specify translation, rotation and scaling centers in coordinates relative to a node's origin.A node has two pivot contexts defined by the EPivotSet enumeration. The node's animation data can be converted from one pivot context to the other. Each context can be set to be either active or passive (reference). By default the two pivot contexts are passive. They need to be active to be processed during the evaluation of the node final transformation matrix. In its passive state, a pivot context can still be accessed to retrieve its content for any other required purpose. Each pivot context stores values (as FbxVector4) for:
         - Rotation offset (Roff)
         - Rotation pivot (Rp)
         - Pre-rotation (Rpre)
         - Post-rotation (Rpost)
         - Scaling offset (Soff)
         - Scaling pivot (Sp)
         - Geometric translation (Gt)
         - Geometric rotation (Gr)
         - Geometric scaling (Gs)

     These values combine in the matrix form to compute the World transform of the node
     using the formula:

        World = ParentWorld * T * Roff * Rp * Rpre * R * Rpost * Rp-1 * Soff * Sp * S * Sp-1
The geometric transformation (Gt * Gr * Gs) is applied only to the node attribute and after the node transformations. This transformation is not inherited across the node hierarchy. Note: Please refer to the FBX SDK programmers guide for more details. The application of the pivots is performed by calling the method ConvertPivotAnimation(). Typically, you set-up the eDestinationPivot context to match what your system can directly support and leave at (0,0,0) the attributes that are not supported by your system. When the values of a specific attribute in the two contexts (source and destination) are identical, the system considers that no adjustment is required because the attribute is directly supported in the destination world.Below is an example of code that shows how the pivot information could be setup before calling ConvertPivotAnimation().
     FbxVector4 lZero(0,0,0);
     pNode->SetPivotState(FbxNode::eSourcePivot, FbxNode::ePivotActive);
     pNode->SetPivotState(FbxNode::eDestinationPivot, FbxNode::ePivotActive);

     EFbxRotationOrder lRotationOrder;
     pNode->GetRotationOrder(FbxNode::eSourcePivot , lRotationOrder);
     pNode->SetRotationOrder(FbxNode::eDestinationPivot , lRotationOrder);

     // For cameras and lights (without targets) let's compensate the postrotation.
     if (pNode->GetCamera() || pNode->GetLight())
     {
        if (!pNode->GetTarget())
        {
            FbxVector4 lRV(90, 0, 0);
            if (pNode->GetCamera())
               lRV.Set(0, 90, 0);

            FbxVector4 prV = pNode->GetPostRotation(FbxNode::eSourcePivot);
            FbxAMatrix lSourceR;
            FbxAMatrix lR(lRV.mData[0], lRV.mData[1], lRV.mData[2]);
            FbxVector4 res = prV;

            // Rotation order don't affect post rotation, so just use the default XYZ order
            FbxRotationOrder rOrder;
            rOrder.V2M(lSourceR, res);

            lR = lSourceR * lR;
            rOrder.M2V(res, lR);
            prV = res;
            pNode->SetPostRotation(FbxNode::eSourcePivot, prV);
            pNode->GetLimits().SetRotationLimitActive(true);
        }

        // Point light do not need to be adjusted (since they radiate in all the directions).
        if (pNode->GetLight() && pNode->GetLight()->LightType.Get() == FbxLight::ePoint)
        {
            pNode->SetPostRotation(FbxNode::eSourcePivot, FbxVector4(0,0,0,0));
        }

        // apply Pre rotations only on bones / end of chains
        if(pNode->GetNodeAttribute() && pNode->GetNodeAttribute()->GetAttributeType() == FbxNodeAttribute::eSkeleton
           || (pNode->GetMarker() && pNode->GetMarker()->GetType() == FbxMarker::eEffectorFK)
           || (pNode->GetMarker() && pNode->GetMarker()->GetType() == FbxMarker::eEffectorIK))
        {
            if(pNode->GetLimits().GetRotationLimitActive())
            {
                pNode->SetPreRotation(FbxNode::eDestinationPivot, pNode->GetPreRotation(FbxNode::eSourcePivot));
            }

           // No pivots on bones
            pNode->SetRotationPivot(FbxNode::eDestinationPivot, lZero);
            pNode->SetScalingPivot(FbxNode::eDestinationPivot,    lZero);
            pNode->SetRotationOffset(FbxNode::eDestinationPivot,lZero);
            pNode->SetScalingOffset(FbxNode::eDestinationPivot, lZero);
        }
        else
        {
            // any other type: no pre-rotation support but...
            pNode->SetPreRotation(FbxNode::eDestinationPivot, lZero);

            // support for rotation and scaling pivots.
            pNode->SetRotationPivot(FbxNode::eDestinationPivot, pNode->GetRotationPivot(FbxNode::eSourcePivot));
            pNode->SetScalingPivot(FbxNode::eDestinationPivot, pNode->GetScalingPivot(FbxNode::eSourcePivot));
            // Rotation and scaling offset are supported
            pNode->SetRotationOffset(FbxNode::eDestinationPivot, pNode->GetRotationOffset(FbxNode::eSourcePivot));
            pNode->SetScalingOffset(FbxNode::eDestinationPivot, pNode->GetScalingOffset(FbxNode::eSourcePivot));
            //
            // If we don't "support" scaling pivots, we can simply do:
            // pNode->SetRotationPivot(FbxNode::eDestinationPivot, lZero);
            // pNode->SetScalingPivot(FbxNode::eDestinationPivot, lZero);
         }
enum | EPivotSet { eSourcePivot, eDestinationPivot }
| Pivot context identifier. More...
enum | EPivotState { ePivotActive, ePivotReference }
| Pivot context state. More...
void | SetPivotState (EPivotSet pPivotSet, EPivotState pPivotState)
| Change the state of the pivot context.
void | GetPivotState (EPivotSet pPivotSet, EPivotState &pPivotState) const
| Get the pivot context state.
void | SetRotationOrder (EPivotSet pPivotSet, EFbxRotationOrder pRotationOrder)
| Set rotation space Determine the rotation space (Euler or Spheric) and the rotation order.
void | GetRotationOrder (EPivotSet pPivotSet, EFbxRotationOrder &pRotationOrder) const
| Get rotation order.
void | SetUseRotationSpaceForLimitOnly (EPivotSet pPivotSet, bool pUseForLimitOnly)
| Set rotation space for limit only.
bool | GetUseRotationSpaceForLimitOnly (EPivotSet pPivotSet) const
| Get rotation space for limit only.
void | SetRotationActive (bool pVal)
| Set the RotationActive state.
bool | GetRotationActive () const
| Get the RotationActive state.
void | SetQuaternionInterpolation (EPivotSet pPivotSet, EFbxQuatInterpMode pQuatIterp)
| Specify which Quaternion interpolation mode is used on the pivot context.
EFbxQuatInterpMode | GetQuaternionInterpolation (EPivotSet pPivotSet) const
| Get the Quaternion interpolation mode of the pivot context.
void | SetRotationStiffness (FbxVector4 pRotationStiffness)
| Set the rotation stiffness.
FbxVector4 | GetRotationStiffness () const
| Get the rotation stiffness.
void | SetMinDampRange (FbxVector4 pMinDampRange)
| Set the minimum damp range angles.
FbxVector4 | GetMinDampRange () const
| Get the minimum damp range angles.
void | SetMaxDampRange (FbxVector4 pMaxDampRange)
| Set the maximum damp range angles.
FbxVector4 | GetMaxDampRange () const
| Get the maximum damp range angles.
void | SetMinDampStrength (FbxVector4 pMinDampStrength)
| Set the minimum damp strength.
FbxVector4 | GetMinDampStrength () const
| Get the minimum damp strength.
void | SetMaxDampStrength (FbxVector4 pMaxDampStrength)
| Set the maximum damp strength.
FbxVector4 | GetMaxDampStrength () const
| Get the maximum damp strength.
void | SetPreferedAngle (FbxVector4 pPreferedAngle)
| Set the preferred angle.
FbxVector4 | GetPreferedAngle () const
| Get the preferred angle.
void | SetRotationOffset (EPivotSet pPivotSet, FbxVector4 pVector)
| Set a translation offset for the rotation pivot.
const FbxVector4 & | GetRotationOffset (EPivotSet pPivotSet) const
| Get the translation offset for the rotation pivot.
void | SetRotationPivot (EPivotSet pPivotSet, FbxVector4 pVector)
| Set rotation pivot.
const FbxVector4 & | GetRotationPivot (EPivotSet pPivotSet) const
| Get rotation pivot.
void | SetPreRotation (EPivotSet pPivotSet, FbxVector4 pVector)
| Set pre-rotation in Euler angles.
const FbxVector4 & | GetPreRotation (EPivotSet pPivotSet) const
| Get pre-rotation in Euler angles.
void | SetPostRotation (EPivotSet pPivotSet, FbxVector4 pVector)
| Set post-rotation in Euler angles.
const FbxVector4 & | GetPostRotation (EPivotSet pPivotSet) const
| Get post-rotation in Euler angles.
void | SetScalingOffset (EPivotSet pPivotSet, FbxVector4 pVector)
| Set a translation offset for the scaling pivot.
const FbxVector4 & | GetScalingOffset (EPivotSet pPivotSet) const
| Get the translation offset for the scaling pivot.
void | SetScalingPivot (EPivotSet pPivotSet, FbxVector4 pVector)
| Set scaling pivot.
const FbxVector4 & | GetScalingPivot (EPivotSet pPivotSet) const
| Get scaling pivot.
void | SetGeometricTranslation (EPivotSet pPivotSet, FbxVector4 pVector)
| Set geometric translation The geometric translation is a local translation that is applied to a node attribute only.
FbxVector4 | GetGeometricTranslation (EPivotSet pPivotSet) const
| Get geometric translation.
void | SetGeometricRotation (EPivotSet pPivotSet, FbxVector4 pVector)
| Set geometric rotation The geometric rotation is a local rotation that is applied to a node attribute only.
FbxVector4 | GetGeometricRotation (EPivotSet pPivotSet) const
| Get geometric rotation.
void | SetGeometricScaling (EPivotSet pPivotSet, FbxVector4 pVector)
| Set geometric scaling The geometric scaling is a local scaling that is applied to a node attribute only.
FbxVector4 | GetGeometricScaling (EPivotSet pPivotSet) const
| Get geometric scaling.
void | ResetPivotSet (FbxNode::EPivotSet pPivotSet)
| Reset a pivot set to the default pivot context.
void | ConvertPivotAnimation (EPivotSet pConversionTarget, double pFrameRate, bool pKeyReduce=true)
| Recursively convert the animation data according to pivot settings.
void | ConvertPivotAnimationRecursive (const char *pAnimStackName, EPivotSet pConversionTarget, double pFrameRate, bool pKeyReduce=true)
| This version is an improved version of the ConvertPivotAnimation().
void | ResetPivotSetAndConvertAnimation (double pFrameRate=30., bool pKeyReduce=false, bool pToNodeCenter=true, bool pForceResetLimits=false)
| Reset all the pivot sets to the default pivot context and convert the animation.
void | SetRotationPivotAsCenterRecursive (FbxVector4 pParentGeometricOffset=FbxVector4())
| Set rotation pivot as node center recursively.
## Error Management
The same error object is shared among instances of this class.
enum | EErrorCode { eIndexOutOfRange, eAttributeNotConnected, eErrorCount }
| Error identifiers. More...
FbxError & | GetError ()
| Retrieve error object.
EErrorCode | GetLastErrorID () const
| Get last error code.
const char * | GetLastErrorString () const
| Get last error string.

## Member Enumeration Documentation

enum EShadingMode

Search for all occurrences

Shading modes.

These shading modes are not directly used by the FBX SDK but it is guaranteed that the information is carried to and from the FBX files. The typical context of using these modes is to affect the rendering of geometric objects (this is, of course, performed at the application level) and the possible definition for each mode is:

Enumerator:

  eHardShading | Solid geometries rendered with smooth surfaces - using the system light. Search for all occurrences
  eWireFrame | Geometries displayed in wire frame. Search for all occurrences
  eFlatShading | Solid geometries rendered faceted - using the system light. Search for all occurrences
  eLightShading | Solid geometries rendered with the scene lights. Search for all occurrences
  eTextureShading | Solid geometries rendered with smooth textured surfaces - using system light. Search for all occurrences
  eFullShading | Solid geometries rendered with smooth textured surfaces and scene lights. Search for all occurrences

Definition at line 240 of file fbxnode.h.

            {
                eHardShading,
                eWireFrame,
                eFlatShading,
                eLightShading,
                eTextureShading,
                eFullShading
            };

enum EPivotSet

Search for all occurrences

Pivot context identifier.

Enumerator:

  eSourcePivot | The source pivot context. Search for all occurrences
  eDestinationPivot | The destination pivot context. Search for all occurrences

Definition at line 667 of file fbxnode.h.

            {
                eSourcePivot,
                eDestinationPivot
            };

enum EPivotState

Search for all occurrences

Pivot context state.

Enumerator:

  ePivotActive | The pivot context with this state is affecting the node's transform computation. Search for all occurrences
  ePivotReference | The pivot context with this state is not used during the node transform computation but can be accessed for reference purposes. Search for all occurrences

Definition at line 675 of file fbxnode.h.

            {
                ePivotActive,
                ePivotReference
            };

enum EErrorCode

Search for all occurrences

Error identifiers.

Enumerator:

  eIndexOutOfRange | The index argument is outside the allowed values. Search for all occurrences
  eAttributeNotConnected | The requested node attribute is invalid or not connected to this node. Search for all occurrences
  eErrorCount | Search for all occurrences

Definition at line 1242 of file fbxnode.h.

            {
                eIndexOutOfRange,
                eAttributeNotConnected,
                eErrorCount
            };

enum ECullingType

Search for all occurrences

Enumerator:

  eCullingOff | Search for all occurrences
  eCullingOnCCW | Search for all occurrences
  eCullingOnCW | Search for all occurrences

Definition at line 1994 of file fbxnode.h.

        {
            eCullingOff,
            eCullingOnCCW,
            eCullingOnCW
        };

## Constructor & Destructor Documentation

FbxNode | ( | FbxManager & | pManager,
|  | char const * | pName
| ) |  | `[protected]`

## Member Function Documentation

FbxNode* GetParent | ( |  | ) |

Search for all occurrences

Get the parent node.

Returns:
  Pointer to parent node or `NULL` if the current node has no parent.

Examples:
  ExportScene01/main.cxx, ExportScene05/main.cxx, Transformations/main.cxx, ViewScene/DrawScene.cxx, and ViewScene/GetPosition.cxx.

FbxNode const* GetParent | ( |  | ) | const

Search for all occurrences

bool AddChild | ( | FbxNode * | pNode | ) |

Search for all occurrences

Add a child node and its underlying node tree.

Parameters:

  pNode | Node we want to make child of `this`.

Returns:
  `true` on success, `false` if pNode is `NULL` or the system is unable to make the connection.

Remarks:
  If pNode already has a parent, first it is removed from current parent and then added to this one.

Examples:
  Common/GeometryUtility.cxx, ExportScene01/main.cxx, ExportScene02/main.cxx, ExportScene03/main.cxx, ExportScene04/main.cxx, ExportScene05/main.cxx, ExportShader/main.cxx, Instances/main.cxx, Layers/main.cxx, MyOwnWriterReader/MyOwnReader.cxx, ProceduralTexture/main.cxx, and UserProperties/main.cxx.

FbxNode* RemoveChild | ( | FbxNode * | pNode | ) |

Search for all occurrences

Remove the child node.

Parameters:

  pNode | The child node to be removed.

Returns:
  The removed child node.

int GetChildCount | ( | bool | pRecursive = `false` | ) | const

Search for all occurrences

Get the number of children nodes.

Parameters:

  pRecursive | If `true` the method will also count all the descendant children.

Returns:
  Total number of children for this node.

Examples:
  Camera/main.cxx, ExportScene04/main.cxx, ImportScene/DisplayAnimation.cxx, ImportScene/DisplayGenericInfo.cxx, ImportScene/DisplayHierarchy.cxx, ImportScene/DisplayLodGroup.cxx, ImportScene/main.cxx, MyOwnWriterReader/MyOwnWriter.cxx, Normals/main.cxx, StereoCamera/main.cxx, Transformations/main.cxx, ViewScene/DrawScene.cxx, and ViewScene/SceneContext.cxx.

FbxNode* GetChild | ( | int | pIndex | ) |

Search for all occurrences

Get child by index.

Parameters:

  pIndex | The child index.

Returns:
  Child node or `NULL` if pIndex is out of range (i.e: < 0 or > GetChildCount()).

Examples:
  Camera/main.cxx, ExportScene01/main.cxx, ExportScene04/main.cxx, ImportScene/DisplayAnimation.cxx, ImportScene/DisplayGenericInfo.cxx, ImportScene/DisplayHierarchy.cxx, ImportScene/DisplayLodGroup.cxx, ImportScene/main.cxx, MyOwnWriterReader/MyOwnWriter.cxx, Normals/main.cxx, StereoCamera/main.cxx, Transformations/main.cxx, UVSample/main.cxx, ViewScene/DrawScene.cxx, and ViewScene/SceneContext.cxx.

FbxNode const* GetChild | ( | int | pIndex | ) | const

Search for all occurrences

Get child by index.

Parameters:

  pIndex | The child index.

Returns:
  Child node or `NULL` if pIndex is out of range (i.e: < 0 or > GetChildCount()).

FbxNode* FindChild | ( | char const * | pName,
|  | bool | pRecursive = `true`,
|  | bool | pInitial = `false`
| ) |  |

Search for all occurrences

Finds a child node by name.

Parameters:

  pName | Name of the searched child node.
  pRecursive | Flag to request recursive calls.
  pInitial | If set to `true`, the search compares the initial name of the node (see the FbxObject class)

Returns:
  Found child node or `NULL` if no child node with this name exists.

Examples:
  MyOwnWriterReader/MyOwnReader.cxx.

void SetTarget | ( | FbxNode * | pNode | ) |

Search for all occurrences

The target must be part of the same scene and it cannot be itself.

Parameters:

  pNode | The target.

Examples:
  ExportScene04/main.cxx.

FbxNode* GetTarget | ( |  | ) | const

Search for all occurrences

Get the target for this node.

Returns:
  `NULL` if target isn't set.

Examples:
  ImportScene/DisplayCamera.cxx, ImportScene/main.cxx, ViewScene/DrawScene.cxx, and ViewScene/SetCamera.cxx.

void SetPostTargetRotation | ( | FbxVector4 | pVector | ) |

Search for all occurrences

Set rotation offset from default relative orientation to target.

Parameters:

  pVector | The rotation offset.

FbxVector4 GetPostTargetRotation | ( |  | ) | const

Search for all occurrences

Get rotation offset from default relative orientation to target.

Returns:
  The rotation offset.

void SetTargetUp | ( | FbxNode * | pNode | ) |

Search for all occurrences

The target up node must be part of the same scene and it cannot be itself.

Parameters:

  pNode | The target.

FbxNode* GetTargetUp | ( |  | ) | const

Search for all occurrences

Get the target up node.

Returns:
  `NULL` if the target up model isn't set.

Examples:
  ImportScene/DisplayCamera.cxx.

void SetTargetUpVector | ( | FbxVector4 | pVector | ) |

Search for all occurrences

Set up vector offset from default relative target up vector.

Parameters:

  pVector | The rotation offset.

FbxVector4 GetTargetUpVector | ( |  | ) | const

Search for all occurrences

Get up vector offset from default relative target up vector.

Returns:
  The up vector offset.

void SetVisibility | ( | bool | pIsVisible | ) |

Search for all occurrences

Set the node Visibility value from the boolean parameter.

Parameters:

  pIsVisible | Node is visible in the scene if set to `true`.

Remarks:
  This method checks for the validity of the property before attempting to set its value. In fact, the exact same result can be achieved by the following code:

       if (Visibility.IsValid())
       {
           FbxDouble val(pIsVisible);
           FbxPropertySet <FbxDouble> (Visibility, val);
       }

See also:
  Visibility property.

bool GetVisibility | ( |  | ) | const

Search for all occurrences

Get the current value of the Visibility property.

Returns:
  `false` if the Visibility property value is 0.0 and `true` for any other value.

Remarks:
  This method expects the Visibility property to exist and to be valid. If this condition is not met, the returned value will be `false`.

void SetShadingMode | ( | EShadingMode | pShadingMode | ) |

Search for all occurrences

Set the shading mode.

Parameters:

  pShadingMode | The shading mode.

Examples:
  Common/GeometryUtility.cxx, ExportDocument/main.cxx, ExportScene02/main.cxx, ExportScene03/main.cxx, Instances/main.cxx, Layers/main.cxx, and ProceduralTexture/main.cxx.

EShadingMode GetShadingMode | ( |  | ) | const

Search for all occurrences

Get the shading mode.

Returns:
  The currently set shading mode.

FbxNodeAttribute* SetNodeAttribute | ( | FbxNodeAttribute * | pNodeAttribute | ) |

Search for all occurrences

Set the node attribute.

Parameters:

  pNodeAttribute | Node attribute object

Returns:
  Pointer to previous node attribute object. `NULL` if the node didn't have a node attribute or if the new node attribute is equal to the one currently set.

Remarks:
  A node attribute can be shared between nodes.
  If this node has more than one attribute (added via the AddAttribute() method), this call will destroy all, but the default node attribute.

Examples:
  Camera/main.cxx, Common/GeometryUtility.cxx, ExportDocument/main.cxx, ExportScene01/main.cxx, ExportScene02/main.cxx, ExportScene03/main.cxx, ExportScene04/main.cxx, ExportScene05/main.cxx, Instances/main.cxx, Layers/main.cxx, MyOwnWriterReader/MyOwnReader.cxx, ProceduralTexture/main.cxx, StereoCamera/main.cxx, and UserProperties/main.cxx.

FbxNodeAttribute* GetNodeAttribute | ( |  | ) |

Search for all occurrences

Get the default node attribute.

The default node attribute is the attribute that has been set by the call to SetNodeAttribute().

Returns:
  Pointer to the default node attribute or `NULL` if the node doesn't have a node attribute.

Examples:
  ExportScene01/main.cxx, ExportScene02/main.cxx, ExportScene03/main.cxx, ExportScene04/main.cxx, ImportScene/DisplayAnimation.cxx, ImportScene/DisplayCamera.cxx, ImportScene/DisplayLight.cxx, ImportScene/DisplayLodGroup.cxx, ImportScene/DisplayMarker.cxx, ImportScene/DisplayMesh.cxx, ImportScene/DisplayNurb.cxx, ImportScene/DisplayPatch.cxx, ImportScene/DisplaySkeleton.cxx, ImportScene/main.cxx, StereoCamera/main.cxx, ViewScene/DrawScene.cxx, ViewScene/SceneContext.cxx, and ViewScene/SetCamera.cxx.

FbxNodeAttribute const* GetNodeAttribute | ( |  | ) | const

Search for all occurrences

Get the default node attribute.

The default node attribute is the attribute that has been set by the call to SetNodeAttribute(...).

Returns:
  Pointer to the default node attribute or `NULL` if the node doesn't have a node attribute.

int GetNodeAttributeCount | ( |  | ) | const

Search for all occurrences

Get the number of node attribute(s) connected to this node.

int GetDefaultNodeAttributeIndex | ( |  | ) | const

Search for all occurrences

Get the index, in the list of connected node attributes, of the node attribute that is set to be the default one.

Returns:
  Index of the default node attribute or `-1` if there is no default node attribute set.

bool SetDefaultNodeAttributeIndex | ( | int | pIndex | ) |

Search for all occurrences

Set index of the default node attribute.

Parameters:

  pIndex | Identifies which of the connected node attributes is becoming the default one. This value represent the connection number of the node.

Returns:
  `true` if the operation succeeds or `false` if the passed index is invalid. In this case, FbxNode::GetLastErrorID() returns eIndexOutOfRange.

FbxNodeAttribute* GetNodeAttributeByIndex | ( | int | pIndex | ) |

Search for all occurrences

Get the connected node attribute by specifying its index in the connection list.

Parameters:

  pIndex | The connection number of the node.

Returns:
  Pointer to corresponding node attribute or `NULL` if the index is out of range. In this case, FbxNode::GetLastErrorID() returns eIndexOutOfRange.

FbxNodeAttribute const* GetNodeAttributeByIndex | ( | int | pIndex | ) | const

Search for all occurrences

Get the connected node attribute by specifying its index in the connection list.

Parameters:

  pIndex | The connection number of the node.

Returns:
  Pointer to corresponding node attribute or `NULL` if the index is out of range. In this case, FbxNode::GetLastErrorID() returns eIndexOutOfRange.

int GetNodeAttributeIndex | ( | FbxNodeAttribute * | pNodeAttribute | ) | const

Search for all occurrences

Get the connection index of the specified node attribute.

This method will do a linear search of all the connected node attributes (from the last to the first connection) until it finds pNodeAttribue.

Parameters:

  pNodeAttribute | The pointer to the node attribute.

Returns:
  The connection number of the node attribute or `-1` if pNodeAttribute is `NULL` or not connected to this node. For both failing conditions, FbxNode::GetLastErrorID() returns eAttributeNotConnected.

bool AddNodeAttribute | ( | FbxNodeAttribute * | pNodeAttribute | ) |

Search for all occurrences

Add the new node attribute to this node.

If no other node attribute is already set as the default one, this new node attribute is automatically set as the default one.

Parameters:

  pNodeAttribute | The pointer to a node attribute.

Returns:
  `true` if the operation succeeded or `false` if the operation failed.

Remarks:
  The failing conditions for this methods are:
  - The received object pointer is `NULL`.
  - The received object is already connected to this node.
  - An internal error prevented the connection to successfully complete.

FbxNodeAttribute* RemoveNodeAttribute | ( | FbxNodeAttribute * | pNodeAttribute | ) |

Search for all occurrences

Remove the node attribute from the connection list of this node.

Parameters:

  pNodeAttribute | The pointer to a node attribute.

Returns:
  Pointer to the removed node attribute or `NULL` if the operation failed. In this case, FbxNode::GetLastErrorID() returns eAttributeNotConnected.

FbxNodeAttribute* RemoveNodeAttributeByIndex | ( | int | pIndex | ) |

Search for all occurrences

Remove the node attribute, specified by the connection index, from the connection list of this node.

Parameters:

  pIndex | Index of the node attribute.

Returns:
  Pointer to the removed node attribute or `NULL` if the operation failed.

Remarks:
  If the specified node attribute is also the default one, its predecessor in the connection list will become the new default node attribute. And if there are no more predecessors, the node DefaultNodeAttributeIndex is reset to -1.

FbxCachedEffect* GetCachedEffect | ( |  | ) |

Search for all occurrences

Get the default node attribute casted to a FbxCachedEffect pointer.

Returns:
  Pointer to the cached effect object.

Remarks:
  If the type cast failed because there is not default node attribute set or it cannot be successfully casted, this method will return `NULL`.

FbxLODGroup* GetLodGroup | ( |  | ) |

Search for all occurrences

Get the default node attribute casted to a FbxLODGroup pointer.

Returns:
  Pointer to the lod group object.

Remarks:
  If the type cast failed because there is not default node attribute set or it cannot be successfully casted, this method will return `NULL`.

FbxNull* GetNull | ( |  | ) |

Search for all occurrences

Get the default node attribute casted to a FbxNull pointer.

Returns:
  Pointer to the null object.

Remarks:
  If the type cast failed because there is not default node attribute set or it cannot be successfully casted, this method will return `NULL`.

FbxMarker* GetMarker | ( |  | ) |

Search for all occurrences

Get the node attribute casted to a FbxMarker pointer.

Returns:
  Pointer to the marker object.

Remarks:
  If the type cast failed because there is not default node attribute set or it cannot be successfully casted, this method will return `NULL`.

FbxSkeleton* GetSkeleton | ( |  | ) |

Search for all occurrences

Get the node attribute casted to a FbxSkeleton pointer.

Returns:
  Pointer to the skeleton object.

Remarks:
  If the type cast failed because there is not default node attribute set or it cannot be successfully casted, this method will return `NULL`.

FbxGeometry* GetGeometry | ( |  | ) |

Search for all occurrences

Get the node attribute casted to a FbxGeometry pointer.

Returns:
  Pointer to the geometry object.

Remarks:
  If the type cast failed because there is not default node attribute set or it cannot be successfully casted, this method will return `NULL`.
  For this method to succeed, the node attribute's GetAttributeType() must returns one of the following:
  - FbxNodeAttribute::eMesh
  - FbxNodeAttribute::eNurbs
  - FbxNodeAttribute::eNurbsSurface
  - FbxNodeAttribute::ePatch
  - FbxNodeAttribute::eNurbsCurve
  - FbxNodeAttribute::eBoundary
  - FbxNodeAttribute::eTrimNurbsSurface
  - FbxNodeAttribute::eSubDiv
  - FbxNodeAttribute::eLine

Examples:
  ExportScene02/main.cxx, ExportScene03/main.cxx, and ViewScene/SceneContext.cxx.

FbxMesh* GetMesh | ( |  | ) |

Search for all occurrences

Get the node attribute casted to a FbxMesh pointer.

Returns:
  Pointer to the mesh object.

Remarks:
  This method will try to process the default node attribute first. If it cannot find it, it will scan the list of connected node attributes and get the first object that is a FbxNodeAttribute::eMesh.
  If the above search failed to get a valid pointer or it cannot be successfully casted, this method will return `NULL`.

Examples:
  ExportScene03/main.cxx, Instances/main.cxx, Normals/main.cxx, ProceduralTexture/main.cxx, UVSample/main.cxx, ViewScene/DrawScene.cxx, and ViewScene/SceneContext.cxx.

FbxNurbs* GetNurbs | ( |  | ) |

Search for all occurrences

Get the node attribute casted to a FbxNurbs pointer.

Returns:
  Pointer to the nurb object.

Remarks:
  This method will try to process the default node attribute first. If it cannot find it, it will scan the list of connected node attributes and get the first object that is a FbxNodeAttribute::eNurbs.
  If the above search failed to get a valid pointer or it cannot be successfully casted, this method will return `NULL`.

Examples:
  ExportScene02/main.cxx.

FbxNurbsSurface* GetNurbsSurface | ( |  | ) |

Search for all occurrences

Get the node attribute casted to a FbxNurbsSurface pointer.

Returns:
  Pointer to the nurbs surface object.

Remarks:
  This method will try to process the default node attribute first. If it cannot find it, it will scan the list of connected node attributes and get the first object that is a FbxNodeAttribute::eNurbsSurface.
  If the above search failed to get a valid pointer or it cannot be successfully casted, this method will return `NULL`.

FbxNurbsCurve* GetNurbsCurve | ( |  | ) |

Search for all occurrences

Get the node attribute casted to a FbxNurbsCurve pointer.

Returns:
  Pointer to the nurbs curve object.

Remarks:
  This method will try to process the default node attribute first. If it cannot find it, it will scan the list of connected node attributes and get the first object that is a FbxNodeAttribute::eNurbsCurve.
  If the above search failed to get a valid pointer or it cannot be successfully casted, this method will return `NULL`.

FbxLine* GetLine | ( |  | ) |

Search for all occurrences

Get the node attribute casted to a FbxLine pointer.

Returns:
  Pointer to the line object.

Remarks:
  This method will try to process the default node attribute first. If it cannot find it, it will scan the list of connected node attributes and get the first object that is a FbxNodeAttribute::eLine.
  If the above search failed to get a valid pointer or it cannot be successfully casted, this method will return `NULL`.

FbxTrimNurbsSurface* GetTrimNurbsSurface | ( |  | ) |

Search for all occurrences

Get the node attribute casted to a FbxTrimNurbsSurface pointer.

Returns:
  Pointer to the trim nurbs surface object.

Remarks:
  This method will try to process the default node attribute first. If it cannot find it, it will scan the list of connected node attributes and get the first object that is a FbxNodeAttribute::eTrimNurbsSurface.
  If the above search failed to get a valid pointer or it cannot be successfully casted, this method will return `NULL`.

FbxSubDiv* GetSubdiv | ( |  | ) |

Search for all occurrences

Get the node attribute casted to a FbxSubDiv pointer.

Returns:
  Pointer to the subdivision surface object.

Remarks:
  This method will try to process the default node attribute first. If it cannot find it, it will scan the list of connected node attributes and get the first object that is a FbxNodeAttribute::eSubDiv.
  If the above search failed to get a valid pointer or it cannot be successfully casted, this method will return `NULL`.

FbxPatch* GetPatch | ( |  | ) |

Search for all occurrences

Get the node attribute casted to a FbxPatch pointer.

Returns:
  Pointer to the patch object.

Remarks:
  This method will try to process the default node attribute first. If it cannot find it, it will scan the list of connected node attributes and get the first object that is a FbxNodeAttribute::ePatch.
  If the above search failed to get a valid pointer or it cannot be successfully casted, this method will return `NULL`.

FbxCamera* GetCamera | ( |  | ) |

Search for all occurrences

Get the node attribute casted to a FbxCamera pointer.

Returns:
  Pointer to the camera object.

Remarks:
  If the type cast failed because there is not default node attribute set or it cannot be successfully casted, this method will return `NULL`.

Examples:
  Camera/main.cxx, ExportScene04/main.cxx, ImportScene/DisplayAnimation.cxx, ViewScene/DrawScene.cxx, and ViewScene/SetCamera.cxx.

const FbxCamera* GetCamera | ( |  | ) | const

Search for all occurrences

FbxCameraStereo* GetCameraStereo | ( |  | ) |

Search for all occurrences

Get the node attribute casted to a FbxCameraStereo pointer.

Returns:
  Pointer to the stereo camera object.

Remarks:
  If the type cast failed because there is not default node attribute set or it cannot be successfully casted, this method will return `NULL`.

FbxCameraSwitcher* GetCameraSwitcher | ( |  | ) |

Search for all occurrences

Get the node attribute casted to a FbxCameraSwitcher pointer.

Returns:
  Pointer to the camera switcher object.

Remarks:
  If the type cast failed because there is not default node attribute set or it cannot be successfully casted, this method will return `NULL`.

FbxLight* GetLight | ( |  | ) |

Search for all occurrences

Get the node attribute casted to a FbxLight pointer.

Returns:
  Pointer to the light object.

Remarks:
  If the type cast failed because there is not default node attribute set or it cannot be successfully casted, this method will return `NULL`.

Examples:
  ExportScene04/main.cxx, ImportScene/DisplayAnimation.cxx, ViewScene/DrawScene.cxx, and ViewScene/SceneContext.cxx.

const FbxLight* GetLight | ( |  | ) | const

Search for all occurrences

FbxOpticalReference* GetOpticalReference | ( |  | ) |

Search for all occurrences

Get the node attribute casted to a FbxOpticalReference pointer.

Returns:
  Pointer to the optical reference object.

Remarks:
  If the type cast failed because there is not default node attribute set or it cannot be successfully casted, this method will return `NULL`.

void SetTransformationInheritType | ( | FbxTransform::EInheritType | pInheritType | ) |

Search for all occurrences

Sets how child transforms are inherited from parent transforms.

Parameters:

  pInheritType | One of the following values eInheritRrSs, eInheritRSrs or eInheritRrs

void GetTransformationInheritType | ( | FbxTransform::EInheritType & | pInheritType | ) | const

Search for all occurrences

Get transformation inherit type.

Examples:
  ImportScene/main.cxx.

void SetPivotState | ( | EPivotSet | pPivotSet,
|  | EPivotState | pPivotState
| ) |  |

Search for all occurrences

Change the state of the pivot context.

Parameters:

  pPivotSet | Specify which pivot context is manipulated.
  pPivotState | The new state of the pivot context.

Examples:
  ExportScene05/main.cxx, and Pivot/main.cxx.

void GetPivotState | ( | EPivotSet | pPivotSet,
|  | EPivotState & | pPivotState
| ) |  | const

Search for all occurrences

Get the pivot context state.

The returned value tells if this pivot context is used in the evaluation of the node transform or not.

Parameters:

  pPivotSet | Specify which pivot context is queried.
  pPivotState | The current state of the pivot set.

Examples:
  ImportScene/DisplayPivotsAndLimits.cxx.

void SetRotationOrder | ( | EPivotSet | pPivotSet,
|  | EFbxRotationOrder | pRotationOrder
| ) |  |

Search for all occurrences

Set rotation space Determine the rotation space (Euler or Spheric) and the rotation order.

Parameters:

  pPivotSet | Specify which pivot context is manipulated.
  pRotationOrder | The new value for the pivot rotation order.

Examples:
  ExportScene05/main.cxx.

void GetRotationOrder | ( | EPivotSet | pPivotSet,
|  | EFbxRotationOrder & | pRotationOrder
| ) |  | const

Search for all occurrences

Get rotation order.

Parameters:

  pPivotSet | Specify which pivot context is queried.
  pRotationOrder | The current value of the pivot rotation order.

Examples:
  ImportScene/main.cxx.

void SetUseRotationSpaceForLimitOnly | ( | EPivotSet | pPivotSet,
|  | bool | pUseForLimitOnly
| ) |  |

Search for all occurrences

Set rotation space for limit only.

Parameters:

  pPivotSet | Specify which pivot context is manipulated.
  pUseForLimitOnly | When set to `true`, the current rotation space (set with SetRotationOrder) define the rotation space for the limit only; leaving the rotation animation in Euler XYZ space. When set to `false`, the current rotation space defines the rotation space for both the limits and the rotation animation data.

Examples:
  ExportScene05/main.cxx.

bool GetUseRotationSpaceForLimitOnly | ( | EPivotSet | pPivotSet | ) | const

Search for all occurrences

Get rotation space for limit only.

Parameters:

  pPivotSet | Specify which pivot context is queried.

Returns:
  The current rotation space limit flag value.

Examples:
  ImportScene/main.cxx.

void SetRotationActive | ( | bool | pVal | ) |

Search for all occurrences

Set the RotationActive state.

Parameters:

  pVal | The new state of the property.

Remarks:
  When this flag is set to false, the RotationOrder, the Pre/Post rotation values and the rotation limits should be ignored.

Examples:
  Pivot/main.cxx.

bool GetRotationActive | ( |  | ) | const

Search for all occurrences

Get the RotationActive state.

Returns:
  The value of the RotationActive flag.

void SetQuaternionInterpolation | ( | EPivotSet | pPivotSet,
|  | EFbxQuatInterpMode | pQuatIterp
| ) |  |

Search for all occurrences

Specify which Quaternion interpolation mode is used on the pivot context.

Parameters:

  pPivotSet | Specify which pivot context is manipulated.
  pQuatIterp | The new value.

Remarks:
  When the pPivotSet is eSourcePivot, this method also updates the value of the QuaternionInterpolate property.

Examples:
  ExportScene05/main.cxx.

EFbxQuatInterpMode GetQuaternionInterpolation | ( | EPivotSet | pPivotSet | ) | const

Search for all occurrences

Get the Quaternion interpolation mode of the pivot context.

Parameters:

  pPivotSet | Specify which pivot context is queried.

Returns:
  The current mode set on the pivot context.

void SetRotationStiffness | ( | FbxVector4 | pRotationStiffness | ) |

Search for all occurrences

Set the rotation stiffness.

The stiffness attribute is used by IK solvers to generate a resistance to a joint motion. The higher the stiffness the less it will rotate. Stiffness works in a relative sense: it determines the willingness of this joint to rotate with respect to the other joint in the IK chain.

Parameters:

  pRotationStiffness | The rotation stiffness values are limited to the range [0, 100].

FbxVector4 GetRotationStiffness | ( |  | ) | const

Search for all occurrences

Get the rotation stiffness.

Returns:
  The currently set rotation stiffness values.

void SetMinDampRange | ( | FbxVector4 | pMinDampRange | ) |

Search for all occurrences

Set the minimum damp range angles.

This attributes apply resistance to a joint rotation as it approaches the lower boundary of its rotation limits. This functionality allows joint motion to slow down smoothly until the joint reaches its rotation limits instead of stopping abruptly. The MinDampRange specifies when the deceleration should start.

Parameters:

  pMinDampRange | Angle, in degrees, where deceleration should start

FbxVector4 GetMinDampRange | ( |  | ) | const

Search for all occurrences

Get the minimum damp range angles.

Returns:
  The currently set minimum damp range angles.

void SetMaxDampRange | ( | FbxVector4 | pMaxDampRange | ) |

Search for all occurrences

Set the maximum damp range angles.

This attributes apply resistance to a joint rotation as it approaches the upper boundary of its rotation limits. This functionality allows joint motion to slow down smoothly until the joint reaches its rotation limits instead of stopping abruptly. The MaxDampRange specifies when the deceleration should start.

Parameters:

  pMaxDampRange | Angle, in degrees, where deceleration should start

FbxVector4 GetMaxDampRange | ( |  | ) | const

Search for all occurrences

Get the maximum damp range angles.

Returns:
  The currently set maximum damp range angles.

void SetMinDampStrength | ( | FbxVector4 | pMinDampStrength | ) |

Search for all occurrences

Set the minimum damp strength.

This attributes apply resistance to a joint rotation as it approaches the lower boundary of its rotation limits. This functionality allows joint motion to slow down smoothly until the joint reaches its rotation limits instead of stopping abruptly. The MinDampStrength defines the rate of deceleration.

Parameters:

  pMinDampStrength | Values are limited to the range [0, 100].

FbxVector4 GetMinDampStrength | ( |  | ) | const

Search for all occurrences

Get the minimum damp strength.

Returns:
  The currently set minimum damp strength values.

void SetMaxDampStrength | ( | FbxVector4 | pMaxDampStrength | ) |

Search for all occurrences

Set the maximum damp strength.

This attributes apply resistance to a joint rotation as it approaches the upper boundary of its rotation limits. This functionality allows joint motion to slow down smoothly until the joint reaches its rotation limits instead of stopping abruptly. The MaxDampStrength defines the rate of deceleration.

Parameters:

  pMaxDampStrength | Values are limited to the range [0, 100].

FbxVector4 GetMaxDampStrength | ( |  | ) | const

Search for all occurrences

Get the maximum damp strength.

Returns:
  The currently set maximum damp strength values.

void SetPreferedAngle | ( | FbxVector4 | pPreferedAngle | ) |

Search for all occurrences

Set the preferred angle.

The preferredAngle attribute defines the initial joint configuration used by a single chain IK solver to calculate the inverse kinematic solution.

Parameters:

  pPreferedAngle | Angle in degrees

FbxVector4 GetPreferedAngle | ( |  | ) | const

Search for all occurrences

Get the preferred angle.

Returns:
  The currently set preferred angle.

void SetRotationOffset | ( | EPivotSet | pPivotSet,
|  | FbxVector4 | pVector
| ) |  |

Search for all occurrences

Set a translation offset for the rotation pivot.

The translation offset is in coordinates relative to the node's origin.

Parameters:

  pPivotSet | Specify which pivot set to modify.
  pVector | The X,Y and Z translation values (the 4th component of the FbxVector4 is ignored).

const FbxVector4& GetRotationOffset | ( | EPivotSet | pPivotSet | ) | const

Search for all occurrences

Get the translation offset for the rotation pivot.

The translation offset is in coordinates relative to the node's origin.

Parameters:

  pPivotSet | Specify which pivot set to to query the value.

Returns:
  The X, Y and Z translation offset values (the 4th component of the FbxVector4 is always 1).

Examples:
  ImportScene/DisplayPivotsAndLimits.cxx.

void SetRotationPivot | ( | EPivotSet | pPivotSet,
|  | FbxVector4 | pVector
| ) |  |

Search for all occurrences

Set rotation pivot.

The rotation pivot is the center of rotation in coordinates relative to the node's origin.

Parameters:

  pPivotSet | Specify which pivot set to modify.
  pVector | The new position of the rotation pivot (the 4th component of the FbxVector4 is ignored).

Examples:
  ExportScene05/main.cxx, and Pivot/main.cxx.

const FbxVector4& GetRotationPivot | ( | EPivotSet | pPivotSet | ) | const

Search for all occurrences

Get rotation pivot.

The rotation pivot is the center of rotation in coordinates relative to the node's origin.

Parameters:

  pPivotSet | Specify which pivot set to query.

Returns:
  The current position of the rotation pivot (the 4th component of the FbxVector4 is always 1).

Examples:
  ImportScene/DisplayPivotsAndLimits.cxx.

void SetPreRotation | ( | EPivotSet | pPivotSet,
|  | FbxVector4 | pVector
| ) |  |

Search for all occurrences

Set pre-rotation in Euler angles.

The pre-rotation is the rotation applied to the node before rotation animation data.

Parameters:

  pPivotSet | Specify which pivot set to modify.
  pVector | The X,Y,Z rotation values to set (the 4th component of the FbxVector4 is ignored).

Examples:
  ExportScene05/main.cxx.

const FbxVector4& GetPreRotation | ( | EPivotSet | pPivotSet | ) | const

Search for all occurrences

Get pre-rotation in Euler angles.

The pre-rotation is the rotation applied to the node before rotation animation data.

Parameters:

  pPivotSet | Specify which pivot set to query.

Returns:
  The X,Y and Z rotation values (the 4th component of the FbxVector4 is always 1).

Examples:
  ImportScene/DisplayPivotsAndLimits.cxx.

void SetPostRotation | ( | EPivotSet | pPivotSet,
|  | FbxVector4 | pVector
| ) |  |

Search for all occurrences

Set post-rotation in Euler angles.

The post-rotation is the rotation applied to the node after the rotation animation data.

Parameters:

  pPivotSet | Specify which pivot set to modify.
  pVector | The X,Y,Z rotation values to set (the 4th component of the FbxVector4 is ignored).

Examples:
  ExportScene05/main.cxx, and Pivot/main.cxx.

const FbxVector4& GetPostRotation | ( | EPivotSet | pPivotSet | ) | const

Search for all occurrences

Get post-rotation in Euler angles.

The post-rotation is the rotation applied to the node after the rotation animation data.

Parameters:

  pPivotSet | Specify which pivot set to query.

Returns:
  The X,Y and Z rotation values (the 4th component of the FbxVector4 is always 1).

Examples:
  ImportScene/DisplayPivotsAndLimits.cxx.

void SetScalingOffset | ( | EPivotSet | pPivotSet,
|  | FbxVector4 | pVector
| ) |  |

Search for all occurrences

Set a translation offset for the scaling pivot.

The translation offset is in coordinates relative to the node's origin.

Parameters:

  pPivotSet | Specify which pivot set to modify.
  pVector | The X,Y and Z translation values (the 4th component of the FbxVector4 is ignored).

const FbxVector4& GetScalingOffset | ( | EPivotSet | pPivotSet | ) | const

Search for all occurrences

Get the translation offset for the scaling pivot.

The translation offset is in coordinates relative to the node's origin.

Parameters:

  pPivotSet | Specify which pivot set to query the value.

Returns:
  The X, Y and Z translation offset values (the 4th component of the FbxVector4 is always 1).

Examples:
  ImportScene/DisplayPivotsAndLimits.cxx.

void SetScalingPivot | ( | EPivotSet | pPivotSet,
|  | FbxVector4 | pVector
| ) |  |

Search for all occurrences

Set scaling pivot.

The scaling pivot is the center of scaling in coordinates relative to the node's origin.

Parameters:

  pPivotSet | Specify which pivot set to modify.
  pVector | The new position of the scaling pivot (the 4th component of the FbxVector4 is ignored).

const FbxVector4& GetScalingPivot | ( | EPivotSet | pPivotSet | ) | const

Search for all occurrences

Get scaling pivot.

The scaling pivot is the center of scaling in coordinates relative to the node's origin.

Parameters:

  pPivotSet | Specify which pivot set to query.

Returns:
  The current position of the rotation pivot (the 4th component of the FbxVector4 is always 1).

Examples:
  ImportScene/DisplayPivotsAndLimits.cxx.

void SetGeometricTranslation | ( | EPivotSet | pPivotSet,
|  | FbxVector4 | pVector
| ) |  |

Search for all occurrences

Set geometric translation The geometric translation is a local translation that is applied to a node attribute only.

This translation is applied to the node attribute after the node transformations. This translation is not inherited across the node hierarchy.

Parameters:

  pPivotSet | Specify which pivot set to modify.
  pVector | The X, Y, and Z translation values (the 4th component of the FbxVector4 is ignored).

FbxVector4 GetGeometricTranslation | ( | EPivotSet | pPivotSet | ) | const

Search for all occurrences

Get geometric translation.

Parameters:

  pPivotSet | Specify which pivot set to query.

Returns:
  The current geometric translation (the 4th component of the FbxVector4 is always 1).

Examples:
  ImportScene/main.cxx, and ViewScene/GetPosition.cxx.

void SetGeometricRotation | ( | EPivotSet | pPivotSet,
|  | FbxVector4 | pVector
| ) |  |

Search for all occurrences

Set geometric rotation The geometric rotation is a local rotation that is applied to a node attribute only.

This rotation is applied to the node attribute after the node transformations. This rotation is not inherited across the node hierarchy.

Parameters:

  pPivotSet | Specify which pivot set to modify.
  pVector | The X,Y and Z rotation values (the 4th component of the FbxVector4 is ignored).

FbxVector4 GetGeometricRotation | ( | EPivotSet | pPivotSet | ) | const

Search for all occurrences

Get geometric rotation.

Parameters:

  pPivotSet | Specify which pivot set to query.

Returns:
  The current geometric rotation (the 4th component of the FbxVector4 is always 1).

Examples:
  ImportScene/main.cxx, and ViewScene/GetPosition.cxx.

void SetGeometricScaling | ( | EPivotSet | pPivotSet,
|  | FbxVector4 | pVector
| ) |  |

Search for all occurrences

Set geometric scaling The geometric scaling is a local scaling that is applied to a node attribute only.

This scaling is applied to the node attribute after the node transformations. This scaling is not inherited across the node hierarchy.

Parameters:

  pPivotSet | Specify which pivot set to modify.
  pVector | The X,Y and Z scale values (the 4th component of the FbxVector4 is ignored).

FbxVector4 GetGeometricScaling | ( | EPivotSet | pPivotSet | ) | const

Search for all occurrences

Get geometric scaling.

Parameters:

  pPivotSet | Specify which pivot set to query.

Returns:
  The current geometric scaling (the 4th component of the FbxVector4 is always 1).

Examples:
  ImportScene/main.cxx, and ViewScene/GetPosition.cxx.

void ResetPivotSet | ( | FbxNode::EPivotSet | pPivotSet | ) |

Search for all occurrences

Reset a pivot set to the default pivot context.

If the node has a geometry, reset the geometry's pivot to the identity matrix.

Parameters:

  pPivotSet | Pivot set to reset.

Remarks:
  The default pivot context is a context with all the vector attributes set to (0,0,0) except the GeometricScaling attribute that is reset to (1,1,1).

void ConvertPivotAnimation | ( | EPivotSet | pConversionTarget,
|  | double | pFrameRate,
|  | bool | pKeyReduce = `true`
| ) |  |

Search for all occurrences

Recursively convert the animation data according to pivot settings.

This method is still available for legacy reasons. Its use is limited to the processing of very old data coming from FBX v5 files and should not be used in any other case. Instead call the ConvertPivotAnimationRecursive().

Parameters:

  pConversionTarget | If set to EPivotSet::eDestinationPivot, convert animation data from the EPivotSet::eSourcePivot pivot context to the EPivotSet::eDestinationPivot pivot context. Otherwise, the conversion is computed the other way around.
  pFrameRate | Resampling frame rate in frames per second.
  pKeyReduce | Apply or skip key reducing filter.

Remarks:
  Due to the intrinsic properties of the mathematical operations performed, sometimes, it is necessary to resample animation curves to maintain the accurate conversion. When this resampling is required, the method will use the pFrameRate value to specify the number of samples. To avoid a huge number of keys in the animation curves, a constant key reducer filter (FbxKFCurveFilterConstantKeyReducer) is automatically applied to all the affected curves to remove as much consecutive keys that have the same value. This filter is private and its settings cannot be changed. It is possible that, after the filtering pass, the animations curves do not contain keys anymore. This is a normal result and does not affect the overall results.

void ConvertPivotAnimationRecursive | ( | const char * | pAnimStackName,
|  | EPivotSet | pConversionTarget,
|  | double | pFrameRate,
|  | bool | pKeyReduce = `true`
| ) |  |

Search for all occurrences

This version is an improved version of the ConvertPivotAnimation().

It fully supports all the attributes defined in the pivot sets and can process animation data defined on different animation stack.

Parameters:

  pAnimStackName | The name of animation stack on which the conversion will take place. If equals `NULL` or is an empty string, the first animation stack will be used.
  pConversionTarget | If set to EPivotSet::eDestinationPivot, convert animation data from the EPivotSet::eSourcePivot pivot context to the EPivotSet::eDestinationPivot pivot context. Otherwise, the conversion is computed the other way around.
  pFrameRate | Resampling frame rate in frames per second.
  pKeyReduce | Apply or skip key reducing filter.

Remarks:
  Due to the intrinsic properties of the mathematical operations performed, sometimes, it is necessary to resample animation curves to maintain the accurate conversion. When this resampling is required, the method will use the pFrameRate value to specify the number of samples. To avoid a huge number of keys in the animation curves, a constant key reducer filter (FbxKFCurveFilterConstantKeyReducer) is automatically applied to all the affected curves to remove as much consecutive keys that have the same value. This filter is private and its settings cannot be changed. It is possible that, after the filtering pass, the animations curves do not contain keys anymore. This is a normal result and does not affect the overall results.

Note:
  Altough it is possible to call this method several times with a different AnimStack name, users must be aware that some pivot computation can irreversibly modify the geometric nodes with a cumulative effect of the GeometricTranslation, GeometricRotation and GeometricScaling which will produce undesirable results. It is recommended to call ConvertPivotAnimationRecursive with `pAnimStackName` = NULL and let the method convert the animation on all the Anim stacks at once. In the case when there are no geometric nodes in the scene tree, specifying the animation stack is safe and somewhat faster.

Examples:
  Pivot/main.cxx.

void ResetPivotSetAndConvertAnimation | ( | double | pFrameRate = `30.`,
|  | bool | pKeyReduce = `false`,
|  | bool | pToNodeCenter = `true`,
|  | bool | pForceResetLimits = `false`
| ) |  |

Search for all occurrences

Reset all the pivot sets to the default pivot context and convert the animation.

Parameters:

  pFrameRate | Resampling frame rate in frames per second.
  pKeyReduce | Apply or skip key reducing filter.
  pToNodeCenter,: | Reset pivots to node center if `true`, or retain pivot places if `false`.
  pForceResetLimits | If `true`, this flag will reset all the Translation, Rotation and Scaling limits and clears the enabled flags.

Remarks:
  The resulting animation will be visually equivalent and all the pivots will be cleared. The conversion is performed on all animation stacks.
  Will recursively convert the animation of all the children nodes.
  The pForceResetLimits flag has a destructive behavior and should be used only in very limited cases where the values of the limits are not required after the call to this method.
  Currently, this function just works under RSrs inherit type if pToNodeCenter is set to `false`.

void SetRotationPivotAsCenterRecursive | ( | FbxVector4 | pParentGeometricOffset = `FbxVector4()` | ) |

Search for all occurrences

Set rotation pivot as node center recursively.

Parameters:

  pParentGeometricOffset | Offset vector to be applied.

FbxAMatrix& EvaluateGlobalTransform | ( | FbxTime | pTime = `FBXSDK_TIME_INFINITE`,
|  | FbxNode::EPivotSet | pPivotSet = `FbxNode::eSourcePivot`,
|  | bool | pApplyTarget = `false`,
|  | bool | pForceEval = `false`
| ) |  |

Search for all occurrences

Returns this node's global transformation matrix at the specified time.

The node's translation, rotation and scaling limits are taken into consideration.

Parameters:

  pTime | The time used for evaluate. If FBXSDK_TIME_INFINITE is used, this returns the default value, without animation curves evaluation.
  pPivotSet | The pivot set to take into account
  pApplyTarget | Applies the necessary transform to align into the target node
  pForceEval | Force the evaluator to refresh the evaluation state cache even if its already up-to-date.

Returns:
  The resulting global transform of the specified node at the specified time.

Remarks:
  This function is the equivalent of calling Scene->GetEvaluator()->GetNodeGlobalTransform().

Examples:
  ExportScene01/main.cxx, Pivot/main.cxx, SwitchBinding/main.cxx, and ViewScene/GetPosition.cxx.

FbxAMatrix& EvaluateLocalTransform | ( | FbxTime | pTime = `FBXSDK_TIME_INFINITE`,
|  | FbxNode::EPivotSet | pPivotSet = `FbxNode::eSourcePivot`,
|  | bool | pApplyTarget = `false`,
|  | bool | pForceEval = `false`
| ) |  |

Search for all occurrences

Returns this node's local transformation matrix at the specified time.

The node's translation, rotation and scaling limits are taken into consideration.

Parameters:

  pTime | The time used for evaluate. If FBXSDK_TIME_INFINITE is used, this returns the default value, without animation curves evaluation.
  pPivotSet | The pivot set to take into account
  pApplyTarget | Applies the necessary transform to align into the target node
  pForceEval | Force the evaluator to refresh the evaluation state cache even if its already up-to-date.

Returns:
  The resulting local transform of the specified node for the specified time.

Remarks:
  The local transform matrix is calculated in this way: ParentGlobal.Inverse * Global, all transforms such as pre/post rotation are taken into consideration. This will return a different value than LclTranslation, LclRotation and LclScaling at the specified time. To evaluate these properties separately without taking pre/post rotation, pivots and offsets into consideration, please use GetNodeLocalTranslation(), GetNodeLocalRotation() and GetNodeLocalScaling(). This function is the equivalent of calling Scene->GetEvaluator()->GetNodeLocalTransform().

Examples:
  Pivot/main.cxx.

FbxVector4& EvaluateLocalTranslation | ( | FbxTime | pTime = `FBXSDK_TIME_INFINITE`,
|  | FbxNode::EPivotSet | pPivotSet = `FbxNode::eSourcePivot`,
|  | bool | pApplyTarget = `false`,
|  | bool | pForceEval = `false`
| ) |  |

Search for all occurrences

Returns this node's LclTranslation property at the specified time.

No pivot, offsets, or any other transform is taken into consideration. The translation limit is applied.

Parameters:

  pTime | The time used for evaluate. If FBXSDK_TIME_INFINITE is used, this returns the default value, without animation curves evaluation.
  pPivotSet | The pivot set to take into account
  pApplyTarget | Applies the necessary transform to align into the target node
  pForceEval | Force the evaluator to refresh the evaluation state cache even if its already up-to-date.

Returns:
  The resulting value of LclTranslation property of the specified node at the specified time.

Remarks:
  This function is the equivalent of calling Scene->GetEvaluator()->GetNodeLocalTranslation().

FbxVector4& EvaluateLocalRotation | ( | FbxTime | pTime = `FBXSDK_TIME_INFINITE`,
|  | FbxNode::EPivotSet | pPivotSet = `FbxNode::eSourcePivot`,
|  | bool | pApplyTarget = `false`,
|  | bool | pForceEval = `false`
| ) |  |

Search for all occurrences

Returns this node's LclRotation property at the specified time.

No pre/post rotation, rotation pivot, rotation offset or any other transform is taken into consideration. The rotation limit is applied.

Parameters:

  pNode | The transform node to evaluate.
  pTime | The time used for evaluate. If FBXSDK_TIME_INFINITE is used, this returns the default value, without animation curves evaluation.
  pPivotSet | The pivot set to take into account
  pApplyTarget | Applies the necessary transform to align into the target node
  pForceEval | Force the evaluator to refresh the evaluation state cache even if its already up-to-date.

Returns:
  The resulting value of LclRotation property of the specified node at the specified time.

Remarks:
  This function is the equivalent of calling Scene->GetEvaluator()->GetNodeLocalRotation().

FbxVector4& EvaluateLocalScaling | ( | FbxTime | pTime = `FBXSDK_TIME_INFINITE`,
|  | FbxNode::EPivotSet | pPivotSet = `FbxNode::eSourcePivot`,
|  | bool | pApplyTarget = `false`,
|  | bool | pForceEval = `false`
| ) |  |

Search for all occurrences

Returns this node's LclScaling property at the specified time.

No scaling pivot, scaling offset or any other transform is taken into consideration. The scaling limit is applied.

Parameters:

  pTime | The time used for evaluate. If FBXSDK_TIME_INFINITE is used, this returns the default value, without animation curves evaluation.
  pPivotSet | The pivot set to take into account
  pApplyTarget | Applies the necessary transform to align into the target node
  pForceEval | Force the evaluator to refresh the evaluation state cache even if its already up-to-date.

Returns:
  The resulting value of LclScaling property of the specified node at the specified time.

Remarks:
  This function is the equivalent of calling Scene->GetEvaluator()->GetNodeLocalScaling().

int GetCharacterLinkCount | ( |  | ) | const

Search for all occurrences

Get number of character links.

Returns:
  The number of character links.

bool GetCharacterLink | ( | int | pIndex,
|  | FbxCharacter ** | pCharacter,
|  | int * | pCharacterLinkType,
|  | int * | pNodeId,
|  | int * | pNodeSubId
| ) |  |

Search for all occurrences

Get character link at given index.

Parameters:

  pIndex | Index of character link.
  pCharacter | Pointer to receive linked character if function succeeds.
  pCharacterLinkType | Pointer to receive character link type if function succeeds, cast to `FbxCharacterLink::Type`.
  pNodeId | Pointer to receive the node ID if function succeeds. This ID should be casted to `FbxCharacter::ENodeId` type when the character link type is `eCharacterLink` or `eControlSetLink` else to the `FbxEffector::ENodeId` type if the character link type is `eControlSetEffector` or `eControlSetEffectorAux`.
  pNodeSubId | For internal use.

Returns:
  `false` if the index is out of range or any of the pointer arguments is NULL.

int FindCharacterLink | ( | FbxCharacter * | pCharacter,
|  | int | pCharacterLinkType,
|  | int | pNodeId,
|  | int | pNodeSubId
| ) |  | const

Search for all occurrences

Looks if the given character link exists on this node.

Parameters:

  pCharacter | Character searched.
  pCharacterLinkType | Character link type searched. Its value must be one of the `FbxCharacterLink::Type` symbols..
  pNodeId | Node ID searched. If pCharacterLinkType is `eCharacterLink` or `eControlSetLink` the pNodeId value is casted to the `FbxCharacter::ENodeId` type. If the pCharacterLinkType is `eControlSetEffector` or `eControlSetEffectorAux` then the pNodeId is casted to the `FbxEffector::ENodeId` type.
  pNodeSubId | For internal use.

Returns:
  Index of found character link if it exists, -1 otherwise.

virtual bool GetAnimationInterval | ( | FbxTimeSpan & | pSpan,
|  | FbxAnimStack * | pAnimStack = `NULL`,
|  | int | pAnimLayerId = `0`
| ) |  | `[virtual]`

Search for all occurrences

Find out start and end time of the animation curves for this node (and its children).

Parameters:

  pSpan | Reference to store the start time and end time. The start time is overwritten with a new value only if the found start time is lower than current value. The end time is overwritten with a new value only if the found end time is higher than current value. Therefore, it is important to initialize pSpan with FbxTimeSpan(FBXSDK_TIME_INFINITE, FBXSDK_TIME_MINUS_INFINITE).
  pAnimStack | Animation stack where to retrieve animation curves.
  pAnimLayerId | Specific animation layer on the animStack to use.

Returns:
  `true` if the node (or its children) is animated, `false` otherwise.

Remarks:
  If pAnimStack is left NULL, the function will try to get the first AnimStack that is connected to the scene. pAnimLayerId represent the index of the connection. For example, the call:

          lNode->GetAnimationInterval(span, myStack, 3);

  will scan all the animation curves of this node, and it's children, that are defined on the third animation layer of `myStack`.

int AddMaterial | ( | FbxSurfaceMaterial * | pMaterial | ) |

Search for all occurrences

Add a material to this node.

Parameters:

  pMaterial | The material to add.

Returns:
  non-negative index of added material, or -1 on error.

Examples:
  ExportDocument/main.cxx, ExportScene02/main.cxx, ExportScene03/main.cxx, ExportShader/main.cxx, Instances/main.cxx, Layers/main.cxx, and ProceduralTexture/main.cxx.

bool RemoveMaterial | ( | FbxSurfaceMaterial * | pMaterial | ) |

Search for all occurrences

Remove a material from this node.

Parameters:

  pMaterial | The material to remove.

Returns:
  true on success, false otherwise

int GetMaterialCount | ( |  | ) | const

Search for all occurrences

Returns:
  The number of materials applied to this node.

Remarks:
  If this node has an instanced node attribute, it is possible to have a material applied to this node more than once. The material count may not reflect the distinct material count.

Examples:
  ImportScene/DisplayMaterial.cxx, ImportScene/DisplayMesh.cxx, and ViewScene/SceneContext.cxx.

FbxSurfaceMaterial* GetMaterial | ( | int | pIndex | ) | const

Search for all occurrences

Access a material on this node.

Parameters:

  pIndex | Valid range is [0, GetMaterialCount() - 1]

Returns:
  The pIndex-th material, or NULL if pIndex is invalid.

Examples:
  ImportScene/DisplayMaterial.cxx, ImportScene/DisplayMesh.cxx, ViewScene/DrawScene.cxx, and ViewScene/SceneContext.cxx.

void RemoveAllMaterials | ( |  | ) |

Search for all occurrences

Remove all materials applied to this node.

int GetMaterialIndex | ( | char const * | pName | ) | const

Search for all occurrences

Find an applied material with the given name.

Parameters:

  pName | The requested name

Returns:
  an index to a material, or -1 if no applied material has the requested name.

FbxError& GetError | ( |  | ) |

Search for all occurrences

Retrieve error object.

Returns:
  Reference to error object.

EErrorCode GetLastErrorID | ( |  | ) | const

Search for all occurrences

Get last error code.

Returns:
  Last error code.

const char* GetLastErrorString | ( |  | ) | const

Search for all occurrences

Get last error string.

Returns:
  Textual description of the last error.

void AddChildName | ( | char * | pChildName | ) |

Search for all occurrences

char* GetChildName | ( | FbxUInt | pIndex | ) | const

Search for all occurrences

FbxUInt GetChildNameCount | ( |  | ) | const

Search for all occurrences

FbxTransform& GetTransform | ( |  | ) |

Search for all occurrences

FbxLimits& GetTranslationLimits | ( |  | ) |

Search for all occurrences

FbxLimits& GetRotationLimits | ( |  | ) |

Search for all occurrences

FbxLimits& GetScalingLimits | ( |  | ) |

Search for all occurrences

void UpdatePivotsAndLimitsFromProperties | ( |  | ) |

Search for all occurrences

Examples:
  ExportScene05/main.cxx.

void UpdatePropertiesFromPivotsAndLimits | ( |  | ) |

Search for all occurrences

void SetRotationActiveProperty | ( | bool | pVal | ) |

Search for all occurrences

void PivotSetToMBTransform | ( | EPivotSet | pPivotSet | ) |

Search for all occurrences

int AddCharacterLink | ( | FbxCharacter * | pCharacter,
|  | int | pCharacterLinkType,
|  | int | pNodeId,
|  | int | pNodeSubId
| ) |  |

Search for all occurrences

int RemoveCharacterLink | ( | FbxCharacter * | pCharacter,
|  | int | pCharacterLinkType,
|  | int | pNodeId,
|  | int | pNodeSubId
| ) |  |

Search for all occurrences

virtual FbxObject& Copy | ( | const FbxObject & | pObject | ) | `[virtual]`

Search for all occurrences

Copy an object content into this object.

Parameters:

  pObject | The source object to copy data from.

Returns:
  Returns the destination object being modified by the source.

Remarks:
  This function replace the assignment operator (operator=). It will copy all property values and the name. Connections are NOT copied.

Reimplemented from FbxObject.

virtual const char* GetTypeName | ( |  | ) | const `[virtual]`

Search for all occurrences

Reimplemented from FbxObject.

virtual FbxStringList GetTypeFlags | ( |  | ) | const `[virtual]`

Search for all occurrences

Reimplemented from FbxObject.

virtual bool PropertyNotify | ( | EPropertyNotifyType | pType,
|  | FbxProperty * | pProperty
| ) |  | `[virtual]`

Search for all occurrences

Reimplemented from FbxObject.

virtual void Construct | ( | const FbxNode * | pFrom | ) | `[protected, virtual]`

Search for all occurrences

virtual bool ConstructProperties | ( | bool | pForceSet | ) | `[protected, virtual]`

Search for all occurrences

Reimplemented from FbxObject.

virtual void Destruct | ( | bool | pRecursive,
|  | bool | pDependents
| ) |  | `[protected, virtual]`

Search for all occurrences

Reimplemented from FbxObject.

void Reset | ( |  | ) | `[protected]`

Search for all occurrences

bool GetAnimationIntervalRecursive | ( | FbxTimeSpan & | pTimeInterval,
|  | FbxAnimLayer * | pAnimLayer
| ) |  | `[protected]`

Search for all occurrences

## Friends And Related Function Documentation

friend class FbxScene `[friend]`

Search for all occurrences

Reimplemented from FbxObject.

Definition at line 2022 of file fbxnode.h.

friend class FbxGeometry `[friend]`

Search for all occurrences

Definition at line 2023 of file fbxnode.h.

friend class FbxLight `[friend]`

Search for all occurrences

Definition at line 2024 of file fbxnode.h.

friend class FbxNodeFinderDuplicateName `[friend]`

Search for all occurrences

Definition at line 2025 of file fbxnode.h.

friend class FbxCharacter `[friend]`

Search for all occurrences

Definition at line 2026 of file fbxnode.h.

friend class FbxControlSet `[friend]`

Search for all occurrences

Definition at line 2027 of file fbxnode.h.

friend class FbxNode_internal `[friend]`

Search for all occurrences

Definition at line 2028 of file fbxnode.h.

friend class FbxNodeEvalState `[friend]`

Search for all occurrences

Definition at line 2029 of file fbxnode.h.

## Member Data Documentation

FbxPropertyT<FbxDouble3> LclTranslation

Search for all occurrences

This property contains the translation information of the node.

To access this property do: LclTranslation.Get(). To set this property do: LclTranslation.Set(FbxDouble3).

Default value is 0.,0.,0.

Examples:
  Common/GeometryUtility.cxx, ExportDocument/main.cxx, ExportScene01/main.cxx, ExportScene03/main.cxx, ExportScene04/main.cxx, ExportScene05/main.cxx, ImportScene/DisplayAnimation.cxx, Instances/main.cxx, Transformations/main.cxx, UserProperties/main.cxx, and ViewScene/SetCamera.cxx.

Definition at line 1272 of file fbxnode.h.

FbxPropertyT<FbxDouble3> LclRotation

Search for all occurrences

This property contains the rotation information of the node.

To access this property do: LclRotation.Get(). To set this property do: LclRotation.Set(FbxDouble3).

Default value is 0.,0.,0.

Examples:
  ExportDocument/main.cxx, ExportScene01/main.cxx, ExportScene03/main.cxx, ExportScene04/main.cxx, ExportScene05/main.cxx, ImportScene/DisplayAnimation.cxx, Instances/main.cxx, Pivot/main.cxx, Transformations/main.cxx, and ViewScene/SetCamera.cxx.

Definition at line 1281 of file fbxnode.h.

FbxPropertyT<FbxDouble3> LclScaling

Search for all occurrences

This property contains the scaling information of the node.

To access this property do: LclScaling.Get(). To set this property do: LclScaling.Set(FbxDouble3).

Default value is 1.,1.,1.

Examples:
  ExportScene03/main.cxx, ExportScene04/main.cxx, ExportScene05/main.cxx, ImportScene/DisplayAnimation.cxx, Instances/main.cxx, and Transformations/main.cxx.

Definition at line 1290 of file fbxnode.h.

FbxPropertyT<FbxDouble> Visibility

Search for all occurrences

This property contains the visibility information of the node.

The assumed behavior of this property is to affect the visibility of the node, all the nodes attributes connected to it as well as all its descendants. This property can be animated.

To access this property do: Visibility.Get(). To set this property do: Visibility.Set(FbxDouble).

Default value is 1.

Remarks:
  - This property holds values ranging from 0.0 to 1.0 where the value 0.0 means a totally invisible object, the value 1.0, a full visible object and anything inbetween, a percentage degree of visibility.
  - Since not all the applications may support a degree of visibility, it is agreed that a value of 0.0 means invisible and anything else means visible.

See also:
  Show property.

Definition at line 1310 of file fbxnode.h.

FbxPropertyT<FbxBool> VisibilityInheritance

Search for all occurrences

This property contains the visibility inheritance flag that allow applications to modify the Visibility property interpretation.

By default, this value is set to `true` because it is assumed (as explained in the Visibility property description) that the node visibility is inherited from its parent. In other words, applications should always process the Visibility property of the node and, depending on its value, decide whether or not the node has to be displayed. After this first assessment, check the node VisibilityInheritance flag. If its value is set to `false` then move to the next object, else use the parent's Visibility value and modify this node display state by performing the logical AND operation between this node Visibility property and its parent's.

To access this property do: VisibilityInheritance.Get(). To set this property do: VisibilityInheritance.Set(FbxBool).

Default value is `true`.

Remarks:
  This property is non-animatable and is not used inside the FBX SDK but it is guaranteed to exist in FBX files with version 7.2 and above.

See also:
  Visibility property.

Definition at line 1329 of file fbxnode.h.

FbxPropertyT<EFbxQuatInterpMode> QuaternionInterpolate

Search for all occurrences

This property contains the quaternion interpolate flag of the node.

To access this property do: QuaternionInterpolate.Get(). To set this property do: QuaternionInterpolate.Set(EFbxQuatInterpMode).

Default value is eQuatInterpOff.

Definition at line 1339 of file fbxnode.h.

FbxPropertyT<FbxDouble3> RotationOffset

Search for all occurrences

This property contains the rotation offset information of the node.

To access this property do: RotationOffset.Get(). To set this property do: RotationOffset.Set(FbxDouble3).

Default value is 0.,0.,0.

Examples:
  Transformations/main.cxx.

Definition at line 1348 of file fbxnode.h.

FbxPropertyT<FbxDouble3> RotationPivot

Search for all occurrences

This property contains the rotation pivot information of the node.

To access this property do: RotationPivot.Get(). To set this property do: RotationPivot.Set(FbxDouble3).

Default value is 0.,0.,0.

Examples:
  Transformations/main.cxx.

Definition at line 1357 of file fbxnode.h.

FbxPropertyT<FbxDouble3> ScalingOffset

Search for all occurrences

This property contains the scaling offset information of the node.

To access this property do: ScalingOffset.Get(). To set this property do: ScalingOffset.Set(FbxDouble3).

Default value is 0.,0.,0.

Examples:
  Transformations/main.cxx.

Definition at line 1366 of file fbxnode.h.

FbxPropertyT<FbxDouble3> ScalingPivot

Search for all occurrences

This property contains the scaling pivot information of the node.

To access this property do: ScalingPivot.Get(). To set this property do: ScalingPivot.Set(FbxDouble3).

Default value is 0.,0.,0.

Examples:
  Transformations/main.cxx.

Definition at line 1375 of file fbxnode.h.

FbxPropertyT<FbxBool> TranslationActive

Search for all occurrences

This property contains the translation active information of the node.

To access this property do: TranslationActive.Get(). To set this property do: TranslationActive.Set(FbxBool).

Default value is false.

Examples:
  ExportScene05/main.cxx, and ImportScene/DisplayPivotsAndLimits.cxx.

Definition at line 1384 of file fbxnode.h.

FbxPropertyT<FbxDouble3> Translation

Search for all occurrences

This property contains the translation information of the node.

To access this property do: Translation.Get(). To set this property do: Translation.Set(FbxDouble3).

Definition at line 1392 of file fbxnode.h.

FbxPropertyT<FbxDouble3> TranslationMin

Search for all occurrences

This property contains the min translation limit information of the node.

To access this property do: TranslationMin.Get(). To set this property do: TranslationMin.Set(FbxDouble3). Default value is 0.,0.,0.

Examples:
  ExportScene05/main.cxx, and ImportScene/DisplayPivotsAndLimits.cxx.

Definition at line 1401 of file fbxnode.h.

FbxPropertyT<FbxDouble3> TranslationMax

Search for all occurrences

This property contains the max translation limit information of the node.

To access this property do: TranslationMax.Get(). To set this property do: TranslationMax.Set(FbxDouble3). Default value is 0.,0.,0.

Examples:
  ExportScene05/main.cxx, and ImportScene/DisplayPivotsAndLimits.cxx.

Definition at line 1410 of file fbxnode.h.

FbxPropertyT<FbxBool> TranslationMinX

Search for all occurrences

This property contains the flag which actives the x component of min translation limit of the node.

To access this property do: TranslationMinX.Get(). To set this property do: TranslationMinX.Set(FbxBool).

Default value is false.

Examples:
  ExportScene05/main.cxx, and ImportScene/DisplayPivotsAndLimits.cxx.

Definition at line 1419 of file fbxnode.h.

FbxPropertyT<FbxBool> TranslationMinY

Search for all occurrences

This property contains the flag which actives the y component of min translation limit of the node.

To access this property do: TranslationMinY.Get(). To set this property do: TranslationMinY.Set(FbxBool).

Default value is false.

Examples:
  ExportScene05/main.cxx, and ImportScene/DisplayPivotsAndLimits.cxx.

Definition at line 1428 of file fbxnode.h.

FbxPropertyT<FbxBool> TranslationMinZ

Search for all occurrences

This property contains the flag which actives the z component of min translation limit of the node.

To access this property do: TranslationMinZ.Get(). To set this property do: TranslationMinZ.Set(FbxBool).

Default value is false.

Examples:
  ExportScene05/main.cxx, and ImportScene/DisplayPivotsAndLimits.cxx.

Definition at line 1437 of file fbxnode.h.

FbxPropertyT<FbxBool> TranslationMaxX

Search for all occurrences

This property contains the flag which actives the x component of max translation limit of the node.

To access this property do: TranslationMaxX.Get(). To set this property do: TranslationMaxX.Set(FbxBool).

Default value is false.

Examples:
  ExportScene05/main.cxx, and ImportScene/DisplayPivotsAndLimits.cxx.

Definition at line 1446 of file fbxnode.h.

FbxPropertyT<FbxBool> TranslationMaxY

Search for all occurrences

This property contains the flag which actives the y component of max translation limit of the node.

To access this property do: TranslationMaxY.Get(). To set this property do: TranslationMaxY.Set(FbxBool).

Default value is false.

Examples:
  ExportScene05/main.cxx, and ImportScene/DisplayPivotsAndLimits.cxx.

Definition at line 1455 of file fbxnode.h.

FbxPropertyT<FbxBool> TranslationMaxZ

Search for all occurrences

This property contains the flag which actives the z component of max translation limit of the node.

To access this property do: TranslationMaxZ.Get(). To set this property do: TranslationMaxZ.Set(FbxBool).

Default value is false.

Examples:
  ExportScene05/main.cxx, and ImportScene/DisplayPivotsAndLimits.cxx.

Definition at line 1464 of file fbxnode.h.

FbxPropertyT<EFbxRotationOrder> RotationOrder

Search for all occurrences

This property contains the rotation order information of the node.

To access this property do: RotationOrder.Get(). To set this property do: RotationOrder.Set(EFbxRotationOrder). Default value is eEulerXYZ.

Definition at line 1473 of file fbxnode.h.

FbxPropertyT<FbxBool> RotationSpaceForLimitOnly

Search for all occurrences

This property contains the rotation space for limit only flag of the node.

To access this property do: RotationSpaceForLimitOnly.Get(). To set this property do: RotationSpaceForLimitOnly.Set(FbxBool).

Default value is false.

Definition at line 1482 of file fbxnode.h.

FbxPropertyT<FbxDouble> RotationStiffnessX

Search for all occurrences

This property contains the x value of the rotation stiffness of the node.

To access this property do: RotationStiffnessX.Get(). To set this property do: RotationStiffnessX.Set(FbxDouble).

Default value is 0.

Definition at line 1491 of file fbxnode.h.

FbxPropertyT<FbxDouble> RotationStiffnessY

Search for all occurrences

This property contains the y value of the rotation stiffness of the node.

To access this property do: RotationStiffnessY.Get(). To set this property do: RotationStiffnessY.Set(FbxDouble).

Default value is 0.

Definition at line 1500 of file fbxnode.h.

FbxPropertyT<FbxDouble> RotationStiffnessZ

Search for all occurrences

This property contains the z value of the rotation stiffness of the node.

To access this property do: RotationStiffnessZ.Get(). To set this property do: RotationStiffnessZ.Set(FbxDouble).

Default value is 0.

Definition at line 1509 of file fbxnode.h.

FbxPropertyT<FbxDouble> AxisLen

Search for all occurrences

This property contains axis length information of the node.

To access this property do: AxisLen.Get(). To set this property do: AxisLen.Set(FbxDouble).

Default value is 10.

Definition at line 1518 of file fbxnode.h.

FbxPropertyT<FbxDouble3> PreRotation

Search for all occurrences

This property contains pre-rotation information of the node.

To access this property do: PreRotation.Get(). To set this property do: PreRotation.Set(FbxDouble3).

Default value is 0.,0.,0.

Examples:
  Transformations/main.cxx.

Definition at line 1527 of file fbxnode.h.

FbxPropertyT<FbxDouble3> PostRotation

Search for all occurrences

This property contains post-rotation information of the node.

To access this property do: PostRotation.Get(). To set this property do: PostRotation.Set(FbxDouble3).

Default value is 0.,0.,0.

Examples:
  Transformations/main.cxx.

Definition at line 1536 of file fbxnode.h.

FbxPropertyT<FbxBool> RotationActive

Search for all occurrences

This property contains rotation active information of the node.

To access this property do: RotationActive.Get(). To set this property do: RotationActive.Set(FbxBool).

Default value is false.

Examples:
  ExportScene05/main.cxx, and ImportScene/DisplayPivotsAndLimits.cxx.

Definition at line 1545 of file fbxnode.h.

FbxPropertyT<FbxDouble3> RotationMin

Search for all occurrences

This property contains the min rotation limit information of the node.

To access this property do: RotationMin.Get(). To set this property do: RotationMin.Set(FbxDouble3).

Default value is 0.,0.,0.

Examples:
  ImportScene/DisplayPivotsAndLimits.cxx.

Definition at line 1554 of file fbxnode.h.

FbxPropertyT<FbxDouble3> RotationMax

Search for all occurrences

This property contains the max rotation limit information of the node.

To access this property do: RotationMax.Get(). To set this property do: RotationMax.Set(FbxDouble3).

Default value is 0.,0.,0.

Examples:
  ExportScene05/main.cxx, and ImportScene/DisplayPivotsAndLimits.cxx.

Definition at line 1563 of file fbxnode.h.

FbxPropertyT<FbxBool> RotationMinX

Search for all occurrences

This property contains the flag which actives the x component of min rotation limit of the node.

To access this property do: RotationMinX.Get(). To set this property do: RotationMinX.Set(FbxBool).

Default value is false.

Examples:
  ImportScene/DisplayPivotsAndLimits.cxx.

Definition at line 1572 of file fbxnode.h.

FbxPropertyT<FbxBool> RotationMinY

Search for all occurrences

This property contains the flag which actives the y component of min rotation limit of the node.

To access this property do: RotationMinY.Get(). To set this property do: RotationMinY.Set(FbxBool).

Default value is false.

Examples:
  ImportScene/DisplayPivotsAndLimits.cxx.

Definition at line 1581 of file fbxnode.h.

FbxPropertyT<FbxBool> RotationMinZ

Search for all occurrences

This property contains the flag which actives the z component of min rotation limit of the node.

To access this property do: RotationMinZ.Get(). To set this property do: RotationMinZ.Set(FbxBool).

Default value is false.

Examples:
  ImportScene/DisplayPivotsAndLimits.cxx.

Definition at line 1590 of file fbxnode.h.

FbxPropertyT<FbxBool> RotationMaxX

Search for all occurrences

This property contains the flag which actives the x component of max rotation limit of the node.

To access this property do: RotationMaxX.Get(). To set this property do: RotationMaxX.Set(FbxBool).

Default value is false.

Examples:
  ExportScene05/main.cxx, and ImportScene/DisplayPivotsAndLimits.cxx.

Definition at line 1599 of file fbxnode.h.

FbxPropertyT<FbxBool> RotationMaxY

Search for all occurrences

This property contains the flag which actives the y component of max rotation limit of the node.

To access this property do: RotationMaxY.Get(). To set this property do: RotationMaxY.Set(FbxBool).

Default value is false.

Examples:
  ExportScene05/main.cxx, and ImportScene/DisplayPivotsAndLimits.cxx.

Definition at line 1608 of file fbxnode.h.

FbxPropertyT<FbxBool> RotationMaxZ

Search for all occurrences

This property contains the flag which actives the z component of max rotation limit of the node.

To access this property do: RotationMaxZ.Get(). To set this property do: RotationMaxZ.Set(FbxBool).

Default value is false.

Examples:
  ExportScene05/main.cxx, and ImportScene/DisplayPivotsAndLimits.cxx.

Definition at line 1617 of file fbxnode.h.

FbxPropertyT<FbxTransform::EInheritType> InheritType

Search for all occurrences

This property contains inherit type information of the node.

To access this property do: InheritType.Get(). To set this property do: InheritType.Set(FbxTransform::EInheritType).

Default value is eInheritRrSs.

Examples:
  Transformations/main.cxx.

Definition at line 1626 of file fbxnode.h.

FbxPropertyT<FbxBool> ScalingActive

Search for all occurrences

This property contains scaling active information of the node.

To access this property do: ScalingActive.Get(). To set this property do: ScalingActive.Set(FbxBool).

Default value is false.

Examples:
  ImportScene/DisplayPivotsAndLimits.cxx.

Definition at line 1635 of file fbxnode.h.

FbxPropertyT<FbxDouble3> Scaling

Search for all occurrences

This property contains scaling information of the node.

To access this property do: Scaling.Get(). To set this property do: Scaling.Set(FbxDouble3).

Definition at line 1643 of file fbxnode.h.

FbxPropertyT<FbxDouble3> ScalingMin

Search for all occurrences

This property contains the min scaling limit information of the node.

To access this property do: ScalingMin.Get(). To set this property do: ScalingMin.Set(FbxDouble3).

Default value is 0.,0.,0.

Examples:
  ImportScene/DisplayPivotsAndLimits.cxx.

Definition at line 1652 of file fbxnode.h.

FbxPropertyT<FbxDouble3> ScalingMax

Search for all occurrences

This property contains the max scaling limit information of the node.

To access this property do: ScalingMax.Get(). To set this property do: ScalingMax.Set(FbxDouble3).

Default value is 1.,1.,1.

Examples:
  ImportScene/DisplayPivotsAndLimits.cxx.

Definition at line 1661 of file fbxnode.h.

FbxPropertyT<FbxBool> ScalingMinX

Search for all occurrences

This property contains the flag which actives the x component of min scaling limit of the node.

To access this property do: ScalingMinX.Get(). To set this property do: ScalingMinX.Set(FbxBool).

Default value is false.

Examples:
  ImportScene/DisplayPivotsAndLimits.cxx.

Definition at line 1670 of file fbxnode.h.

FbxPropertyT<FbxBool> ScalingMinY

Search for all occurrences

This property contains the flag which actives the y component of min scaling limit of the node.

To access this property do: ScalingMinY.Get(). To set this property do: ScalingMinY.Set(FbxBool).

Default value is false.

Examples:
  ImportScene/DisplayPivotsAndLimits.cxx.

Definition at line 1679 of file fbxnode.h.

FbxPropertyT<FbxBool> ScalingMinZ

Search for all occurrences

This property contains the flag which actives the z component of min scaling limit of the node.

To access this property do: ScalingMinZ.Get(). To set this property do: ScalingMinZ.Set(FbxBool).

Default value is false.

Examples:
  ImportScene/DisplayPivotsAndLimits.cxx.

Definition at line 1688 of file fbxnode.h.

FbxPropertyT<FbxBool> ScalingMaxX

Search for all occurrences

This property contains the flag which actives the x component of max scaling limit of the node.

To access this property do: ScalingMaxX.Get(). To set this property do: ScalingMaxX.Set(FbxBool).

Default value is false.

Examples:
  ImportScene/DisplayPivotsAndLimits.cxx.

Definition at line 1697 of file fbxnode.h.

FbxPropertyT<FbxBool> ScalingMaxY

Search for all occurrences

This property contains the flag which actives the y component of max scaling limit of the node.

To access this property do: ScalingMaxY.Get(). To set this property do: ScalingMaxY.Set(FbxBool).

Default value is false.

Examples:
  ImportScene/DisplayPivotsAndLimits.cxx.

Definition at line 1706 of file fbxnode.h.

FbxPropertyT<FbxBool> ScalingMaxZ

Search for all occurrences

This property contains the flag which actives the z component of max scaling limit of the node.

To access this property do: ScalingMaxZ.Get(). To set this property do: ScalingMaxZ.Set(FbxBool).

Default value is false.

Examples:
  ImportScene/DisplayPivotsAndLimits.cxx.

Definition at line 1715 of file fbxnode.h.

FbxPropertyT<FbxDouble3> GeometricTranslation

Search for all occurrences

This property contains geometric translation information of the node.

To access this property do: GeometricTranslation.Get(). To set this property do: GeometricTranslation.Set(FbxDouble3).

Default value is 0.,0.,0.

Definition at line 1724 of file fbxnode.h.

FbxPropertyT<FbxDouble3> GeometricRotation

Search for all occurrences

This property contains geometric rotation information of the node.

To access this property do: GeometricRotation.Get(). To set this property do: GeometricRotation.Set(FbxDouble3).

Default value is 0.,0.,0.

Definition at line 1733 of file fbxnode.h.

FbxPropertyT<FbxDouble3> GeometricScaling

Search for all occurrences

This property contains geometric scaling information of the node.

To access this property do: GeometricScaling.Get(). To set this property do: GeometricScaling.Set(FbxDouble3).

Default value is 1.,1.,1.

Definition at line 1742 of file fbxnode.h.

FbxPropertyT<FbxDouble> MinDampRangeX

Search for all occurrences

This property contains the x component of the minimum damp range angles of the node.

To access this property do: MinDampRangeX.Get(). To set this property do: MinDampRangeX.Set(FbxDouble).

Default value is 0.

Definition at line 1754 of file fbxnode.h.

FbxPropertyT<FbxDouble> MinDampRangeY

Search for all occurrences

This property contains the y component of the minimum damp range angles of the node.

To access this property do: MinDampRangeY.Get(). To set this property do: MinDampRangeY.Set(FbxDouble).

Default value is 0.

Definition at line 1763 of file fbxnode.h.

FbxPropertyT<FbxDouble> MinDampRangeZ

Search for all occurrences

This property contains the z component of the minimum damp range angles of the node.

To access this property do: MinDampRangeZ.Get(). To set this property do: MinDampRangeZ.Set(FbxDouble).

Default value is 0.

Definition at line 1772 of file fbxnode.h.

FbxPropertyT<FbxDouble> MaxDampRangeX

Search for all occurrences

This property contains the x component of the maximum damp range angles of the node.

To access this property do: MaxDampRangeX.Get(). To set this property do: MaxDampRangeX.Set(FbxDouble).

Default value is 0.

Definition at line 1781 of file fbxnode.h.

FbxPropertyT<FbxDouble> MaxDampRangeY

Search for all occurrences

This property contains the y component of the maximum damp range angles of the node.

To access this property do: MaxDampRangeY.Get(). To set this property do: MaxDampRangeY.Set(FbxDouble).

Default value is 0.

Definition at line 1790 of file fbxnode.h.

FbxPropertyT<FbxDouble> MaxDampRangeZ

Search for all occurrences

This property contains the z component of the maximum damp range angles of the node.

To access this property do: MaxDampRangeZ.Get(). To set this property do: MaxDampRangeZ.Set(FbxDouble).

Default value is 0.

Definition at line 1799 of file fbxnode.h.

FbxPropertyT<FbxDouble> MinDampStrengthX

Search for all occurrences

This property contains the x component of the minimum damp strength of the node.

To access this property do: MinDampStrengthX.Get(). To set this property do: MinDampStrengthX.Set(FbxDouble).

Default value is 0.

Definition at line 1808 of file fbxnode.h.

FbxPropertyT<FbxDouble> MinDampStrengthY

Search for all occurrences

This property contains the y component of the minimum damp strength of the node.

To access this property do: MinDampStrengthY.Get(). To set this property do: MinDampStrengthY.Set(FbxDouble).

Default value is 0.

Definition at line 1817 of file fbxnode.h.

FbxPropertyT<FbxDouble> MinDampStrengthZ

Search for all occurrences

This property contains the z component of the minimum damp strength of the node.

To access this property do: MinDampStrengthZ.Get(). To set this property do: MinDampStrengthZ.Set(FbxDouble).

Default value is 0.

Definition at line 1826 of file fbxnode.h.

FbxPropertyT<FbxDouble> MaxDampStrengthX

Search for all occurrences

This property contains the x component of the maximum damp strength of the node.

To access this property do: MaxDampStrengthX.Get(). To set this property do: MaxDampStrengthX.Set(FbxDouble).

Default value is 0.

Definition at line 1835 of file fbxnode.h.

FbxPropertyT<FbxDouble> MaxDampStrengthY

Search for all occurrences

This property contains the y component of the maximum damp strength of the node.

To access this property do: MaxDampStrengthY.Get(). To set this property do: MaxDampStrengthY.Set(FbxDouble).

Default value is 0.

Definition at line 1844 of file fbxnode.h.

FbxPropertyT<FbxDouble> MaxDampStrengthZ

Search for all occurrences

This property contains the z component of the maximum damp strength of the node.

To access this property do: MaxDampStrengthZ.Get(). To set this property do: MaxDampStrengthZ.Set(FbxDouble).

Default value is 0.

Definition at line 1853 of file fbxnode.h.

FbxPropertyT<FbxDouble> PreferedAngleX

Search for all occurrences

This property contains the x component of the preferred angle of the node.

To access this property do: PreferedAngleX.Get(). To set this property do: PreferedAngleX.Set(FbxDouble).

Default value is 0.

Definition at line 1862 of file fbxnode.h.

FbxPropertyT<FbxDouble> PreferedAngleY

Search for all occurrences

This property contains the y component of the preferred angle of the node.

To access this property do: PreferedAngleY.Get(). To set this property do: PreferedAngleY.Set(FbxDouble).

Default value is 0.

Definition at line 1871 of file fbxnode.h.

FbxPropertyT<FbxDouble> PreferedAngleZ

Search for all occurrences

This property contains the z component of the preferred angle of the node.

To access this property do: PreferedAngleZ.Get(). To set this property do: PreferedAngleZ.Set(FbxDouble).

Default value is 0.

Definition at line 1880 of file fbxnode.h.

FbxPropertyT<FbxReference> LookAtProperty

Search for all occurrences

This property contains lookat property of the node.

To access this property do: LookAtProperty.Get(). To set this property do: LookAtProperty.Set(FbxReference).

Definition at line 1889 of file fbxnode.h.

FbxPropertyT<FbxReference> UpVectorProperty

Search for all occurrences

This property contains the up vector property of the node.

To access this property do: UpVectorProperty.Get(). To set this property do: UpVectorProperty.Set(FbxReference).

Definition at line 1897 of file fbxnode.h.

FbxPropertyT<FbxBool> Show

Search for all occurrences

This property contains the show information of the node.

As opposed to the Visibility property, this one cannot be animated. The assumed behavior of this property is to represent the show/hide state of all the nodes attributes connected to this node only.

To access this property do: Show.Get(). To set this property do: Show.Set(FbxBool).

Default value is true.

Remarks:
  - Because node attributes can be shared by multiple nodes (instances), the FBX SDK provides an utility function FbxScene::SyncShowPropertyForInstance() to propagates the same Show value across all the nodes referencing the node attribute. The applied logic is that as soon as one of these nodes has the Show property set to `false`, all will be set to `false` (basically it is an AND operation on all the Show flags).
  - Depending on the support of the Show and Visibility properties that applications will implement, there may be conflicts with these two states. In this case, it is suggested that the Visibility property always overrides the Show.

See also:
  Visibility property.

Definition at line 1921 of file fbxnode.h.

FbxPropertyT<FbxBool> NegativePercentShapeSupport

Search for all occurrences

This property contains negative percent shape support information of the node.

To access this property do: NegativePercentShapeSupport.Get(). To set this property do: NegativePercentShapeSupport.Set(FbxBool).

Default value is true.

Definition at line 1930 of file fbxnode.h.

FbxPropertyT<FbxInt> DefaultAttributeIndex

Search for all occurrences

This property contains default attribute index information of the node.

To access this property do: DefaultAttributeIndex.Get(). To set this property do: DefaultAttributeIndex.Set(FbxInt).

Default value is -1.

Definition at line 1939 of file fbxnode.h.

FbxPropertyT<FbxBool> Freeze

Search for all occurrences

This property contains manipulation state information of the node.

To access this property do: Freeze.Get(). To set this property do: Freeze.Set(FbxBool).

Default value is false.

Definition at line 1948 of file fbxnode.h.

FbxPropertyT<FbxBool> LODBox

Search for all occurrences

This property contains level of detail mode information of the node.

To access this property do: LODBox.Get(). To set this property do: LODBox.Set(FbxBool).

True: Bounding box False: Geometry object is displayed. Default value is false.

Definition at line 1959 of file fbxnode.h.

ECullingType mCullingType

Search for all occurrences

Definition at line 2001 of file fbxnode.h.

bool mCorrectInheritType

Search for all occurrences

Definition at line 2002 of file fbxnode.h.

The documentation for this class was generated from the following file:

- fbxsdk/scene/geometry/fbxnode.h

FbxNode FbxNode FbxNode FbxNode FbxNode FbxNode FbxNode FbxNode FbxNode FbxNode
FbxNode FbxNode FbxNode FbxNode FbxNode FbxNode FbxNode FbxNode FbxNode FbxNode