Кривые Безьe

Рассмотрим следующее задание. Всего нам понадобится шесть кривых для выполнения задания:

Рис. 7.9. Исходное изображение

Если рисовать кривые последовательно от A к F, то понадобится только один вызов функции moveTo для задания начальных координат для первой кривой (A). Как и в предыдущем примере нужно уделить внимание задаваемым координатам для кривых:

function draw(){ var canvas = document.getElementById('lesson6'); var ctx = canvas.getContext('2d'); ctx.beginPath(); ctx.moveTo(75,25); // задание начальных координат ctx.quadraticCurveTo(25,25,25,62.5); // кривая А ctx.quadraticCurveTo(25,100,50,100); // кривая B ctx.quadraticCurveTo(50,120,30,125); // кривая C ctx.quadraticCurveTo(60,120,65,100); // кривая D ctx.quadraticCurveTo(125,100,125,62.5); // кривая E ctx.quadraticCurveTo(125,25,75,25); // кривая F ctx.stroke(); // отрисовка незаполненной фигуры

В результате получим следующее изображение:

Рис. 7.10. Результат выполнения задания

Нами рассмотрены все необходимые функции, оставшиеся задания необходимо выполнить самостоятельно.

3. Практическое задание

Нарисовать следующие фигуры:

1. Рисование путей

Рис. 7.11. Задания № 1

2. Дуги

Рис. 7.12. Задания № 2

3. Кривые Безье

Рис. 7.13. Задания №3

4. Комплексное задание

Рис. 7.14. Задание № 4


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: