#include <DoubleMatrix.h>
Public Member Functions | |
Matrix4x4 () | |
Matrix4x4 (const Matrix4x4 &o) | |
Matrix4x4 (const Matrix< double > &o) | |
DoubleMatrix | operator* (const DoubleMatrix &m) const |
Point | operator* (const Point &p) const |
Segment | operator* (const Segment &s) const |
void | rotation (AxisType ax, const Angle &angle) |
Matrix3x3 | rotationOnly () const |
QGpCoreTools::Matrix4x4::Matrix4x4 | ( | ) | [inline] |
: DoubleMatrix(4, 4) {}
QGpCoreTools::Matrix4x4::Matrix4x4 | ( | const Matrix4x4 & | o | ) | [inline] |
: DoubleMatrix(static_cast<const DoubleMatrix&>(o)) {}
QGpCoreTools::Matrix4x4::Matrix4x4 | ( | const Matrix< double > & | o | ) | [inline] |
References QGpCoreTools::Matrix< T >::columnCount(), and QGpCoreTools::Matrix< T >::rowCount().
: DoubleMatrix(static_cast<const DoubleMatrix&>(o)) {ASSERT(o.columnCount()==4 && o.rowCount()==4);}
DoubleMatrix QGpCoreTools::Matrix4x4::operator* | ( | const DoubleMatrix & | m | ) | const [inline] |
References QGpCoreTools::operator*().
{return DoubleMatrix::operator*(m);}
References QGpCoreTools::Segment::point().
{
Point p1=(*this)*s.point(0);
Point p2=(*this)*s.point(1);
return Segment(p1, p2);
}
void QGpCoreTools::Matrix4x4::rotation | ( | AxisType | ax, |
const Angle & | angle | ||
) | [inline] |
Sets matrix as a rotation matrix. The angle is counted using the right hand convention. Angle is in radians.
Reimplemented from QGpCoreTools::DoubleMatrix.
References QGpCoreTools::Matrix< double >::identity().
{ identity(); DoubleMatrix::rotation(ax, angle); }
Returns the upper left submatrix corresponding to the rotation part.
References QGpCoreTools::Matrix< double >::data(), QGpCoreTools::Matrix< T >::data(), and TRACE.