(PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8)
imagefilledarc — Desenha um arco parcial preenchido
$image,$center_x,$center_y,$width,$height,$start_angle,$end_angle,$color,$style
Desenha um arco parcial centrado na coordenada especificada na
imagem fornecida em image.
imageUm objeto GdImage, retornado por uma das funções de criação de imagem, como imagecreatetruecolor().
center_xCoordenada x do centro.
center_yCoordenada y do centro.
widthLargura do arco.
heightAltura do arco.
start_angleO ângulo inicial do arco, em graus.
end_angleO ângulo final do arco, em graus. 0° está localizado na posição 3 horas do relógio, e o arco é desenhado no sentido horário.
colorUm identificador de cor criado com imagecolorallocate().
styleUm OR binário das seguinte possibilidades:
IMG_ARC_PIE e IMG_ARC_CHORD são
mutualmente exclusivas; IMG_ARC_CHORD apenas
conecta os ângulos inicial e final com uma linha reta, enquanto que
IMG_ARC_PIE produz uma borda arredondada.
IMG_ARC_NOFILL indica que o arco
ou corda devem ser contornados, não preenchidos. IMG_ARC_EDGED,
usado em conjunto com IMG_ARC_NOFILL, indica que o ângulo inicial
e o final devem ser conectados ao centro - é uma boa
forma de se contornar (em vez de preencher) uma 'fatia de pizza'.
| Versão | Descrição |
|---|---|
| 8.0.0 |
O parâmetro image agora espera uma instância de GdImage;
anteriormente, um resource gd válido era esperado.
|
Exemplo #1 Criando uma pizza em 3D
<?php
// cria a imagem
$image = imagecreatetruecolor(100, 100);
// aloca algumas cores
$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);
// faz o efeito 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);
// descarrega a imagem
header('Content-type: image/png');
imagepng($image);
?>O exemplo acima produzirá algo semelhante a: