(PECL cairo >= 0.1.0)
CairoContext::arcNegative -- cairo_arc_negative — Adds a negative arc
オブジェクト指向型 (method):
$x
, float $y
, float $radius
, float $angle1
, float $angle2
)手続き型:
$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.
contextA valid CairoContext object
xdouble x position
ydouble y position
radiusThe radius of the desired negative arc
angle1Start angle of the arc
angle2End angle of the arc
値を返しません。
例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');
?>
例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');
?>