imagefilledarc

(PHP 4 >= 4.0.6, PHP 5, PHP 7)

imagefilledarcDibujar un arco parcial y rellenarlo

Descripción

imagefilledarc ( resource $image , int $cx , int $cy , int $width , int $height , int $start , int $end , int $color , int $style ) : bool

Dibuja un arco parcial con centro en las coordenadas especificadas en image.

Parámetros

image

Un recurso image, es devuelto por una de las funciones de creación de imágenes, como imagecreatetruecolor().

cx

Coordenada x del centro.

cy

Coordenada y del centro

width

El ancho del arco.

height

El alto del arco.

start

El ángulo de inicio del arco, en grados.

end

El ángulo de finalización del arco, en grados. 0º esta localizado en la posición que marca la aguja horaria a las tres en punto, y el arco se dibuja en el sentido de las agujas del reloj.

color

Un identificador de color creado con imagecolorallocate().

style

Un OR a nivel de bit de las siguientes posibilidades:

  1. IMG_ARC_PIE
  2. IMG_ARC_CHORD
  3. IMG_ARC_NOFILL
  4. IMG_ARC_EDGED
IMG_ARC_PIE y IMG_ARC_CHORD son mútuamente exclusivos; IMG_ARC_CHORD conecta los ángulos de inicio y de finalización con una línea recta, mientras que IMG_ARC_PIE produce un borde redondeado. IMG_ARC_NOFILL indica que el arco o cuerda deberían estar perfilados, no rellenados. IMG_ARC_EDGED, usado junto con IMG_ARC_NOFILL, indica que los ángulos de inicio y finalización deberían estar conectados con el centro - esta es una buena manera de perfilar (en vez de rellenar) un 'trozo de tarta'.

Valores devueltos

Devuelve TRUE en caso de éxito o FALSE en caso de error.

Ejemplos

Ejemplo #1 Crear una gráfico de tarta en 3D

<?php

// crear imagen
$imagen imagecreatetruecolor(100100);

// asignar algunos colores
$blanco      imagecolorallocate($imagen0xFF0xFF0xFF);
$gris        imagecolorallocate($imagen0xC00xC00xC0);
$gris_oscuro imagecolorallocate($imagen0x900x900x90);
$azul_marino imagecolorallocate($imagen0x000x000x80);
$azul_marino_oscuro imagecolorallocate($imagen0x000x000x50);
$rojo        imagecolorallocate($imagen0xFF0x000x00);
$rojo_oscuro imagecolorallocate($imagen0x900x000x00);

// hacer el efecto 3D
for ($i 60$i 50$i--) {
   
imagefilledarc($imagen50$i10050045$azul_marino_oscuroIMG_ARC_PIE);
   
imagefilledarc($imagen50$i100504575 $gris_oscuroIMG_ARC_PIE);
   
imagefilledarc($imagen50$i1005075360 $rojo_oscuroIMG_ARC_PIE);
}

imagefilledarc($imagen505010050045$azul_marinoIMG_ARC_PIE);
imagefilledarc($imagen5050100504575 $grisIMG_ARC_PIE);
imagefilledarc($imagen50501005075360 $rojoIMG_ARC_PIE);


// volcar imagen
header('Content-type: image/png');
imagepng($imagen);
imagedestroy($imagen);
?>

El resultado del ejemplo sería algo similar a:

Salida del ejemplo : Crear un gráfico de tarta en 3D