11 #ifndef CAL_COREMORPHTRACK_H 12 #define CAL_COREMORPHTRACK_H 18 #include "cal3d/global.h" 19 #include "cal3d/matrix.h" 20 #include "cal3d/vector.h" 21 #include "cal3d/quaternion.h" 22 #include "cal3d/coremorphkeyframe.h" 43 unsigned int m_morphID;
44 unsigned int m_targetMeshID;
45 std::vector<unsigned int> m_targetSubMeshIDs;
49 std::vector<CalCoreMorphKeyframe*> m_keyframesToDelete;
59 bool getState(
float time,
float & weightOut);
61 const unsigned int& getMorphID()
const{
return m_morphID;}
62 void setMorphID(
const unsigned int &name){m_morphID=name;}
64 inline const unsigned int& getTargetMesh()
const {
return m_targetMeshID;}
65 inline void setTargetMesh(
unsigned int name){m_targetMeshID=name;}
69 inline void addTargetSubMesh(
unsigned int i){m_targetSubMeshIDs.push_back(i);}
70 inline void removeTargetSubMesh(
unsigned int name){
71 for(std::vector<unsigned int>::iterator i=m_targetSubMeshIDs.begin();i!=m_targetSubMeshIDs.begin();i++){
73 m_targetSubMeshIDs.erase(i);
79 inline const unsigned int &getTargetSubMesh(
const unsigned int &name)
const{
return m_targetSubMeshIDs[name];}
81 int getCoreMorphKeyframeCount()
const;
89 const std::vector<CalCoreMorphKeyframe> & getVectorCoreMorphKeyframes()
const;
90 std::vector<CalCoreMorphKeyframe> & getVectorCoreMorphKeyframes();
92 void scale(
float factor);
95 std::vector<CalCoreMorphKeyframe>::iterator getUpperBound(
float time);
const unsigned int getNumTargetSubMeshes() const
TargetSubMeshes container if empty assume ALL submeshes have morphtarget.
Definition: coremorphtrack.h:68
The core keyframe class.
Definition: coremorphkeyframe.h:31
std::vector< CalCoreMorphKeyframe > m_keyframes
List of keyframes, always sorted by time.
Definition: coremorphtrack.h:48
Definition: coremorphtrack.h:38