# ipe::Matrix Class Reference
[Ipe Geometry]

Homogeneous transformation in the plane. More...

`#include <ipegeo.h>`

List of all members.

## 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
- bool isIdentity () const
- bool operator== (const Matrix &rhs) const

## Public Attributes

- double a [6]

## Related Functions

(Note that these are not member functions.)

- Arc operator* (const Matrix &lhs, const Arc &rhs)

## Detailed Description

Homogeneous transformation in the plane.

## Constructor & Destructor Documentation

ipe::Matrix::Matrix | ( |  | ) | `[inline]`

Create identity matrix.

ipe::Matrix::Matrix | ( | const Linear & | linear | ) | `[inline]`

Create linear matrix.

ipe::Matrix::Matrix | ( | const Linear & | linear,
|  | const Vector & | t |
| ) |  |  | `[inline, explicit]`

ipe::Matrix::Matrix | ( | double | m11,
|  | double | m21,
|  | double | m12,
|  | double | m22,
|  | double | t1,
|  | double | t2 |
| ) |  |  | `[inline, explicit]`

Create matrix with given coefficients.

ipe::Matrix::Matrix | ( | const Vector & | v | ) | `[inline, explicit]`

Create translation matrix.

Matrix::Matrix | ( | String | str | ) | `[explicit]`

Parse string.

## Member Function Documentation

Matrix Matrix::inverse | ( |  | ) | const

Return inverse.

Vector ipe::Matrix::operator* | ( | const Vector & | rhs | ) | const`[inline]`

Bezier operator* | ( | const Bezier & | rhs | ) | const`[inline]`

Transform Bezier spline.

Vector ipe::Matrix::translation | ( |  | ) | const`[inline]`

Return translation component.

Linear ipe::Matrix::linear | ( |  | ) | const`[inline]`

Return linear transformation component of this affine transformation.

bool ipe::Matrix::isIdentity | ( |  | ) | const`[inline]`

Is this the identity matrix?

bool ipe::Matrix::operator== | ( | const Matrix & | rhs | ) | const`[inline]`

Check for equality of two matrices.

## Friends And Related Function Documentation

Arc operator* | ( | const Matrix & | lhs,
|  | const Arc & | rhs |
| ) |  |  | `[related]`

Transform arc.

## Member Data Documentation

double ipe::Matrix::a[6]

The documentation for this class was generated from the following files:

- ipegeo.h
- ipegeo.cpp