Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
chast2.doc
Скачиваний:
7
Добавлен:
03.11.2018
Размер:
413.7 Кб
Скачать

6. Обзор графических возможностей языков высшего уровня.

В текстовом режиме экран разбивается на знакоместа (знаковые позиции). Экран при этом состоит из 25 строк по 80 знаковых позиций в каждой строке. В один знакомест выводится один символ. В компьютере для каждого знакоместа хранится код цвета символа, код цвета фона и ASCII код символа.

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

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

Пиксель – минимальный участок экрана, который может быть засвечен (технически).

Точка – один или несколько пикселей. Размеры точки зависят от адаптера и драйвера.

Каждая точка имеет две координаты: X и Y. Координата X увеличивается по горизонтали слева направо начиная от нуля, координата Y увеличивается по вертикали сверху вниз начиная от нуля.

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

Основные графические операции и функции:

QBasic

Назначение

CLS

Очистка экрана

CIRCLE [STEP] (x0, y0), <радиус> [, <цвет>] [, <начало>, <конец>[, <сжатие> ]]]

Построить окружность, эллипс или дугу

LINE [[STEP] (x1, y1)] - [STEP] (x2, y2)[, [<цвет>] [, [B [F]] [, <маска>]]]

Начертить линию (отрезок) или прямоугольник

PSET [STEP, ] (x, y) [, <цвет>]

Окрасить (изобразить) точку

PRESET [STEP] (x, y) [, <цвет>]

Переопределить (погасить) точку

PAINT (x, y) [, [{<цвет> | <маска>}] [, [<контур>] [, <фон>]]]

Окрасить фигуру

DRAW “<строка команд>

Изобразить сложную фигуру

COLOR [<передний план>][, <фон>]

Установить цвет символов и фона (режимы 7-10, 12)

SCREEN [<режим>]

Установить режим работы дисплея

Turbo Pascal

Назначение

Arc (x, y, StAngle, EndAngle, radius)

Строит дугу окружности радиусом radius с центом в точке (x, y) от начального угла StAngle до конечного EndAngle против часовой стрелки текущим цветом.

Circle (x, y, radius)

Строит окружность текущим цветом с радиусом radius с координатами центра в точке (0, 0).

ClearDevice

Очищает графический экран, закрашивает его в цвет фона, заданный процедурой SetBkColor, устанавливает указатель текущей позиции в точку (0, 0) и подготавливает экран для вывода.

Ellipse (x, y, StAngle, EndAngle, xradius, yradius)

Рисует дугу эллипса с центом в точке (x, y) от начального угла StAngle до конечного EndAngle текущим цветом. xradius, yradius – горизонтальная и вертикальная полуоси эллипса.

Line (x1, y1, x2, y2)

Проводит линию текущего цвета между точками с координатами (x1, y1) и (x2, y2) без изменения значения указателя координат.

SetBkColor (Color)

Устанавливает цвет фона экрана с номером Color.

SetColor (Color)

Устанавливает текущий цвет, которым будут изображаться контуры фигур и тексты. Color – устанавливаемый цвет.

Rectangle (x1, y1, x2, y2)

Строит контур прямоугольника текущим цветом с координатами левого верхнего угла (x1, y1) и правого нижнего – (x2, y2). Цвет задается процедурой SetColor.

PutPixel (x, y, pixel)

Закрашивает пиксель с заданными координатами (x, y) в цвет pixel.

Углы задаются в радианах!

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

  • Организуется цикл, параметр которого используется для задания координат объекта

  • Рисуется изображение цветом, отличным от цвета фона

  • «Фиксация» рисунка (пустой цикл с большими границами)

  • Рисуется изображение в прежних координатах, но цветом фона

  • Изменяется параметр цикла

При анимации вращающихся объектов удобнее использовать полярные координаты:

x = ρ*cosφ

y = ρ*sinφ

36

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]