ThreeDimensionalViewport
Author: Jim Wen
Date Created: 28 April 1989
Basic Operations:
Related Constructors:
Also See:
AMS Classifications:
Keywords:
References:
Description: ThreeDimensionalViewport creates viewports to display graphs
viewThetaDefault : () -> F
viewThetaDefault() returns the current default longitudinal
view angle in radians.
viewThetaDefault : F -> F
viewThetaDefault(t) sets the current default longitudinal
view angle in radians to the value t and returns t.
viewPhiDefault : () -> F
viewPhiDefault() returns the current default latitudinal
view angle in radians.
viewPhiDefault : F -> F
viewPhiDefault(p) sets the current default latitudinal
view angle in radians to the value p and returns p.
viewZoomDefault : () -> F
viewZoomDefault() returns the current default graph scaling
value.
viewZoomDefault : F -> F
viewZoomDefault(s) sets the current default graph scaling
value to s and returns s.
viewDeltaXDefault : () -> F
viewDeltaXDefault() returns the current default horizontal
offset from the center of the viewport window.
viewDeltaXDefault : F -> F
viewDeltaXDefault(dx) sets the current default horizontal
offset from the center of the viewport window to be \spad{dx}
and returns \spad{dx}.
viewDeltaYDefault : () -> F
viewDeltaYDefault() returns the current default vertical
offset from the center of the viewport window.
viewDeltaYDefault : F -> F
viewDeltaYDefault(dy) sets the current default vertical
offset from the center of the viewport window to be \spad{dy}
and returns \spad{dy}.
viewport3D : () -> %
viewport3D() returns an undefined three-dimensional viewport
of the domain \spadtype{ThreeDimensionalViewport} whose
contents are empty.
makeViewport3D : % -> %
makeViewport3D(v) takes the given three-dimensional viewport,
v, of the domain \spadtype{ThreeDimensionalViewport} and
displays a viewport window on the screen which contains
the contents of v.
makeViewport3D : (SPACE3, S) -> %
makeViewport3D(sp, s) takes the given space, \spad{sp} which is
of the domain \spadtype{ThreeSpace} and displays a viewport
window on the screen which contains the contents of \spad{sp},
and whose title is given by s.
makeViewport3D : (SPACE3, L DROP) -> %
makeViewport3D(sp, lopt) takes the given space, \spad{sp} which is
of the domain \spadtype{ThreeSpace} and displays a viewport
window on the screen which contains the contents of \spad{sp},
and whose draw options are indicated by the list \spad{lopt}, which
is a list of options from the domain \spad{DrawOption}.
subspace : % -> SPACE3
subspace(v) returns the contents of the viewport v, which is
of the domain \spadtype{ThreeDimensionalViewport}, as a subspace
of the domain \spad{ThreeSpace}.
subspace : (%, SPACE3) -> %
subspace(v, sp) places the contents of the viewport v, which is
of the domain \spadtype{ThreeDimensionalViewport}, in the subspace
\spad{sp}, which is of the domain \spad{ThreeSpace}.
modifyPointData : (%, NNI, POINT) -> Void
modifyPointData(v, ind, pt) takes the viewport, v, which is of the
domain \spadtype{ThreeDimensionalViewport}, and places the data
point, \spad{pt} into the list of points database of v at the index
location given by \spad{ind}.
options : % -> L DROP
options(v) takes the viewport, v, which is of the domain
\spadtype{ThreeDimensionalViewport} and returns a list of all
the draw options from the domain \spad{DrawOption} which are
being used by v.
options : (%, L DROP) -> %
options(v, lopt) takes the viewport, v, which is of the domain
\spadtype{ThreeDimensionalViewport} and sets the draw options
being used by v to those indicated in the list, \spad{lopt},
which is a list of options from the domain \spad{DrawOption}.
move : (%, NNI, NNI) -> Void
move(v, x, y) displays the three-dimensional viewport, v, which
is of domain \spadtype{ThreeDimensionalViewport}, with the upper
left-hand corner of the viewport window at the screen
coordinate position x, y.
resize : (%, PI, PI) -> Void
resize(v, w, h) displays the three-dimensional viewport, v, which
is of domain \spadtype{ThreeDimensionalViewport}, with a width
of w and a height of h, keeping the upper left-hand corner
position unchanged.
title : (%, S) -> Void
title(v, s) changes the title which is shown in the three-dimensional
viewport window, v of domain \spadtype{ThreeDimensionalViewport}.
dimensions : (%, NNI, NNI, PI, PI) -> Void
dimensions(v, x, y, width, height) sets the position of the
upper left-hand corner of the three-dimensional viewport, v,
which is of domain \spadtype{ThreeDimensionalViewport}, to
the window coordinate x, y, and sets the dimensions of the
window to that of \spad{width}, \spad{height}. The new
dimensions are not displayed until the function
\spadfun{makeViewport3D} is executed again for v.
viewpoint : (%, F, F, F, F, F) -> Void
viewpoint(v, th, phi, s, dx, dy) sets the longitudinal view angle
to \spad{th} radians, the latitudinal view angle to \spad{phi}
radians, the scale factor to \spad{s}, the horizontal viewport
offset to \spad{dx}, and the vertical viewport offset to \spad{dy}
for the viewport v, which is of the domain
\spadtype{ThreeDimensionalViewport}. The new viewpoint position
is not displayed until the function \spadfun{makeViewport3D} is
executed again for v.
viewpoint : (%) -> V
viewpoint(v) returns the current viewpoint setting of the given
viewport, v. This function is useful in the situation where the
user has created a viewport, proceeded to interact with it via
the control panel and desires to save the values of the viewpoint
as the default settings for another viewport to be created using
the system.
viewpoint : (%, V) -> Void
viewpoint(v, viewpt) sets the viewpoint for the viewport. The
viewport record consists of the latitudal and longitudal angles,
the zoom factor, the X, Y, and Z scales, and the X and Y displacements.
viewpoint : (%, I, I, F, F, F) -> Void
viewpoint(v, th, phi, s, dx, dy) sets the longitudinal view angle
to \spad{th} degrees, the latitudinal view angle to \spad{phi}
degrees, the scale factor to \spad{s}, the horizontal viewport
offset to \spad{dx}, and the vertical viewport offset to \spad{dy}
for the viewport v, which is of the domain
\spadtype{ThreeDimensionalViewport}. The new viewpoint position
is not displayed until the function \spadfun{makeViewport3D} is
executed again for v.
viewpoint : (%, F, F) -> Void
viewpoint(v, th, phi) sets the longitudinal view angle to \spad{th}
radians and the latitudinal view angle to \spad{phi} radians
for the viewport v, which is of the domain
\spadtype{ThreeDimensionalViewport}. The new viewpoint position
is not displayed until the function \spadfun{makeViewport3D} is
executed again for v.
viewpoint : (%, F, F, F) -> Void
viewpoint(v, rotx, roty, rotz) sets the rotation about the x-axis
to be \spad{rotx} radians, sets the rotation about the y-axis
to be \spad{roty} radians, and sets the rotation about the z-axis
to be \spad{rotz} radians, for the viewport v, which is of the
domain \spadtype{ThreeDimensionalViewport} and displays v with
the new view position.
controlPanel : (%, S) -> Void
controlPanel(v, s) displays the control panel of the given
three-dimensional viewport, v, which is of domain
\spadtype{ThreeDimensionalViewport}, if s is "on", or hides
the control panel if s is "off".
axes : (%, S) -> Void
axes(v, s) displays the axes of the given three-dimensional
viewport, v, which is of domain \spadtype{ThreeDimensionalViewport},
if s is "on", or does not display the axes if s is "off".
diagonals : (%, S) -> Void
diagonals(v, s) displays the diagonals of the polygon outline
showing a triangularized surface instead of a quadrilateral
surface outline, for the given three-dimensional viewport v
which is of domain \spadtype{ThreeDimensionalViewport}, if s is
"on", or does not display the diagonals if s is "off".
outlineRender : (%, S) -> Void
outlineRender(v, s) displays the polygon outline showing either
triangularized surface or a quadrilateral surface outline depending
on the whether the \spadfun{diagonals} function has been set, for
the given three-dimensional viewport v which is of domain
\spadtype{ThreeDimensionalViewport}, if s is "on", or does not
display the polygon outline if s is "off".
drawStyle : (%, S) -> Void
drawStyle(v, s) displays the surface for the given three-dimensional
viewport v which is of domain \spadtype{ThreeDimensionalViewport}
in the style of drawing indicated by s. If s is not a valid
drawing style the style is wireframe by default. Possible
styles are \spad{"shade"}, \spad{"solid"} or \spad{"opaque"},
\spad{"smooth"}, and \spad{"wireMesh"}.
rotate : (%, F, F) -> Void
rotate(v, th, phi) rotates the graph to the longitudinal view angle
\spad{th} radians and the latitudinal view angle \spad{phi} radians
for the viewport v, which is of the domain
\spadtype{ThreeDimensionalViewport}.
rotate : (%, I, I) -> Void
rotate(v, th, phi) rotates the graph to the longitudinal view angle
\spad{th} degrees and the latitudinal view angle \spad{phi} degrees
for the viewport v, which is of the domain
\spadtype{ThreeDimensionalViewport}. The new rotation position
is not displayed until the function \spadfun{makeViewport3D} is
executed again for v.
zoom : (%, F) -> Void
zoom(v, s) sets the graph scaling factor to s, for the viewport v,
which is of the domain \spadtype{ThreeDimensionalViewport}.
zoom : (%, F, F, F) -> Void
zoom(v, sx, sy, sz) sets the graph scaling factors for the x-coordinate
axis to \spad{sx}, the y-coordinate axis to \spad{sy} and the
z-coordinate axis to \spad{sz} for the viewport v, which is of
the domain \spadtype{ThreeDimensionalViewport}.
translate : (%, F, F) -> Void
translate(v, dx, dy) sets the horizontal viewport offset to \spad{dx}
and the vertical viewport offset to \spad{dy}, for the viewport v,
which is of the domain \spadtype{ThreeDimensionalViewport}.
perspective : (%, S) -> Void
perspective(v,s) displays the graph in perspective if s is "on",
or does not display perspective if s is "off" for the given
three-dimensional viewport, v, which is of domain
\spadtype{ThreeDimensionalViewport}.
eyeDistance : (%, F) -> Void
eyeDistance(v, d) sets the distance of the observer from the center
of the graph to d, for the viewport v, which is of the domain
\spadtype{ThreeDimensionalViewport}.
hitherPlane : (%, F) -> Void
hitherPlane(v, h) sets the hither clipping plane of the graph to h,
for the viewport v, which is of the domain
\spadtype{ThreeDimensionalViewport}.
showRegion : (%, S) -> Void
showRegion(v, s) displays the bounding box of the given
three-dimensional viewport, v, which is of domain
\spadtype{ThreeDimensionalViewport}, if s is "on", or does not
display the box if s is "off".
showClipRegion : (%, S) -> Void
showClipRegion(v, s) displays the clipping region of the given
three-dimensional viewport, v, which is of domain
\spadtype{ThreeDimensionalViewport}, if s is "on", or does not
display the region if s is "off".
clipSurface : (%, S) -> Void
clipSurface(v, s) displays the graph with the specified
clipping region removed if s is "on", or displays the graph
without clipping implemented if s is "off", for the given
three-dimensional viewport, v, which is of domain
\spadtype{ThreeDimensionalViewport}.
lighting : (%, F, F, F) -> Void
lighting(v, x, y, z) sets the position of the light source to
the coordinates x, y, and z and displays the graph for the given
three-dimensional viewport, v, which is of domain
\spadtype{ThreeDimensionalViewport}.
intensity : (%, F) -> Void
intensity(v, i) sets the intensity of the light source to i, for
the given three-dimensional viewport, v, which is of domain
\spadtype{ThreeDimensionalViewport}.
reset : % -> Void
reset(v) sets the current state of the graph characteristics
of the given three-dimensional viewport, v, which is of domain
\spadtype{ThreeDimensionalViewport}, back to their initial settings.
colorDef : (%, C, C) -> Void
colorDef(v, c1, c2) sets the range of colors along the colormap so
that the lower end of the colormap is defined by \spad{c1} and the
top end of the colormap is defined by \spad{c2}, for the given
three-dimensional viewport, v, which is of domain
\spadtype{ThreeDimensionalViewport}.
write : (%, S) -> S
write(v, s) takes the given three-dimensional viewport, v, which
is of domain \spadtype{ThreeDimensionalViewport}, and creates
a directory indicated by s, which contains the graph data
file for v.
write : (%, S, S) -> S
write(v, s, f) takes the given three-dimensional viewport, v, which
is of domain \spadtype{ThreeDimensionalViewport}, and creates
a directory indicated by s, which contains the graph data
file for v and an optional file type f.
write : (%, S, L S) -> S
write(v, s, lf) takes the given three-dimensional viewport, v, which
is of domain \spadtype{ThreeDimensionalViewport}, and creates
a directory indicated by s, which contains the graph data
file for v and the optional file types indicated by the list lf.
close : % -> Void
close(v) closes the viewport window of the given
three-dimensional viewport, v, which is of domain
\spadtype{ThreeDimensionalViewport}, and terminates the
corresponding process ID.
key : % -> I
key(v) returns the process ID number of the given three-dimensional
viewport, v, which is of domain \spadtype{ThreeDimensionalViewport}.
setFrontend3D : (FET) -> FET
Sets the frontend according to the values in the FET table.
getFrontend3D : () -> FET
Gets the FET table of the current frontend.
makeFrontend3D : (%, FET) -> Void
Make frontend according to the values in the FET table.