(PECL cairo >= 0.1.0)
CairoContext::arcNegative -- cairo_arc_negative — Adds a negative arc
Styl obiektowy (method):
$x
, float $y
, float $radius
, float $angle1
, float $angle2
)Styl proceduralny:
$context
, float $x
, float $y
, float $radius
, float $angle1
, float $angle2
)
Adds a circular arc of the given radius to the current path.
The arc is centered at (x, y), begins at
angle1 and proceeds in the direction of decreasing angles to end at
angle2. If angle2 is greater than
angle1 it 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
Nie jest zwracana żadna wartość.
Przykład #1 Styl obiektowy
<?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');
?>
Przykład #2 Styl proceduralny
<?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');
?>