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

    (PECL cairo >= 0.1.0)

    Adds a negative arc

    说明

    面向对象风格(method):

    publicCairoContext::arcNegative(float $x,float $y,float $radius,float $angle1,float $angle2): void

    过程化风格:

    cairo_arc_negative(CairoContext$context,float $x,float $y,float $radius,float $angle1,float $angle2): void

    Adds a circular arc of the given$radiusto the current path. The arc is centered at($x,$y), begins at$angle1and proceeds in the direction of decreasing angles to end at$angle2. If$angle2is greater than$angle1it will be progressively decreased by 2*M_PI until it is less than$angle1. See CairoContext::arc() or cairo_arc() for more details. This function differs only in the direction of the arc between the two angles.

    参数

    $context

    A valid CairoContext object

    $x

    double x position

    $y

    double y position

    $radius

    The radius of the desired negative arc

    $angle1

    Start angle of the arc

    $angle2

    End angle of the arc

    返回值

    没有返回值。

    范例

    Example #1 面向对象风格

    <?php
    $s = new CairoImageSurface(CairoFormat::ARGB32, 100, 100);
    $c = new CairoContext($s);
    $c->setSourceRgb(0, 0, 0);
    $c->paint();
    $c->setLineWidth(1);
    $c->setSourceRgb(1, 1, 1);
    for ($r = 50; $r > 0; $r -= 10) {
     $c->arcNegative(50, 50, $r, 2 * M_PI, 0);
     $c->stroke();
     $c->fill();
    }
    $s->writeToPng(dirname(__FILE__) . '/CairoContext__arcNegative.png');
    ?>
    

    Example #2 过程化风格

    <?php
    $s = cairo_image_surface_create(CAIRO_SURFACE_TYPE_IMAGE, 100, 100);
    $c = cairo_create($s);
    cairo_set_source_rgb($c, 0, 0, 0);
    cairo_paint($c);
    cairo_set_source_rgb($c, 1, 1, 1);
    cairo_set_line_width($c, 1);
    for ($r = 50; $r > 0; $r -= 10) {
     cairo_arc_negative($c, 50, 50, $r, 2 * M_PI, 0);
     cairo_stroke($c);
     cairo_fill($c);
    }
    cairo_surface_write_to_png($s, dirname(__FILE__) . '/cairo_arc_negative.png');
    ?>
    

    参见

    • CairoContext::arc() Adds a circular arc