provide trigonometric functions with LUT.

Revision:
1:825f5c2e80b4
Parent:
0:5472db659233
--- 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