ViewingAngle

Вводный угол камеры lense

Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.

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

Сводные данные значения

ОбязательныйВыражение MuPAD®

Графические примитивы

ОбъектыЗначения по умолчанию ViewingAngle
plot::Camera 

Описание

ViewingAngle задает угол обзора камеры. Это также известно как “вводный угол” lense камеры и определяется его фокусным расстоянием.

Небольшие углы обзора соответствуют телеку lense, большим вводным углам к широкому углу lense. Углы близко к π соответствуют (экстремальному) глазу рыбы lense.

Значения для ViewingAngle должны быть даны в радианах. Углы должны быть больше, чем и меньшими, чем π. Другие значения заменяются некоторым маленьким положительным углом или углом немного меньше, чем π, соответственно.

Обратите внимание на то, что при использовании широкого угла lense, сцена может заполнить только часть области рисунка. С телеком lense, только части сцены могут быть видимы.

При использовании объекта камеры с данным Position необходимо узнать экспериментально, какой угол обзора подходит, чтобы заставить сцену заполнить разумный фрагмент области рисунка.

ViewingAngle не имеет никакого эффекта, когда атрибут OrthogonalProjection = TRUE установлен для камеры.

Примечание

На самом деле, когда параллельная проекция без перспективного искажения желаема, не нужно располагать камеру далеко от сцены и использовать экстремальный телек lense (т.е., очень маленькие значения ViewingAngle). Это может привести к проблемам с алгоритмом невидимой линии 3D средства отображения. Используйте OrthogonalProjection = TRUE вместо этого.

ViewingAngle может быть анимирован. Увеличение или уменьшение значений ViewingAngle соответствуют “уменьшению масштаб” или “увеличиванию масштаб”, соответственно.

Примеры

Пример 1

При создании объекта камеры третьим аргументом является ViewingAngle:

camera:= plot::Camera([5, 5, 5], [0, 0, 0], PI/4):
camera::ViewingAngle

Мы анимируем ViewingAngle. С начальным значением сцены является полностью видимым (а скорее маленьким). При увеличивании масштаб путем уменьшения угла обзора только части сцены видимы:

f  := plot::Function3d(sin(x^3 - y^2), x = -2..2, y = -2..2,
                       Submesh = [2, 2]):
camera:= plot::Camera([5, 5, 5], [0, 0, 0], 
                      (1 - a)*PI/3 + a*PI/10,
                      a = 0..1, Frames = 200):
plot(f, camera)

delete f, camera:

Смотрите также

Функции MuPAD