imagefilledarc
(PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8)
imagefilledarc — Draw a partial arc and fill it
Parameters
image A GdImage object, returned by one of the image creation functions,
such as imagecreatetruecolor() .
center_x
x-coordinate of the center.
center_y
y-coordinate of the center.
width
The arc width.
height
The arc height.
start_angle
The arc start angle, in degrees.
end_angle
The arc end angle, in degrees.
0° is located at the three-o'clock position, and the arc is drawn
clockwise.
color
A color identifier created with imagecolorallocate() .
style
A bitwise OR of the following possibilities:
IMG_ARC_PIE
IMG_ARC_CHORD
IMG_ARC_NOFILL
IMG_ARC_EDGED
IMG_ARC_PIE and IMG_ARC_CHORD are
mutually exclusive; IMG_ARC_CHORD just
connects the starting and ending angles with a straight line, while
IMG_ARC_PIE produces a rounded edge.
IMG_ARC_NOFILL indicates that the arc
or chord should be outlined, not filled. IMG_ARC_EDGED ,
used together with IMG_ARC_NOFILL , indicates that the
beginning and ending angles should be connected to the center - this is a
good way to outline (rather than fill) a 'pie slice'.
Return Values
Always returns true .
Examples
Example #1 Creating a 3D looking pie
<?php
// create image
$image = imagecreatetruecolor ( 100 , 100 );
// allocate some colors
$white = imagecolorallocate ( $image , 0xFF , 0xFF , 0xFF );
$gray = imagecolorallocate ( $image , 0xC0 , 0xC0 , 0xC0 );
$darkgray = imagecolorallocate ( $image , 0x90 , 0x90 , 0x90 );
$navy = imagecolorallocate ( $image , 0x00 , 0x00 , 0x80 );
$darknavy = imagecolorallocate ( $image , 0x00 , 0x00 , 0x50 );
$red = imagecolorallocate ( $image , 0xFF , 0x00 , 0x00 );
$darkred = imagecolorallocate ( $image , 0x90 , 0x00 , 0x00 );
// make the 3D effect
for ( $i = 60 ; $i > 50 ; $i --) {
imagefilledarc ( $image , 50 , $i , 100 , 50 , 0 , 45 , $darknavy , IMG_ARC_PIE );
imagefilledarc ( $image , 50 , $i , 100 , 50 , 45 , 75 , $darkgray , IMG_ARC_PIE );
imagefilledarc ( $image , 50 , $i , 100 , 50 , 75 , 360 , $darkred , IMG_ARC_PIE );
}
imagefilledarc ( $image , 50 , 50 , 100 , 50 , 0 , 45 , $navy , IMG_ARC_PIE );
imagefilledarc ( $image , 50 , 50 , 100 , 50 , 45 , 75 , $gray , IMG_ARC_PIE );
imagefilledarc ( $image , 50 , 50 , 100 , 50 , 75 , 360 , $red , IMG_ARC_PIE );
// flush image
header ( 'Content-type: image/png' );
imagepng ( $image );
?>
The above example will output
something similar to: