- •Содержание
- •Предисловие
- •Области применения компьютерной графики
- •Цифровое представление графики
- •Основные операции над графическими объектами
- •История компьютерной графики
- •Развитие аппаратных и программных средств
- •Применение в кинематографе
- •Технические средства компьютерной графики: мониторы, графические адаптеры, плоттеры, принтеры, сканеры
- •Устройства вывода. Экраны
- •Устройства вывода твердых копий
- •Устройства ввода. Сканеры
- •Устройства ввода. Цифровые фотоаппараты
- •Устройства координатного ввода
- •Свойства растровых изображений
- •Форматы хранения графической информации
- •Цветовые модели растровых изображений
- •Системы координат, типы преобразований графической информации
- •Проблемы геометрического моделирования
- •Понятие однородных координат
- •Геометрические операции над моделями
- •Виды геометрических моделей их свойства, параметризация моделей
- •Поверхностные модели
- •Аналитические поверхности
- •Составные поверхности
- •Параметризация моделей
- •2D и 3d моделирование в рамках графических систем
- •Методы построения 3Dтел
- •Анализ твердотельных моделей
- •Алгоритмы визуализации: отсечения, развертки, удаления невидимых линий и поверхностей, закраски
- •Полигональная визуализация и линии очерка
- •7Рис. 8.59 – Тор (а), параллельная (б) и центральная (в) проекции его линий очерка.
- •Основные растровые алгоритмы
- •Удаление скрытых линий
- •Способы создания фотореалистических изображений
- •Тенденции построения современных графических систем: графическое ядро, приложения, инструментарий для написания приложений
- •Понятие конвейеров ввода и вывода графической информации
- •Cтандарты в области разработки графических систем
- •Библиотека DirectX
- •Графические процессоры, аппаратная реализация графических функций
- •3D акселерация
- •Компьютерная анимация
- •Принципы создания анимации
- •Классификация и обзор современных графических систем
- •Основные функциональные возможности современных графических систем
- •Графические системы класса 2d
- •Графические системы класса 3d
- •Принципы построения “открытых” графических систем
- •Организация диалога в графических системах
- •Предметный указатель
- •Список литературы
Алгоритмы визуализации: отсечения, развертки, удаления невидимых линий и поверхностей, закраски
Созданную 3Dмодель поверхности или тела необходимовизуализировать – вывести на экран. При визуализации трехмерные объекты проецируются на плоскость, поэтому любая визуализация, в конечном счете, сводится к построению тех или иных проекций.
Все проекции делятся на два вида – центральныеипараллельные(Рис. 8 .54).
|
|
|
|
|
|
|
а) |
б) |
Рис. 8.54 – Центральная (а) и параллельная (б) проекции.
У центральных проекций имеется точка наблюдения, в которой сходятся лучи, строящие проекцию. У параллельной проекции точка наблюдения вынесена в бесконечность. При центральной (перспективной) проекции изображение более близко к тому, которое образуется на сетчатке глаза, поэтому оно кажется более реалистичным. Однако центральные проекции искажают размеры объекта, поэтому их применение недопустимо в конструкторской документации.
Параллельные проекции любой точки объемного тела получаются очевидным образом путем построения перпендикуляра к проекционной плоскости, проходящего через заданную точку тела. Центральные проекции точек можно получить матричным методом при помощи перемножения соответствующих матриц преобразования.
Поскольку тела состоят в общем случае из плавных кривых, необходимо иметь способ построения проекций не просто отдельных точек, но и произвольных кривых линий. Для получения проекционного изображения кривой используется понятие полигона кривой– ломаной линии, состоящей из отрезков и аппроксимирующей заданную кривую (Рис. 8 .55).



Рис. 8.55 – Полигон кривой.

Рис. 8.56 – Определение шага полигона.
Точки на полигоне идут с некоторым шагом, который зависит от принятой точности отображения . Вычислим допустимый шаг точек полигона. Пусть кривая задана уравнениемr(t). Точкаt0(Рис. 8 .56) лежит на кривой и является одной из вершин полигона. Нужно найти точку, являющуюся следующей вершиной полигона, причем отклонение полигона от кривой не должно превышать. Кривую в окрестностях точкиt0 можно представить как сегмент окружности радиуса:
|
|
(0)
|
По теореме Пифагора длина хорды h, соединяющей точкиt0иt1, равна
|
|
(0)
|
Поскольку величина
hмала, можно считать,
что длина хорды примерно равна длине
дуги. Тогда приращение
с учетом (0) равно
|
|
(0)
|
Если кривая резко
меняет направление, может потребоваться
заметное уменьшение величины
для
соблюдения заданной точности отображения.
Полигональная визуализация и линии очерка
Чтобы изобразить проекцию целого тела, а не отдельной кривой, используют наборы полигонов, называемые сетками. Обычно при визуализации строятся полигоны границ тела и нескольких его характерных линий (Рис. 8 .57).


Рис. 8.57 – Сетка визуализации тела.
Для повышения информативности и качества визуализации в сетку полигонов добавляют так называемые линии очерка (Рис. 8 .58). Линия очерка отделяет видимую часть поверхности или грани от невидимой (при заданной точке зрения).

Рис. 8.58 – Линии очерка поверхности.
У одной поверхности может быть несколько линий очерка. Каждая линия очерка является либо замкнутой кривой, либо ее концы лежат на краях поверхности. При этом параллельные и центральные проекции линий очерка одного и того же тела могут заметно различаться (7Рис. 8 .59).
|
|
|
|
|
а) |
б) |
в) |








