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_CHARACTER_POSE_H_ 00014 #define _FBXSDK_SCENE_CONSTRAINT_CHARACTER_POSE_H_ 00015 00016 #include <fbxsdk/fbxsdk_def.h> 00017 00018 #include <fbxsdk/core/fbxobject.h> 00019 #include <fbxsdk/scene/constraint/fbxcharacter.h> 00020 #include <fbxsdk/scene/geometry/fbxnode.h> 00021 00022 #include <fbxsdk/fbxsdk_nsbegin.h> 00023 00048 class FBXSDK_DLL FbxCharacterPose : public FbxObject 00049 { 00050 FBXSDK_OBJECT_DECLARE(FbxCharacterPose,FbxObject); 00051 00052 public: 00054 void Reset(); 00055 00059 FbxNode* GetRootNode() const; 00060 00064 FbxCharacter* GetCharacter() const; 00065 00071 bool GetOffset(FbxCharacter::ENodeId pCharacterNodeId, FbxAMatrix& pOffset) const; 00072 00080 bool GetLocalPosition(FbxCharacter::ENodeId pCharacterNodeId, FbxVector4& pLocalT, FbxVector4& pLocalR, FbxVector4& pLocalS) const; 00081 00087 bool GetGlobalPosition(FbxCharacter::ENodeId pCharacterNodeId, FbxAMatrix& pGlobalPosition) const; 00088 00091 FbxScene* GetPoseScene() const; 00092 00093 /***************************************************************************************************************************** 00094 ** WARNING! Anything beyond these lines is for internal use, may not be documented and is subject to change without notice! ** 00095 *****************************************************************************************************************************/ 00096 #ifndef DOXYGEN_SHOULD_SKIP_THIS 00097 virtual FbxObject& Copy(const FbxObject& pObject); 00098 00099 protected: 00100 virtual void Construct(const FbxCharacterPose* pFrom); 00101 virtual void Destruct(bool pRecursive); 00102 00103 private: 00104 FbxScene* mPoseScene; 00105 #endif /* !DOXYGEN_SHOULD_SKIP_THIS *****************************************************************************************/ 00106 }; 00107 00108 #include <fbxsdk/fbxsdk_nsend.h> 00109 00110 #endif /* _FBXSDK_SCENE_CONSTRAINT_CHARACTER_POSE_H_ */