(PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8)
imagefilledarc — Dessine un arc partiel et le remplit
$image
,$center_x
,$center_y
,$width
,$height
,$start_angle
,$end_angle
,$color
,$style
Dessine un arc partiel, centré aux coordonnées spécifiées dans l'image fournie.
image
Un objet GdImage, retournée par une des fonctions de création d'images, comme imagecreatetruecolor().
center_x
X : coordonnée du centre.
center_y
Y : coordonnée du centre.
width
La largeur de l'arc.
height
La hauteur de l'arc.
start_angle
L'angle de début de l'arc, en degrés.
end_angle
L'angle de fin de l'arc, en degrés. 0° est situé à une position de 3 heures sur un cadran horaire, et l'arc est dessiné dans le sens des aiguilles d'une montre.
color
Un identificateur de couleur créé avec imagecolorallocate().
style
Un champ d'octets, combiné avec l'opérateur OR :
IMG_ARC_PIE
et IMG_ARC_CHORD
sont mutuellement exclusives; IMG_ARC_CHORD
ne fait que connecter les angles de début et de fin avec une ligne droite, tandis que IMG_ARC_PIE
produit une ligne courbe. IMG_ARC_NOFILL
indique que l'arc (ou corde) doit être dessiné mais pas rempli. IMG_ARC_EDGED
, utilisé conjointement avec IMG_ARC_NOFILL
, indique que les angles de début et de fin doivent être connectés au centre. Cette fonction est recommandée pour faire les graphiques de type camembert. Version | Description |
---|---|
8.0.0 | image attend une instance de GdImage désormais; auparavant, une resourcegd était attendue. |
Exemple #1 Création d'un camembert en 3D
<?php
// Création de l'image
$image = imagecreatetruecolor(100, 100);
// Allocation de quelques couleurs
$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);
// Création de l'effet 3D
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);
// Affichage de l'image
header('Content-type: image/png');
imagepng($image);
imagedestroy($image);
?>
Résultat de l'exemple ci-dessus est similaire à :