logo
TurboProlog / Документация / TOM_1

Палитра

Графический экран состоит из массива пикселов. Каждый пиксел отобра-

жает одну цветную точку на экране. Значения пиксела не определяет его

цвет явно. Оно задает только индекс в таблице цветов, которая называется

палитрой. Вход в палитру, соответствующий данному значению пиксела содер-

жит точную информацию о цвете этого пиксела.

Эта непрямая схема имеет несколько значений. Хотя аппаратура имеет

возможность отображать много цветов, одновременно на экране может отобра-

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

одновременно отображаться на экране равно количеству входов в палитру

(размеру палитры - size). Например, в EGA аппаратура может отображать 64

различных цвета, но только 16 из них одновременно, поэтому размер палитры

в EGA size = 16.

Размер палитры определяет границы значений пиксела от 0 до (size-1).

Предикат getmaxcolor возвращает наибольшее доступное значение пиксела

(size-1) для данного графического драйвера и режима.

В этой главе часто используется понятие цвет: текущий цвет рисова-

ния, текущий цвет заполнения, цвет пиксела. Фактически этот цвет аналоги-

чен значению пиксела - это всего лишь индекс входа в палитру. Только па-

литра определяет действительный цвет экрана. Управляя палитрой можно из-

менять цвет на экране не меняя значения пикселов (т.е. не пользуясь изме-

нением цвета рисования, цвета заполнения и т.д.).