ProgramacionWeb - Ayuda al webmaster
Cursos Cuestionarios Curso de PHP Capítulo
 
13 votos
Dibuix d'arcs i el·lipses amb GD
 
 
Una el·lipse és una secció cònica, una espècie d'ou, i un cas particular d'el·lipse és el cercle, d'altra banda, un arc és una corba entre dos punts (el·lipse no completa)

El dibuix d'el·lipses i arcs amb GD, és molt semblant al dibuix de rectangles, tret que en lloc d'indicar les cantonades del rectangle, hem d'indicar el centre, l'altura, l'ample i en el cas dels arcs, l'angle inicial i final.

ArribaTabla de contenido

ArribaDibuix d'el·lipses i cercles

Usant la funció imageellipse o imagefilledellipse (per omplir-la de color), podem generar una el·lipse de la següent manera:
 
000 
imageellipse ($im, $cx, $cy, $an, $al, $col);
 
On cada variable passada a la funció significa:
$im - És l'identificador de la imatge que hem creat com s'explica en aquest article
$cx - Coordenada horitzontal del centre de l'el·lipse
$cy - Coordenada vertical del centre de l'el·lipse
$an - Ample de l'el·lipse
$al - Altura de l'el·lipse
$col - És el color de la línia com s'explica també en aquest article
Anem a veure un exemple de com generar un cas particular d'el·lipse, un cercle de 100 x 100 píxels (centrat en 50,50):
 
000 
001 
002 
003 
004 
005 
006 
007 
008 
009 
010 
011 
012 
<?php
$im 
= @imagecreate(101101)
or die(
"Error creant la imatge");
$fons imagecolorallocate($im255255255)// blanc
$línia imagecolorallocate($im000)// negre
 
// Dibuixem l'el·lipse
imageellipse($im5050100100$línia);
 
header("Content-type: image/png");
imagepng($im);
imagedestroy($im);
?>
 
I aquest serà el resultat (que seria omplert de color negre d'haver usat imagefilledellipse):

ArribaDibuix de arcs

Per dibuixar un arc, usarem la funció imagearc o imagefilledarc, que té la mateixa sintaxi que la funció anterior llevat que afegeix l'angle inicial i el final:
 
000 
imageellipse ($im, $cx, $cy, $an, $al, $in, $fi, $col);
 
On cada variable passada a la funció significa:
$im - És l'identificador de la imatge que hem creat com s'explica en aquest article
$cx - Coordenada horitzontal del centre de l'arc
$cy - Coordenada vertical del centre de l'arc
$an - Ample de l'arc
$al - Altura de l'arc
$in - Angle inicial de l'arc
$fi - Angle final de l'arc
$col - És el color de la línia (o farcit) com s'explica també en aquest artículo
Anem a veure un exemple de com generar un arc:
 
000 
001 
002 
003 
004 
005 
006 
007 
008 
009 
010 
011 
012 
<?php
$im 
= @imagecreate(101101)
or die(
"Error creant la imatge");
$fons imagecolorallocate($im255255255)// blanc
$línia imagecolorallocate($im000)// negre
 
// Dibuixem l'arc
imagearc($im505010010090180$línia);
 
header("Content-type: image/png");
imagepng($im);
imagedestroy($im);
?>
 
I aquest serà el resultat (que seria omplert de color negre d'haver usat imagefilledarc):
 
Anterior y siguiente
Dibuix de recta...
 
Comentarios
26/05/11 Reforzé Mis Conocimientos
Considero que todo lo presentado hasta este punto, es una base solida en PHP y lo demas lo ire aprendiendo practicando y practicando..., gracias por el aporte.
 
Resolver dudas
Si tienes problemas o dudas con el contenido del artículo no dudes a preguntar en los foros de PHP de Programación Web indicando el artículo al que te refieres.

 
Autor:
 eloi
 
Traduccions
 
En las Redes Sociales

Programación Webon