kfbxconstraintscale.h

Go to the documentation of this file.
00001 /****************************************************************************************
00002 
00003    Copyright (C) 2010 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 
00015 #ifndef FBXFILESDK_KFBXPLUGINS_KFBXCONSTRAINTSCALE_H
00016 #define FBXFILESDK_KFBXPLUGINS_KFBXCONSTRAINTSCALE_H
00017 
00018 #include <fbxfilesdk/fbxfilesdk_def.h>
00019 
00020 #include <fbxfilesdk/kfbxplugins/kfbxconstraint.h>
00021 #include <fbxfilesdk/kfbxplugins/kfbxgroupname.h>
00022 
00023 #include <fbxfilesdk/components/kbaselib/klib/kerror.h>
00024 
00025 #include <fbxfilesdk/fbxfilesdk_nsbegin.h>
00026 
00027 class KFbxSdkManager;
00028 class KFbxVector4;
00029 
00034 class KFBX_DLL KFbxConstraintScale : public KFbxConstraint
00035 {
00036     KFBXOBJECT_DECLARE(KFbxConstraintScale,KFbxConstraint);
00037 
00038 public:
00046             KFbxTypedProperty<fbxBool1>     AffectX;
00047             
00051             KFbxTypedProperty<fbxBool1>     AffectY;
00052 
00056             KFbxTypedProperty<fbxBool1>     AffectZ;
00057            
00061             KFbxTypedProperty<fbxDouble3>   Scaling;
00062 
00065             KFbxTypedProperty<fbxReference> ConstraintSources;
00066 
00069             KFbxTypedProperty<fbxReference> ConstrainedObject;
00071 
00075     void SetLock(bool pLock);
00076 
00080     bool GetLock() const;
00081 
00085     void SetAffectX(bool pAffect);
00086 
00090     bool GetAffectX() const;
00091 
00095     void SetAffectY(bool pAffect);
00096 
00100     bool GetAffectY() const;
00101 
00105     void SetAffectZ(bool pAffect);
00106 
00110     bool GetAffectZ() const;
00111 
00115     virtual void SetOffset(KFbxVector4 pScale);
00116 
00120     KFbxVector4 GetOffset() const;
00121 
00125     void SetWeight(double pWeight);
00126 
00131     void AddConstraintSource(KFbxObject* pObject, double pWeight = 100);
00132 
00136     int GetConstraintSourceCount() const;
00137 
00142     KFbxObject* GetConstraintSource(int pIndex) const;
00143 
00147     void SetConstrainedObject(KFbxObject* pObject);
00148 
00152     KFbxObject* GetConstrainedObject() const;
00153 
00154 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00155 protected:
00156     KFbxConstraintScale(KFbxSdkManager& pManager, char const* pName);
00157 
00158     virtual bool ConstructProperties(bool pForceSet);
00159 
00160     virtual EConstraintType GetConstraintType() const;
00161 #endif // #ifndef DOXYGEN_SHOULD_SKIP_THIS
00162 };
00163 
00164 #include <fbxfilesdk/fbxfilesdk_nsend.h>
00165 
00166 #endif // FBXFILESDK_KFBXPLUGINS_KFBXCONSTRAINTSCALE_H
00167