- •Элементы интерактивной компьютерной графики
- •Класс 2: двухуровневые или представляемые в нескольких «цветах» изображения
- •Структура графического изображения
- •Блок-схема графической системы
- •Методы кодирования графической информации
- •Позиционные методы кодирования ги. Рецепторный метод кодирования
- •Метод тетрарного дерева
- •Структурные методы кодирования Цепной метод кодирования
- •Кусочно – линейная аппроксимация контура изображения
- •Аппроксимация группы точек окружностью
- •Аналитические методы кодирования
- •Методы структурно – символического кодирования
- •Типичная система команд дисплейного процессора
- •Форматы дисплейных команд
- •А) Команды, управляющие лучом гд.
- •Геометрические преобразования
- •Двумерные преобразования Перенос (сдвиг)
- •Масштабирование
- •Поворот изображения
- •Однородные координаты и матричное представление двумерных преобразований
- •Композиция двумерных преобразований
- •Вопросы эффективности
- •Матричное представление трехмерных преобразований
- •Видовая операция (отсечение части изображения по прямоугольному окну)
- •Высокопроизводительные графические преобразования
- •Алгоритмы растровой графики
- •Алгоритм Брезенхэма для отрезков прямых
- •Растровая развертка окружностей
- •Алгоритм брезенхема для генерации окружности
- •Типы графических дисплеев Векторный дисплей
- •Организация памяти в растровых графических дисплеях
- •Организация дисплейного файла
Высокопроизводительные графические преобразования
Процесс генерации изображения, как правило, распадается на две фазы:
- преобразование модели объекта, извлеченного из базы данных, включая геометрические операции над данными (поворот, перенос, масштабирование, параллельное или центральное проецирование и отсечение);
- визуализация получившихся в результате линий и многоугольников (удаление невидимых частей объекта, закраска видимых поверхностей, преобразование в растровую форму).
Геометрические операции.
Для создания иллюзии плавного движения образ объекта или сцены на экране должен перевычисляться и обновляться с частотой не менее 30 кадров в секунду. В растровых системах при этом необходимо не только вычислять в реальном времени координаты вершин всех составляющих изображение многоугольников, но и производить закраску каждого из них с учетом освещенности, прозрачности и т.д. реальные же изображения могут состоять из десятков тысяч отрезков и многоугольников.
Поэтому для выполнения геометрических преобразований и отсечения достаточно сложных моделей объектов в реальном масштабе времени требуются весьма значительные вычислительные мощности. Не все стандартные микропроцессоры обладают такими мощностями. Поэтому геометрические преобразования и отсечение часто выполняются с помощью специализированных арифметических процессоров, имеющих производительность сотни и тысячи Мфлопс.
Для геометрических преобразований и отсечения разработан ряд специализированных вычислительных устройств.
Геометрическая машина Дж. Кларка (1983 г.)
- однокристальный геометрический процессор, построенный на основе заказной БИС. Она представляет собой четырехкомпонентное векторное функциональное устройство, позволяющее производить простые операции над числами с плавающей точкой.
Геометрическую машину можно программно настраивать на выполнение матричных преобразований, отсечение отрезков литер и многоугольников, отображение в координаты графического устройства, инкрементальную генерацию кривых и некоторые другие операции.
На основе геометрических машин в 1983 г. была разработана "геометрическая система" – специализированное устройство обработки геометрической информации для графической станции IRIS фирмы Silicon Graphics.
Эта система представляет собой "конвейер", включающий до 12 геометрических машин, каждая из которых запрограммирована на выполнение определенных операций.
В типовом варианте первые четыре кристалла геометрических машин составляют матричную подсистему, следующие четыре или шесть кристаллов - отсекающую и последние два образуют масштабирующую подсистему (См. Рис.)
МК
Матричные машины Отсекающие
машины Масштабирующие
машины
Матричная подсистема обеспечивает возможность выполнения произвольных двух- и трехмерных преобразований, описываемых матрицами размером 4 х 4, включая преобразования поворота переноса, масштабирования, центрального и параллельного проецирования и т.д. При этом каждая геометрическая машина реализует умножение четырехкомпонентного вектора на один из столбцов матрицы текущего преобразования. Кроме преобразований матричная система позволяет также вычислять в инкрементальном (поточечном) режиме трехмерные кривые, описываемые рациональными кубическими сплайнами.
После выполнения преобразований геометрическая система производит отсечение отрезков прямых, многоугольников и литер. Отрезки прямых отсекаются по прямоугольному окну в двумерном случае и по прямоугольному параллелепипеду (видимому объему) в случае трех измерений. Каждая из геометрических машин отсекающей подсистемы выполняет отсечение по одной из границ окна или видимого объема.
Последние две геометрические машины в системе образуют масштабирующую подсистему. Она служит для преобразования координат усеченных объектов из нормированной системы координат в целочисленные экранные координаты конкретного графического устройства. В случае трех измерений процесс отображения включает в себя ортогональное или центральное проецирование и построение стереопар.