Go to the
documentation of this file.
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00013 #ifndef _FBXSDK_SCENE_CONSTRAINT_H_
00014 #define _FBXSDK_SCENE_CONSTRAINT_H_
00015
00016 #include <fbxsdk/fbxsdk_def.h>
00017
00018 #include <fbxsdk/core/fbxobject.h>
00019 #include <fbxsdk/fbxsdk_nsbegin.h>
00020
00027 class FBXSDK_DLL FbxConstraint : public FbxObject
00028 {
00029 FBXSDK_OBJECT_DECLARE(FbxConstraint, FbxObject);
00030
00031 public:
00040 FbxPropertyT<FbxDouble> Weight;
00041
00047 FbxPropertyT<FbxBool> Active;
00048
00055 FbxPropertyT<FbxBool> Lock;
00057
00060 enum EType
00061 {
00062 eUnknown,
00063 ePosition,
00064 eRotation,
00065 eScale,
00066 eParent,
00067 eSingleChainIK,
00068 eAim,
00069 eCharacter,
00070 eCustom
00071 };
00072
00076 virtual EType GetConstraintType() const { return eUnknown; }
00077
00081 virtual FbxObject* GetConstrainedObject() const { return NULL; }
00082
00086 virtual int GetConstraintSourceCount() const { return 0; }
00087
00092 virtual FbxObject* GetConstraintSource(int ) const { return NULL; }
00093
00098 double GetSourceWeight(const FbxObject* pObject) const;
00099
00100
00101
00102
00103 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00104 protected:
00105 virtual void Construct(const FbxConstraint* pFrom);
00106 virtual void ConstructProperties(bool pForceSet);
00107
00108 #endif
00109 };
00110
00111
00112
00113
00114 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00115
00116 const FbxString GetWeightPropertyName(const FbxObject * pObject);
00117 void CreateWeightPropertyForSourceObject(FbxObject * pConstraint, const FbxObject * pSourceObject, double pWeightValue);
00118
00119 #endif
00120
00121 #include <fbxsdk/fbxsdk_nsend.h>
00122
00123 #endif