working-est copy with class-based code. still open loop

Dependencies:   mbed

Fork of analoghalls6 by N K

fastmath.cpp

Committer:
nki
Date:
2015-03-08
Revision:
10:b4abecccec7a
Parent:
9:d3b70c15baa9

File content as of revision 10:b4abecccec7a:

#include "includes.h"
#include "fastmath.h"
#include "lut.h"

float FastMath::FastSin(float theta) {
    if (theta < 0.0f) theta += 360.0f;
    if (theta >= 360.0f) theta -= 360.0f;
    return 2.0f * sinetab[(int) theta] - 1.0f;
}

float FastMath::FastCos(float theta) {
    return FastSin(90.0f - theta);
}

float FastMath::FastSin01(float theta) {
    return FastSin(theta) * 0.5f + 0.5f;
}

float FastMath::FastCos01(float theta) {
    return FastCos(theta) * 0.5f + 0.5f;
}