Position, PositionX, PositionY, PositionZПоложения камер, световых сигналов и текстовых объектов
Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.
Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразуют Notebook MuPAD в Live скрипты MATLAB.
| Объекты | Значения по умолчанию |
|---|---|
plot::Camera, plot::DistantLight, plot::PointLight, plot::SpotLight, plot::Text2d, plot::Text3d | |
plot::Point2d |
|
plot::Plane, plot::Point3d, plot::Reflect3d |
|
Position определяет положения камер, световых сигналов и текстовых объектов.
PositionX и т.д. обратитесь к одному координатным значениям положения.
Атрибут Position относится к местоположению камеры, снимающей 3D сцены. Это - значение, список или вектор координат.
Также положение источников света, освещающих 3D сцену, установлено Position.
Далее, Position определяет координаты, куда текстовые объекты должны быть помещены.
Эти атрибуты могут быть анимированы. При анимации положения камеры можно понять рейс через 3D сцену.
По умолчанию положение световых сигналов дано в координатах модели, которые не имеют никакого отношения к камере, которая используется, чтобы просмотреть сцену.
Атрибут CameraCoordinates также позволяет располагать свет относительно камеры. В частности, свет перемещается автоматически, когда камера перемещена.
Мы задаем 3D сцену, состоящую из функции, удаленного света и камеры. Свет сияет от направления камеры:
f := plot::Function3d(sin(x^2 - y^2), x = -2..2, y = -2..2,
Color = RGB::White):
light := plot::DistantLight([3, 4, 5], [0, 0, 0], 0.75,
Color = RGB::Yellow):
camera := plot::Camera([3, 4, 5], [0, 0, 0], 0.25*PI):
plot(f, light, camera)
Мы анимируем положение камеры, но сохраняем легкое положение зафиксированным:
camera::Position := [3*sqrt(2)*cos(a + PI/4),
4*sqrt(2)*sin(a + PI/4),
5*(0.7 + 0.3*cos(2*a))]:
camera::ParameterName := a:
camera::ParameterRange := 0..2*PI:
plot(f, light, camera)
Используя те же объекты, мы фиксируем камеру и анимируем легкое положение:
camera::Position := [3, 4, 5]:
camera::Frames := 1:
light::Position := [3*sqrt(2)*cos(a + PI/4),
4*sqrt(2)*sin(a + PI/4),
5]:
light::ParameterName := a:
light::ParameterRange := 0..2*PI:
plot(f, light, camera)
delete f, light, camera: