0.8.2 преобразованияПреобразование изображения заключается либо в его геометрическом, координатном преобразовании, либо в преобразовании видимости, заключающемся, в частности, в отсечении частей полной сцены, невидимых в заданном окне просмотра. Координатные преобразования Дисплеи большой мощности обеспечивают выполнение геометрических преобразований (сдвиг, вращение, масштабирование, перспектива) в реальном времени с помощью аппаратуры перемножения матриц. При этом используются однородные координаты, позволяющие любое преобразование представить как умножение координат вектора на матрицу 4×4. На преобразование требуется 16 умножений и 12 сложений. При перспективных преобразованиях дополнительно требуются 2 деления. Аппаратура преобразований, в основном, реализуется на СБИС. На обычных стандартных чипах достигнуты времена преобразования в 3 мкс (без делений). Отсечение векторов Если изображение выходит за пределы экрана, то на части дисплеев увеличивается время построения за счет того, что изображение строится в "уме". В некоторых дисплеях выход за пределы экрана приводит к искажению картины, так как координаты просто ограничиваются при достижении ими граничных значений, а не выполняется точный расчет координат пересечения (эффект "стягивания" изображения). Некоторые, в основном, простые дисплеи просто не допускают выхода за пределы экрана. Все это, особенно в связи с широким использованием технологии просмотра окнами, требует выполнения отсечения сцены по границам окна видимости. Программное исполнение отсечения достаточно медленный процесс, поэтому, естественно, в мощные дисплеи встраивается соответствующее оборудование. Первое сообщение об аппаратуре отсечения, реализующей алгоритм Коэна-Сазерленда для отсечения отрезка на прямоугольном окне в устройстве Clipping Diviger, появилось в 1968 г. Имеются реализации в СБИС варианта алгоритма Сазерленда-Ходгмана для отсечения многоугольника на прямоугольном окне. В этом алгоритме многоугольник последовательно отсекается всеми четырьмя сторонами окна. Различные алгоритмы отсечения отрезков и многоугольников, в том числе и уже упомянутые алгоритмы Коэна-Сазерленда и Сазерленда-Ходгмана, подробно рассмотрены во второй части курса - "Основные алгоритмы". |
| Оглавление| |