50 #ifndef MULTIINTERPOLATIONANIMATIONT_HH 51 #define MULTIINTERPOLATIONANIMATIONT_HH 53 #include "InterpolationAnimationT.hh" 55 template<
class Po
intT>
63 typedef typename Point::value_type Scalar;
67 typedef std::vector<Scalar> TargetType;
68 typedef std::vector< InterpolationAnimationT<ACG::Vec3d>* > InterpolationAnimations;
73 MultiInterpolationAnimationT(
const InterpolationAnimations& _interpolationAnimations) : interpolationAnimations_(_interpolationAnimations) {}
79 virtual bool getMinInput(Scalar& _result);
80 virtual bool getMaxInput(Scalar& _result);
83 InterpolationAnimations interpolationAnimations_;
103 virtual Pose *
pose(
unsigned int _iFrame);
111 virtual Pose *
pose(
unsigned int _iFrame, Pose* _reference);
144 interpolationAnimations_.push_back(_animation);
147 return interpolationAnimations_.size();
153 virtual void clearPoseCache() {
154 for (uint i=0; i < interpolationAnimations_.size(); ++i) {
155 interpolationAnimations_[i]->clearPoseCache();
161 #if defined(INCLUDE_TEMPLATES) && !defined(MULTIINTERPOLATIONANIMATIONT_C) 162 #define MULTIINTERPOLATIONANIMATIONT_TEMPLATES 163 #include "MultiInterpolationAnimationT.cc" 167 #endif //MULTIINTERPOLATIONANIMATIONT_HH virtual void updateFromGlobal(unsigned int _index)
Updates the local matrix using the global matrix.
void insertJointAt(unsigned int _index)
Called by the skeleton as a new joint is inserted.
PoseT< PointT > Pose
Typedef for the pose template.
virtual unsigned int frameCount()
Returns the number of frames that this animation can playback.
A general pose, used to store the frames of the animation.
Animation * animation(std::string _name)
Returns a pointer to the animation to the given name.
Knows how to apply the values generated by an interpolator to a matrix. When playing back an Interpol...
virtual Pose * pose(unsigned int _iFrame)
get a pose
unsigned int animationCount()
Returns the number of animations stored in this skeleton.
Stores a single animation.
void removeJointAt(unsigned int _index)
Called by the skeleton as a joint is deleted.