#include <gmtl/Point.h>#include <gmtl/Vec.h>#include <gmtl/Matrix.h>#include <gmtl/MatrixOps.h>#include <gmtl/Quat.h>#include <gmtl/QuatOps.h>#include <gmtl/Ray.h>#include <gmtl/LineSeg.h>#include <gmtl/Util/StaticAssert.h>

Go to the source code of this file.
Namespaces | |
| namespace | gmtl |
Meta programming classes. | |
Functions | |
| template<typename DATA_TYPE , unsigned ROWS, unsigned COLS> | |
| Ray< DATA_TYPE > & | gmtl::xform (Ray< DATA_TYPE > &result, const Matrix< DATA_TYPE, ROWS, COLS > &matrix, const Ray< DATA_TYPE > &ray) |
| transform ray by a matrix. | |
| template<typename DATA_TYPE , unsigned ROWS, unsigned COLS> | |
| Ray< DATA_TYPE > | gmtl::operator* (const Matrix< DATA_TYPE, ROWS, COLS > &matrix, const Ray< DATA_TYPE > &ray) |
| ray * a matrix multiplication of [m x k] matrix by a ray. | |
| template<typename DATA_TYPE , unsigned ROWS, unsigned COLS> | |
| Ray< DATA_TYPE > & | gmtl::operator*= (Ray< DATA_TYPE > &ray, const Matrix< DATA_TYPE, ROWS, COLS > &matrix) |
| ray *= a matrix multiplication of [m x k] matrix by a ray. | |
| template<typename DATA_TYPE , unsigned ROWS, unsigned COLS> | |
| LineSeg< DATA_TYPE > & | gmtl::xform (LineSeg< DATA_TYPE > &result, const Matrix< DATA_TYPE, ROWS, COLS > &matrix, const LineSeg< DATA_TYPE > &seg) |
| transform seg by a matrix. | |
| template<typename DATA_TYPE , unsigned ROWS, unsigned COLS> | |
| LineSeg< DATA_TYPE > | gmtl::operator* (const Matrix< DATA_TYPE, ROWS, COLS > &matrix, const LineSeg< DATA_TYPE > &seg) |
| seg * a matrix multiplication of [m x k] matrix by a seg. | |
| template<typename DATA_TYPE , unsigned ROWS, unsigned COLS> | |
| LineSeg< DATA_TYPE > & | gmtl::operator*= (LineSeg< DATA_TYPE > &seg, const Matrix< DATA_TYPE, ROWS, COLS > &matrix) |
| seg *= a matrix multiplication of [m x k] matrix by a seg. | |
Vector Transform (Quaternion) | |
| template<typename DATA_TYPE > | |
| VecBase< DATA_TYPE, 3 > & | gmtl::xform (VecBase< DATA_TYPE, 3 > &result, const Quat< DATA_TYPE > &rot, const VecBase< DATA_TYPE, 3 > &vector) |
| transform a vector by a rotation quaternion. | |
| template<typename DATA_TYPE > | |
| VecBase< DATA_TYPE, 3 > | gmtl::operator* (const Quat< DATA_TYPE > &rot, const VecBase< DATA_TYPE, 3 > &vector) |
| transform a vector by a rotation quaternion. | |
| template<typename DATA_TYPE > | |
| VecBase< DATA_TYPE, 3 > | gmtl::operator*= (VecBase< DATA_TYPE, 3 > &vector, const Quat< DATA_TYPE > &rot) |
| transform a vector by a rotation quaternion. | |
Vector Transform (Matrix) | |
| template<typename DATA_TYPE , unsigned ROWS, unsigned COLS> | |
| Vec< DATA_TYPE, COLS > & | gmtl::xform (Vec< DATA_TYPE, COLS > &result, const Matrix< DATA_TYPE, ROWS, COLS > &matrix, const Vec< DATA_TYPE, COLS > &vector) |
| xform a vector by a matrix. | |
| template<typename DATA_TYPE , unsigned ROWS, unsigned COLS> | |
| Vec< DATA_TYPE, COLS > | gmtl::operator* (const Matrix< DATA_TYPE, ROWS, COLS > &matrix, const Vec< DATA_TYPE, COLS > &vector) |
| matrix * vector xform. | |
| template<typename DATA_TYPE , unsigned ROWS, unsigned COLS, unsigned VEC_SIZE> | |
| Vec< DATA_TYPE, VEC_SIZE > & | gmtl::xform (Vec< DATA_TYPE, VEC_SIZE > &result, const Matrix< DATA_TYPE, ROWS, COLS > &matrix, const Vec< DATA_TYPE, VEC_SIZE > &vector) |
| partially transform a partially specified vector by a matrix, assumes last elt of vector is 0 (the 0 makes it only partially transformed). | |
| template<typename DATA_TYPE , unsigned ROWS, unsigned COLS, unsigned COLS_MINUS_ONE> | |
| Vec< DATA_TYPE, COLS_MINUS_ONE > | gmtl::operator* (const Matrix< DATA_TYPE, ROWS, COLS > &matrix, const Vec< DATA_TYPE, COLS_MINUS_ONE > &vector) |
| matrix * partial vector, assumes last elt of vector is 0 (partial transform). | |
Point Transform (Matrix) | |
| template<typename DATA_TYPE , unsigned ROWS, unsigned COLS> | |
| Point< DATA_TYPE, COLS > & | gmtl::xform (Point< DATA_TYPE, COLS > &result, const Matrix< DATA_TYPE, ROWS, COLS > &matrix, const Point< DATA_TYPE, COLS > &point) |
| transform point by a matrix. | |
| template<typename DATA_TYPE , unsigned ROWS, unsigned COLS> | |
| Point< DATA_TYPE, COLS > | gmtl::operator* (const Matrix< DATA_TYPE, ROWS, COLS > &matrix, const Point< DATA_TYPE, COLS > &point) |
| matrix * point. | |
| template<typename DATA_TYPE , unsigned ROWS, unsigned COLS, unsigned PNT_SIZE> | |
| Point< DATA_TYPE, PNT_SIZE > & | gmtl::xform (Point< DATA_TYPE, PNT_SIZE > &result, const Matrix< DATA_TYPE, ROWS, COLS > &matrix, const Point< DATA_TYPE, PNT_SIZE > &point) |
| transform a partially specified point by a matrix, assumes last elt of point is 1. | |
| template<typename DATA_TYPE , unsigned ROWS, unsigned COLS, unsigned COLS_MINUS_ONE> | |
| Point< DATA_TYPE, COLS_MINUS_ONE > | gmtl::operator* (const Matrix< DATA_TYPE, ROWS, COLS > &matrix, const Point< DATA_TYPE, COLS_MINUS_ONE > &point) |
| matrix * partially specified point. | |
| template<typename DATA_TYPE , unsigned ROWS, unsigned COLS> | |
| Point< DATA_TYPE, COLS > | gmtl::operator* (const Point< DATA_TYPE, COLS > &point, const Matrix< DATA_TYPE, ROWS, COLS > &matrix) |
| point * a matrix multiplication of [m x k] matrix by a [k x 1] matrix (also known as a Point [with w == 1 for points by definition] ). | |
| template<typename DATA_TYPE , unsigned ROWS, unsigned COLS> | |
| Point< DATA_TYPE, COLS > | gmtl::operator*= (Point< DATA_TYPE, COLS > &point, const Matrix< DATA_TYPE, ROWS, COLS > &matrix) |
| point *= a matrix multiplication of [m x k] matrix by a [k x 1] matrix (also known as a Point [with w == 1 for points by definition] ). | |
| template<typename DATA_TYPE , unsigned ROWS, unsigned COLS, unsigned COLS_MINUS_ONE> | |
| Point< DATA_TYPE, COLS_MINUS_ONE > & | gmtl::operator*= (Point< DATA_TYPE, COLS_MINUS_ONE > &point, const Matrix< DATA_TYPE, ROWS, COLS > &matrix) |
| partial point *= a matrix multiplication of [m x k] matrix by a [k-1 x 1] matrix (also known as a Point [with w == 1 for points by definition] ). | |
1.7.1