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; }
78 void removeCoreKeyFrame(
int _i) { m_keyframes.erase( m_keyframes.begin() + _i); }
79 bool getTranslationRequired() {
return m_translationRequired; }
80 void setTranslationRequired(
bool p ) { m_translationRequired = p; }
81 bool getTranslationIsDynamic() {
return m_translationIsDynamic; }
82 void setTranslationIsDynamic(
bool p ) { m_translationIsDynamic = p; }
83 bool getHighRangeRequired() {
return m_highRangeRequired; }
84 void setHighRangeRequired(
bool p ) { m_highRangeRequired = p; }
85 void fillInvalidTranslations(
CalVector const & trans );
87 void scale(
float factor);
88 void compress(
double translationTolerance,
double rotationToleranceDegrees,
CalCoreSkeleton * skelOrNull );
90 void translationCompressibility(
91 bool * transRequiredResult,
bool * transDynamicResult,
bool * highRangeRequiredResult,
93 void collapseSequences(
double translationTolerance,
double rotationToleranceDegrees );
96 std::vector<CalCoreKeyframe *>::const_iterator getUpperBound(
float time)
const;
98 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