- •I. ОСНОВНЫЕ ПОНЯТИЯ СОВРЕМЕННОЙ КОМПЬЮТЕРНОЙ ГРАФИКИ
- •1.1. Философия развития средств визуализации
- •1.2. Понятия компьютерной графики
- •1.3. Основные направления современной компьютерной графики
- •Контроль знаний.
- •2.1. Устройства видеовывода
- •2.1.1. Видеоадаптеры
- •2.1.1.1. История видеосистем персональных компьютеров
- •2.1.1.2. Устройство видеоадаптера VGA
- •2.1.1.3. Видеоадаптеры SVGA
- •2.1.1.4. Современные тенденции конструирования видеоадаптеров
- •2.1.2. Мониторы
- •2.1.3.Принтеры
- •2.1.4. Плоттеры
- •2.2. Устройства ввода графической информации
- •2.2.1. Мышь в графических режимах
- •2.2.2. Тачпад и Трекпойнт
- •2.2.3. Дигитайзеры
- •2.2.4. Сканеры
- •Контроль знаний.
- •3.1. Основные определения
- •3.2. Особенности цветового зрения человека
- •3.3. Цветовые модели компьютерной графики
- •3.3.1. Аддитивные цветовые модели
- •3.3.2 Субтрактивные цветовые модели
- •3.3.3. Перцепционные цветовые модели. Модели CIE
- •Контроль знаний.
- •IV. РАСТРОВАЯ ГРАФИКА
- •4.1. Геометрические характеристики растра
- •4.2. Методы улучшения растровых изображений
- •4.2.1. Устранение ступенчатого эффекта – антиалиасинг (antialiasing)
- •4.2.2. Эмуляция оттенков цвета – дизеринг (dithering)
- •4.3. Алгоритмические основы растровой графики
- •4.3.1. Поиск оптимального алгоритма рисования прямой
- •4.3.2. Инкрементный алгоритм Брезенхема (Bresenham) для прямой
- •4.3.3. Алгоритмы рисования окружности
- •4.3.4. Заполнение многоугольников
- •4.3.4.1. Построчное заполнение
- •4.3.4.2. Сортировка методом распределяющего подсчета
- •4.3.5. Отсечение отрезков
- •4.3.5.1. Двумерный алгоритм Коэна-Сазерленда
- •4.3.6. Отсечение многоугольника
- •4.3.6.1. Алгоритм Сазерленда-Ходгмана
- •4.3.6.2. Алгоритм отсечения многоугольника Вейлера-Азертона
- •Контроль знаний.
- •5.1. Введение в векторную графику
- •5.2. Элементы (объекты) векторной графики. Объекты и их атрибуты
- •5.3. Цвет в векторной графике
- •5.4. Структура векторной иллюстрации
- •5.5. Применение векторной графики
- •5.6. Графические пакеты для работы с растровой графикой
- •Контроль знаний.
- •VI. ТРЁХМЕРНАЯ ГРАФИКА
- •6.1. Основные понятия трехмерной графики
- •6.3. Геометрическое моделирование
- •6.3.1. Элементы моделей
- •6.3.2. Методы построения моделей
- •6.4. Построение проекций пространственных образов
- •6.5. Алгоритмические основы трёхмерной графики
- •6.5.1. Преобразования координат
- •6.5.2. Параметрическое задание кривых на плоскости и в пространстве. Кривые Безье
- •6.5.3. Удаление невидимых частей изображения. Закрашивание граней
- •6.5.3.1 2D алгоритм Сазерленда-Кохена
- •6.5.3.2 3D алгоритм Робертса, алгоритм Варнока
- •6.6. Фракталы
- •Контроль знаний.
- •VII. ФОРМАТЫ ГРАФИЧЕСКИХ ФАЙЛОВ
- •7.1. Основные понятия
- •7.2. Растровые форматы файлов и алгоритмы сжатия
- •7.2.1. Формат PCX и групповое кодирование
- •7.2.2. Формат BMP
- •7.2.3.Формат TGA (Targa)
- •7.2.4. Формат GIF
- •7.2.5. Aлгоритм сжатия LZW для GIF
- •7.2.6. Формат JPEG и алгоритм сжатия с потерями
- •7.2.7. Формат RAW для профессионального использования
- •7.2.8. Формат FIF и фрактальное сжатие
- •Контроль знаний.
размещается в первом байте плоскости0, пиксель (1,0) – в первом байте плоскости 1 (по тому же отображаемому адресу)
Рисунок 4 – Формирование пикселя в режиме Х
2.1.1.3. Видеоадаптеры SVGA
Дальнейшее развитие видеоадаптеров для компьютеров IBM PC связано с выходом на рынок большого количества сторонних фирм-производителей специализированных графических адаптеров. Основная тенденция развития адаптеров начала 90–х: повышение разрешающей способности и количества цветов. В то время были известны стандартыIBM 8514 (для САПР, разрешение 1024×768) и Targa24 (системы видеомонтажа, видеорежим True Color).
Была проведена попытка стандартизовать графические адаптеры, лучшие, чем VGA (которые стали называть SuperVGA или SVGA), для обеспечения минимальной совместимости при работе в различных графических режимах. Ас-
социацией VESA (Video Electronic Standards Association) был разработан стан-
дартный набор функций, который должна поддерживать любая современная видеокарта. Эти функции обеспечивают получение необходимой информации о карте, установку заданного режима из стандартного списка расширенных -ре жимов и работу с видеоинформацией в этом режиме.
Основные особенности VESA SVGA видеокарт:
наличие стандартного набора функций, обеспечивающих получение необходимой информации о карте, установку заданного графического режима.
Самый простой способ получить информацию о видеокарте– посмотреть ее ROM, отображаемое в RAM процессора с адреса С0000. Там обычно стоит название фирмы (типа "REALTEK VGA", "TRIDENT").
17
Но лучше воспользоваться уже упоминавшимся прерыванием10h со значениями регистров в соответствии сVESA-спецификацией. Карта возвращает информацию о модели, фирме-изготовителе, размере видеопамяти, параметрах поддерживаемых режимов и т.п.
Пример реализации стандартной VESA-функции установки графического режима (например режима 101h – 640х480х256 цветов):
void SetVESAMode ( int mode )
{
asm {
mov ax, 4F02h mov bx, mode int 10h
}
}
2.1.1.4. Современные тенденции конструирования видеоадаптеров
Первоначально графический процессор содержал лишь схемы, ускоряющие обработку 2D-графики. Позже к ним были добавлены блоки ускорения3Dграфики, схемы преобразования цветовых пространств для видеосигналов, видеовыход TV-сигнала, аппаратные схемы поддержки декодирования данных MPEG-2 для воспроизведения DVD, TMDS трансмиттер5, VIP-разъемы (Video Interface Port – порт видеоинтерфейса) для подключения дополнительных устройств6.
Ускорители 3D графики аппаратно реализуют векторные операции(предварительная подготовка и расчёт трёхмерных изображений, векторный конвейер, трансформация и подбор текстурных карт) и операции рендеринга изображения (обычно процессор содержит несколько пиксельных конвейеров с мультитекстурированием и поддержкой различных режимов наложения текстур; обеспечивает работу с буфером глубины(Z-буфером), расчёт освещения, затенения, отражения, преломления и альфа-канала)7
5
Transition Minimised Differential Signaling – протокол дифференциальных сигналов с минимизированными переходами Позволяющий подключать по цифровому интерфейсу(DVI – Digital Video Interface) мониторы (плазменные панели).
6
Например, внешних MPEG2 кодеров/декодеров Графическая программа Графические библиотеки
7
Подробнее об этих терминах в последующем изложении
18