11 #ifndef CAL_CORETRACK_H 12 #define CAL_CORETRACK_H 15 #include "cal3d/global.h" 16 #include "cal3d/matrix.h" 17 #include "cal3d/vector.h" 18 #include "cal3d/quaternion.h" 34 bool m_translationRequired;
35 bool m_highRangeRequired;
36 bool m_translationIsDynamic;
37 static int m_translationRequiredCount;
38 static int m_translationNotRequiredCount;
41 std::vector<CalCoreKeyframe*> m_keyframes;
69 bool setCoreBoneId(
int coreBoneId);
71 int getCoreKeyframeCount()
const;
75 static int translationRequiredCount() {
return m_translationRequiredCount; }
76 static int translationNotRequiredCount() {
return m_translationNotRequiredCount; }
79 void removeCoreKeyFrame(
int _i) { m_keyframes.erase( m_keyframes.begin() + _i); }
80 bool getTranslationRequired() {
return m_translationRequired; }
81 void setTranslationRequired(
bool p ) { m_translationRequired = p; }
82 bool getTranslationIsDynamic() {
return m_translationIsDynamic; }
83 void setTranslationIsDynamic(
bool p ) { m_translationIsDynamic = p; }
84 bool getHighRangeRequired() {
return m_highRangeRequired; }
85 void setHighRangeRequired(
bool p ) { m_highRangeRequired = p; }
86 void fillInvalidTranslations(
CalVector const & trans );
88 void scale(
float factor);
89 void compress(
double translationTolerance,
double rotationToleranceDegrees,
CalCoreSkeleton * skelOrNull );
91 void translationCompressibility(
92 bool * transRequiredResult,
bool * transDynamicResult,
bool * highRangeRequiredResult,
94 void collapseSequences(
double translationTolerance,
double rotationToleranceDegrees );
97 std::vector<CalCoreKeyframe *>::const_iterator getUpperBound(
float time)
const;
99 double translationTolerance,
double rotationToleranceDegrees);
int getCoreBoneId() const
Returns the ID of the core bone.
Definition: coretrack.h:64
Definition: corebone.h:34
Definition: coreskeleton.h:24
The vector class.
Definition: vector.h:36
Definition: coretrack.h:26
The core keyframe class.
Definition: corekeyframe.h:31
The quaternion class.
Definition: quaternion.h:35