график::

Рассеянный свет

Блокноты 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

Примеры

Пример 1

Мы создаем 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:

Параметры

intensity

Интенсивность света: численное значение между 0 и 1 или арифметическое выражение параметра анимации a.

intensity эквивалентен атрибуту LightIntensity.

a

Параметр анимации, заданный как a = amin..amax, где amin является начальным значением параметров и amax, является итоговым значением параметров.

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

Функции MuPAD

MuPAD графические примитивы

Для просмотра документации необходимо авторизоваться на сайте