график::

Очертите поверхности функции от R^3 до R

Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.

Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразовывают Notebook MuPAD в Live скрипты MATLAB.

Синтаксис

plot::Implicit3d(f, x = xmin .. xmax, y = ymin .. ymax, z = zmin .. zmax, <a = amin .. amax>, options)

Описание

plot::Implicit3d(f(x, y, z), x = xmin..xmax , y = ymin..ymax , z = zmin..zmax ) строит поверхности, где сглаженный функциональный f является нулем.

plot::Implicit3d(f, x = xmin..xmax , y = ymin..ymax , z = zmin..zmax ) строит (двумерная часть) обнуляет f в данной области значений, т.е. набора.

plot::Implicit3d принимает, что f является регулярным почти везде на этой поверхности, что означает, что f должен быть дифференцируемым, и по крайней мере две из его частных производных должны быть ненулевыми.

plot::Implicit3d оценивает заданную функцию на равноотстоящей, 3D mesh, coarsity которой может быть установлен с атрибутами XMesh, YMesh и ZMesh для каждого из этих трех направлений, или с объединяющимся атрибутом Mesh, который устанавливает все три из них одновременно.

После нахождения начальной триангуляции поверхности от числовых данных по начальной сетке plot::Implicit3d опционально выполняет адаптивное подразделение треугольников. Короче говоря: Если начальное вычисление пропустит детали в целом, адаптивное улучшение не найдет их также. С другой стороны, если начальное вычисление покажет побочные скачки, адаптивное улучшение приведет к намного более реалистическому изображению, за счет времени; чем выше значение AdaptiveMesh, тем больше. Увеличение AdaptiveMesh к первому мая в крайних случаях увеличивает время вычисления фактором восемь или больше!

Детали алгоритма следующие: На верхнем уровне “эффективный адаптивный уровень” установлен в значение атрибута AdaptiveMesh. Если для данного ребра эффективный адаптивный уровень положителен, и ребро уже не очень коротко, по сравнению с размером полного образа, и вставка новой точки на неявной поверхности около середины этого ребра заставила бы два новых ребра иметь угол меньше чем 170 градусов, то ребро разделено, смежные треугольники разделены соответственно (учитывающий все их ребра), и все новые ребра, вызванные этой операцией, исследованы с эффективным адаптивным уровнем, сниженным одним.

Построить другие контуры, чем обнуляет, используйте опцию Contours.

Атрибуты

АтрибутЦельЗначение по умолчанию
AdaptiveMeshадаптивная выборка0
AffectViewingBoxвлияние объектов на ViewingBox сценыTRUE
Colorосновной цветRGB::Red
Contoursконтуры неявной функции[0]
Filledзаполненные или прозрачные области и поверхностиTRUE
FillColorцвет областей и поверхностейRGB::Red
FillColor2второй цвет областей и поверхностей для цветных смешенийRGB::CornflowerBlue
FillColorTypeтипы заполнения поверхностиDichromatic
FillColorFunctionфункциональная область / поверхностная окраска 
FillColorDirectionнаправление цветовых переходов на поверхностях[0, 0, 1]
FillColorDirectionXx-компонент направления цветовых переходов на поверхностях0
FillColorDirectionYy-компонент направления цветовых переходов на поверхностях0
FillColorDirectionZz-компонент направления цветовых переходов на поверхностях1
Framesколичество кадров в анимации50
Functionвыражение function или процедура 
Legendделает запись легенды 
LegendTextкороткий объяснительный текст для легенды 
LegendEntryдобавить этот объект в легенду?TRUE
LineColorцвет строкRGB::Black.[0.15]
LineWidthширина строк0.35
LineColor2цвет строкRGB::DeepPink
LineStyleтело, подчеркнутые штриховой линией или пунктирные линии?Solid
LineColorTypeтипы окраски строкиFlat
LineColorFunctionфункциональная окраска строки 
LineColorDirectionнаправление цветовых переходов на строках[0, 0, 1]
LineColorDirectionXx-компонент направления цветовых переходов на строках0
LineColorDirectionYy-компонент направления цветовых переходов на строках0
LineColorDirectionZz-компонент направления цветовых переходов на строках1
Meshколичество точек выборки[11, 11, 11]
MeshVisibleвидимость неправильных строк mesh в 3DFALSE
Nameимя объекта графика (для браузера и легенды) 
ParameterEndзакончите значение параметра анимации 
ParameterNameимя параметра анимации 
ParameterBeginначальное значение параметра анимации 
ParameterRangeобласть значений параметра анимации 
PointStyleстиль презентации точекFilledCircles
PointsVisibleвидимость точек meshFALSE
Shadingсглаживайте цветное смешение поверхностейSmooth
TimeEndвремя окончания анимации10.0
TimeBeginвремя начала анимации0.0
TimeRangeоперативный промежуток анимации0.0 .. 10.0
Titleобъектный заголовок 
TitleFontшрифт объектных заголовков[" sans-serif ", 11]
TitlePositionположение объектных заголовков 
TitleAlignmentвыравнивание по горизонтали заголовков w.r.t. их координатыCenter
TitlePositionXположение объектных заголовков, x компонент 
TitlePositionYположение объектных заголовков, y компонент 
TitlePositionZположение объектных заголовков, z компонент 
VisibleвидимостьTRUE
VisibleAfterобъект, видимый после этой временной стоимости 
VisibleBeforeобъект, видимый до этой временной стоимости 
VisibleFromToобъект, видимый в это время, располагается 
VisibleAfterEndобъект, видимый после его законченного времени анимации?TRUE
VisibleBeforeBeginобъект, видимый перед его временем анимации, запускается?TRUE
XContoursлинии контура в постоянных x значениях[Automatic, 15]
XMaxокончательное значение параметра “x” 
XMeshколичество точек выборки для параметра “x”11
XMinначальное значение параметра “x” 
XNameимя параметра “x” 
XRangeобласть значений параметра “x” 
YContoursлинии контура в постоянных y значениях[Automatic, 15]
YMaxокончательное значение параметра “y” 
YMeshколичество точек выборки для параметра “y”11
YMinначальное значение параметра “y” 
YNameимя параметра “y” 
YRangeобласть значений параметра “y” 
ZContoursлинии контура в постоянных z значениях[Automatic, 15]
ZMaxокончательное значение параметра “z” 
ZMeshколичество точек выборки для параметра “z”11
ZMinначальное значение параметра “z” 
ZNameимя параметра “z” 
ZRangeобласть значений параметра “z” 

