Dependents:   OBROT_ALL f3rc_3_auto_encode f3rc_3_auto_lintrace_912 EMG_Realtime_Filter ... more

Math.cpp

Committer:
inst
Date:
2015-10-14
Revision:
0:067c036b09e0

File content as of revision 0:067c036b09e0:

#include "Math.h"
#include "mbed.h"

const float gPI = 3.1415926536f;

float convertRange( float in, float oldMin, float oldMax, float newMin, float newMax ){
    return ( in - oldMin ) * ( newMax - newMin ) / ( oldMax - oldMin ) + newMin;
}

float convertRangePlusMinusPi( float deg ){
    while ( ( deg > gPI ) || ( deg < -gPI ) ){
        while ( deg > gPI ){
            deg -= 2.0f * gPI;
        }
        while ( deg < -gPI ){
            deg += 2.0f * gPI;
        }
    }
    
    return deg;
}

bool isNear( float a, float b, float error ){
    return ( abs( a - b ) < error );
}