NAME

LiveGraphicsParametricSurface3D.pl - provide an interactive plot of a parametric surface.

DESCRIPTION

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.

Methods

ParametricSurface3D

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.

  1. Return a string of only polygons (or edge mesh).

  2. Return a string of only plot options.

  3. Return a string of polygons (or edge mesh) and plot options.

  4. Return the complete plot to be passed directly to the Live3DData method.