# 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.)

- Stream & operator<< (Stream &stream, const Matrix &rhs)
- Matrix operator* (const Matrix &lhs, const Matrix &rhs)
- 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

Stream & operator<< | ( | Stream & | stream,
|  | const Matrix & | rhs
| ) |  | `[related]`

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

Matrix multiplication.

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