ОТСЕКАЮЩЕЕ ОКНО ВО ВНЕШНИХ КООРДИНАТАХ

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

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

Треугольник (панель а) с выбранным началом отсчета и вектором ориентации трансляцией и вращением переводится в отсекающее окно (панель б)

Рис. 6.6. Треугольник (панель а) с выбранным началом отсчета и вектором ориентации трансляцией и вращением переводится в отсекающее окно (панель б)

чае нужно определить вектор ориентации и выбрать опорную точку, например, центр масс треугольника (приложение А). Затем эта опорная точка транслируется в начало внешней системы координат, и вектор ориентации поворачивается вокруг оси !ЛгогИ с помощью матрицы преобразования (6.1). Имея треугольник искомой ориентации, можно использовать стандартное отсекающее окно во внешних координатах и получить изображение повернутого треугольника. Преобразованное положение треугольника и выбранного отсекающего окна показано на рис. 6.6, б.

НОРМИРОВКА И ПРЕОБРАЗОВАНИЕ ПОЛЯ ПРОСМОТРА

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

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


⇐ вернуться назад | | далее ⇒