
- •Оглавление
- •Глава 1. Основные понятия………………………………………………….……………….6
- •Глава 2. Координаты и преобразования…………………………………………………...13
- •Глава 3. Растровая графика. Базовые растровые алгоритмы……………………… 37
- •Глава 4. Векторная графика…………………………………………………………….…..78
- •Глава 5. Фрактальная графика……………………………………………………………..91
- •Глава 6. Цветовые модели компьютерной графики………………………………….…97
- •Глава 7. Методы и алгоритмы построения сложных трехмерных объектов……. 137
- •Глава 9. Архитектуры графических систем …………………………………………. 181
- •Глава 10. Стандартизация в компьютерной графике……………………………….….189
- •Глава 11. Форматы графических файлов……………………………………………..…205
- •Глава 1. Основные понятия
- •1.1 Разновидности компьютерной графики
- •Полиграфия
- •Мультимедиа
- •Сапр и деловая графика
- •Пользо-
- •Геоинформационные системы (гис)
- •1.2. Принципы организации графических программ
- •Растровые программы
- •Векторные программы
- •Фрактальные программы
- •Глава 2. Координаты и преобразования
- •2.1 Координатный метод
- •2.1.1. Преобразование координат
- •Простейшие двумерные преобразования
- •Однородные координаты и матричное представление двумерных преобразований
- •Композиция двумерных преобразований
- •Матричное представление трехмерных преобразований
- •Композиция трехмерных преобразований
- •Преобразование объектов
- •Преобразование как изменение систем координат
- •Проекции
- •Мировые и экранные координаты
- •Основные типы проекций
- •Глава 3. Растровая графика. Базовые растровые алгоритмы
- •3.1 Растровые изображения и их основные характеристики
- •Вывод изображений на растровые устройства
- •Методы улучшения растровых изображений
- •Устранение ступенчатого эффекта
- •Дизеринг
- •Диагональное расположение ячеек 5x5
- •Диагональные структуры: а - сдвиг строк ячеек, б - ячейки другого типа
- •Набор чм-ячеек 5x5
- •3.4. Базовые растровые алгоритмы Алгоритмы вывода прямой линии
- •Инкрементные алгоритмы
- •Кривая Безье
- •Алгоритмы вывода фигур
- •Алгоритмы закрашивания
- •Стиль заполнения
- •Инструменты растровых графических пакетов
- •Инструменты выделения. Каналы и маски
- •Выделение
- •Инструменты выделения и маскирования
- •Гистограммы
- •Тоновая коррекция изображения
- •Уровни (Levels)
- •Цветовая коррекция и цветовой баланс
- •Фильтры (Plug-ins) и спецэффекты (Effects)
- •Преимущества и недостатки растровой графики
- •Глава 4. Векторная графика
- •Средства создания векторных изображений
- •Математические основы векторной графики
- •Достоинства и недостатки векторной графики
- •Глава 5. Фрактальная графика
- •Математика фракталов. Алгоритмы фрактального сжатия изображений
- •Обзор основных фрактальных программ
- •Глава 6. Цветовые модели компьютерной графики
- •6.1 Элементы цвета
- •Свет и цвет
- •Физическая природа света и цвета
- •Излученный и отраженный свет
- •Яркостная и цветовая информация
- •Цвет и окраска
- •Характеристики источника света
- •Стандартные источники
- •Особенности восприятия цвета человеком
- •Колбочки и палочки
- •Спектральная чувствительность глаза к яркости
- •Спектральная чувствительность наблюдателя
- •Цветовой и динамический диапазоны
- •Типы цветовых моделей
- •Аддитивные цветовые модели
- •Почему rgb-модель нравится компьютеру?
- •Ограничения rgb-модели
- •SRgb — стандартизированный вариант rgb-цветового пространства
- •Субтрактивные цветовые модели
- •Цветовая модель cmy
- •Ограничения модели cmyk
- •Возможности расширения цветового охвата cmyk
- •Технология HiFi Color
- •Использование плашечных цветов
- •Перцепционные цветовые модели
- •Достоинства и ограничения hsb-модели
- •Системы соответствия цветов и палитры
- •Системы соответствия цветов
- •Назначение эталона
- •Кодирование цвета. Палитра
- •Триадные и плашечные цвета
- •Цветовые режимы
- •Глава 10. Стандартизация в компьютерной графике
- •Международная деятельность по стандартизации в машинной графике
- •Деятельность iso, iec по стандартизации в машинной графике
- •Классификация стандартов
- •Графические протоколы
- •Аппаратно-зависимые графические протоколы
- •Протокол tektronix
- •Протокол regis
- •Протокол hp-gl
- •Языки описания страниц
- •Язык PostScript
- •Язык pcl
- •Аппаратно-независимые графические протоколы
- •Проблемно-ориентированные протоколы
Композиция трехмерных преобразований
Путем объединения элементарных трехмерных преобразований можно получить другие преобразования. В этом разделе показано, как это сделать. Задача состоит в том,
чтобы преобразовать отрезки P1P2 и P1P3 (рис. 2.5) из начальной позиции в конечную. Точка Pi переносится в начало координат, P1P2 располагается вдоль отрицательной полуоси x, а P1P3 помещается в плоскости yz в той ее половине, где ось у положительна. На длины отрезков преобразование не воздействует.
Как и прежде, разобьем сложную задачу на более простые. В данном случае преобразование можно выполнить за четыре шага:
Перенос точки Pi в начало координат.
Поворот вокруг оси у до совмещения P1P2 с плоскостью уz.
Поворот вокруг оси x до совмещения P1P2 с отрицательной полуосью Z.
Шаг 2. Поворот вокруг оси у. На рис. 2.5 показаны отрезки P1P2 после шага 1 и
проекция P1P2 на плоскость xz. Поворот производится на положительный угол θ, для
которого
Как и ожидалось, x-компонента Р2 равна нулю.
Рис. 2.5. Композиция преобразований
где
Запись обозначает длину Результатом поворота на шаге 3 является
т. е. теперь совпадает с отрицательной полуосью z.
Шаг
4.
Поворот
вокруг
оси
z.
На
рис.
2.6
показаны
и
после
шага
3,
когда
Р2'" лежит на отрицательной полуоси z, а Р3'" - в точке
Поворот производится на
положительный
угол
, для
которого
Шаг
4 является
последним
шагом,
после
которого
получается
конечный
результат,
показанный
на рис.
2.6.
Результирующая
матрица
описывает
искомое
преобразование,
где
Рис. 2.6. Окончание композиции преобразований
Преобразование объектов
Преобразование объектов можно описать так. Пусть любая точка, принадлежащая
определенному объекту, имеет координаты (k1, k2,..., kn ) в n-мерной системе координат. Тогда преобразование объекта можно определить как изменение положения точек объекта. Новое положение точки пространства соответствует новым значениям координат (т1, т2,..., тn).
Соотношение между старыми и новыми координатами для всех точек объекта (т1, т2,..., тn) = F(k1, k2,..., kn ) и будет определять преобразование объекта, где F—функция преобразования.
Классифицировать преобразования объектов можно согласно типу функции преобразования и типу системы координат.
Например, преобразование объектов на плоскости можно определить так:
В
трехмерном
пространстве: