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 identity matrix.
Referenced by ipe::Linear::inverse().
|
inline |
Create linear matrix.
References ipe::Linear::a.
References ipe::Linear::a, ipe::Vector::x, and ipe::Vector::y.
|
inlineexplicit |
Create matrix with given coefficients.
|
inlineexplicit |
Create translation matrix.
References ipe::Vector::x, and ipe::Vector::y.
|
explicit |
Parse string.
Matrix Matrix::inverse | ( | ) | const |
Return inverse.
References a.
Referenced by ipe::Arc::Arc(), ipe::Path::clone(), and ipe::Arc::distance().
|
inline |
Return translation component.
Referenced by ipe::Text::checkStyle(), ipe::CairoPainter::doDrawText(), ipe::Path::draw(), and ipe::Painter::untransform().
|
inline |
Return linear transformation component of this affine transformation.
Referenced by ipe::Path::clone(), ipe::Path::draw(), ipe::Arc::intersect(), and ipe::Snap::setEdge().
|
inline |
Return determinant of the matrix.
Referenced by ipe::Shape::load().
|
inline |
Is this the identity matrix?
Referenced by ipe::StyleSheet::saveAsXml(), and ipe::Object::saveAttributesAsXml().
|
inline |
Check for equality of two matrices.
References a.
Transform Bezier spline.
References ipe::Bezier::iV.
Matrix times vector.
References ipe::Vector::x, and ipe::Vector::y.
Transform arc.
References ipe::Arc::Arc(), ipe::Arc::iAlpha, ipe::Arc::iBeta, and ipe::Arc::iM.
double ipe::Matrix::a[6] |