Манипулирование экраном и графическими окнами
Ниже приводится краткий обзор функций манипулирования с экраном, графическими окнами, битовыми образами и элементами изображения:
| 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 (которая отображает данный элемент
изображения на экране заданным цветом) можно также манипулировать
цветом отдельных элементов изображения.
