Программирование графических объектов pascal

Графика в Паскаль

С помощью графики в Паскаль можно рисовать фигуры и изображения, визуализировать математические вычисления и использовать элементы графики в компьютерных играх. Мы познакомимся как задавать графический режим в паскаль, рисовать точки, окружности, линии, выводить текст в графическом режиме паскаль.
Для того, чтобы рисовать графические фигуры в Паскаль нужно импортировать модуль GraphABC. В Паскаль это можно сделать с помощью команды uses GraphABC .
Чтобы начать работу с графикой в Pascal нужно задать окно для графики. В модуле GraphABC это можно сделать с помощью команды setWindowSize(x, y) , где x это ширина окна, а y высота.
С помощью модуля GraphABC на Паскале можно отобразить точку, линию, прямоугольник, прямоугольник с закруглёнными краями, окружность, дуга, сектор круга, можно вывести текст на экран.
Чтобы задать расположение объекта в графическом окне Паскаль, нужно указать его координаты в системе координат. Начало координат находится в левом верхнем углу окна для графики.Положительное направление оси X слева направо, оси Y сверху вниз. Чем больше X, тем правее точка, чем больше Y, тем точка ниже.
В Pascal в модуле GraphABC был создан новый тип данных для цвета. Цвет задаётся с помощью строки clЦвет . Чтобы установить цвет рисования графических фигур в паскаль, необходимо использовать команду

Читайте также:  Интеллектуальный анализ данных программирование

Основные цвета в графических программах на паскале

clBlack – черный
clPurple – фиолетовый
clWhite – белый
clMaroon – темно-красный
clRed – красный
clNavy – темно-синий
clGreen – зеленый
clBrown – коричневый
clBlue – синий
clSkyBlue – голубой
clYellow – желтый
clCream – кремовый
clAqua – бирюзовый
clOlive – оливковый
clFuchsia – сиреневый
clTeal – сине-зеленый
clGray – темно-серый
clLime – ярко-зеленый
clMoneyGreen – цвет зеленых денег
clLtGray – светло-серый
clDkGray – темно-серый
clMedGray – серый
clSilver – серебряный

Рисование точки в Паскаль

putPixel(x, y, color) , где x и y это координаты точки, color это цвет точки.

Пример программы в паскаль рисование красной точки
uses GraphABC;
begin
setWindowSize(500, 500);
putPixel(30, 30, clRed);
end.

Рисование линии в Паскаль

line(x1, y1, x2, y2) x1, y1 это координаты начала линии, x2, y2 координаты конца линии.

Пример программы в Паскаль рисование линии
uses GraphABC;
begin
setWindowSize(500, 500);
line(30, 30, 40, 40, clBlue);
end.

Рисование прямоугольника в Паскаль

rectangle(x1, y1, x2, y2) x1, y1 это координаты первой точки, x2, y2 координаты второй точки.

Пример программы на паскаль рисование прямоугольника
uses GraphABC;
begin
setWindowSize(500, 500);
rectangle(200, 200, 320, 350);
end.
Для задания в Паскаль прямоугольника с закруглёнными краями используется команда roundRect(x1, y1, x2, y2, w, h) , x1, y1 это координаты первой точки, x2, y2 координаты второй точки, w и h это ширина и высота закругления краёв.
uses GraphABC;
begin
setWindowSize(500, 500);
roundRect(350, 300, 450, 340, 40, 40);
end.

Рисование окружности в Паскаль

drawcircle(x, y, r) где x и y это координаты центра окружности, r это радиус окружности.

пример программы на Паскаль рисование окружности
uses GraphABC;
begin
setWindowSize(500, 500);
drawcircle(47, 47, 10);
end.

Для того,чтобы нарисовать закрашенный круг используется набор команда
SetBrushColor(цвет заполнения круга);
SetPenColor(цвет границы);
cirlce(x, y, r) где x и y это координаты центра круга, r это радиус круга

Пример программы на паскаль для рисования закрашенного круга

uses GraphABC;
begin
setWindowSize(500, 500);
SetBrushColor(clGreen);
SetPenColor(clRed);
circle (100,100,50);
end.

Для рисования эллипса в Паскаль используется команда ellipse(x1, y1, x2, y2), где x и y координаты прямоугольника, ограничивающего эллипс.
uses GraphABC;
begin
setWindowSize(500, 500);
ellipse(100, 100, 150, 200);
end.
Задание дуги и сектора окружности в паскаль схожи. При их задании задаются координаты центра круга, по которому они будут отображаться, радиус этого круга и градусная мера дуги. При задании дуги на экран выводится только сама дуга. В отличии от дуги, при задании сектора отображается не только дуга, но и два отрезка, исходящие из центра окружности, они опираются на дугу.
Дуга рисуется в Паскаль с помощью команды arc(x, y, r, a1, a2) , Сектор в Паскаль рисуется с помощью команды pie(x, y, r, a1, a2) , где x и y это координаты центра окружности, r это радиус окружности, a1 это начальная градусная мера дуги, a2 это конечная градусная мера дуги. Дуги и секторы задаются против часовой стрелки.

