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_CONSTRAINT_PARENT_H_ 00014 #define _FBXSDK_SCENE_CONSTRAINT_PARENT_H_ 00015 00016 #include <fbxsdk/fbxsdk_def.h> 00017 00018 #include <fbxsdk/core/base/fbxerror.h> 00019 #include <fbxsdk/scene/constraint/fbxconstraint.h> 00020 #include <fbxsdk/scene/fbxgroupname.h> 00021 00022 #include <fbxsdk/fbxsdk_nsbegin.h> 00023 00024 class FbxManager; 00025 00031 class FBXSDK_DLL FbxConstraintParent : public FbxConstraint 00032 { 00033 FBXSDK_OBJECT_DECLARE(FbxConstraintParent,FbxConstraint); 00034 00035 public: 00044 FbxPropertyT<FbxBool> AffectTranslationX; 00045 00050 FbxPropertyT<FbxBool> AffectTranslationY; 00051 00056 FbxPropertyT<FbxBool> AffectTranslationZ; 00057 00062 FbxPropertyT<FbxBool> AffectRotationX; 00063 00068 FbxPropertyT<FbxBool> AffectRotationY; 00069 00074 FbxPropertyT<FbxBool> AffectRotationZ; 00075 00080 FbxPropertyT<FbxBool> AffectScalingX; 00081 00086 FbxPropertyT<FbxBool> AffectScalingY; 00087 00092 FbxPropertyT<FbxBool> AffectScalingZ; 00093 00097 FbxPropertyT<FbxReference> ConstraintSources; 00098 00102 FbxPropertyT<FbxReference> ConstrainedObject; 00104 00109 void SetTranslationOffset(FbxObject* pObject, FbxVector4 pTranslation); 00110 00115 FbxVector4 GetTranslationOffset(const FbxObject* pObject) const; 00116 00121 virtual void SetRotationOffset(const FbxObject* pObject, FbxVector4 pRotation); 00122 00127 FbxVector4 GetRotationOffset(const FbxObject* pObject) const; 00128 00133 void AddConstraintSource(FbxObject* pObject, double pWeight = 100); 00134 00138 int GetConstraintSourceCount() const; 00139 00144 FbxObject* GetConstraintSource(int pIndex) const; 00145 00149 void SetConstrainedObject(FbxObject* pObject); 00150 00154 FbxObject* GetConstrainedObject() const; 00155 00156 #ifndef DOXYGEN_SHOULD_SKIP_THIS 00157 protected: 00158 FbxConstraintParent(FbxManager& pManager, char const* pName); 00159 00160 virtual bool ConstructProperties( bool pForceSet ); 00161 00162 virtual EType GetConstraintType() const; 00163 #endif // #ifndef DOXYGEN_SHOULD_SKIP_THIS 00164 }; 00165 00166 #include <fbxsdk/fbxsdk_nsend.h> 00167 00168 #endif /* _FBXSDK_SCENE_CONSTRAINT_PARENT_H_ */