From e8e12b11db220160eb63727fb03548410bf3afd2 Mon Sep 17 00:00:00 2001 From: chai Date: Sun, 25 Nov 2018 00:11:28 +0800 Subject: *misc --- src/libjin/math/je_ranged_value.h | 57 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 src/libjin/math/je_ranged_value.h (limited to 'src/libjin/math/je_ranged_value.h') diff --git a/src/libjin/math/je_ranged_value.h b/src/libjin/math/je_ranged_value.h new file mode 100644 index 0000000..4749e91 --- /dev/null +++ b/src/libjin/math/je_ranged_value.h @@ -0,0 +1,57 @@ +#ifndef __JE_RANGED_VALUE_H__ +#define __JE_RANGED_VALUE_H__ + +#include "../common/je_types.h" + +#include + +namespace JinEngine +{ + namespace Math + { + /* + * y ^ + * |-------- _ + * | \ / \ + * | --- \ + * | \ + * | \ + * +----------------------> x + */ + class RangedValue + { + public: + RangedValue(); + + /// + /// Points of ranged value. + /// + /// @param points Points. + /// @param n Number of points. + /// + RangedValue(float* points, uint n); + + virtual ~RangedValue() {} + + virtual void addPoint(float x, float y); + + virtual void removePoint(uint i); + + virtual void insertPoint(uint i, float x, float y); + + virtual float getValue(float x); + + virtual void clear(); + + private: + std::vector mXAxis; + std::vector mYAxis; + + uint mCount; + + }; + + } +} + +#endif \ No newline at end of file -- cgit v1.1-26-g67d0