график::Рассеянный свет
Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.
Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразовывают Notebook MuPAD в Live скрипты MATLAB.
plot::AmbientLight(<intensity>, <a = amin .. amax>, options)
plot::AmbientLight(intensity) генерирует неориентированный рассеянный свет данной интенсивности.
Каждая 3D сцена освещается несколькими источниками света, которые устанавливает автоматически и не может управлять пользователь. Cf. страница справки Lighting.
Если специальные световые эффекты желаемы, пользователь может создать альтернативные источники света различных типов, такие как plot::AmbientLight, plot::DistantLight, plot::PointLight и plot::SpotLight.
Если по крайней мере один определяемый пользователем источник света вставляется в сцену (например, путем простой передачи световых объектов как входных параметров к команде plot), автоматические световые сигналы выключены, и определяемые пользователем световые сигналы используются, чтобы осветить сцену.
В то время как направленные световые сигналы, такие как plot::DistantLight и т.д. создают эффекты затенения, которые добавляют глубину в изображение, определенное количество неориентированного рассеянного света обычно необходимо.
plot::AmbientLight(intensity) создает рассеянный свет, интенсивность которого дана параметром intensity. Когда интенсивность равняется 1, рассеянный свет доминирует над всеми другими источниками света.
По умолчанию белый свет создается. Другие цвета могут быть выбраны атрибутом LightColor.
Это не целесообразно иметь больше чем один объект рассеянного света в сцене.
| Атрибут | Цель | Значение по умолчанию |
|---|---|---|
Frames | количество кадров в анимации | 50 |
LightColor | цвет света | RGB::White |
LightIntensity | интенсивность света | 1.0 |
Name | имя объекта графика (для браузера и легенды) | |
ParameterEnd | закончите значение параметра анимации | |
ParameterName | имя параметра анимации | |
ParameterBegin | начальное значение параметра анимации | |
ParameterRange | область значений параметра анимации | |
TimeEnd | время окончания анимации | 10.0 |
TimeBegin | время начала анимации | 0.0 |
TimeRange | оперативный промежуток анимации | 0.0 .. 10.0 |
Visible | видимость | TRUE |
Мы создаем 3D функциональный график в плоском белом и используем окружающий белый свет, чтобы осветить его:
f := plot::Function3d(sin(x + y) + cos(x - y),
x = -PI..PI, y = -PI..PI,
FillColorType = Flat,
Color = RGB::White):
ambientlight := plot::AmbientLight(0.7):
plot(f, ambientlight):
Мы создаем другой рассеянный свет с анимированной интенсивностью:
ambientlight := plot::AmbientLight(a, a = 0..1): plot(f, ambientlight)

Мы добавляем направленный желтый свет в сцену и изучаем смесь между “солнечным светом” и увеличивающейся суммой рассеянного света. Когда рассеянный свет в полной интенсивности, он доминирует над направленным светом полностью:
sunlight := plot::DistantLight([0, 0, 0], [5, 1, -3], 1,
LightColor = RGB::Yellow):
plot(f, ambientlight, sunlight)
delete f, ambientlight, sunlight:
|
Интенсивность света: численное значение между 0 и 1 или арифметическое выражение параметра анимации
|
|
Параметр анимации, заданный как |