| Последовательность рисования. Фигуры произвольной формы
https://www.youtube.com/watch?v=1xXRsbBOmrw&index=12&list=PLU24OxjGmbJsAomamaD1A64QIZiyz5var
После запуска программы компьютер начинает выполнять команды последовательно, начиная с первой строки, и останавливается, когда достигает последней. Если вы хотите, чтобы фигура была нарисована поверх остальных, соответствующая функция должна быть написана после функций, описывающих остальные фигуры.
Пример 1. Соблюдаем последовательность
 |
size(480,120);//устанавливает размер окна
//цвет заливки окна _ светло-синий цвет
background(204,226,225);
ellipse(140,8,190,190); // рисуем эллипс
//прямоугольник расположен поверх эллипса потому, что в программе он стоит после него
rect(160,30,280,20);//рисуем прямоугольник
|
 |
size(480,120);//устанавливает размер окна
//цвет заливки окна _ светло-синий цвет
background(204,226,225);
rect(160,30,280,20);//рисуем прямоугольник
/*эллипс расположен поверх прямоугольника потому, что
прорисовывается после прорисовки прямоугольника */
ellipse(140,8,190,190); // рисуем эллипс
|
Пример 2.
quad(158,55,199,14,392,66,351,107)
;
|
Рисуем четырехугольник
quad(x1,y1,x2,y2,x3,y3,x4,у4);
- первая точка - (х1,у1),
- остальные три вершины определенны по часовой или протии часовой стрелки (любым из вариантов)
|
triangle(347,54,392,9,392,66)'

|
Рисуем треугольник
- Функции triangle(х1,у1,х2,у2,х3,у3) имеет шесть параметров.
- Это три пары координат x/y для трех вершин треугольника.
- Для упрощения задачи советуем записывать эти точки по часовой стрелке.
|
triangle(158,55,290,91,290,112);

|
|
 |
size(480,120);//устанавливает размер окна
background(204,226,225); //цвет заливки окна _ светло-синий цвет
quad(158,55,199,14,392,66,351,107); //Рисуем четырехугольник
triangle(347,54,392,9,392,66);//рисуем треугольник
triangle(158,55,290,91,290,112);//рисуем треугольник
|
Пример 3.
Применение команды quad(x1,y1,x2,y2,x3,y3,x4,y4) для построения четырехугольников.
Пишем программу с произвольными значениями координат вершин четырехугольника, например:
 |
size(640,480);//устанавливает размер окна
point(320,240);
point(120,120);
line(0,0,640,480);
line(640,0,0,480);
ellipse(320,240,300,200);
quad(100,100,400,200,300,300,400,0);
|
Выполняем корректировку – развернем четырехугольник переместив положение второй его вершины: quad(100,100,100,200,300,300,400,0);
|
 |
size(640,480);//устанавливает размер окна
point(320,240);
point(120,120);
line(0,0,640,480);
line(640,0,0,480);
ellipse(320,240,300,200);
//quad(100,100,400,200,300,300,400,0);
quad(100,100,100,200,300,300,400,0);
|
Фигуры произвольной формы
Если вы не хотите ограничиваться приведенными базовыми геометрическими фигурами, вы можете создать новые, соединив нужные точки линиями.
-
функция beginShape() начните создание вашей фигуры с этой функции
-
функция vertex() используется для определения x и y-координат фигуры
-
функция endShape() ставится в конце описания фигуры и сигнализирует об окончании создания фигуры.
-
функция endShape(CLOSE), слово CLOSE как параметр функции endShape() способствует заполнению пропуска соединения первой и последней точек фигуры
Пример . Рисуем стрелку
 |
size(480,120);//устанавливает размер окна
background(204,226,225); //цвет заливки окна _ светло-синий цвет
beginShape();
vertex(180,82); vertex(207,36);
vertex(214,63); vertex(407,11);
vertex(412,30); vertex(219,82);
vertex(226,109);
endShape();
|
Заполняем пропуск
Когда вы запустите пример, вы увидите, что первая и последняя точки не соединены. Чтобы сделать это, добавьте слово CLOSE как параметр функции endShape() таким образом:
|
 |
beginShape();
vertex(180,82); vertex(207,36);
vertex(214,63); vertex(407,11);
vertex(412,30); vertex(219,82);
vertex(226,109);
endShape(CLOSE);
|
Примеры проектов - рисунков
Снеговик. 2019 год. Сокирко Виталий. 10 кл
size(400,400);
background(180,255,21);
fill(250,250,250);
ellipse(200,300,150,150);
ellipse(200,200,100,100);
ellipse(200,120,75,75);
fill(0,0,0);
ellipse(180,120,15,15);
ellipse(216,120,15,15);
ellipse(200,200,15,15);
ellipse(200,175,15,15);
fill(0,0,0);
rect(153,79,93,10);
rect(170,27,59,52);
rect(170,27,59,52);
fill(255,162,0);
triangle(190,130,204,129,160,180);
|

|
Пингвин. Василенко Алисия. 2019 год
void setup()
{
size(400,400);}
void draw ()
{
fill(0,0,0);
ellipse(200,270,170,170);
fill(0,0,0);
ellipse(200,200,120,120);
fill(255,255,255);
ellipse(200,270,120,120);
fill(255,255,255);
ellipse(175,170,25,25);
fill(255,255,255);
ellipse(225,170,15,15);
fill(180,30,30);
arc(210,225,150,80,4,5);
}
|

|

источниек - Интернет

|
size (400,400);
background(0, 255, 0);
fill(0,150,255);
rect(0,0,400,200);
fill(255,255,255);
rect(100,150,200,125);
fill(100,50,50);
rect(140,200,45,75);
fill(0,100,255);
rect(225,175,50,50);
fill (255,0,0);
quad(150,75,250,75,300,150,100,150);
fill(0,255,0);
ellipse(320,200,65,65);
|
| |