CameraDirection
, CameraDirectionX
, CameraDirectionY
, CameraDirectionZ
Направление автоматической камеры
Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.
Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразовывают Notebook MuPAD в Live скрипты MATLAB.
CameraDirection | Обертка библиотеки для “[CameraDirectionX , CameraDirectionY , CameraDirectionZ ]” (3D) | Смотрите ниже |
CameraDirectionX , CameraDirectionY , CameraDirectionZ | Смотрите ниже |
Объекты | Значения по умолчанию |
---|---|
plot::Scene3d |
CameraDirection
управляет направлением, где автоматически установленная камера расположена.
CameraDirectionX
и т.д. относится к одной координатам этого направления.
При создании 3D сцены используется “автоматическая камера”. Это помещается куда-нибудь вдоль луча, запускающегося в центре сцены (или центре явным образом требуемого ViewingBox
, соответственно) с направлением, данным CameraDirection
.
Расстояние до сцены выбрано автоматически таким образом, что графическая сцена или ViewingBox
заполняют область рисунка оптимально.
Значение CameraDirection
является списком или вектором чисел.
Этот вектор представляет направление, где камера найдена при запуске в центре сцены или просмотре поля. Это не положение камеры!
Длина CameraDirection
не имеет значения, только его направление. Длина не должна быть нулем, все же.
CameraDirection
= [0, 0, 1]
(выглядящий прямым вниз на x-y плоскость вдоль z - ось) не приводит к четко определенному полю зрения камеры. Это направление автоматически заменяется направлением, которое является близко к, но не точно равно направлению z и ориентирует сцену similiar на 2D график.
Атрибуты CameraDirection
не могут быть анимированы.
Автоматическая камера разработана, чтобы произвести изображение целой сцены или поля просмотра, заполнив область рисунка оптимально. CameraDirection
является единственными средними значениями, чтобы управлять им.
Если только части сцены должны быть видимы, или если камера не должна стремиться к центру сцены, или если большие перспективные искажения желаемы, или если положение камеры должно быть анимировано, нужно задать собственную камеру типа plot::Camera
. Это может быть помещено в произвольный Position
с произвольным FocalPoint
и может иметь произвольный ViewingAngle
. Далее, это может быть анимировано (позволяющий понимать рейс через 3D сцену).
Когда такой объект камеры вставляется в графическую сцену, автоматическая камера выключена, и определяемая пользователем камера вступает во владение, автоматически. Это использует свои собственные перспективные параметры и игнорирует атрибут CameraDirection
.
Мы смотрим на функцию с направлением по умолчанию автоматической камеры:
f := plot::Function3d(x^2 + y^3, x = 0..1, y = -1 ..1): plot(f):
Мы смотрим от различных направлений:
S1 := plot::Scene3d(f, CameraDirection = [-3,-4, 5]): S2 := plot::Scene3d(f, CameraDirection = [ 3,-4, 5]): S3 := plot::Scene3d(f, CameraDirection = [ 3, 4, 5]): S4 := plot::Scene3d(f, CameraDirection = [-3, 4, 5]): plot(S1, S2, S3, S4)
Мы выглядим прямыми вниз на x-y плоскость вдоль z - ось:
plot(f, CameraDirection = [0, 0, 1])
delete f, S1, S2, S3: