- •Федеральное агентство по образованию
- •Глава 3. Растровая графика. Базовые растровые алгоритмы 37
- •Глава 4. Векторная графика 77
- •Глава 5. Фрактальная графика 90
- •Глава 6. Цветовые модели компьютерной графики 95
- •Глава 7. Методы и алгоритмы построения сложных трехмерных объектов 128
- •Глава 8. Реалистическое представление сцен 146
- •Глава 9. Архитектуры графических систем 172
- •Глава 10. Стандартизация в компьютерной графике 180
- •Глава 11. Форматы графических файлов 196
- •Глава 12. Технические средства кг (оборудование кг) 214
- •Глава 1. Основные понятия
- •1.1 Разновидности компьютерной графики
- •Полиграфия
- •Мультимедиа
- •Сапр и деловая графика
- •Геоинформационные системы (гис)
- •1.2. Принципы организации графических программ
- •Растровые программы
- •Векторные программы
- •Фрактальные программы
- •Глава 2. Координаты и преобразования
- •2.1 Координатный метод
- •2.1.1. Преобразование координат
- •Простейшие двумерные преобразования
- •Однородные координаты и матричное представление двумерных преобразований
- •Композиция двумерных преобразований
- •Матричное представление трехмерных преобразований
- •Композиция трехмерных преобразований
- •Преобразование объектов
- •Преобразование как изменение систем координат
- •2.1.2 Аффинные преобразования на плоскости
- •2.2 Проекции
- •2.2.1 Мировые и экранные координаты
- •2.2.2 Основные типы проекций
- •При повороте на угол β относительно оси у (ординат), на угол α вокруг оси х (абсцисс) и последующем проектировании осиZ (аппликат) возникает матрица
- •Глава 3. Растровая графика. Базовые растровые алгоритмы
- •3.1 Растровые изображения и их основные характеристики
- •3.2 Вывод изображений на растровые устройства
- •3.3 Методы улучшения растровых изображений
- •3.21. Диагональное расположение ячеек 5x5
- •3.22. Диагональные структуры: а - сдвиг строк ячеек, б - ячейки другого типа
- •3.24. Набор чм-ячеек 5x5
- •3.4. Базовые растровые алгоритмы Алгоритмы вывода прямой линии
- •Инкрементные алгоритмы
- •Кривая Безье
- •Алгоритмы вывода фигур
- •Алгоритмы закрашивания
- •Стиль заполнения
- •3.5 Инструменты растровых графических пакетов
- •Инструменты выделения. Каналы и маски
- •Выделение
- •Инструменты выделения и маскирования
- •Гистограммы
- •Тоновая коррекция изображения
- •Уровни (Levels)
- •Цветовая коррекция и цветовой баланс
- •Фильтры (Plug-ins) и спецэффекты (Effects)
- •3.6 Преимущества и недостатки растровой графики
- •Глава 4. Векторная графика
- •4.1 Средства создания векторных изображений
- •4.2 Сравнение механизмов формирования изображений в растровой и векторной графике
- •4.3 Структура векторной иллюстрации
- •4.4 Математические основы векторной графики
- •4.5. Элементы (объекты) векторной графики
- •4.6. Достоинства и недостатки векторной графики
- •Глава 5. Фрактальная графика
- •5.1 Математика фракталов. Алгоритмы фрактального сжатия изображений
- •5.2 Обзор основных фрактальных программ
- •Глава 6. Цветовые модели компьютерной графики
- •6.1 Элементы цвета
- •6.1.1 Свет и цвет
- •6.1.2 Физическая природа света и цвета
- •6.1.3 Излученный и отраженный свет
- •6.1.4 Яркостная и цветовая информация
- •6.1.5 Цвет и окраска
- •6.2 Характеристики источника света
- •Стандартные источники
- •6.2.2 Особенности восприятия цвета человеком
- •Колбочки и палочки
- •Спектральная чувствительность глаза к яркости
- •Спектральная чувствительность наблюдателя
- •6.3 Цветовой и динамический диапазоны
- •6.4 Типы цветовых моделей
- •6.4.1 Аддитивные цветовые модели
- •Почему rgb-модель нравится компьютеру?
- •Ограничения rgb-модели
- •SRgb — стандартизированный вариант rgb-цветового пространства
- •6.4.2 Субтрактивные цветовые модели
- •Цветовая модель cmy
- •Ограничения модели cmyk
- •Возможности расширения цветового охвата cmyk
- •6.4.3 Перцепционные цветовые модели
- •Достоинства и ограничения hsb-модели
- •6.4.4 Системы соответствия цветов и палитры
- •Системы соответствия цветов
- •Назначение эталона
- •Кодирование цвета. Палитра
- •Глава 7. Методы и алгоритмы построения сложных трехмерных объектов
- •7.1 Модели описания поверхностей
- •7.1.1. Аналитическая модель
- •7.1.2 Векторная полигональная модель
- •7.1.3 Воксельная модель
- •7.1.4 Равномерная сетка
- •7.1.5 Неравномерная сетка. Изолинии
- •7.2. Визуализация трехмерных объектов
- •7.2.1 Каркасная визуализация
- •7.2.2 Показ с удалением невидимых точек
- •Глава 8. Реалистическое представление сцен
- •8.1 Закрашивание поверхностей
- •8.1.1 Модели отражения света
- •8.1.2 Вычисление нормалей и углов отражения
- •8.2 Метод Гуро
- •8.3 Метод Фонга
- •8.4. Имитация микрорельефа
- •8.5 Трассировка лучей
- •8.6 Анимация
- •Глава 9. Архитектуры графических систем
- •9.1 Суперстанции
- •9.2 Компоненты растровых дисплейных систем
- •9.3 Подходы к проектированию графических систем
- •9.4 Графические системы на базе сопроцессора i82786
- •9.5 Графические системы из набора сверх больших интегральных схем (сбис)
- •9.6 Растровый графический процессор dp-8500
- •9.7 Графические системы на универсальном процессоре
- •9.8 Высокоскоростные графические системы
- •9.9 Рабочие (супер)станции с использованием универсального вычислителя
- •Глава 10. Стандартизация в компьютерной графике
- •10.2 Международная деятельность по стандартизации в машинной графике
- •Деятельность iso, iec по стандартизации в машинной графике
- •10.3 Классификация стандартов
- •10.4 Графические протоколы
- •10.4.1 Аппаратно-зависимые графические протоколы
- •Протокол tektronix
- •Протокол regis
- •Протокол hp-gl
- •10.4.2 Языки описания страниц
- •Язык PostScript
- •Язык pcl
- •10.4.3 Аппаратно-независимые графические протоколы
- •10.4.4 Проблемно-ориентированные протоколы
- •Глава 11. Форматы графических файлов
- •11.1 Векторные форматы
- •11.2 Растровые форматы
- •11.3 Методы сжатия графических данных
- •11.4 Преобразование файлов из одного формата в другой
- •Преобразование файлов из растрового формата в векторный
- •Преобразование файлов одного векторного формата в другой
- •Глава 12. Технические средства кг (оборудование кг)
- •12.1 Видеоадаптеры
- •12.2 Манипуляторы
- •Дигитайзер
- •12.3 Оборудование мультимедиа
- •12.4 Мониторы
- •Характеристики мониторов
- •Аналоговые мониторы
- •Жидкокристаллические дисплеи
- •Газоплазменные мониторы
- •Видеокарта
- •Функции графического ускорителя
- •Выбор видеокарты под монитор
- •12.5 Видеобластеры
- •12.6 Периферия
- •12.6.1 Принтеры
- •12.6.2 Имиджсеттеры
- •12.6.3 Плоттеры
- •12.7 Модемы
- •12.8 Звуковые карты
- •12.9 Сканеры
- •Планшетные сканеры
- •12.10 Секреты графических планшетов (дигитайзеров)
- •Достоинства и недостатки графических планшетов
- •12.11 Цифровые фотоаппараты и фотокамеры
- •Литература
Векторные программы
Изображение, созданное в векторных программах, основывается на математических формулах, а не на координатах пикселов. Составляющие основу таких изображений кривые и прямые линии называются векторами. Так как при задании объектов на экране используются математические формулы, то отдельные элементы, изображения, создаваемые в векторных программах, – например, Adobe Illustrator, CorelDRAW и Macromedia FreeHand, – можно легко перемещать, увеличивать или уменьшать без проявления «эффекта ступенек». Так, для перемещения объекта достаточно перетащить его мышью. Компьютер автоматически пересчитывает его размер и новое местоположение.
Поскольку в этом случае изображение создаётся математически, векторные программы используются тогда, когда нужны чёткие линии. Они часто применяются при создании логотипов, шрифтов для вывода на плоттер и различных чертежей.
Когда вы видите изображение, созданное в векторной программе, его качество зависит не от исходного разрешения изображения, а от разрешающей способности устройства вывода (монитора, принтера, плоттера…). Так как качество изображения не основывается на разрешении, то изображение, созданное в векторных программах, как правило, имеет меньший объём файлов, чем построенное в программах побитового отображения. В векторных программах нет проблем и со шрифтами – большие шрифтовые массивы не образуют файлов огромного размера.
Фрактальные программы
Фрактал - это объект довольно сложной формы, которая получена в результате выполнения простого итерационного цикла над формой начальной, элементарной.
Одним из основных свойств фракталов является самоподобие. Объект называют самоподобным, когда увеличенные части объекта походят на сам объект и друг на друга.
Таким образом, в простейшем случае небольшая часть фрактала содержит информацию обо всем фрактале. Например, снежинка несет информацию о снежном сугробе, а горный камень имеет те же самые очертания, и что и горный хребет. Благодаря этому свойству можно использовать фракталы для генерирования поверхности местности, которая походит на саму себя, независимо от масштаба, в котором она отображена. Программы, получающие в последнее время широкое распространение и созданные по принципу генерации самоподобных фигур, явлются прекрасным инструментом в руках дизайнера, художника, разработчика WEB-приложений.
Отдельное перспективно напрвление развития фрактальных программ — создание алгоритма фрактального сжатия графической информации.
Более подробно о фрактальной графике будет рассказано в главе 5.
Глава 2. Координаты и преобразования
2.1 Координатный метод
Координатный метод был введен в XVIIвеке французскими математикамиР. Декартом и П. Ферма. На этом методе основываетсяаналитическая геометрия, которую можно считать фундаментом КГ. В современной КГ координатный метод широко используется.
2.1.1. Преобразование координат
Сначала рассмотрим общие вопросы преобразования координат. Пусть задана п-мерная система координат в базисе (k1, k2,.... kn), которая описывает положение точки в пространстве с помощью числовых значенийкi. В КГ наиболее часто используются двумерная (n= 2) и трехмерная (n= 3) системы координат.
Если задать другую, N-мерную, систему координат в базисе (m1, m2,...,т) и поставить задачу определения координат в новой системе, зная координаты в старой, то решение (если оно существует) можно записать в таком виде:
где fi — функция пересчетаi-й координаты, аргументами являются координаты в системеki,.Можно поставить и обратную задачу: по известным координатам (m1, m2,.... т) определить координаты (к1, k2,...,кn ). Решение обратной задачи запишем так:
где Fi — функцииобратного преобразования.
В случае если размерности систем координат не совпадают (п ≠ N), осуществить однозначное преобразование координат чаще всего не удается. Например, по двумерным экранным координатам нельзя без дополнительных условий однозначно определить трехмерные координаты отображаемых объектов.
Линейные преобразования наглядно записываются в матричной форме:
Здесь матрица коэффициентов (аij) умножается на матрицу-столбец (ki), и в результате будем иметь матрицу-столбец (mi).
Мы и дальше часто будем использовать умножение матриц, поэтому сделаем небольшой экскурс в матричную алгебру. Для двух матриц —
матрицы А размерами(т х п) и В —(n x p):
матричным произведением является матрицаС = АВ размерами (m х р):
С =для которой элементыcij рассчитываются по формуле