ProtoTracer  1.0
Real-time 3D rendering and animation engine
Loading...
Searching...
No Matches
AnimationTrack.tpp
Go to the documentation of this file.
1#pragma once
2
3template<size_t maxParameters, size_t maxKeyFrames>
4AnimationTrack<maxParameters, maxKeyFrames>::AnimationTrack() : track(KeyFrameTrack<maxParameters, maxKeyFrames>(0.0f, 1.0f, KeyFrameInterpolation::Cosine)){}
5
6template<size_t maxParameters, size_t maxKeyFrames>
7AnimationTrack<maxParameters, maxKeyFrames>::AnimationTrack(float min, float max, KeyFrameInterpolation::InterpolationMethod interpMethod) : track(KeyFrameTrack<maxParameters, maxKeyFrames>(min, max, interpMethod)){}
8
9template<size_t maxParameters, size_t maxKeyFrames>
10void AnimationTrack<maxParameters, maxKeyFrames>::Play(){
11 track.Play();
12}
13
14template<size_t maxParameters, size_t maxKeyFrames>
15void AnimationTrack<maxParameters, maxKeyFrames>::Pause(){
16 track.Pause();
17}
18
19template<size_t maxParameters, size_t maxKeyFrames>
20void AnimationTrack<maxParameters, maxKeyFrames>::RestartTime(){
21 track.SetCurrentTime(0.0f);
22}
23
24template<size_t maxParameters, size_t maxKeyFrames>
25void AnimationTrack<maxParameters, maxKeyFrames>::PrintTime(){
26 Serial.println(track.GetCurrentTime());
27}
28
29template<size_t maxParameters, size_t maxKeyFrames>
30void AnimationTrack<maxParameters, maxKeyFrames>::Reset(){
31 track.Reset();
32}
33
34template<size_t maxParameters, size_t maxKeyFrames>
35float AnimationTrack<maxParameters, maxKeyFrames>::GetParameterValue(){
36 return track.GetParameterValue();
37}
38
39template<size_t maxParameters, size_t maxKeyFrames>
40float AnimationTrack<maxParameters, maxKeyFrames>::Update(){
41 return track.Update();
42}
43
44template<size_t maxParameters, size_t maxKeyFrames>
45void AnimationTrack<maxParameters, maxKeyFrames>::AddParameter(float* parameter){
46 track.AddParameter(parameter);
47}