Цвет пиксела формируется в электронно-лучевой трубке тремя электронными лучами, которые перемещаются по строкам растра и определяют интенсивность
Часть 1. Программирование для Windows
красной, зеленой и синей составляющих цвета. Этот процесс называется разверткой растра. Если сканирующий луч перемещается по строкам последовательно, то развертка называется прогрессивной. Если же сканируются сначала все четные, потом все нечетные строки, развертка называется чересстрочной (interlaced). Сигналы управления интенсивностью лучей и разверткой формируются графическим адаптером. При программировании для задания цвета используют три байта (RGB). По одному байту расходуется на красный, синий и зеленый компоненты цвета. Коды цвета считываются из видеопамяти и преобразуются цифроаналоговыми преобразователями адаптера в аналоговый сигнал, управляющий интенсивностью лучей. В LCD-дисплеях нет сканирующего электронного луча, но взаимодействие с адаптером не изменяется. Адаптер выдает сигналы, задающие три компонента цвета точки, а также определяет импульсы строчной и кадровой синхронизации, задающие положение текущей точки на экране и импульсы гашения при обратном ходе луча.
Отдельно следует упомянуть вопросы создания изображений на бумаге. Краски, применяемые в цветных принтерах, не излучают, а поглощают свет в определенном диапазоне частот. Поэтому, чтобы получить красный цвет, надо смешать краску, поглощающую зеленый, с краской, поглощающей синий цвет. Цветовая модель CMY предполагает использование красок цветов cian, magenta и yellow, поглощающих, соответственно-красный, зеленый и синий цвета. Но для унификации программного обеспечения при выводе графических примитивов на принтер цвет также задается интенсивностью компонентов RGB.
^ Создание простейшего 1 приложения Параметры функции WinMain
В этой главе описывается создание приложений в среде Windows. При этом рассмотрение не заходит далеко. Нас будет интересовать лишь тот объем базовых знаний, который позволит в дальнейшем изучать компьютерную графику, не привлекая дополнительной литературы. Более широкие сведения о программировании с использованием API Windows, библиотек MFC, ATL можно найти в соответствующей литературе [1], [2].