Homogeneous coordinate transformation matrix. More...
#include <HomXform.hpp>
Public Member Functions | |
HomXform (const int matrix[16]) | |
constructor from matrix More... | |
HomXform () | |
bare constructor More... | |
HomXform (const int rotate[9], const int scale[3], const int translate[3]) | |
constructor from rotation, scaling, translation More... | |
HomXform (int i1, int i2, int i3, int i4, int i5, int i6, int i7, int i8, int i9, int i10, int i11, int i12, int i13, int i14, int i15, int i16) | |
constructor taking 16 ints, useful for efficient operators More... | |
HomXform (HomXform const &from) | |
copy constructor More... | |
HomXform | inverse () const |
return this.inverse More... | |
void | three_pt_xform (const HomCoord &p1, const HomCoord &q1, const HomCoord &p2, const HomCoord &q2, const HomCoord &p3, const HomCoord &q3) |
compute a transform from three points More... | |
int | operator[] (const int &count) const |
operators More... | |
int & | operator[] (const int &count) |
bool | operator== (const HomXform &rhs) const |
bool | operator!= (const HomXform &rhs) const |
HomXform & | operator= (const HomXform &rhs) |
HomXform & | operator*= (const HomXform &rhs) |
HomXform | operator* (const HomXform &rhs2) const |
Static Public Attributes | |
static MOAB_EXPORT HomXform | IDENTITY |
Private Attributes | |
int | xForm [16] |
the matrix; don't bother storing the last column, since we assume for now it's always unused More... | |
Friends | |
class | HomCoord |
Homogeneous coordinate transformation matrix.
Definition at line 147 of file HomXform.hpp.
|
inline |
|
inline |
bare constructor
Definition at line 503 of file HomXform.hpp.
Referenced by inverse(), operator*(), operator*=(), and three_pt_xform().
|
inline |
constructor from rotation, scaling, translation
Definition at line 505 of file HomXform.hpp.
References xForm.
|
inline |
constructor taking 16 ints, useful for efficient operators
Definition at line 521 of file HomXform.hpp.
References xForm.
|
inline |
|
inline |
return this.inverse
Definition at line 716 of file HomXform.hpp.
References HomXform(), XFORM, and xForm.
Referenced by moab::HomCoord::operator/=().
|
inline |
Definition at line 564 of file HomXform.hpp.
References HomXform(), and XFORM.
Definition at line 628 of file HomXform.hpp.
References HomXform(), and XFORM.
Definition at line 556 of file HomXform.hpp.
References xForm.
|
inline |
|
inline |
|
inline |
void moab::HomXform::three_pt_xform | ( | const HomCoord & | p1, |
const HomCoord & | q1, | ||
const HomCoord & | p2, | ||
const HomCoord & | q2, | ||
const HomCoord & | p3, | ||
const HomCoord & | q3 | ||
) |
compute a transform from three points
Definition at line 33 of file HomXform.cpp.
References moab::HomCoord::homCoord, HomXform(), moab::HomCoord::i(), IDENTITY, moab::HomCoord::j(), moab::HomCoord::k(), moab::HomCoord::length_squared(), moab::HomCoord::normalize(), and moab::HomCoord::set().
Referenced by moab::ScdElementData::add_vsequence(), and moab::SweptElementData::add_vsequence().
|
friend |
Definition at line 156 of file HomXform.hpp.
|
static |
Definition at line 158 of file HomXform.hpp.
Referenced by three_pt_xform().
|
private |
the matrix; don't bother storing the last column, since we assume for now it's always unused
Definition at line 153 of file HomXform.hpp.
Referenced by HomXform(), inverse(), operator!=(), moab::HomCoord::operator*(), moab::HomCoord::operator*=(), operator=(), operator==(), and operator[]().