CanvasRenderingContext2D: метод quadraticCurveTo()
Базовая Широко поддерживается
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с июля 2015 года.
Метод CanvasRenderingContext2D.quadraticCurveTo() API холста 2D добавляет квадратичную кривую Безье к текущей подтраектории. Он требует две точки: первая — контрольная точка, а вторая — конечная точка. Начальная точка — последняя точка в текущей траектории, которую можно изменить с помощью moveTo() перед созданием квадратичной кривой Безье.
Синтаксис
quadraticCurveTo(cpx, cpy, x, y)
Параметры
Возвращаемое значение
None (undefined).
Примеры
Как работает quadraticCurveTo
Этот пример демонстрирует, как рисуется квадратичная кривая Безье.
HTML
<canvas id="canvas"></canvas>
JavaScript
const canvas = document.getElementById("canvas");
const ctx = canvas.getContext("2d");
// Quadratic Bézier curve
ctx.beginPath();
ctx.moveTo(50, 20);
ctx.quadraticCurveTo(230, 30, 50, 100);
ctx.stroke();
// Start and end points
ctx.fillStyle = "blue";
ctx.beginPath();
ctx.arc(50, 20, 5, 0, 2 * Math.PI); // Start point
ctx.arc(50, 100, 5, 0, 2 * Math.PI); // End point
ctx.fill();
// Control point
ctx.fillStyle = "red";
ctx.beginPath();
ctx.arc(230, 30, 5, 0, 2 * Math.PI);
ctx.fill();
Результат
В этом примере контрольная точка красная, а начальная и конечные точки синие.
Простая квадратичная кривая
Этот пример рисует простую квадратичную кривую Безье с использованием quadraticCurveTo().
HTML
<canvas id="canvas"></canvas>
JavaScript
Кривая начинается в точке, заданной moveTo(): (20, 110). Контрольная точка расположена в (230, 150). Кривая заканчивается в точке (250, 20).
const canvas = document.getElementById("canvas");
const ctx = canvas.getContext("2d");
ctx.beginPath();
ctx.moveTo(20, 110);
ctx.quadraticCurveTo(230, 150, 250, 20);
ctx.stroke();
Результат
Спецификации
| Спецификация |
|---|
| HTML # dom-context-2d-quadraticcurveto-dev |
Совместимость с браузерами
| Рабочие столы | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
quadraticCurveTo |
1 | 12 | 1.5 | 11.6 | 3 | 18 | 4 | 12 | 1 | 1.0 | 4.4 |
См. также
- Интерфейс, определяющий этот метод:
CanvasRenderingContext2D - Кривая Безье
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/quadraticCurveTo