provide trigonometric functions with LUT.
Diff: LUTTrigonometric.cpp
- Revision:
- 1:825f5c2e80b4
- Parent:
- 0:5472db659233
diff -r 5472db659233 -r 825f5c2e80b4 LUTTrigonometric.cpp --- a/LUTTrigonometric.cpp Sat Mar 21 08:36:18 2015 +0000 +++ b/LUTTrigonometric.cpp Mon Mar 23 11:20:09 2015 +0000 @@ -1,1 +1,24 @@ -#include "LUTTrigonometric.h" \ No newline at end of file +#include "LUTTrigonometric.h" + +LUTTrigonometric::LUTTrigonometric(int division): pi(3.1415926535897932384626433832795) { + div = division; + rate = division / pi / 2.0; + table = new double[div]; + for(int i = 0; i < div; i++) table[i] = ::sin(pi * 2.0 / rate * i); +} + +LUTTrigonometric::~LUTTrigonometric() { + delete[] table; +} + + +LUTSingleTrigonometric::LUTSingleTrigonometric(int division): pi(3.1415926535f) { + div = division; + rate = division / pi / 2.0f; + table = new float[div]; + for(int i = 0; i < div; i++) table[i] = (float)::sin(pi * 2.0f / rate * i); +} + +LUTSingleTrigonometric::~LUTSingleTrigonometric() { + delete[] table; +} \ No newline at end of file