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 contenidoArribaDibuix d'el·lipses i cerclesUsant 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(101, 101) or die("Error creant la imatge"); $fons = imagecolorallocate($im, 255, 255, 255); // blanc $línia = imagecolorallocate($im, 0, 0, 0); // negre // Dibuixem l'el·lipse imageellipse($im, 50, 50, 100, 100, $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 arcsPer 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(101, 101) or die("Error creant la imatge"); $fons = imagecolorallocate($im, 255, 255, 255); // blanc $línia = imagecolorallocate($im, 0, 0, 0); // negre // Dibuixem l'arc imagearc($im, 50, 50, 100, 100, 90, 180, $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):
|