CairoMatrix::__construct
cairo_matrix_init
(PECL cairo >= 0.1.0)
CairoMatrix::__construct -- cairo_matrix_init — Creates a new CairoMatrix object
说明
面向对象风格 (method):
$xx
= 1.0
[, float $yx
= 0.0
[, float $xy
= 0.0
[, float $yy
= 1.0
[, float $x0
= 0.0
[, float $y0
= 0.0
]]]]]] )过程化风格:
$xx
= 1.0
[, float $yx
= 0.0
[, float $xy
= 0.0
[, float $yy
= 1.0
[, float $x0
= 0.0
[, float $y0
= 0.0
]]]]]] ) : objectReturns 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;
参数
-
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
返回值
Returns a new CairoMatrix object that can be used with surfaces, contexts, and patterns.
范例
Example #1 面向对象风格
<?php
/* Create a new Matrix */
$matrix = new CairoMatrix(1.0, 0.5, 0.0, 1.0, 0.0, 0.0);
?>
Example #2 过程化风格
<?php
/* Create a new Matrix */
$matrix = cairo_matrix_init(1.0, 0.5, 0.0, 1.0, 0.0, 0.0);
?>
参见
- CairoMatrix::initIdentity() - Creates a new identity matrix
- CairoMatrix::initRotate() - Creates a new rotated matrix
- CairoMatrix::initScale() - Creates a new scaling matrix
- CairoMatrix::initTranslate() - Creates a new translation matrix