Скачиваний:
43
Добавлен:
16.04.2013
Размер:
3.38 Mб
Скачать

Высокопроизводительные графические преобразования

Процесс генерации изображения, как правило, распадается на две фазы:

- преобразование модели объекта, извлеченного из базы данных, включая геометрические операции над данными (поворот, перенос, масштабирование, параллельное или центральное проецирование и отсечение);

- визуализация получившихся в результате линий и многоугольников (удаление невидимых частей объекта, закраска видимых поверхностей, преобразование в растровую форму).

Геометрические операции.

Для создания иллюзии плавного движения образ объекта или сцены на экране должен перевычисляться и обновляться с частотой не менее 30 кадров в секунду. В растровых системах при этом необходимо не только вычислять в реальном времени координаты вершин всех составляющих изображение многоугольников, но и производить закраску каждого из них с учетом освещенности, прозрачности и т.д. реальные же изображения могут состоять из десятков тысяч отрезков и многоугольников.

Поэтому для выполнения геометрических преобразований и отсечения достаточно сложных моделей объектов в реальном масштабе времени требуются весьма значительные вычислительные мощности. Не все стандартные микропроцессоры обладают такими мощностями. Поэтому геометрические преобразования и отсечение часто выполняются с помощью специализированных арифметических процессоров, имеющих производительность сотни и тысячи Мфлопс.

Для геометрических преобразований и отсечения разработан ряд специализированных вычислительных устройств.

Геометрическая машина Дж. Кларка (1983 г.)

- однокристальный геометрический процессор, построенный на основе заказной БИС. Она представляет собой четырехкомпонентное векторное функциональное устройство, позволяющее производить простые операции над числами с плавающей точкой.

Геометрическую машину можно программно настраивать на выполнение матричных преобразований, отсечение отрезков литер и многоугольников, отображение в координаты графического устройства, инкрементальную генерацию кривых и некоторые другие операции.

На основе геометрических машин в 1983 г. была разработана "геометрическая система" – специализированное устройство обработки геометрической информации для графической станции IRIS фирмы Silicon Graphics.

Эта система представляет собой "конвейер", включающий до 12 геометрических машин, каждая из которых запрограммирована на выполнение определенных операций.

В типовом варианте первые четыре кристалла геометрических машин составляют матричную подсистему, следующие четыре или шесть кристаллов - отсекающую и последние два образуют масштабирующую подсистему (См. Рис.)

МК

Матричные машины Отсекающие машины Масштабирующие

машины

Матричная подсистема обеспечивает возможность выполнения произвольных двух- и трехмерных преобразований, описываемых матрицами размером 4 х 4, включая преобразования поворота переноса, масштабирования, центрального и параллельного проецирования и т.д. При этом каждая геометрическая машина реализует умножение четырехкомпонентного вектора на один из столбцов матрицы текущего преобразования. Кроме преобразований матричная система позволяет также вычислять в инкрементальном (поточечном) режиме трехмерные кривые, описываемые рациональными кубическими сплайнами.

После выполнения преобразований геометрическая система производит отсечение отрезков прямых, многоугольников и литер. Отрезки прямых отсекаются по прямоугольному окну в двумерном случае и по прямоугольному параллелепипеду (видимому объему) в случае трех измерений. Каждая из геометрических машин отсекающей подсистемы выполняет отсечение по одной из границ окна или видимого объема.

Последние две геометрические машины в системе образуют масштабирующую подсистему. Она служит для преобразования координат усеченных объектов из нормированной системы координат в целочисленные экранные координаты конкретного графического устройства. В случае трех измерений процесс отображения включает в себя ортогональное или центральное проецирование и построение стереопар.

Тут вы можете оставить комментарий к выбранному абзацу или сообщить об ошибке.

Оставленные комментарии видны всем.