imagefilledarc
(PHP 4 >= 4.0.6, PHP 5, PHP 7)
imagefilledarc — Рисование и заливка дуги
Описание
$image
, int $cx
, int $cy
, int $width
, int $height
, int $start
, int $end
, int $color
, int $style
) : bool
Рисует дугу с центром в заданных координатах изображения
image
.
Список параметров
-
image
-
Ресурс изображения, возвращаемый одной из функций создания изображений, например, такой как imagecreatetruecolor().
-
cx
-
x-координата центра.
-
cy
-
y-координата центра.
-
width
-
Ширина дуги.
-
height
-
Высота дуги.
-
start
-
Угол начала дуги в градусах.
-
end
-
Угол окончания дуги в градусах. 0° соответствует положению 3-часа. Дуга рисуется по часовой стрелке.
-
color
-
Идентификатор цвета, созданный функцией imagecolorallocate().
-
style
-
Битовое или следующих констант:
IMG_ARC_PIE
IMG_ARC_CHORD
IMG_ARC_NOFILL
IMG_ARC_EDGED
IMG_ARC_PIE
иIMG_ARC_CHORD
взаимно исключающие;IMG_ARC_CHORD
просто соединяет начало и конец дуги прямой линией;IMG_ARC_PIE
рисует между ними часть окружности.IMG_ARC_NOFILL
означает, что должны быть только границы, заливка не требуется.IMG_ARC_EDGED
, если используется вместе сIMG_ARC_NOFILL
, означает, что начало и конец дуги соединяются с центром - это хороший способ (лучше чем заливка) получить сектор (кусок пирога).
Возвращаемые значения
Возвращает true
в случае успешного завершения или false
в случае возникновения ошибки.
Примеры
Пример #1 Создание трехмерного пирога
<?php
// создание изображения
$image = imagecreatetruecolor(100, 100);
// определение цветов
$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);
// делаем эффект 3Д
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);
// вывод изображения
header('Content-type: image/png');
imagepng($image);
imagedestroy($image);
?>
Результатом выполнения данного примера будет что-то подобное: