Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Работа в графическом видеорежиме






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

Количество цветов зависит от количества бит, отведенных в видеобуфере под одну точку. Рассмотрим основные варианты.

1. «1 точка - 1 бит» - монохромный режим: каждая точка высвечивается либо основным цветом, если в видеобуфере для точки записана 1, либо цветом фона, если в видеобуфере записан 0.

2. «1 точка - 2 бита» - режим с двумя трехцветными палитрами:

3. «1 точка - 4 бита» - режим, использующий 16-цветную палитру. В этом режиме в отличие от предыдущих в видеобуфер заносится не цвет точки, а номер регистра палитры, в котором записан нужный цвет.

Для записи цвета используется 6 бит по схеме RGBrgb, причем первые три бита кодируют 2/3 яркости цвета, а вторые три бита - оставшуюся 1/3 яркости, так максимально яркий красный цвет будет кодироваться двумя единицами в первом и четвертом битах:

R   G   В   г   g   b  
           

Таким образом, каждый цвет имеет четыре градации яркости: 0, 1/3, 2/3, 1, что позволяет кодировать 43 = 64 варианта цвета. На экране в этом режиме одновременно может присутствовать не более 16 цветов, так как имеется всего 16 регистров палитры.

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

4. «1 точка - 8 бит» - режим, использующий палитру на 256 цветов. В этом режиме используется та же идея записи кода цвета не в видеобуфер, а в регистры палитры, что и в предыдущем режиме, но используется 256 регистров палитры, в которых под запись цвета используется 18 бит. Из этих 18 бит под кодирование яркости каждого цвета используется 6 бит, обеспечивая 64 градации яркости каждого цвета. В этом режиме максимальная яркость красного цвета будет кодироваться так

 

Red   Green   Blue  
1 1 1 1 1   0 0   0 0 0 0  

 

Таким образом, на экране можно одновременно видеть 256 цветов из 643 = 262144 возможных.

В настоящее время в основном используются режимы, в которых цвет кодируется еще большим количеством бит. К сожалению, работа в этих режимах и даже в режиме 256 цветов не обеспечивается стандартными средствами Borland Pascal 7.0.

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

Последнее время из имеющихся драйверов практически используется только драйвер VGA, который обеспечивает несколько различных режимов работы. Этот драйвер находится в файле EGAVGA.BGI и ему в модуле Graph соответствует поименованная константа VGA = 9.

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






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.