- Main Page
- Classes
- Files
- Directories
- Examples

- File List
- File Members

# fbxskeleton.h

Go to the documentation of this file.

    00001 /****************************************************************************************
    00002
    00003    Copyright (C) 2012 Autodesk, Inc.
    00004    All rights reserved.
    00005
    00006    Use of this software is subject to the terms of the Autodesk license agreement
    00007    provided at the time of installation or download, or which otherwise accompanies
    00008    this software in either electronic or hard copy form.
    00009
    00010 ****************************************************************************************/
    00011
    00013 #ifndef _FBXSDK_SCENE_GEOMETRY_SKELETON_H_
    00014 #define _FBXSDK_SCENE_GEOMETRY_SKELETON_H_
    00015
    00016 #include <fbxsdk/fbxsdk_def.h>
    00017
    00018 #include <fbxsdk/core/base/fbxerror.h>
    00019
    00020 #include <fbxsdk/scene/geometry/fbxnodeattribute.h>
    00021
    00022 #include <fbxsdk/fbxsdk_nsbegin.h>
    00023
    00024 class FbxManager;
    00025
    00038 class FBXSDK_DLL FbxSkeleton : public FbxNodeAttribute
    00039 {
    00040     FBXSDK_OBJECT_DECLARE(FbxSkeleton,FbxNodeAttribute);
    00041
    00042 public:
    00044     virtual FbxNodeAttribute::EType GetAttributeType() const;
    00045
    00047     void Reset();
    00048
    00053
    00059     enum EType
    00060     {
    00061         eRoot,
    00062         eLimb,
    00063         eLimbNode,
    00064         eEffector
    00065     };
    00066
    00070     void SetSkeletonType(EType pSkeletonType);
    00071
    00075     EType GetSkeletonType() const;
    00076
    00082     bool GetSkeletonTypeIsSet() const;
    00083
    00087     EType GetSkeletonTypeDefaultValue() const;
    00088
    00092     double GetLimbLengthDefaultValue() const;
    00093
    00097     double GetLimbNodeSizeDefaultValue() const;
    00098
    00104     bool SetLimbNodeColor(const FbxColor& pColor);
    00105
    00110     FbxColor GetLimbNodeColor() const;
    00111
    00117     bool GetLimbNodeColorIsSet() const;
    00118
    00122     FbxColor GetLimbNodeColorDefaultValue() const;
    00123
    00129     bool IsSkeletonRoot() const;
    00130
    00132
    00133
    00137     static const char*          sSize;
    00138     static const char*          sLimbLength;
    00139
    00144     static const FbxDouble      sDefaultSize;
    00145     static const FbxDouble      sDefaultLimbLength;
    00146
    00147
    00149     //
    00150     // Properties
    00151     //
    00153
    00161     FbxPropertyT<FbxDouble>     Size;
    00162
    00176     FbxPropertyT<FbxDouble>         LimbLength;
    00177
    00179 //
    00180 //  WARNING!
    00181 //
    00182 //  Anything beyond these lines may not be documented accurately and is
    00183 //  subject to change without notice.
    00184 //
    00186 #ifndef DOXYGEN_SHOULD_SKIP_THIS
    00187     virtual FbxObject& Copy(const FbxObject& pObject);
    00188
    00189 protected:
    00190     FbxSkeleton(FbxManager& pManager, char const* pName);
    00191
    00192     virtual void Construct(const FbxSkeleton* pFrom);
    00193     virtual bool ConstructProperties(bool pForceSet);
    00194
    00195     void Reset( bool pResetProperties );
    00196
    00197     virtual const char* GetTypeName() const;
    00198     virtual FbxStringList GetTypeFlags() const;
    00199
    00200     EType mSkeletonType;
    00201
    00202     bool mLimbLengthIsSet;
    00203     bool mLimbNodeSizeIsSet;
    00204     bool mLimbNodeColorIsSet;
    00205     bool mSkeletonTypeIsSet;
    00206
    00207 #endif // #ifndef DOXYGEN_SHOULD_SKIP_THIS
    00208 };
    00209
    00210 #include <fbxsdk/fbxsdk_nsend.h>
    00211
    00212 #endif /* _FBXSDK_SCENE_GEOMETRY_SKELETON_H_ */