Всё сдал! - помощь студентам онлайн Всё сдал! - помощь студентам онлайн

Реальная база готовых
студенческих работ

Узнайте стоимость индивидуальной работы!

Вы нашли то, что искали?

Вы нашли то, что искали?

Да, спасибо!

0%

Нет, пока не нашел

0%

Узнайте стоимость индивидуальной работы

это быстро и бесплатно

Получите скидку

Оформите заказ сейчас и получите скидку 100 руб.!


Графические возможности языка Паскаль

Тип Реферат
Предмет Информатика
Просмотров
1396
Размер файла
24 б
Поделиться

Ознакомительный фрагмент работы:

Графические возможности языка Паскаль

Язык программирования Паскаль 7.0 содержит обширный набор типов, констант и функций для управления графическим режимом работы экрана, объединенных в стандартный библиотечный модуль GRAPH. С помощью подпрограмм, входящих в данный модуль, можно создавать сложные графические изображения, основанные на использовании разнообразных геометрических фигур- При необходимости замкнутые фигуры могут быть закрашены различными цветами и стилями (образцами) закраски. Для вывода текстовых надписей на графический экран могут быть использованы четыре штриховых и один матричный шрифт.

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

Установка графического режима работы

Переход в графический режим в среде Паскаль осуществляется с помощью входящей в модуль GRAPHпроцедуры InitGraph, служащей для инициализации графического экрана. Данная процедура имеет следующий формат:

InitGraph(varDriver, Mode:integer; Path:string),

где переменные Driverи Modeдолжны содержать тип графического драйвера и его режим работы. Допускается указать Driver=0 для автоматического определения данных параметров по результатам тестирования аппаратуры. Параметр Pathопределяет маршрут поиска файла графического адаптера.

Графические операторы языка Паскаль позволяют адресоваться к любому элементу (пикселю) графического окна и управлять светимостью этого элемента. Для указания пикселя используется следующая система координат: начало координат (0,0) располагается в левом верхнем углу экрана; горизонтальная координата Xувеличивается слева направо, вертикальная координата Yувеличивается сверху вниз. При стандартном графическом адаптере VGA(в режиме 640x480) правый нижний угол экрана имеет координаты (639,479), а центр экрана - координаты (319,239).

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

Язык программирования Паскаль 7.0 поддерживает 16 основных цветов, обозначаемых соответственно номерами от 0 до 15 (см. таблицу 1).

Таблица 1 Константы цвета

Константа цветаЦветКонстанта цветаЦвет
0(Black)Черный8 (DarkGray)Гемносерый
1 (Blue)Синий9 (LightBlue)Яркосиний
2 (Green)ЗеленыйlO(LightGreen)Яркозеленый
3 (Cyan)Голубой11 (LightCyan)Яркоголубой
4 (Red)Красный12 (LightRed)Розовый
5 (Magenta)Фиолетовый13 (LightMagenta)Малиновый
6 (Brown)Коричневый14 (Yellow)Желтый
7 (LightGray)Светлосерый15 (White)Белый

Основными графическими операторами по работе с цветами являются процедуры модуля GRAPHпод именами SetBkColor(служит для установки цвета фона) и SetColor(для установки цвета рисования).

Формат данных операторов следующий". SetBkColor (Color: word);

SetColor (Color: word),

где переменная Color, имеющая целочисленный тип word, служит для указания требуемого номера цвета.

Например, операторы SetBkColor (I); SetColor(14) позволяют установить режим рисования желтым цветом по синему фону.

Создание графических объектов

В состав модуля GRAPHвходит достаточно большое количество подпрограмм, служащих для вывода на экран разнообразных графических объектов. Основными процедурами данного типа являются:

Rectangle(xl, yl, х2, y2: integer) - служит для рисования прямоугольников, задаваемых координатами двух своих противоположных углов;

Bar(xl, yl, x2, y2: integer) - служит для рисования заштрихованных прямоугольников, используя при этом текущий стиль и цвет штриховки;

SetFillStyle(Pattern, Color: word) - устанавливает образец штриховки и ее цвет, где переменная Patternобозначает номер шаблона штриховки (см. таблицу 2), aColor- номер цвета штриховки (см. таблицу 1);

Circle(x, у: integer; r: word) - рисует окружность радиуса г с центром в точке (х, у); Line(xl, yl, x2, y2: integer) - рисует линию от точки (xl, yl) до точки (х2, у2);

PieSHce(x, у: integer; StAngle, EndAngle, nword) - рисует и заштриховывает сектор окружности радиусом г с центром в (х, у) от начального угла StAngleк конечному углу EndAngle. При этом используется текущий стиль и цвет штриховки (см. процедуру SetFillStyle);