Пример программы в паскаль рисование дуги и сектора
uses GraphABC;
begin
setWindowSize(500, 500);
arc(10, 200, 50, 0, 60);
pie(10, 300, 50, 0, 60);
end.

Для вывода текста на экран в графическом режиме Паскаль

используется команда textOut(x, y, s) , где x и y это координаты левой верхней части текста, s это выводящийся текст.

Пример программы на паскаль вывод текста в графическом режиме
uses GraphABC;
begin
setWindowSize(500, 500);
textOut(100, 200, ‘текст’);
end.
Для заливки отображённых объектов в Паскаль используется команда floodFill(x, y, color) , где x и y это координаты точки, находящейся в полости объекта.

Пример программы на паскаль рисование закрашенного прямоугольника

uses GraphABC;
begin
setWindowSize(500, 500);
rectangle(200, 200, 320, 350);
floodFill(250,250, clRed);
end.
В модуле GraphABC в Pascal можно изменять само перо. Для изменения цвета используется setPenColor(color) . Для изменения толщины используется setPenWidth(px) , ширина кисти измеряется в пикселях. Для изменения стиля пера используется команда setPenStyle(x) , в качестве аргумента туда вводится стиль пера, их существует три типа (clSolid, clClear, clDash).
При выведении текста можно изменять его цвет и стиль., для этого есть команда setFontColor(color) и setFontStyle(fsStyle) . Существуют стили fsNormal (обычный), fsBold (полужирный), fsItalic (курсив) и fsUnderline (подчёркивание), можно создавать и их комбинации, например, fsBoldItalicUnderline.

Полезно почитать по теме графика в паскаль

Источник

Pascal: Занятие № 4 часть II. Графика в Паскале

егэ разбор егэ разбор pascal уроки c уроки python уроки c++ уроки vb уроки lazarus уроки php уроки html уроки css уроки javascript уроки jquery и ajax уроки prolog уроки flash уроки

Для работы с графикой в pascal abc используется модуль GraphABC. Для его подключения используется следующий код:

Система координат в Паскале соответствует экранной системе координат и выглядит следующим образом:

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

Управление цветом

Для того, чтобы использовать цвет, необходимо применить этот цвет к инструменту перо:

  • SetPenColor(color) — устанавливает цвет пера, задаваемый параметром color;
  • setBrushColor(color) — устанавливает цвет кисти, задаваемый параметром color;
  • либо для палитры RGB: SetPenColor(rgb(0-255, 0-255, 0-255));

или использовать для заливки:

После чего можно использовать процедуры для рисования геометрических фигур.

clBlack – черный
clPurple – фиолетовый
clWhite – белый
clMaroon – темно-красный
clRed – красный
clNavy – темно-синий
clGreen – зеленый
clBrown – коричневый
clBlue – синий
clSkyBlue – голубой
clYellow – желтый
clCream – кремовый
clAqua – бирюзовый
clOlive – оливковый
clFuchsia – сиреневый
clTeal – сине-зеленый
clGray – темно-серый
clLime – ярко-зеленый
clMoneyGreen – цвет зеленых денег
clLtGray – светло-серый
clDkGray – темно-серый
clMedGray – серый
clSilver – серебряный

Точки, отрезки и ломаные

Для отображения точки в паскале используется процедура:

точки в паскале

uses GraphABC; begin SetPixel(300,200,clred); end.

uses GraphABC; begin SetPixel(300,200,clred); end.

Для рисования линии используется:

паскаль линия

uses GraphABC; begin SetPenColor(clgreen); line(100,50,500,250); end.

uses GraphABC; begin SetPenColor(clgreen); line(100,50,500,250); end.

ломаные в паскале

Ломаные можно рисовать с помощью процедур MoveTo (x1, y1) и LineTo (x2, y2) .
Процедуры работают в паре: MoveTo передвигает курсор в определенную точку, а процедура LineTo рисует линию с этой точки до точки, определенной параметром данной процедуры.

uses GraphABC; begin . SetPenColor(clblue); MoveTo (x1, y1); LineTo (x2, y2); LineTo (x3, y3); LineTo (x4, y4); LineTo (x5, y5); end.

uses GraphABC; begin . SetPenColor(clblue); MoveTo (x1, y1); LineTo (x2, y2); LineTo (x3, y3); LineTo (x4, y4); LineTo (x5, y5); end.

Задание 0: При помощи операторов SetPenColor(), LineTo (x2, y2) и MoveTo (x1, y1) нарисовать квадрат и равносторонний треугольник.

[Название файла: L4_2task0.pas ]

Для установки размеров графического окна используется процедура

SetWindowWidth(600); SetWindowHeight(400);

Рисование фигур

прямоугольник в паскале

uses GraphABC; begin Rectangle(50,50,200,200); end.

uses GraphABC; begin Rectangle(50,50,200,200); end.

Фигуры с заливкой

uses GraphABC; begin Rectangle(50,50,200,200); FloodFill(100,100,clBlue); end.

uses GraphABC; begin Rectangle(50,50,200,200); FloodFill(100,100,clBlue); end.

