FocalPoint
, FocalPointX
, FocalPointY
, FocalPointZ
Центр камеры
Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.
Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразуют Notebook MuPAD в Live скрипты MATLAB.
FocalPoint | Обертка библиотеки для “[FocalPointX , FocalPointY , FocalPointZ ]” (3D) | Список 2 или 3 выражений, в зависимости от размерности |
FocalPointX , FocalPointY , FocalPointZ | Дополнительный | Выражение MuPAD® |
Объекты | Значения по умолчанию |
---|---|
plot::Camera |
Атрибут FocalPoint
относится к точке, на которую нацелена камера, снимающая 3D сцены. Его значение является списком или вектором координат (численные значения или символьные выражения параметра анимации).
FocalPointX
и т.д. отошлите к одной координатам x
и т.д.
Оптическая ось камеры дана вектором от камеры Position
к его FocalPoint
.
При создании камеры
camera := plot::Camera(camera_position, focal_point, opening_angle)
,
центр является вторым аргументом. Внутренне, эта точка хранится как атрибут FocalPoint
и может быть получен доступ и изменен как camera::FocalPoint
.
Атрибуты центра могут быть анимированы.
Конечно, центр должен быть установлен таким образом, что камера указывает в направление объектов, которые должны быть представлены. Как правило, для камеры, позиционированной вне графической сцены, хороший центр является центром сцены.
Мы задаем сцену, состоящую из 4 геометрических объектов:
b := plot::Box(4..5, -1..1, -1..1, Filled = FALSE, LineColor = RGB::Red): c1 := plot::Cone(1, [0, 4, 0], [0, 4, 1], Color = RGB::Green): s := plot::Sphere(1, [-4, 0, 0], Color = RGB::Blue): c2 := plot::Cone(1, [0, -4, 1], [0, -4, 0], Color = RGB::Orange):
Мы используем маленький черный объект отметить точку (0, 0, 0.5), где мы хотим поместить анимированную камеру:
cameraposition := plot::Group3d( plot::Box(-0.1..0.1, -0.3..0.3, 0.3..0.7, Color = RGB::Black), plot::Cone(0.1, [0, 0, 0.5], 0.3, [0.5, 0, 0.5], Color = RGB::DarkGrey)): plot(b, c1, s, c2, cameraposition)
При определении камеры вторым аргументом является FocalPoint
. В этом случае это анимировано: камера должна изменить к лучшему z - ось.
camera := plot::Camera([0, 0, 0.5], [4*cos(a), 4*sin(a), 0], PI/4, a = 0..2*PI): camera::FocalPoint
Мы вставляем анимированную камеру:
plot(b, c1, s, c2, camera)
delete b, c1, s, c2, cameraposition, camera:
Мы задаем функцию и камеру с анимированным центром:
f := plot::Function3d(sin(x^2-y^2), x = -2..2, y = -2..2, Submesh = [2, 2]): camera := plot::Camera([3, 3, 3], [sin(a), cos(a), 0], PI/6, a = 0..2*PI): plot(f, camera)
delete f, camera: