Экран с несколькими окнами (пере печатано с разрешения Sun Microsystems)

Рис. 6.1. Экран с несколькими окнами (пере печатано с разрешения Sun Microsystems)

Одно время в графических системах отсекающее окно называлось просто “окном”, но сейчас в мире компьютеров столько различных окон, что нужно как-то их различать. Например, система управления окнами может для вывода на экран графики и текста создавать несколько областей на дисплее, каждая из которых называется “окном” (рис. 6.1). Поэтому далее мы всегда будем использовать термин отсекающее окно для обозначения участка сцены, который в конечном итоге будет преобразован в пиксельную структуру в ®кне изображения на экране дисплея. Отметим, что графические пакеты также позволяют контролировать расположение окна изображения на экране дисплея с помощью другого “окна”, называемого полем просмотра (viewport). Сначала объекты сцены, находящиеся внутри отсекающего окна, отображаются в поле просмотра, которое затем размещается в окне на экране дисплея. Отсекающее окно задает, что мы хотим увидеть, а поле просмотра указывает, где это будет располагаться на устройстве вывода.

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

Отсекающее окно и соответствующее поле просмотра, заданные в виде треугольников, ориентированных по координатным осям

Рис. 6.2. Отсекающее окно и соответствующее поле просмотра, заданные в виде треугольников, ориентированных по координатным осям

Двухмерный конвейер преобразований наблюдения

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

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


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