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