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.

Атрибуты центра могут быть анимированы.

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

Примеры

Пример 1

Мы задаем сцену, состоящую из 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:

Пример 2

Мы задаем функцию и камеру с анимированным центром:

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:

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

Функции MuPAD