PutPixel(x, у: integer; Color:word) - выводит на экран точку цвета Colorс координатами (х, у);

OutTextXY(x, y:integer; TextString:string) — выводит техт TextStringв заданное координатами (х, у) место экрана.

Таблица 2 Шаблоны штриховки

НомерСтиль штриховкиНомерСтиль штриховки
0Нет штриховки6Наклонная влево
1Сплошная (заливка)7В клетку по образцу +++
2Горизонтальными линиями8В клетку по образцу ххх
3Наклонная вправо9Штриховка в мелкую клетку
4Наклонная вправо толстыми линиями10Редкими точками
5Наклонная влево толстыми линиями11Частыми точками

Стандартный режим работы в среде Турбо Паскаля - текстовый. В этом режиме на экран выводятся только известные компьютеру символы.

В графическом режиме экран дисплея можно рассматривать как совокупность близко расположенных точек. Точку экрана называют пиксель или пиксел (pixel). Светимость этих точек может регулироваться программой. Пикселы образуют прямоугольную таблицу - растр с нумерацией элементов относительно левого верхнего угла экрана - точки с координатами (0; 0).

Для представления символов текстовой информации используется матрица с фиксированным количеством пикселов. Знакоместо каждого символа - прямоугольник размером, к примеру, 8x8, 8x14, 8x16 и т.д.; - в знакоместо при помощи программы помещается растровое изображение символа.

Графические возможности конкретного видеоадаптера (видеокарты) определяются разрешающей способностью (разрешением) монитора, т.е. общим количеством пикселов, а также количеством цветов (оттенков), которыми может светиться каждый из них. Современные мониторы поддерживают разрешение

800x600 точек, 1024x768 точек и более. Чем выше разрешающая способность монитора, тем качественнее изображение. Многие видеоадаптеры могут работать с несколькими графическими страницами.

Графическая страница - область оперативной памяти, используемая для создания "карты" экрана -информации о светимости (цвете) каждого пиксела. На одном и том же компьютере количество точек и количество возможных цветов можно изменять в процессе работы, выбирая графический режим - одну из предусмотренных в конструкции компьютера комбинаций значений.

Драйвер - это программа, управляющая определенным устройством ПК. Графический драйвер управляет дисплейным адаптером в графическом режиме. Графические драйверы обычно располагаются на диске в подкаталоге BGIрабочего каталога в виде файлов с расширением .BG1 (BorlandGraphicInterface).

В ТП 7.0 есть стандартный библиотечный модуль Graph- библиотека подпрограмм, обеспечивающих управление графическими режимами видеоадаптеров: CGA, EGA, VGA, MCGA, Hercules, PC3270, AT&T6300, IBM8514.

Библиотека Graphсодержит около 80 графических процедур и функций, а также десятки констант и описаний типов данных [6, 7]. Подключение модуля происходит при помощи зарезервированного слова USES (usesGraph;).

Модуль Graph- файл GRAPH.TPU. Для работы с графикой этот файл должен быть доступным для компилятора, т.к. GRAPH.TPUне входит в состав библиотеки TURBO.TPL. В поле UNITопции DIRECTORIES / OPTIONSглавного меню среды Турбо Паскаля следует указать каталог, в котором размещен файл GRAPH.TPU.

Для использования различных шрифтов при выводе текста (кроме кириллицы) нужно скопировать файлы с расширением .CHRв рабочий каталог. При запуске программы с кириллицей скопируйте файл EGAVGA.BGIв рабочий каталог.

Любая программа для работы с графикой должна содержать блоки вызова процедуры инициализации графического режима InitGraph- правильность выполнения этой процедуры проверяется функцией GraphResult(0-в случае успеха) - и процедуры выхода из графического режима CloseGraph.

Процедуры и функции из библиотеки Graph

Обращение Действие

InitGraph (Driver, Mode, F) Инициирует графический режим работы адаптера

CloseGraphЗавершает работу адаптера в графическом режиме

RestoreCrtModeСлужит для кратковременного возврата в текстовый режим

ClearDeviceОчищает экран, закрашивает его в цвет фона

ClearViewPortОчищает графическое окно

SetGraphMode(Mode) Устанавливает новый графический режим работы адаптера; значения Mode- в конце

главы

SetViewPort(Xl, Yl, X2, Y2, Т) Устанавливает прямоугольное окно на экране: X1,Y1 - координаты левого

верхнего, Х2, Y2 - координаты правого нижнего углов окна, Т - выражение типа Boolean, определяющее

"отсечку" не умещающихся в окне элементов изображения (True- "отсекать")

