Ipelib
|
#include <ipegeo.h>
Public Member Functions | |
Matrix () | |
Matrix (const Linear &linear) | |
Matrix (const Linear &linear, const Vector &t) | |
Matrix (double m11, double m21, double m12, double m22, double t1, double t2) | |
Matrix (const Vector &v) | |
Matrix (String str) | |
Matrix | inverse () const |
Vector | operator* (const Vector &rhs) const |
Bezier | operator* (const Bezier &rhs) const |
Vector | translation () const |
Linear | linear () const |
double | determinant () const |
bool | isIdentity () const |
bool | operator== (const Matrix &rhs) const |
Public Attributes | |
double | a [6] |
Related Functions | |
(Note that these are not member functions.) | |
Stream & | operator<< (Stream &stream, const Matrix &rhs) |
Bezier | operator* (const Bezier &rhs) const |
Vector | operator* (const Vector &rhs) const |
Matrix | operator* (const Matrix &lhs, const Matrix &rhs) |
Arc | operator* (const Matrix &lhs, const Arc &rhs) |
Homogeneous transformation in the plane.
|
inline |
Create linear matrix.
References ipe::Linear::a, a, and linear().
References ipe::Linear::a, a, linear(), ipe::Vector::x, and ipe::Vector::y.
|
inlineexplicit |
Create matrix with given coefficients.
References a.
|
inlineexplicit |
Create translation matrix.
References a, ipe::Vector::x, and ipe::Vector::y.
Matrix Matrix::inverse | ( | ) | const |
Return inverse.
References a, determinant(), and Matrix().
Referenced by ipe::Arc::Arc(), ipe::Arc::distance(), and ipe::Arc::intersect().
|
inline |
Return translation component.
References a.
Referenced by ipe::CairoPainter::doDrawText(), ipe::Path::draw(), ipe::Object::effectiveMatrix(), and ipe::Painter::untransform().
|
inline |
Return linear transformation component of this affine transformation.
References a.
Referenced by ipe::Arc::bbox(), ipe::Path::draw(), ipe::Arc::intersect(), Matrix(), and ipe::Snap::setEdge().
|
inline |
|
inline |
Is this the identity matrix?
References a.
Referenced by ipe::StyleSheet::saveAsXml(), ipe::Object::saveAttributesAsXml(), and ipe::Page::setLayerMatrix().
|
inline |
Check for equality of two matrices.
References a.
Transform Bezier spline.
References ipe::Bezier::iV.
Matrix times vector.
References a, ipe::Vector::x, and ipe::Vector::y.
Transform arc.
References ipe::Arc::iAlpha, ipe::Arc::iBeta, and ipe::Arc::iM.
double ipe::Matrix::a[6] |