62 lines
1.3 KiB
C
62 lines
1.3 KiB
C
|
//
|
||
|
// Elastic.h
|
||
|
//
|
||
|
// This code is derived from Universal Tween Engine
|
||
|
// Licensed under Apache License 2.0 - http://www.apache.org/licenses/LICENSE-2.0
|
||
|
//
|
||
|
|
||
|
#ifndef __Elastic__
|
||
|
#define __Elastic__
|
||
|
|
||
|
#include <TweenEngine/TweenEquation.h>
|
||
|
|
||
|
namespace TweenEngine
|
||
|
{
|
||
|
class ElasticIn : public TweenEquation
|
||
|
{
|
||
|
private:
|
||
|
float amplitude;
|
||
|
float period;
|
||
|
bool isAmplitudeSet;
|
||
|
bool isPeriodSet;
|
||
|
public:
|
||
|
~ElasticIn();
|
||
|
float compute(float t);
|
||
|
const char *toString();
|
||
|
void setAmplitude(float a);
|
||
|
void setPeriod(float p);
|
||
|
};
|
||
|
|
||
|
class ElasticOut : public TweenEquation
|
||
|
{
|
||
|
private:
|
||
|
float amplitude;
|
||
|
float period;
|
||
|
bool isAmplitudeSet;
|
||
|
bool isPeriodSet;
|
||
|
public:
|
||
|
~ElasticOut();
|
||
|
float compute(float t);
|
||
|
const char *toString();
|
||
|
void setAmplitude(float a);
|
||
|
void setPeriod(float p);
|
||
|
};
|
||
|
|
||
|
class ElasticInOut : public TweenEquation
|
||
|
{
|
||
|
private:
|
||
|
float amplitude;
|
||
|
float period;
|
||
|
bool isAmplitudeSet;
|
||
|
bool isPeriodSet;
|
||
|
public:
|
||
|
~ElasticInOut();
|
||
|
float compute(float t);
|
||
|
const char *toString();
|
||
|
void setAmplitude(float a);
|
||
|
void setPeriod(float p);
|
||
|
};
|
||
|
}
|
||
|
|
||
|
#endif /* defined(__Elastic__) */
|