8typedef Eigen::Matrix<double,3,1> vec3;
9typedef Eigen::Matrix<double,2,1> vec2;
10typedef Eigen::Matrix<double,4,1> vec4;
11typedef Eigen::Matrix<double,6,1> vec6;
13typedef Eigen::Quaternion<double> Quat;
15typedef Eigen::Matrix<double,2,2> mat2;
16typedef Eigen::Matrix<double,3,3> mat3;
17typedef Eigen::Matrix<double,4,4> mat4;
18typedef Eigen::Matrix<double,6,6> mat6;
20typedef Eigen::Matrix<double,2,4,Eigen::RowMajor> mat24;
21typedef Eigen::Matrix<double,3,2,Eigen::RowMajor> mat32;
22typedef Eigen::Matrix<double,3,4,Eigen::RowMajor> mat34;
23typedef Eigen::Matrix<double,3,6,Eigen::RowMajor> mat36;
25typedef Eigen::Matrix<double,2,3,Eigen::ColMajor> mat23;
26typedef Eigen::Matrix<double,4,2,Eigen::ColMajor> mat42;
27typedef Eigen::Matrix<double,4,3,Eigen::ColMajor> mat43;
28typedef Eigen::Matrix<double,6,3,Eigen::ColMajor> mat63;
30typedef Eigen::SparseMatrix<double,Eigen::ColMajor> SparseMat;
31typedef Eigen::Matrix<double,Eigen::Dynamic,1> Vector;
32typedef Eigen::SparseMatrix<double,Eigen::RowMajor> SparseRowMat;
34Quat ptrQ(
const double* Q);
36void Qptr(
const Quat& Q,
double* ptr);
37void V2ptr(
const vec2& V,
double* ptr);
38void V3ptr(
const vec3& V,
double* ptr);
39void V4ptr(
const vec4& V,
double* ptr);
40void V6ptr(
const vec6& V,
double* ptr);
46mat3
outer(
const vec3& Va,
const vec3& Vb);
51Quat BasicRotationY(
double angle);
52Quat BasicRotationZ(
double angle);
54bool is_qNaN(
double v);
56static const Quat RotationX_plus90 = Quat(0.70710678118654752, 0.70710678118654752,0,0);
57static const Quat RotationY_plus90 = Quat(0.70710678118654752,0, 0.70710678118654752,0);
58static const Quat RotationZ_plus90 = Quat(0.70710678118654752,0,0, 0.70710678118654752);
59static const Quat RotationX_minus90 = Quat(0.70710678118654752,-0.70710678118654752,0,0);
60static const Quat RotationY_minus90 = Quat(0.70710678118654752,0,-0.70710678118654752,0);
61static const Quat RotationZ_minus90 = Quat(0.70710678118654752,0,0,-0.70710678118654752);
63static const Quat RotationYpZm = Quat( 0.5,-0.5, 0.5,-0.5);
65static const Quat RotationX_180 = Quat(0,1,0,0);
66static const Quat RotationY_180 = Quat(0,0,1,0);
67static const Quat RotationZ_180 = Quat(0,0,0,1);
Definition: CollisionManager.h:6
void V6ptr(const vec6 &V, double *ptr)
writes the vector to ptr
mat3 dyadicX(const vec3 &V)
writes the vector to ptr
void V3ptr(const vec3 &V, double *ptr)
writes the vector to ptr
Quat BasicRotationX(double angle)
local space origo translation and rotation of the given inertia matrix
void V2ptr(const vec2 &V, double *ptr)
writes the quaternion to ptr in w,x,y,z order
mat3 dyadicXX(const vec3 &V)
returns the 3x3 skew-symmetric cross product matrix associated with the vector V
void V4ptr(const vec4 &V, double *ptr)
writes the vector to ptr
void TranslateRotateDiagonalMatrix(const mat3 &R, const vec3 &r, const vec6 &D, mat6 &M)
Rotates the given diagonal matrix D, by the rotation matrix R. Writes result to M,...
mat3 dyadicXaXb(const vec3 &Va, const vec3 &Vb)
returns the square of the 3x3 skew-symmetric cross product matrix associated with the vector V
void RotateDiagonalMatrix(const mat3 &R, const vec6 &D, mat6 &M)
returns the outer product (Va * Vb^T) of the vectors Va and Vb
Quat dblQ(double d)
writes the quaternion from ptr in w,x,y,z order
mat3 outer(const vec3 &V)
returns the product of the two 3x3 skew-symmetric cross product matrices associated with the vectors ...
void Qptr(const Quat &Q, double *ptr)
returns the (d,d,d,d) quaternion