Line(x1,y1,x2,y2);
LineTo(x,y);

треугольник в паскале

uses GraphABC; begin setpenwidth(20); setpencolor(clred); moveTo(300,100); lineTo(500,300); lineto(100,300); lineto(300,100); floodfill(300,200,clgreen); end.

uses GraphABC; begin setpenwidth(20); setpencolor(clred); moveTo(300,100); lineTo(500,300); lineto(100,300); lineto(300,100); floodfill(300,200,clgreen); end.

круг в паскале

uses GraphABC; begin Circle(500,200,100); FloodFill(500,200,clred); end.

uses GraphABC; begin Circle(500,200,100); FloodFill(500,200,clred); end.

Дуга окружности

uses GraphABC; Begin SetPenWidth(10); Arc(300,250,150,45,135); end.

uses GraphABC; Begin SetPenWidth(10); Arc(300,250,150,45,135); end.

задание по теме графика в паскале

Задание 1: «Лягушка»

[Название файла: L4_2task1.pas ]

задание по теме графика в pascal

Задание 2: «Корона»

[Название файла: L4_2task2.pas ]

Функция random для использования окраски

Задание 3: Нарисовать горизонтальный ряд окружностей радиусом 10 на расстоянии 100 от верхнего края экрана и с такими горизонтальными координатами 50, 80, 110, 140, … , 290.

* раскрасить круги случайным цветом

[Название файла: L4_2task3.pas ]

Задание 4: «Круги на воде».
Нарисуйте пару десятков концентрических окружностей, то есть окружностей разного радиуса, но имеющих общий центр.

[Название файла: L4_2task4.pas ]

графика паскаль abc.net

Задание 5:
Воспроизвести изображение при помощи программы:

[Название файла: L4_2task5.pas ]

алгоритм штриховки на паскале

Нарисовать штриховку на Паскале можно, используя процедуры рисования прямоугольника и линии:

Программа будет выглядеть следующим образом:

1_1

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
uses graphABC; var i, x1, x2, y1, y2, N: integer; h, x: real; begin x1 := 100; y1 := 100; x2 := 300; y2 := 200; N := 10; Rectangle (x1, y1, x2, y2); h := (x2 - x1) / (N + 1); x := x1 + h; for i:=1 to N do begin Line(round(x), y1, round(x), y2); x := x + h; end; end.

uses graphABC; var i, x1, x2, y1, y2, N: integer; h, x: real; begin x1 := 100; y1 := 100; x2 := 300; y2 := 200; N := 10; Rectangle (x1, y1, x2, y2); h := (x2 — x1) / (N + 1); x := x1 + h; for i:=1 to N do begin Line(round(x), y1, round(x), y2); x := x + h; end; end.

[Название файла: L4_2task6.pas ]

Анимация в Паскале

Анимация в программировании заключается в том, что сначала рисуется фигура цветным инструментом, затем с тем же координатами рисуется та же фигура белым цветом. После чего происходит сдвиг фигуры и действия повторяются.

1 2 3 4 5 6 7 8 9 10 11 12
uses GraphABC; var x:integer; begin x:=40; repeat SetPenColor(clWhite); Circle(x,100,10); SetPenColor(clBlack); Circle(x,100,10); x:=x+1 until x>600; end.

uses GraphABC; var x:integer; begin x:=40; repeat SetPenColor(clWhite); Circle(x,100,10); SetPenColor(clBlack); Circle(x,100,10); x:=x+1 until x>600; end.

Задание 7: Выполнить анимацию движения квадрата по следующей траектории:

[Название файла: L4_2task7.pas ]

Источник

Программирование графических объектов pascal

Скачивание сейчас станет доступно.

А пока, в помощь коллегам, поделитесь материалом в социальных сетях.

Оплата сейчас станет доступна.

А пока, в помощь коллегам, поделитесь материалом в социальных сетях.

Скачивание сейчас начнется.

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

Материалы подготовил(а): учитель начальных классов Матюшкина Мария Михайловна

Спасибо

Чтобы добавить отзыв, войдите, пожалуйста, или зарегистрируйтесь на сайте – легко и быстро.

написать письмо

Написать в Whatsapp Написать в Telegram Написать в Viber Написать электронное письмо

youtube rutube

Проект Думскул всегда открыт для отзывов, комментариев, пожеланий и предложений, которые Вы можете отправить, написав нам вот по этим адресам:

Здесь ни одно письмо не остается без ответа!

Вместе с dumschool.ru мы сделаем учебный год интересным, легким, увлекательным!

© 2017-2023, Все права защищены

Написать в Whatsapp Написать в Telegram Написать в Viber Написать электронное письмо

youtube rutube

Проект Думскул всегда открыт для отзывов, комментариев, пожеланий и предложений, которые Вы можете отправить, написав нам вот по этим адресам:

Здесь ни одно письмо не остается без ответа!

Вместе с dumschool.ru мы сделаем учебный год интересным, легким, увлекательным!

© 2017-2023, Все права защищены

Источник

Оцените статью