(PHP 4 >= 4.0.6, PHP 5, PHP 7)
imagefilledarc — Dessine un arc partiel et le remplit
$image
, int $cx
, int $cy
, int $width
, int $height
, int $start
, int $end
, int $color
, int $style
)Dessine un arc partiel, centré aux coordonnées spécifiées dans l'image fournie.
image
Une ressource d'image, retournée par une des fonctions de création d'images, comme imagecreatetruecolor().
cx
X : coordonnée du centre.
cy
Y : coordonnée du centre.
width
La largeur de l'arc.
height
La hauteur de l'arc.
start
L'angle de début de l'arc, en degrés.
end
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 identifiant de couleur, créé par la fonction imagecolorallocate().
style
Un champ d'octets, combiné avec l'opérateur OR :
IMG_ARC_PIE
IMG_ARC_CHORD
IMG_ARC_NOFILL
IMG_ARC_EDGED
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.
Cette fonction retourne TRUE
en cas de
succès ou FALSE
si une erreur survient.
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);
?>
L'exemple ci-dessus va afficher quelque chose de similaire à :