AnimatLab
2
Test
|
#include <OsgMatrixUtil.h>
Public Member Functions | |
virtual CStdFPoint | EulerRotationFromMatrix (osg::Matrix osgMT) |
virtual osg::Matrix | SetupMatrix (CStdFPoint &localPos, CStdFPoint &localRot) |
Static Public Member Functions | |
static float | ClampUnity (float x) |
clamps a float from -1 to 1 | |
static CStdFPoint | EulerRotationFromMatrix_Static (osg::Matrix osgMT) |
static osg::Vec3 | GetRow3 (const osg::Matrix &matrix, int row) |
static osg::Vec4 | GetRow4 (const osg::Matrix &matrix, int row) |
static void | HprToMatrix (osg::Matrix &rotation, const osg::Vec3 &hpr) |
static void | MatrixToHpr (osg::Vec3 &hpr, const osg::Matrix &rotation) |
static void | MatrixToHprAndPosition (osg::Vec3 &xyz, osg::Vec3 &hpr, const osg::Matrix &rotation) |
static void | MatrixToHprRad (osg::Vec3 &hpr, const osg::Matrix &rotation) |
static void | PositionAndHprRadToMatrix (osg::Matrix &rotation, const osg::Vec3 &xyz, const osg::Vec3 &hpr) |
static void | PositionAndHprToMatrix (osg::Matrix &rotation, const osg::Vec3 &xyz, const osg::Vec3 &hpr) |
static void | Print (const osg::Matrix &matrix) |
Prints a matrix. | |
static void | Print (const osg::Vec3 &vec) |
Prints a vector. | |
static void | Print (const osg::Vec4 &vec) |
Prints a vector. | |
static void | SetRow (osg::Matrix &matrix, const osg::Vec3 &vec, int row) |
static void | SetRow (osg::Matrix &matrix, const osg::Vec4 &vec, int row) |
static void | TransformVec3 (osg::Vec3 &xyz, const osg::Matrix &transformMat) |
static void | TransformVec3 (osg::Vec3 &vec_in, const osg::Vec3 &xyz, const osg::Matrix &transformMat) |
static void | Transpose (osg::Matrix &dest, const osg::Matrix &src) |
transposes a matrix | |
OsgMatrixUtil is a utility class for operating on an osg::Matrix
Definition at line 34 of file OsgMatrixUtil.h.
|
static |
Translates Euler angles Heading, pitch, and roll to an osg::Matrix
rotation | the matrix whose rotation will be filled |
hpr | the current Heading, pitch, roll to translate to a matrix (values are in degrees) |
Definition at line 84 of file OsgMatrixUtil.cpp.
Referenced by PositionAndHprToMatrix().
|
static |
Translates the rotation part of an osg::Matrix to Euler Angles
hpr | the vector to fill with the Euler Angles |
rotation | the current rotation matrix |
Definition at line 186 of file OsgMatrixUtil.cpp.
References ClampUnity().
Referenced by MatrixToHprAndPosition(), and MatrixToHprRad().
|
static |
Translates the rotation part of an osg::Matrix to Euler Angles As well as the translation to a vector
xyz | the vector to fill with the translation part of the matrix |
hpr | the vector to fill with the Euler Angles |
rotation | the current rotation matrix |
Definition at line 272 of file OsgMatrixUtil.cpp.
References MatrixToHpr().
|
static |
Translates the rotation part of an osg::Matrix to Euler Angles
hpr | the vector to fill with the Euler Angles |
rotation | the current rotation matrix in radians |
Definition at line 178 of file OsgMatrixUtil.cpp.
References MatrixToHpr().
|
static |
Translates Euler angles Heading, pitch, and roll to an osg::Matrix in addition fills in the translation of the matrix
rotation | the matrix whose rotation will be filled |
xyz | the translation to be added to the matrix |
hpr | the current Heading, pitch, roll to translate to a matrix |
Definition at line 169 of file OsgMatrixUtil.cpp.
References HprToMatrix().
|
static |
This function transforms a point by a 4x4 matrix and stores the result back in the point
xyz | the vector which will be transformed and have the result stored back in to |
transformMat | the 4x4 matrix which will be used to rotate and translate the point |
Definition at line 281 of file OsgMatrixUtil.cpp.
|
static |
This function transforms a point by a 4x4 matrix and stores the result into another vector
vec_in | the vector to store the result of the transform |
xyz | the vector which will be transformed |
transformMat | the 4x4 matrix which will be used to rotate and translate the point |
Definition at line 287 of file OsgMatrixUtil.cpp.