International PHP Conference Berlin 2025

ImagickDraw::pathCurveToQuadraticBezierSmoothRelative

(PECL imagick 2, PECL imagick 3)

ImagickDraw::pathCurveToQuadraticBezierSmoothRelativeРисует квадратичную кривую Безье

Описание

public ImagickDraw::pathCurveToQuadraticBezierSmoothRelative(float $x, float $y): bool
Внимание

Функцию пока не задокументировали; для знакомства доступен только список аргументов.

Рисует квадратичную кривую Безье (с использованием относительных координат) от текущей точки до (x,y). Предполагается, что контрольная точка является отражением контрольной точки предыдущей команды относительно текущей точки. (Если предыдущая команда отсутствует или не является DrawPathCurveToQuadraticBezierAbsolute, DrawPathCurveToQuadraticBezierRelative, DrawPathCurveToQuadraticBezierSmoothAbsolute или DrawPathCurveToQuadraticBezierSmoothRelative, то предполагается, что контрольная точка совпадает с текущей). В конце команды новая текущая точка становится последней парой координат (x,y), используемой в кривой Безье.

Функцию нельзя использовать для плавного продолжения кубической кривой Безье. Она может плавно продолжать только квадратичную кривую.

Список параметров

x

Конечная координата x.

y

Конечная координата y.

Возвращаемые значения

Функция не возвращает значения после выполнения.

Примеры

Пример #1 Пример использования ImagickDraw::pathCurveToQuadraticBezierSmoothRelative()

<?php
$draw
= new \ImagickDraw();

$draw->setStrokeOpacity(1);
$draw->setStrokeColor("black");
$draw->setFillColor("blue");

$draw->setStrokeWidth(2);
$draw->setFontSize(72);

$draw->pathStart();
$draw->pathMoveToAbsolute(50,250);

// Определение квадратичной кривой Безье с текущей позицией в качестве начальной точки,
// контрольной точкой являются первые два параметра, а конечной - последние два.
$draw->pathCurveToQuadraticBezierAbsolute(
150,50,
250,250
);

// Определение квадратичной кривой Безье с текущей позицией в качестве начальной точки,
// контрольная точка зеркально отражается от контрольной точки предыдущей кривой,
// а конечная точка определяется значениями x, y.
$draw->pathCurveToQuadraticBezierSmoothAbsolute(
450,250
);

// Определение квадратичной кривой Безье с текущей позицией в качестве начальной точки,
// контрольная точка зеркально отражается от контрольной точки предыдущей кривой,
// а конечная точка определяется значениями x, y относительно текущей позиции.
$draw->pathCurveToQuadraticBezierSmoothRelative(
200,-100
);

$draw->pathFinish();

$imagick = new \Imagick();
$imagick->newImage(700, 500, $backgroundColor);
$imagick->setImageFormat("png");

$imagick->drawImage($draw);

header("Content-Type: image/png");
echo
$imagick->getImageBlob();
?>

Добавить

Примечания пользователей

Пользователи ещё не добавляли примечания для страницы
To Top