Примеры

Пример 1

Набор x, y, z, где x 2 + y 2 + z 2 = 1 формируют сферу:

plot(plot::Implicit3d(x^2 + y^2 + z^2 - 1,
                      x = -1.5..1.5,
                      y = -1.5..1.5, 
                      z = -1.5..1.5),
     Scaling = Constrained)

Пример 2

Набор обнуляет продукта, объединение обнуления отдельных функций:

plot(plot::Implicit3d((x^2 + y^2 + z^2 - 1) * x,
                      x = -1.5..1.5,
                      y = -1.5..1.5, 
                      z = -1.5..1.5),
     Scaling = Constrained)

Обратите внимание на то, что это изображение в основном во власти артефактов, вызванных крупной mesh оценки. Увеличение этой mesh улучшает графику, но увеличивает время вычисления:

plot(plot::Implicit3d((x^2 + y^2 + z^2 - 1) * x,
                      x = -1.5..1.5,
                      y = -1.5..1.5, 
                      z = -1.5..1.5,
                      Mesh = [21, 9, 9], AdaptiveMesh = 2),
     Scaling = Constrained)

Пример 3

С MeshVisible = TRUE внутренняя триангуляция становится видимой:

plot(plot::Implicit3d(z^2 - sin(z - x^2*y^2) = 0,
                      x = -1 .. 1, y = -1 .. 1, z = 0 .. 1,
                      AdaptiveMesh = 2, MeshVisible = TRUE,
                      LineColor = RGB::Black.[0.25])):

Пример 4

Используя функции, которые не непрерывно дифференцируемы, возможно сгенерировать резкий край в изображениях:

plot(plot::Implicit3d(min(x^2 + y^2 + z^2 - 2, -z),
                      x = -2..2, y = -2..2, z = -1.5..0.5),
     Axes = None, Scaling = Constrained)

Точно так же, как в предыдущем примере, эти острые углы являются главными источниками артефактов, которые могут потребовать более прекрасной начальной mesh и/или адаптивного улучшения mesh:

im := plot::Implicit3d(min(x^2 + y, y^2 - z),
                       x = -2..2, y = -2..2, z = 0..1):
plot(im)

plot(im, AdaptiveMesh = 3)

Пример 5

Анимация объектов plot::Implicit3d занимает много времени. Это легко и быстро, тем не менее, чтобы добавить анимированный объект камеры:

plot(plot::Implicit3d(sin(x)+sin(y)+sin(z), x=-5..5, y=-5..5, z=-5..5),
     plot::Camera([42*sin(t),42*cos(t),42*cos(t-sin(t))], [0,0,0],
                  PI/12, t=0..2*PI),
     AnimationStyle=Loop)

Параметры

f

Выражение с действительным знаком или уравнение в x, y, z, и возможно параметре анимации.

f эквивалентен атрибуту Function.

x, y, z

идентификаторы.

x, y, z эквивалентен атрибутам XName, YName, ZName.

xmin .. xmax, ymin .. ymax, zmin .. zmax

Выражения с действительным знаком, возможно в параметре анимации. Изображение построено с x в области значений xmin ≤ x ≤ xmax, ymin ≤ y ≤ ymax и zmin ≤ z ≤ zmax.

xmin .. xmax, ymin.. ymax, zmin.. zmax эквивалентен атрибутам XRange, XMin, XMax, YRange, YMin, YMax, ZRange, ZMin, ZMax.

a

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

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

Функции MuPAD

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

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