Рис. 7.27. Отсекающее окно на плоскости наблюдения, минимальные и максимальные координаты даны в системе наблюдения
Рис. 7.28. Бесконечный объем наблюдения ортогональной проекции Стороны отсекающего окна задают пределы изменения ж и у в той части сцены, которую требуется отобразить на экране. С помощью данных пределов формируются верхняя, нижняя и две боковые стороны отсекающей области, называемой объемом наблюдения ортогональной проекции. Поскольку линии проекции перпендикулярны плоскости наблюдения, данные четыре границы являются плоскостями, также перпендикулярными плоскости наблюдения и проходящими через стороны отсекающего окна, формируя бесконечную отсекающую область, показанную на рис. 7.28.
Рис. 7.29. Конечный ортогональный объем наблюдения отсекается плоскостью наблюдения “перед” ближней плоскостью
В графических пакетах возможность размещения ближней и дальней отсекающих плоскостей реализована по-разному, иногда пакет позволяет даже задавать дополнительные плоскости отсечения в указанных точках сцены. Вообще, ближняя и дальняя отсекающие плоскости могут располагаться произвольным образом по отношению друг к другу, что позволяет получать различные эффекты наблюдения, в том числе изображать точки, расположенные на противоположных сторонах от точки наблюдения. Аналогично плоскость наблюдения можно иногда установить в любом положении относительно ближней и дальней отсекающих плоскостей, хотя часто она выбирается совпадающей с ближней плоскостью отсечения. Впрочем, наличие множества альтернатив размещения отсекающих плоскостей и плоскости проекции обычно приводит к менее эффективной обработке трехмерной сцены.
НОРМИРОВКА ОРТОГОНАЛЬНОЙ ПРОЕКЦИИ
Используя ортогональный перенос точек на плоскость проекции, спроектированное положение любой заданной точки (х,у,г) можно представить как (х,у). Следовательно, задав границы объема наблюдения, описания внутри этого прямоугольного параллелепипеда представляются в координатах проекции, и их можно отобразить в нормированный объем наблюдения и завершить этапы обработки, связанные с проектированием. В некоторых графических пакетах данный нормированный объем на-
Рис. 7.30. Левосторонняя система экранных координат блюдения представлен единичным кубом, и координаты х, у и г нормируются в диапазон от 0 до 1. Кроме того, используется симметричный куб, и в этом случае координаты меняются от - 1 до 1.
Поскольку экранные координаты часто задаются в левосторонней системе координат (рис. 7.30), нормированные координаты также часто задаются в левосторонней системе. Это позволяет непосредственно интерпретировать положительные расстояния по направлению наблюдения как расстояния от экрана (плоскости наблюдения). Таким образом можно преобразовать координаты проекции в точки, принадлежащие левосторонней нормированной системе координат, и затем эти точки будут переводиться преобразованием поля просмотра в левосторонние экранные координаты.
На этом этапе конвейера наблюдения все аппаратно-независимые преобразования координат завершены, и их можно свернуть в одну сложную матрицу. Поэтому процедуры отсечения эффективнее всего выполнить перед преобразованием нормировки. После отсечения могут вызываться процедуры проверки видимости, визуализации поверхностей и преобразований поля просмотра, с помощью которых генерируется конечное изображение сцены на экране.