- Main Page
- Classes
- Files
- Directories

- File List
- File Members

# fbxconstraint.h

Go to the documentation of this file.

    00001 /****************************************************************************************
    00002
    00003    Copyright (C) 2013 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_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 /*pIndex*/) const { return NULL; }
    00093
    00098     double GetSourceWeight(const FbxObject* pObject) const;
    00099
    00100 /*****************************************************************************************************************************
    00101 ** WARNING! Anything beyond these lines is for internal use, may not be documented and is subject to change without notice! **
    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 /* !DOXYGEN_SHOULD_SKIP_THIS *****************************************************************************************/
    00109 };
    00110
    00111 /*****************************************************************************************************************************
    00112 ** WARNING! Anything beyond these lines is for internal use, may not be documented and is subject to change without notice! **
    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 /* !DOXYGEN_SHOULD_SKIP_THIS *****************************************************************************************/
    00120
    00121 #include <fbxsdk/fbxsdk_nsend.h>
    00122
    00123 #endif /* _FBXSDK_SCENE_CONSTRAINT_H_ */