transf3d Struct Reference

3D transformation matrix. More...

#include <math3d.hpp>

List of all members.

Public Member Functions

 transf3d ()
 transf3d (const vect3d &r1, const vect3d &r2, const vect3d &r3)
 transf3d (prec_t f1, prec_t f2, prec_t f3, prec_t f4, prec_t f5, prec_t f6, prec_t f7, prec_t f8, prec_t f9)
void print (const char *name=0) const
 Print transformation matrix into the stdout.
void identity ()
 Create an identity transformation.
void reflect (const vect3d &n)
 Create a reflection transformation based on a plane vector.
vect3d transform (const vect3d &v) const
 Transform the given vector.
prec_t det () const
 Calculate the determinant of this matrix.
transf3d transpose () const
 Transpose of the matrix.
transf3d adj () const
 Adjugate of the matrix.
transf3d inverse () const

Public Attributes

prec_t a
prec_t b
prec_t c
prec_t d
prec_t e
prec_t f
prec_t g
prec_t h
prec_t i

Friends

transf3d operator/ (const transf3d &t, prec_t f)
transf3d operator * (const transf3d &t, prec_t f)
transf3d operator * (prec_t f, const transf3d &t)
vect3d operator * (const transf3d &t, const vect3d &v)
transf3d operator * (const transf3d &l, const transf3d r)


Detailed Description

3D transformation matrix.

No support for affine transformations.

Definition at line 515 of file math3d.hpp.


Constructor & Destructor Documentation

transf3d::transf3d (  )  [inline]

Definition at line 521 of file math3d.hpp.

Referenced by adj(), and transpose().

transf3d::transf3d ( const vect3d r1,
const vect3d r2,
const vect3d r3 
) [inline]

Definition at line 523 of file math3d.hpp.

References a, b, c, d, f, g, h, i, vect3d::x, vect3d::y, and vect3d::z.

transf3d::transf3d ( prec_t  f1,
prec_t  f2,
prec_t  f3,
prec_t  f4,
prec_t  f5,
prec_t  f6,
prec_t  f7,
prec_t  f8,
prec_t  f9 
) [inline]

Definition at line 530 of file math3d.hpp.

References a, b, c, d, f, g, h, and i.


Member Function Documentation

void transf3d::print ( const char *  name = 0  )  const

Print transformation matrix into the stdout.

void transf3d::identity (  )  [inline]

Create an identity transformation.

Definition at line 541 of file math3d.hpp.

References a, b, c, d, f, g, h, and i.

void transf3d::reflect ( const vect3d n  )  [inline]

Create a reflection transformation based on a plane vector.

Definition at line 548 of file math3d.hpp.

References a, b, c, d, f, g, h, i, vect3d::x, vect3d::y, and vect3d::z.

vect3d transf3d::transform ( const vect3d v  )  const [inline]

Transform the given vector.

Definition at line 556 of file math3d.hpp.

References a, b, c, d, f, g, h, i, vect3d::x, vect3d::y, and vect3d::z.

prec_t transf3d::det (  )  const [inline]

Calculate the determinant of this matrix.

Definition at line 564 of file math3d.hpp.

References a, b, c, d, f, g, h, and i.

Referenced by inverse().

transf3d transf3d::transpose (  )  const [inline]

Transpose of the matrix.

Definition at line 571 of file math3d.hpp.

References a, b, c, d, f, g, h, i, and transf3d().

transf3d transf3d::adj (  )  const [inline]

Adjugate of the matrix.

Definition at line 580 of file math3d.hpp.

References a, b, c, d, f, g, h, i, and transf3d().

Referenced by inverse().

transf3d transf3d::inverse (  )  const [inline]

Definition at line 589 of file math3d.hpp.

References adj(), and det().


Friends And Related Function Documentation

transf3d operator/ ( const transf3d t,
prec_t  f 
) [friend]

Definition at line 594 of file math3d.hpp.

transf3d operator * ( const transf3d t,
prec_t  f 
) [friend]

Definition at line 602 of file math3d.hpp.

transf3d operator * ( prec_t  f,
const transf3d t 
) [friend]

Definition at line 610 of file math3d.hpp.

vect3d operator * ( const transf3d t,
const vect3d v 
) [friend]

Definition at line 618 of file math3d.hpp.

transf3d operator * ( const transf3d l,
const transf3d  r 
) [friend]

Definition at line 623 of file math3d.hpp.


Member Data Documentation

prec_t transf3d::a

Definition at line 517 of file math3d.hpp.

Referenced by adj(), det(), identity(), reflect(), transf3d(), transform(), and transpose().

prec_t transf3d::b

Definition at line 517 of file math3d.hpp.

Referenced by adj(), det(), identity(), reflect(), transf3d(), transform(), and transpose().

prec_t transf3d::c

Definition at line 517 of file math3d.hpp.

Referenced by adj(), det(), identity(), reflect(), transf3d(), transform(), and transpose().

prec_t transf3d::d

Definition at line 518 of file math3d.hpp.

Referenced by adj(), det(), identity(), reflect(), transf3d(), transform(), and transpose().

prec_t transf3d::e

Definition at line 518 of file math3d.hpp.

prec_t transf3d::f

Definition at line 518 of file math3d.hpp.

Referenced by adj(), det(), identity(), reflect(), transf3d(), transform(), and transpose().

prec_t transf3d::g

Definition at line 519 of file math3d.hpp.

Referenced by adj(), det(), identity(), reflect(), transf3d(), transform(), and transpose().

prec_t transf3d::h

Definition at line 519 of file math3d.hpp.

Referenced by adj(), det(), identity(), reflect(), transf3d(), transform(), and transpose().

prec_t transf3d::i

Definition at line 519 of file math3d.hpp.

Referenced by adj(), det(), identity(), reflect(), transf3d(), transform(), and transpose().


The documentation for this struct was generated from the following file:
Generated on Thu Dec 6 20:31:17 2007 for Ephi by  doxygen 1.5.0