Files Class List
SpatialMatrix6< T > Class Template Reference

Detailed Description

template<typename T>
class cy::SpatialMatrix6< T >

6D spatial matrix.

This is the general class for 6D spatial matrices. For representing coordinate transformation matrices use SpatialTrans6 instead, since it is more efficient. However, SpatialTrans6 cannot be used for general matrix operations that do not correspond to a coordinate transformation.

#include <cySpatial.h>

Public Member Functions

Constructors
 SpatialMatrix6 () CY_CLASS_FUNCTION_DEFAULT SpatialMatrix6(SpatialMatrix6 const &mat)
 
 SpatialMatrix6 (Matrix3< T > const &_R, Vec3< T > const &_r)
 
 SpatialMatrix6 (Matrix3< T > const &m11, Matrix3< T > const &m21, Matrix3< T > const &m12, Matrix3< T > const &m22)
 
 SpatialMatrix6 (SpatialTrans6< T > const &tm)
 
Initialization methods
void Set (Matrix3< T > const &_R, Vec3< T > const &_r)
 Sets the matrix as the outer product of two vectors.
 
void Set (Matrix3< T > const &m11, Matrix3< T > const &m21, Matrix3< T > const &m12, Matrix3< T > const &m22)
 Sets the matrix as the outer product of two vectors.
 
void Set (SpatialTrans6< T > const &tm)
 Sets the matrix as the outer product of two vectors.
 
void SetTensorProduct (SpatialVector6< T > const &p1, SpatialVector6< T > const &p2)
 Sets the matrix as the outer product of two vectors.
 
void SetIdentity ()
 Sets the matrix as the outer product of two vectors.
 
void Zero ()
 Sets the matrix as the outer product of two vectors.
 
Unary operators
SpatialMatrix6 operator- () const
 
SpatialVector6< T > operator* (SpatialVector6< T > const &p) const
 
SpatialMatrix6 operator* (SpatialMatrix6 const &mat) const
 
SpatialMatrix6 operator+ (SpatialMatrix6 const &mat) const
 
SpatialMatrix6 operator- (SpatialMatrix6 const &mat) const
 
SpatialMatrix6 operator* (T t) const
 
SpatialMatrix6 operator/ (T t) const
 

Public Attributes

Matrix3< T > m [4]
 Matrix data in column major order.
 

Assignment operators

void operator*= (SpatialMatrix6 const &mat)
 
void operator+= (SpatialMatrix6 const &mat)
 
void operator-= (SpatialMatrix6 const &mat)
 
void operator*= (T t)
 
void SetMatrix (Matrix3< T > &m, Vec3< T > const &p1, Vec3< T > const &p2)