search for in the

 Last updated: Fri, 24 Jun 2011

# cairo_matrix_init

(PECL cairo >= 0.1.0)

CairoMatrix::__construct -- cairo_matrix_initCreates a new CairoMatrix object

### Description

Object oriented style (method):

CairoMatrix::__construct ([ float \$xx = 1.0 [, float \$yx = 0.0 [, float \$xy = 0.0 [, float \$yy = 1.0 [, float \$x0 = 0.0 [, float \$y0 = 0.0 ]]]]]] )

Procedural style:

object cairo_matrix_init ([ float \$xx = 1.0 [, float \$yx = 0.0 [, float \$xy = 0.0 [, float \$yy = 1.0 [, float \$x0 = 0.0 [, float \$y0 = 0.0 ]]]]]] )

Returns new CairoMatrix object. Matrices are used throughout cairo to convert between different coordinate spaces. Sets matrix to be the affine transformation given by xx, yx, xy, yy, x0, y0. The transformation is given by: x_new = xx * x + xy * y + x0; and y_new = yx * x + yy * y + y0;

### Parameters

xx

xx component of the affine transformation

yx

yx component of the affine transformation

xy

xy component of the affine transformation

yy

yy component of the affine transformation

x0

X translation component of the affine transformation

y0

Y translation component of the affine transformation

### Return Values

Returns a new CairoMatrix object that can be used with surfaces, contexts, and patterns.

### Examples

Example #1 Object oriented style

``` <?php/* Create a new Matrix */\$matrix = new CairoMatrix(1.0, 0.5, 0.0, 1.0, 0.0, 0.0);?> ```

Example #2 Procedural style

``` <?php/* Create a new Matrix */\$matrix = cairo_matrix_init(1.0, 0.5, 0.0, 1.0, 0.0, 0.0);?> ```