Практическое занятие № 5

ТЕМА: Использование графических возможностей среды программирования для иллюстрирования практических заданий из различных предметных областей.

ЦЕЛЬ: Сформировать умения составлять программы, используя графические возможности среды программирования для иллюстрирования практических заданий из различных предметных областей.

 

1. Последовательность выполнения практического занятия.

1.1. Внеаудиторная подготовка

а. Повторить технику безопасности при работе на ПК.

б. повторить материал предыдущих занятий или изучить материал учебной  литературы: Информатика: учебное пособие для 10 класса, с. 22…49

1.2. Работа на учебном занятии

а. Выполнить практические задания.

б. Убрать рабочее место.

в. Оформить отчёт.

2. Методические указания

 

Теоретические сведения для выполнения Заданий 1-4.

 

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

 

http://gatk.by/dotd/inform/pz6/pz6.ht1.jpg Всякое графическое изображение представляет собой совокупность точек – пикселей. Каждая из них задается своими координатами и цветом.

Количество отображаемых на экране пикселей называют разрешающей способностью графического экрана.

 

http://pascalabc2012.narod.ru/Grafik4.gif

 

 

Рисование осуществляется в графическом окне.

 

Началом отсчета является левый верхний угол экрана. Значения координаты X (абсциссы) отсчитывается слева направо, а значения Y (ординаты) - сверху вниз.

 

 

 

Библиотека  стандартных  графических  процедур  и  функций  хранится  в модуле GraphABC.

При  работе  с  графикой  эту  библиотеку необходимо  подключать  в  разделе  описаний  с  помощью  зарезервированного слова Uses (подключить).   Подключение графического модуля в программе выглядит так:  Uses GraphABC  и  вводим основные команды библиотеки GraphABС.

 

Основные команды библиотеки GraphABС (графические примитивы)

 

SetWindowSize(x,y)

Устанавливает размеры графического окна (в пикселах)

SetPixcel(x,y,c)

Рисует точку с координатами (x,y) цветом с

ClearWindow(c)

Очищает (заливает) окно цветом

Line(x1,y1,x2,y2)

Рисует отрезок от точки (x1,y1) до точки (x2,y2)

FloodFill(x,y,c)

Закрашивает замкнутую область, содержащую точку (x,y) цветом с

SetPenColor(c)

Устанавливает цвет пера

SetPenWidth(n)

Устанавливает толщину пера в пикселах

SetPenStyle(s)

Устанавливает стиль пера

SetBrushColor(c)

Устанавливает цвет кисти

Rectangle(x1,y1,x2,y2)

Рисует закрашенный прямоугольник

Circle(x,y,r)

Рисует закрашенную окружность

SetFontStyle(fs)

Устанавливает стиль шрифта

SetFontSize(n)

Устанавливает размер шрифта в пикселях

TextOut(x,y,’текст’)

Вывод текста в прямоугольник с координатами левого верхнего угла (x,y)

 

 

В качестве примера рассмотрим команду для рисования Rectangle (x1,y1,x2,y2), которая задаёт замкнутый прямоугольник.

Кроме указанных в таблице есть ещё несколько команд, которые часто используются при работе с графическим окном GraphABС.

Ellipse(x1,y1,x2,y2) - рисует эллипс, заданный своим описанным прямоугольником с координатами противоположных вершин (x1,y1) и (x2,y2).

Arc(x,y,r,a1,a2) - рисует дугу окружности с центром в точке (x,y) и радиусом r, заключенной между двумя лучами, образующими углы a1 и a2 с осью OX (a1 и a2 – вещественные, задаются в градусах и отсчитываются против часовой стрелки).

Pie(x,y,r,a1,a2) - рисует сектор окружности, ограниченный дугой (параметры процедуры имеют тот же смысл, что и в процедуре Arc).

 

Действия с пером и кистью

                    Стили пера

SetBrushColor(color) - устанавливает цвет кисти, задаваемый параметром color.

SetPenColor(color) - устанавливает цвет пера, задаваемый параметром color.

SetPenWidth(n) – устанавливает ширину пера, равную n пикселям.

 

 

Модуль GraphABC содержит константы и функции для работы с цветами. Стандартные цвета задаются символическими константами:

 

clBlack – черный

clPurple – фиолетовый

clWhite – белый

clMaroon – темно-красный

clRed – красный

clNavy – темно-синий

clAqua – бирюзовый

clOlive – оливковый

clGreen – зеленый

clBrown – коричневый

clBlue – синий

clSkyBlue – голубой

clYellow – желтый

clCream – кремовый

clSilver – серебряный

clFuchsia – сиреневый

clTeal – сине-зеленый

clGray – темно-серый

clLime – ярко-зеленый

