transform Class Reference

#include <transform.hpp>

Inheritance diagram for transform:

Inheritance graph
[legend]
Collaboration diagram for transform:

Collaboration graph
[legend]

List of all members.


Detailed Description

A 4x4 matrix used in 3d coordinate system transformations.

Definition at line 51 of file transform.hpp.


Public Member Functions

void from_stream (io::text_stream &s)
vector get_basis_x () const
vector get_basis_y () const
vector get_basis_z () const
transform inverse () const
T & item (int i, int j)
const T & item (int i, int j) const
transform operator* (const transform &t) const
vector operator* (const vector &v) const
transformoperator= (const quaternion &)
transformoperator= (const matrix< 4, 4, gsgl::real_t > &)
transformoperator= (const transform &)
bool operator== (const matrix< R, C, T > &m) const
gsgl::real_toperator[] (const gsgl::index_t &i)
const gsgl::real_toperator[] (const gsgl::index_t &i) const
T * ptr ()
const T * ptr () const
 Returns an array containing the matrix's data, in column-major order.
transform rotation_part () const
void set_basis_x (const vector &)
void set_basis_x (const gsgl::real_t &x, const gsgl::real_t &y, const gsgl::real_t &z)
void set_basis_y (const vector &)
void set_basis_y (const gsgl::real_t &x, const gsgl::real_t &y, const gsgl::real_t &z)
void set_basis_z (const vector &)
void set_basis_z (const gsgl::real_t &x, const gsgl::real_t &y, const gsgl::real_t &z)
void to_stream (io::text_stream &s) const
 transform (const matrix< 4, 4, gsgl::real_t > &)
 transform (const transform &)
 transform (const quaternion &)
 transform (const gsgl::real_t *)
 transform ()
vector translation_part () const
transform transpose () const
virtual ~transform ()

Static Public Member Functions

static transform parse (const gsgl::string &)
static transform scale (const gsgl::real_t &, const gsgl::real_t &, const gsgl::real_t &)
static transform scale (const gsgl::real_t &s)
static transform translation_transform (const vector &)

Static Public Attributes

static transform IDENTITY

Protected Attributes

data [R *C]

Constructor & Destructor Documentation

transform (  ) 

Definition at line 48 of file transform.cpp.

transform ( const gsgl::real_t data  )  [explicit]

Definition at line 54 of file transform.cpp.

transform ( const quaternion q  )  [explicit]

Definition at line 66 of file transform.cpp.

transform ( const transform t  ) 

Definition at line 60 of file transform.cpp.

transform ( const matrix< 4, 4, gsgl::real_t > &  m  ) 

Definition at line 72 of file transform.cpp.

~transform (  )  [virtual]

Definition at line 118 of file transform.cpp.


Member Function Documentation

void from_stream ( io::text_stream s  )  [inline, inherited]

Definition at line 145 of file matrix.hpp.

References matrix::item().

vector get_basis_x (  )  const

Definition at line 156 of file transform.cpp.

References matrix::data.

vector get_basis_y (  )  const

Definition at line 162 of file transform.cpp.

References matrix::data.

vector get_basis_z (  )  const

Definition at line 168 of file transform.cpp.

References matrix::data.

transform inverse (  )  const

Definition at line 312 of file transform.cpp.

References matrix::data.

Referenced by rigid_body::init(), and spherical_quadtree::update().

T& item ( int  i,
int  j 
) [inline, inherited]

Definition at line 67 of file matrix.hpp.

const T& item ( int  i,
int  j 
) const [inline, inherited]

transform operator* ( const transform t  )  const [inline]

Definition at line 101 of file transform.hpp.

vector operator* ( const vector v  )  const [inline]

Definition at line 93 of file transform.hpp.

References vector::normalize_h().

transform & operator= ( const quaternion q  ) 

Definition at line 92 of file transform.cpp.

References matrix::data, quaternion::w, quaternion::x, quaternion::y, and quaternion::z.

transform & operator= ( const matrix< 4, 4, gsgl::real_t > &  m  ) 

Definition at line 85 of file transform.cpp.

References matrix::data, and matrix::ptr().

transform & operator= ( const transform t  ) 

Definition at line 78 of file transform.cpp.

References matrix::data.

bool operator== ( const matrix< R, C, T > &  m  )  const [inline, inherited]

Definition at line 118 of file matrix.hpp.

References matrix::data.

gsgl::real_t& operator[] ( const gsgl::index_t i  )  [inline]

Definition at line 70 of file transform.hpp.

const gsgl::real_t& operator[] ( const gsgl::index_t i  )  const [inline]

Definition at line 69 of file transform.hpp.

transform parse ( const gsgl::string str  )  [static]

Definition at line 356 of file transform.cpp.

References iterable::iter(), gsgl::math::units::parse(), and string::split().

T* ptr (  )  [inline, inherited]

Definition at line 71 of file matrix.hpp.

const T* ptr (  )  const [inline, inherited]

transform rotation_part (  )  const

Definition at line 131 of file transform.cpp.

References matrix::data, and transform::IDENTITY.

Referenced by gsgl::scenegraph::utils::draw_billboard().

transform scale ( const gsgl::real_t x,
const gsgl::real_t y,
const gsgl::real_t z 
) [static]

Definition at line 346 of file transform.cpp.

References matrix::data, and transform::IDENTITY.

transform scale ( const gsgl::real_t s  )  [static]

Definition at line 340 of file transform.cpp.

void set_basis_x ( const vector v  ) 

void set_basis_x ( const gsgl::real_t x,
const gsgl::real_t y,
const gsgl::real_t z 
)

Definition at line 174 of file transform.cpp.

References matrix::data.

Referenced by camera::camera(), and transform::set_basis_x().

void set_basis_y ( const vector v  ) 

void set_basis_y ( const gsgl::real_t x,
const gsgl::real_t y,
const gsgl::real_t z 
)

Definition at line 187 of file transform.cpp.

References matrix::data.

Referenced by camera::camera(), and transform::set_basis_y().

void set_basis_z ( const vector v  ) 

void set_basis_z ( const gsgl::real_t x,
const gsgl::real_t y,
const gsgl::real_t z 
)

Definition at line 200 of file transform.cpp.

References matrix::data.

Referenced by camera::camera(), and transform::set_basis_z().

void to_stream ( io::text_stream s  )  const [inline, inherited]

Definition at line 130 of file matrix.hpp.

References matrix::item().

vector translation_part (  )  const

Definition at line 125 of file transform.cpp.

References matrix::data.

transform translation_transform ( const vector v  )  [static]

transform transpose (  )  const


Member Data Documentation

T data[R *C] [protected, inherited]

transform IDENTITY [static]


The documentation for this class was generated from the following files:

Generated on Sat Mar 1 13:50:06 2008 for Periapsis Project by  doxygen 1.5.5