Четвертый Borland C++ и его окружение

Манипулирование экраном и графическими окнами


Ниже приводится краткий обзор функций манипулирования с экраном, графическими окнами, битовыми образами и элементами изображения:

Функции работы с экраном Описание

cleardevice Очищает экран (активную страницу).
setactivepage Устанавливает активную страницу для

графического вывода.

setvisualpage Устанавливает номер видимой графической страницы.

Функции работы с графическими окнами Описание

clearviewport Очищает текущее графическое окно.
getviewsettings Возвращает информацию о текущем графическом окне.
setviewport Устанавливает текущее графическое окно



для направления на него графического

вывода.

Функции работы с битовыми образами Описание

getimage Записывает битовый образ в заданный

участок памяти.

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

память битовый образ.

Функции работы с элементами изображения Описание

getpixel Получает цвет элемента изображения в

(x,y).

putpixel Помещает элемент изображения на экран в

точку (x,y).

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

можно сразу очистить весь экран. Данная подпрограмма стирает экран и помещает текущую позицию в графическое окно, но при этом

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

(типы линии, заполнения и текста; раскраска, установки графического окна и т.д.).

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

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

функций setactivepage и setvisualpage, соответственно, вы можете

указать активную страницу экрана (т.е. куда будет направлен вывод

графических функций), и визуальную (отображаемую) страницу экрана

(т.е. страницу, находящуюся в текущий момент на дисплее).




Когда ваш экран находится в графическом режиме, с помощью

функции setviewport вы можете определить графическое окно (или

прямоугольное "виртуальное окно") на экране. Позиция графического

окна задается в абсолютных экранных координатах. Кроме того, задается активное или неактивное состояние функции "отсечения".

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

clearviewport. Для того, чтобы получить абсолютные экранные координаты и состояние "отсечения", следует воспользоваться функцией

getviewsettings.

Можно взять часть экранного образа при помощи функции

getimage, вызвать imagesize для вычисления числа байт для хранения этого образа в памяти, а затем вернуть образ на экран (в любую желаемую позицию) с помощью функции putimage. Координаты всех

функций вывода (черчения, заполнения, тексты и т.д.) зависят от

выбранного графического окна.

Благодаря функциям getpixel (возвращающей цвет данного элемента изображения) и putpixel (которая отображает данный элемент

изображения на экране заданным цветом) можно также манипулировать

цветом отдельных элементов изображения.


Содержание раздела