00001 #ifndef __KX_ICLIENTOBJECT 00002 #define __KX_ICLIENTOBJECT 00003 00004 #include "KX_IPOTransform.h" 00005 00006 class KX_IClientObject 00007 { 00008 public: 00009 00010 KX_IClientObject() {} 00011 virtual ~KX_IClientObject() {} 00012 00013 00014 //virtual const MT_Matrix3x3& GetOrientation()=0; 00015 virtual MT_Vector3 GetEuler() =0; 00016 00017 virtual void ConvertIPOTransform(KX_IPOTransform& ipo_xform) const = 0; 00018 virtual void SetEuler(const MT_Vector3& euler)=0; 00019 virtual void SetEulerFromMatrix(const MT_Matrix3x3& mat)=0; 00020 virtual void SavePosition()=0; 00021 virtual void RestorePosition()=0; 00022 virtual bool HasParent() = 0; 00023 virtual void WhereIsObject() = 0; 00024 virtual MT_Transform GetTransformation()=0; 00025 virtual MT_Vector3 GetScaling()=0; 00026 virtual MT_Matrix3x3 GetScalinglessMatrix()=0; 00027 virtual MT_Point3 GetOrigin()=0; 00028 virtual void SetPosition(MT_Point3 pos)=0; 00029 virtual bool HasIpo()=0; 00030 virtual void WhereIsObjectTime(float curframetime)=0; 00031 virtual void DisplaySymbolicShape(int drawmode)=0; 00032 00033 }; 00034 00035 #endif //__KX_ICLIENTOBJECT