Содержание

 

Предисловие.

Введение

ЧАСТЬ I. ОСНОВЫ КОМПЬЮТЕРНОЙ ГРАФИКИ

Глава 1. Основные понятия.

1.1. Визуализация изображений

1.2. Растровые изображения и их основные характеристики

Геометрические характеристики растра

Количество цветов

Оценка разрешающей способности растра

Примеры изображений для некоторых растровых устройств

1.3. Цвет.

Аддитивная цветовая модель RGB

Цветовая модель CMY

Другие цветовые модели

Кодирование цвета. Палитра

Формат файлов для хранения растровых изображений

1.4. Методы улучшения растровых изображений

Устранение ступенчатого эффекта

Дизеринг

1.5. Эволюция компьютерных видеосистем

Глава 2. Координатный метод

2.1. Преобразование координат

Аффинные преобразования на плоскости

Трехмерное аффинное преобразование

2.2. Преобразование объектов

Аффинные преобразования объектов на плоскости

Трехмерное аффинное преобразование объектов

2.3. Связь преобразований объектов с преобразованиями координат

2.4. Проекции

Мировые и экранные координаты

Основные типы проекций

Аксонометрическая проекция

Перспективная проекция..

Отображение в окне

2.5. Выводы

Глава 3. Базовые растровые алгоритмы

3.1. Алгоритмы вывода прямой линии

Прямое вычисление координат

Инкрементные алгоритмы

3.2. Алгоритм вывода окружности

3.3. Алгоритм вывода эллипса

3.4. Кривая Безье

Геометрический алгоритм для кривой Безье

3.5. Алгоритмы вывода фигур

Алгоритмы закрашивания

Алгоритмы заполнения, которые используют математическое описание

контура

3.6. Стиль линии. Перо

Алгоритмы вывода толстой линии

Алгоритмы вывода пунктирной линии

 

Алгоритм вывода толстой пунктирной линии

3.7. Стиль заполнения. Кисть. Текстура

3.8. Фракталы

Глава 4. Методы и алгоритмы трехмерной графики

4.1. Модели описания поверхностей

Аналитическая модель

Векторная полигональная модель

Воксельная модель

Равномерная сетка

Неравномерная сетка. Изолинии

Преобразование моделей описания поверхности

4.2.  Визуализация объемных изображений

Каркасная визуализация

Показ с удалением невидимых точек

4.3. Закрашивание поверхностей

Модели отражения света

Алгебра векторов

Вычисление нормалей и углов отражения

Метод Гуро

Метод Фонга

Преломление света

Вычисление вектора преломленного луча

Трассировка лучей

Глава 5. Примеры изображения трехмерных объектов

5.1. Шар

Каркасное изображение

Удаление невидимых точек

Многогранник с закрашиванием граней

Закрашивание граней методом Гуро

 Учет расположения источника света

Градиентное закрашивание круга

Наложение текстуры на шар

Наложение текстуры на многогранник

Вариации формы шара

5.2. Цилиндр

Каркасное изображение

Удаление невидимых точек

Освещенный многогранник

Гладкая боковая поверхность

Наложение текстуры

Вариации формы цилиндра

5.3. Тор

Вариации формы тора

 5.4 Общие замечания

Модель описания и способ отображения

"Квадратирование" и триангуляция

ЧАСТЬ II. ПРОГРАММИРОВАНИЕ КОМПЬЮТЕРНОЙ ГРАФИКИ

Глава 6. Разработка графических программ для Windows

6.1. Первый пример программы для Windows

6.2. Модульность программ

6.3. Использование графических функций API Windows

6.4. Контекст графического устройства

Контекст окна на экране дисплея

Контекст принтера

Контекст метафайла

Контекст памяти

Параметры контекста графического устройства

Глава 7. Графические примитивы API Windows

7.1. Отдельные пикселы

Подвижные шары

Фрактал Мандельброта

Трассировка лучей

7.2. Линии

Стиль линии. Перо

Меридианы и параллели

Фрактал из линий

7.3. Фигуры

Стиль заполнения. Кисть

Рисование поверхности

7.4. Шрифт TrueType

Глава 8. Примеры использования классов языка C++

8.1. Анализ и оптимизация программы

8.2. И снова анализ и оптимизация программы

Глава 9. Пример анимации

9.1. Поверхность Безье

9.2. Градиентное закрашивание

Глава 10. Графическая библиотека OpenGL

10.1. Пример программы OpenGL

10.2. Координаты и матрицы

10.3. Пример трехмерной графики

10.4. Моделирование освещения

10.5. Стандартные объемные формы

10.6. Текстура

Приложение

Глоссарий