clMoneyGreen – цвет зеленых денег

clLtGray – светло-серый

clDkGray – темно-серый

clMedGray – серый

 

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

Начнем с чертежа простой детали. Чертеж является основным документом любого производства. По чертежам изготавливают детали, собирают машины, строят дома, шьют одежду. Современное производство немыслимо без компьютерных систем автоматического проектирования (например, AutoCAD, Kompas).

 

Задание 1. Составить программу, которая выводит на экран все известные графические примитивы графического модуля Паскаля.

 

 Методика выполнения Задания 1.

- открытие графического модуля во второй строке с помощью команды uses graphABC;

- использование основных команд библиотеки графического модуля;

- текст программы и результат её выполнения:

 

 

Задание 2. Составить программу, которая выводит на экран треугольник с разноцветными сторонами на цветном фоне.

 

Методика выполнения Задания 2.

- открытие графического модуля во второй строке с помощью команды uses graphABC;

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

- текст программы и результат её выполнения:

 

 

http://gatk.by/dotd/inform/pz7/pz9.ht1.jpgЗадание 3. Составить программу, которая выводит на экран чертёж детали, показанной на рисунке и вычислить её площадь:

 

Радиус отверстия r в сантиметрах вводится с клавиатуры,

размер AB=BC=8 см.

 

 

Методика выполнения Задания 3.

- совмещение работы с текстом и графикой в одном окне возможно во второй строке с помощью открытия модуля uses graphABC и открытие модуля crt  одновременно;

- для радиуса отверстия будем использовать переменную r, размер AB и площадь фигуры будем хранить в переменных a и S, переменные имеют тип real;

- чертеж данной детали можно выполнить рисованием пяти графических примитивов: трех отрезков AB, BC, CD, окружности с центром O и дуги AED.

Пусть  точка O  имеет  координаты (160, 120).   Тогда  с  учетом  масштаба координаты  точек  равны: A (80,120), B(80,280),  C(240,280), D(240,120). 

Радиус  дуги AED  равен 80.   Радиус  окружности  на  экране  вычислим умножением введенного значения r  на масштаб. Дробную часть отбрасываем,  чтобы  обеспечить  целочисленность  координат  для  процедур  рисования trunc(r*20).

- площадь складывается из площади квадрата ABCD (сторона a) и полукруга AED (диаметр a) за вычетом  площади кругового отверстия (радиус  r) и тогда формула вычисления площади примет следующий вид: S:=a2 + πa2/8 – πr2; 

- текст программы и результат её выполнения:

 

 

Задание 4.  Составить программу, которая рисует цилиндр, показанный на рисунке, и вычисляет его объём.

Масштаб: 1 клетка – 20 пикселей. Радиус цилиндра r = 4 см, высота цилиндра h в сантиметрах вводится с клавиатуры.

 

 

Методика выполнения Задания 4.

- открытие графического модуля во второй строке с помощью команды uses graphABC;

- зададим размеры окна 320,320;

- точка О1 (см. на рисунке) имеет координаты x=160, y=120;

- произведём расчёт радиуса и высоты с учётом масштабов: r=20*r, h=20*h;

- зададим формулы для расчёта остальных точек цилиндра, отмеченных на рисунке: О2(x,y+h), A(x-r,y), B(x-r,y+h), C(x+r,y+h), D(x+r,y);

- процедура Ellipse рисует эллипс, который задаётся описанным около него прямоугольником с координатами противоположных вершин, в нашем случае на рисунке это координаты точек E(x-r,y-40) и F(x+r,y+40); 

- переменные х, у, h, r  будут иметь тип integer, а переменная V — тип real;

- текст программы и результат её выполнения:

 

 

 

 

Самостоятельная работа

Отметка 5-6:

Составьте программу, которая выводит на экран одну из следующих фигур:

 

                                 

 

Отметка 6-7:

Составьте программу, которая выводит на экран одно из приведенных изображений:

 

                                 

 

Отметка 7-9:

Составьте программу, которая выполняет чертеж и вычисляет площадь одной из деталей.

Масштаб: 1 см (1 клетка) - 20 пикселей. 20

 

http://gatk.by/dotd/inform/pz7/pz7.ht1.jpg

 

 

3. Содержание отчета

а. Титульный лист

б. Цель работы

в. Дидактическое и методическое обеспечение

г. Последовательность выполнения работы по заданиям с описанием основных этапов осуществляемых действий

д. Заключение в виде анализа полученных результатов и выводов

 

 Контрольные вопросы

1. Какие графические примитивы можно использовать при построении изображений?

2. Какие модули необходимо подключать, чтобы работать с текстом и графикой в одном окне?

3. Какой оператор позволяет установить ширину пера?

4. Какой оператор устанавливает цвет кисти?