Documentation

plot::Reflect3d

Reflection about a 3D point or a plane

Use only in the MuPAD Notebook Interface.

This functionality does not run in MATLAB.

Syntax

plot::Reflect3d([x, y, z], <[nx, ny, nz]>, obj1, obj2, …, <a = amin .. amax>, options)

Description

plot::Reflect3d([x, y, z], object) reflects a 3D object about the point (x, y, z).

plot::Reflect3d([x, y, z], [nx, ny, nz], object) reflects a 3D object about the plane through the point (x, y, z) with normal (nx, ny, nz).

Reflections in 3D are transformation objects that mirror their contents about a plane. In the degenerate case where the normal vector is given as [0, 0, 0] or if only one point is specified, they reflect about a point.

Like all transformation objects, reflections can contain any number of objects of the appropriate dimension. Plotting the reflection object renders the reflections of all graphical objects inside.

Reflections can be animated. If the contained objects are animated, too, the animations will run simultaneously.

Animated reflection objects are rather "cheap" concerning computing and storing costs. For more complex graphical objects, it is more efficient to use an animated reflection object than to redefine the object for each frame.

Attributes

AttributePurposeDefault Value
AffectViewingBoxinfluence of objects on the ViewingBox of a sceneTRUE
Framesthe number of frames in an animation50
Namethe name of a plot object (for browser and legend) 
Normalnormal vector of circles and discs, etc. in 3D[0, 0, 1]
NormalXnormal vector of circles and discs, etc. in 3D, x-component0
NormalYnormal vector of circles and discs, etc. in 3D, y-component0
NormalZnormal vector of circles and discs, etc. in 3D, z-component1
ParameterEndend value of the animation parameter 
ParameterNamename of the animation parameter 
ParameterBegininitial value of the animation parameter 
ParameterRangerange of the animation parameter 
Positionpositions of cameras, lights, and text objects[0, 0, 0]
PositionXx-positions of cameras, lights, and text objects0
PositionYy-positions of cameras, lights, and text objects0
PositionZz-positions of cameras, lights, and text objects0
TimeEndend time of the animation10.0
TimeBeginstart time of the animation0.0
TimeRangethe real time span of an animation0.0 .. 10.0

Examples

Example 1

Plot a 3D function graph and its reflection about the point (0, 0, 2):

f := plot::Function3d(sin(cos(x) - cos(y)), x = 0..PI, y = -2..5):
p := plot::Point3d([0 , 0, 2], PointSize=2):
plot(f, plot::Reflect3d([0, 0, 2], f), p,
     CameraDirection=[30, -50, 20])

Plot the same function graph and its reflection at a plane through the point (0, 0, 2) with an animated normal vector:

pl := plot::Plane([0, 0, 2], [a, 0, 1-a], a=0..1, Color=RGB::Green.[0.5]):
plot(f, plot::Reflect3d([0, 0, 2], [a, 0, 1-a], a=0..1, f), p, pl,
     CameraDirection=[30, -50, 20])

Parameters

x, y, z

The coordinates of the mirror point or a point on the mirror plane, respectively: real numerical values or arithmetical expressions of the animation parameter a.

x, y, z are equivalent to the attributes Position, PositionX, PositionY, PositionZ.

nx, ny, nz

The coordinates of the normal of the mirror plane: real numerical values or arithmetical expressions of the animation parameter a.

nx, ny, nz are equivalent to the attributes Normal, NormalX, NormalY, NormalZ.

obj1, obj2, …

Plot objects

a

Animation parameter, specified as a = amin..amax, where amin is the initial parameter value, and amax is the final parameter value.

See Also

MuPAD Functions

MuPAD Graphical Primitives

Was this topic helpful?