• 首页
  • vue
  • TypeScript
  • JavaScript
  • scss
  • css3
  • html5
  • php
  • MySQL
  • redis
  • jQuery
  • CairoMatrix::__construct()

    (PECL cairo >= 0.1.0)

    Creates a new CairoMatrix object

    说明

    面向对象风格(method):

    publicCairoMatrix::__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]]]]]])

    过程化风格:

    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]]]]]]): object

    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;

    参数

    $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