1#ifndef COIN_SBDPMATRIX_H
2#define COIN_SBDPMATRIX_H
28#include <Inventor/SbBasic.h>
36typedef double SbDPMat[4][4];
41 SbDPMatrix(
const double a11,
const double a12,
const double a13,
const double a14,
42 const double a21,
const double a22,
const double a23,
const double a24,
43 const double a31,
const double a32,
const double a33,
const double a34,
44 const double a41,
const double a42,
const double a43,
const double a44);
52 operator double*(void);
55 const SbDPMat &
getValue(
void)
const;
60 double det3(
int r1,
int r2,
int r3,
61 int c1,
int c2,
int c3)
const;
62 double det3(
void)
const;
63 double det4(
void)
const;
68 operator SbDPMat&(void);
69 double * operator [](
int i);
70 const double * operator [](
int i)
const;
105 void print(FILE * fp)
const;
110 void operator /=(
const double v);
111 void operator *=(
const double v);
The SbDPLine class represents a line in 3D space.
Definition SbDPLine.h:32
The SbDPMatrix class is a 4x4 dimensional representation of a double-precision matrix.
Definition SbDPMatrix.h:38
void getTransform(SbVec3d &t, SbDPRotation &r, SbVec3d &s, SbDPRotation &so) const
Definition SbDPMatrix.cpp:853
SbDPMatrix(void)
Definition SbDPMatrix.cpp:130
void LUBackSubstitution(int index[4], double b[4]) const
Definition SbDPMatrix.cpp:1028
void setValue(const SbDPMat &m)
Definition SbDPMatrix.cpp:209
const SbDPMat & getValue(void) const
Definition SbDPMatrix.cpp:198
void makeIdentity(void)
Definition SbDPMatrix.cpp:240
double det3(int r1, int r2, int r3, int c1, int c2, int c3) const
Definition SbDPMatrix.cpp:295
double det4(void) const
Definition SbDPMatrix.cpp:343
static SbDPMatrix identity(void)
Definition SbDPMatrix.cpp:691
SbDPMatrix transpose(void) const
Definition SbDPMatrix.cpp:1072
SbBool equals(const SbDPMatrix &m, double tolerance) const
Definition SbDPMatrix.cpp:532
SbDPMatrix & multRight(const SbDPMatrix &m)
Definition SbDPMatrix.cpp:1092
void setScale(const double s)
Definition SbDPMatrix.cpp:703
void multDirMatrix(const SbVec3d &src, SbVec3d &dst) const
Definition SbDPMatrix.cpp:1244
void setTranslate(const SbVec3d &t)
Definition SbDPMatrix.cpp:733
void setTransform(const SbVec3d &t, const SbDPRotation &r, const SbVec3d &s)
Definition SbDPMatrix.cpp:755
SbBool factor(SbDPMatrix &r, SbVec3d &s, SbDPMatrix &u, SbVec3d &t, SbDPMatrix &proj)
Definition SbDPMatrix.cpp:933
void multMatrixVec(const SbVec3d &src, SbVec3d &dst) const
Definition SbDPMatrix.cpp:1160
void print(FILE *fp) const
Definition SbDPMatrix.cpp:1281
SbDPMatrix & multLeft(const SbDPMatrix &m)
Definition SbDPMatrix.cpp:1127
void multLineMatrix(const SbDPLine &src, SbDPLine &dst) const
Definition SbDPMatrix.cpp:1268
SbBool LUDecomposition(int index[4], double &d)
Definition SbDPMatrix.cpp:966
void setRotate(const SbDPRotation &q)
Definition SbDPMatrix.cpp:257
SbDPMatrix inverse(void) const
Definition SbDPMatrix.cpp:361
void multVecMatrix(const SbVec3d &src, SbVec3d &dst) const
Definition SbDPMatrix.cpp:1190
The SbDPRotation class represents a rotation in 3D space.
Definition SbDPRotation.h:33
The SbMatrix class is a 4x4 dimensional representation of a matrix.
Definition SbMatrix.h:37
The SbVec3d class is a 3 dimensional vector with double precision floating point coordinates.
Definition SbVec3d.h:39
The SbVec4d class is a 4 dimensional vector with double precision floating point coordinates.
Definition SbVec4d.h:40