AOT計算で呼び出し自体を早くする三角関数
AOTTrigon.h
- Committer:
- kb10uy
- Date:
- 2014-12-23
- Revision:
- 2:d8c9637a5f09
- Parent:
- 1:f1e55d228f6a
- Child:
- 3:ba78a1dd8b55
File content as of revision 2:d8c9637a5f09:
#pragma once #include "math.h" /** AOTTrigon class * AOT計算によって三角関数の計算を高速化します。 */ class AOTTrigon { public: /** AOTTrigon コンストラクター * @param divide 分割数 */ AOTTrigon(int divide=256); inline double sine(double x) { return t_sin[(int)(fmod(x,3.14159265358979323846264*2.0)*rate)]; } inline double cosine(double x) { return sine(x+3.14159265358979323846264/2.0); } inline double tangent(double x) { return sine(x)/cosine(x); } private: double *t_sin; int division; double rate; };