Overview | All Modules | Tutorial | User's Guide | Programming Guide
Previous

COVISE Online Documentation

Next

Classes | Macros | Functions
mathUtils.h File Reference
#include <util/coExport.h>
#include <osg/Vec3>
#include <osg/Matrix>
#include <math.h>

Classes

class  coCoord
 

Macros

#define _USE_MATH_DEFINES
 
#define M_PI   3.141592653
 
#define MAKE_EULER_MAT(m, h, p, r)
 
#define MAKE_EULER_MAT_VEC(m, hpr)   MAKE_EULER_MAT(m, hpr[0], hpr[1], hpr[2])
 

Functions

void OSGVRUIEXPORT snapTo45Degrees (osg::Matrix *mat)
 
void OSGVRUIEXPORT snapToDegrees (float degree, osg::Matrix *mat)
 
double OSGVRUIEXPORT mod (double a, double b)
 

Macro Definition Documentation

◆ _USE_MATH_DEFINES

#define _USE_MATH_DEFINES

◆ M_PI

#define M_PI   3.141592653

◆ MAKE_EULER_MAT

#define MAKE_EULER_MAT (   m,
  h,
  p,
 
)
Value:
{ \
double sr, sp, sh, cr, cp, ch; \
sr = sin(r / 180.0 * M_PI); \
sp = sin(p / 180.0 * M_PI); \
sh = sin(h / 180.0 * M_PI); \
cr = cos(r / 180.0 * M_PI); \
cp = cos(p / 180.0 * M_PI); \
ch = cos(h / 180.0 * M_PI); \
m(0, 0) = ch * cr - sh * sr * sp; \
m(0, 1) = cr * sh + ch * sr * sp; \
m(0, 2) = -sr * cp; \
m(0, 3) = 0; \
m(1, 0) = -sh * cp; \
m(1, 1) = ch * cp; \
m(1, 2) = sp; \
m(1, 3) = 0; \
m(2, 0) = sp * cr * sh + sr * ch; \
m(2, 1) = sr * sh - sp * cr * ch; \
m(2, 2) = cp * cr; \
m(2, 3) = 0; \
m(3, 0) = 0; \
m(3, 1) = 0; \
m(3, 2) = 0; \
m(3, 3) = 1; \
}
#define M_PI
Definition: mathUtils.h:19

◆ MAKE_EULER_MAT_VEC

#define MAKE_EULER_MAT_VEC (   m,
  hpr 
)    MAKE_EULER_MAT(m, hpr[0], hpr[1], hpr[2])

Function Documentation

◆ mod()

double OSGVRUIEXPORT mod ( double  a,
double  b 
)

◆ snapTo45Degrees()

void OSGVRUIEXPORT snapTo45Degrees ( osg::Matrix *  mat)

◆ snapToDegrees()

void OSGVRUIEXPORT snapToDegrees ( float  degree,
osg::Matrix *  mat 
)
PreviousNext

Authors: Martin Aumüller, Ruth Lang, Daniela Rainer, Jürgen Schulze-Döbold, Andreas Werner, Peter Wolf, Uwe Wössner
Copyright © 1993-2009 HLRS, 2004-2009 RRZK, 2005-2009 Visenso
COVISE Version 6.5 Academic