Commit 9908aa4c by Michael Kohnen

### added HOARemax, SHLinear2DegreeOrder and fixed elevation vs polar angle irritations in SH functions

parent 2801056f
 ... ... @@ -429,6 +429,12 @@ template< typename T > inline void linspace( std::vector< T >& dest, T a, T b, T // (Note a and b must be powers of two, otherwise an exception is thrown) ITA_BASE_API void pow2space( std::vector< int >& dest, const int a, const int b ); // returns the elevation angle (0 = frontal direction) in radians from a polar angle theta (0 = above) ITA_BASE_API double theta2elevation(const double dThetaRAD); // returns the polar angle theta (0 = above) in radians from a given elevation angle (0 = frontal direction) ITA_BASE_API double elevation2theta(const double dElevationRAD); // Calculates the factorial of an positive integer m ITA_BASE_API int factorial( const int m ); ... ... @@ -438,11 +444,17 @@ ITA_BASE_API double SHNormalizeConst( const int m, const int n ); //Calculates the Kronecker delta ITA_BASE_API int SHKronecker( const int m ); // Returns the index of a basefunction with degree m and order n // Returns the linear index of a basefunction with degree m and order n, linear indexing starts with 0 ITA_BASE_API int SHDegreeOrder2Linear( const int m, const int n ); // Returns degree and order of a basefunctions from a linear index, linear indexing starts with 0 ITA_BASE_API void SHLinear2DegreeOrder(const int iLinear, int &m, int &n); // Calculates the remax weightings up to a given order ITA_BASE_API std::vector HOARemaxWeights(int iTruncationOrder); //Calculates the realvalued Basefunctions of SH for e.g. Ambisonics ITA_BASE_API std::vector SHRealvaluedBasefunctions( const double elevation, const double azimuth, const int maxOrder ); ITA_BASE_API std::vector SHRealvaluedBasefunctions( const double thetaRAD, const double azimuthRAD, const int maxOrder ); //Calculates the associated legendre polynomials ITA_BASE_API std::vector SHAssociatedLegendre( const int N, const double mu ); ... ...