LiveGraphicsParametricSurface3D.pl - provide an interactive plot of a parametric surface.
This macro provides the ParametricSurface3D
method for creating an interactive plot of a parametric surface via the LiveGraphics3D
JavaScript applet. The method takes three MathObject
Formulas in two variables as input and returns a string of plot data that can be displayed using the Live3Ddata
routine of the LiveGraphics3D.pl macro.
Usage: ParametricSurface3D(%options)
The available options are as follows.
Fx => Formula('cos(u) * cos(v)')
Parametric function for the x
-coordinate.
Fy => Formula('sin(u) * cos(v)')
Parametric function for the y
-coordinate.
Fz => Formula('sin(v)')
Parametric function for the z
-coordinate.
uvar => 'u'
The first parameter, default 'u'. This must correspond to the first parameter used in Fx
, Fy
, and Fz
.
vvar => 'v'
The second parameter, default 'v'. This must correspond to the second parameter used in Fx
, Fy
, and Fz
.
umin => -3
Lower bound for the domain of the first parameter.
umax => 3
Upper bound for the domain of the first parameter.
vmin => -3
Lower bound for the domain of the second parameter.
vmax => 3
Upper bound for the domain of the second parameter.
usamples => 3
The number of sample values for the first parameter in the interval from umin
to umax
to use.
vsamples => 3
The number of sample values for the second parameter in the interval from vmin
to vmax
to use.
axesframed => 1
If set to 1 then the framed axes are displayed. If set to 0, the the framed axes are not shown. This is 1 by default.
xaxislabel => 'x'
Label for the axis corresponding to the first independent variable.
yaxislabel => 'y'
Label for the axis corresponding to the second independent variable.
zaxislabel => 'z'
Label for the axis corresponding to the dependent variable.
edges => 1
If set to 1, then the edges of the polygons are shown. If set to 0, then the edges are not shown. This is 1 by default.
edgecolor => 'RGBColor[0.2, 0.2, 0.2]'
The color of the edges if edges
is 1.
edgethickness => 'Thickness[0.001]'
The thickness of the edges if edges
is 1.
mesh => 0
If set to 1, then the the edge mesh is shown and the polygons for the surface are not filled. If set to 0, then the polygons for the surface are filled. The edge mesh can also be shown in this case by setting edges
to 1. This is 0 by default.
meshcolor => 'RGBColor[0.7, 0.7, 0.7]'
The red, green, and blue colors each from 0 to 1 to be combined to form the color of the mesh. If this is set and mesh
is 1, then this will be the color of the mesh edges.
meshthickness => 0.001
The thickness of the mesh edges if mesh
is 1.
outputtype => 1
This determines what is contained in the string that the method returns. The values of 1 through 4 are accepted, and have the following meaning.
Return a string of only polygons (or edge mesh).
Return a string of only plot options.
Return a string of polygons (or edge mesh) and plot options.
Return the complete plot to be passed directly to the Live3DData
method.