SetPalette(Reg, Col) Формирует новое значение Colв регистре с номером Reg(установка одного цвета

палитры)

SetAllPalette(Palette) Производит смену кодов цветности во всех регистрах палитры

SetBkColor (Color) Устанавливает цвет фона (целое число от 0 до 15)

SetColor (Color) Устанавливает цвет для выводимых символов и линий, Color- выражение типа Word

PutPixel (X, Y, Color) Выводит точку с координатами X, Yцветом Color

Line (XI, Yl, X2, Y2) Рисует отрезок линии по коордимнатам его концов

LineRel (Xh, Yh) Вычерчивает линию от текущего положения указателя до положения, заданного

приращениями его координат Xhи Yh(выражения типа Integer)

LineTo (X, Y)

Вычерчивает линию от текущего положения указателя до положения, заданного его новыми координатами

MoveRel (DX, DY) Устанавливает новое положение указателя в координатах относительно предыдущего

MoveTo (X, Y) Устанавливает новое положение указателя

OutText(Т) Выводит текст Т (кроме кириллицы), начиная с текущего положения указателя

OutTextXY (X, Y, Т) Выводит текст Т, начиная с позиции Xстроки Y

Circle (X, Y, R) Рисует окружность радиуса Rтипа Wordс центром в точке с координатами (X; Y)

Ваг (XI, Y1, Х2, Y2) Заполняет прямоугольную область экрана, заданную координатами диагонали

Bar3D (XI, Yl, X2, Y2, D, Top) Чертит трехмерное изображение параллелепипеда (D-глубина) и

закрашивает его переднюю грань; Тор - выражение типа Boolean, если Тор = True, верхняя грань

вычерчивается, если False- нет

Rectangle (XI, Yl, X2, Y2) Вычерчивает прямоугольник по координатам левого верхнего и правого нижнего

углов

Arc (X, Y, А, В, R) Чертит дугу окружности: X, Y- координаты центра, А, В - начальный и конечный углы

дуги(в градусах), отсчет углов ведется против часовой стрелки^ - радиус (в пикселах);

Ellipse (X, Y, А, В, RX, RY) Чертит эллипсную дугу: X, Y- координаты центра, А, В - начальный и

конечный углы дуги (в градусах), RX, RY- горизонтальный и вертикальный радиусы

Sector (X, Y, А, В, RX, RY) Рисует и штрихует сектор эллипса радиусами RXи RYс центром в точке X, Yот

угла А к углу В

SetFillStyle (Pattern, Color) Устанавливает образец штриховки и цвет

SetLineStyle (LineStile,Pattern,Thickness) Устанавливаеттолщинуистильлинии

SetTextStyle (Font, Direction,CharSize) Устанавливает текущий шрифт (0-9), направление (по горизонтали-

0/вертикали-1) и размер символов (0-13)

FillEllipse (X, Y, RX, RY) Рисует закрашенный эллипс

FloodFill (X, Y, С) Заполняет любую замкнутую фигуру, используя текущий стиль заполнения (узор и цвет),

X, Y- координаты точки внутри этой области, С - цвет границы

FillPoly (N, Coords) Обводит линией и закрашивает замкнутый многоугольник; N - количество вершин,

Coords- переменная типа PointType, содержащая координаты вершин (см. сноску под таблицей)

Getlmage (X1,Y1, X2,Y2, Bui) Помещает в буфер памяти Bufкопию прямоугольного фрагмента

изображения

Putlmage (X,Y, Buf, ModePut) Выводит в заданное место экрана (X,Y- координаты верхнего левого угла)

копию фрагмента изображения из буфера Buf, ModePut- способ копирования (в конце главы)

ImageSize (X1,Y1,X2,Y2) Возвращает размер памяти в байтах, необходимый для размещения

прямоугольного фрагмента изображения

GraphResultВозвращает 0, если последняя графическая операция выполнилась без ошибок

GraphErrorMsg (Code) Возвращает значение типа Stringс текстовым сообщением об ошибке; Code- код

ошибки

GetGraphModeВозвращает значение типа Integer, в котором содержится код текущего режима работы

графического адаптера

GetXВозвращает текущую координату указателя по горизонтали / вертикали (тип Integer)

GetY

GetMaxXВозвращает максимальную координату экрана по горизонтали / вертикали (тип Word) в текущем

режиме работы


Нет нужной работы в каталоге?

Сделайте индивидуальный заказ на нашем сервисе. Там эксперты помогают с учебой без посредников Разместите задание – сайт бесплатно отправит его исполнителя, и они предложат цены.

Цены ниже, чем в агентствах и у конкурентов

Вы работаете с экспертами напрямую. Поэтому стоимость работ приятно вас удивит

Бесплатные доработки и консультации

Исполнитель внесет нужные правки в работу по вашему требованию без доплат. Корректировки в максимально короткие сроки

Гарантируем возврат

Если работа вас не устроит – мы вернем 100% суммы заказа

Техподдержка 7 дней в неделю

Наши менеджеры всегда на связи и оперативно решат любую проблему

Строгий отбор экспертов

К работе допускаются только проверенные специалисты с высшим образованием. Проверяем диплом на оценки «хорошо» и «отлично»

1 000 +
Новых работ ежедневно
computer

Требуются доработки?
Они включены в стоимость работы

Работы выполняют эксперты в своём деле. Они ценят свою репутацию, поэтому результат выполненной работы гарантирован

avatar
Математика
История
Экономика
icon
159599
рейтинг
icon
3275
работ сдано
icon
1404
отзывов
avatar
Математика
Физика
История
icon
156450
рейтинг
icon
6068
работ сдано
icon
2737
отзывов
avatar
Химия
Экономика
Биология
icon
105734
рейтинг
icon
2110
работ сдано
icon
1318
отзывов
avatar
Высшая математика
Информатика
Геодезия
icon
62710
рейтинг
icon
1046
работ сдано
icon
598
отзывов
Отзывы студентов о нашей работе
63 457 оценок star star star star star
среднее 4.9 из 5
Филиал государственного бюджетного образовательного учреждения высшего образования Московской област
Спасибо Елизавете за оперативность. Так как это было важно для нас! Замечаний особых не бы...
star star star star star
РУТ
Огромное спасибо за уважительное отношение к заказчикам, быстроту и качество работы
star star star star star
ТГПУ
спасибо за помощь, работа сделана в срок и без замечаний, в полном объеме!
star star star star star

Последние размещённые задания

Ежедневно эксперты готовы работать над 1000 заданиями. Контролируйте процесс написания работы в режиме онлайн

решить 6 практических

Решение задач, Спортивные сооружения

Срок сдачи к 17 дек.

только что

Задание в microsoft project

Лабораторная, Программирование

Срок сдачи к 14 дек.

только что

Решить две задачи №13 и №23

Решение задач, Теоретические основы электротехники

Срок сдачи к 15 дек.

только что

Решить 4задачи

Решение задач, Прикладная механика

Срок сдачи к 31 дек.

только что

Выполнить 2 задачи

Контрольная, Конституционное право

Срок сдачи к 12 дек.

2 минуты назад

6 заданий

Контрольная, Ветеринарная вирусология и иммунология

Срок сдачи к 6 дек.

4 минуты назад

Требуется разобрать ст. 135 Налогового кодекса по составу напогового...

Решение задач, Налоговое право

Срок сдачи к 5 дек.

4 минуты назад

ТЭД, теории кислот и оснований

Решение задач, Химия

Срок сдачи к 5 дек.

5 минут назад

Решить задание в эксель

Решение задач, Эконометрика

Срок сдачи к 6 дек.

5 минут назад

Нужно проходить тесты на сайте

Тест дистанционно, Детская психология

Срок сдачи к 31 янв.

6 минут назад

Решить 7 лабораторных

Решение задач, визуализация данных в экономике

Срок сдачи к 6 дек.

7 минут назад

Вариационные ряды

Другое, Статистика

Срок сдачи к 9 дек.

8 минут назад

Школьный кабинет химии и его роль в химико-образовательном процессе

Курсовая, Методика преподавания химии

Срок сдачи к 26 дек.

8 минут назад

Вариант 9

Решение задач, Теоретическая механика

Срок сдачи к 7 дек.

8 минут назад

9 задач по тех меху ,к 16:20

Решение задач, Техническая механика

Срок сдачи к 5 дек.

9 минут назад
9 минут назад
10 минут назад
planes planes
Закажи индивидуальную работу за 1 минуту!

Размещенные на сайт контрольные, курсовые и иные категории работ (далее — Работы) и их содержимое предназначены исключительно для ознакомления, без целей коммерческого использования. Все права в отношении Работ и их содержимого принадлежат их законным правообладателям. Любое их использование возможно лишь с согласия законных правообладателей. Администрация сайта не несет ответственности за возможный вред и/или убытки, возникшие в связи с использованием Работ и их содержимого.

«Всё сдал!» — безопасный онлайн-сервис с проверенными экспертами

Используя «Свежую базу РГСР», вы принимаете пользовательское соглашение
и политику обработки персональных данных
Сайт работает по московскому времени:

Вход
Регистрация или
Не нашли, что искали?

Заполните форму и узнайте цену на индивидуальную работу!

Файлы (при наличии)

    это быстро и бесплатно