# Help functions for 3D Output

Framed 3D view and helper functions.

Most of these functions need never be used, since 3D graphics should be done with plot3d.

```function getframe (x,y,z)

Gets a box around all points in (x,y,z).

Returns [xmin,xmax,ymin,ymax,zmin,zmax]
```
```function framedplot (f:string, frame:real vector,
sframe:real vector=none,
xl:string="x", yl:string="y", zl:string="z",
ticks:integer=1,
view=none, zoom=none, distance=none, angle=none, height=none,
center=none)

General function for framed plots.

This function does the same as the functions called by plot3d. It
draws a frame around a plot. The frame is drawn in two parts, one
in the back and one in the front. It can display ticks, which may
have nothing to do with the frame itself (sframe parameter).

A function using this function can be used in plot3d with parameter
>own to allow anaglyphs or turning.

f : A 3D plot function. This can also be plot3d with parameter
<frame. Semicolon parameters are passed to f.

frame : The frame. take care that the plot fits into the frame. The
frame is a vector of the form [xmin,xmax,ymin,ymax,zmin,zmax]

sframe : The tick values for the frame. If sframe=none then frame
is used.

See:   plot3d (Plot Functions plot2d and plot3d),   plot3d (Maxima Documentation)
```
```function framedsolid (x:real, y:real, z:real,
scale:real vector=1, fr:integer=1, hf:number=1,
disconnect=none,
xlabel:string="x", ylabel:string="y", zlabel:string="z",
sliced:integer=0, bar:integer=0, z0:real=0,
frame:real vector=none, sframe:real vector=none)

3D plot with frame.

x, y, and z must be compatible matrices. The determine the
coordinates of the 3D images of a parameter matrix.

If scale is specified, then the plot is scaled to fit into a cube
of side length 2*scale centered at 0.

If fr=0 then no frame will be drawn around the plot.

disconnect is a vector of indices containing the rows of the
matrix, which should not be connected.

sliced is a parameter, which produces sliced plots into the x, or
the y direction. Should only be used for regular x,y grids.

bar is a parameter, which makes the plot into steps. Should only be
used for regular x,y grids.

This function should only be used via plot3d.

See:   plot3d (Plot Functions plot2d and plot3d),   plot3d (Maxima Documentation)
```
```function framedsolidhue (x:real, y:real, z:real, hue, ..
scale:real vector=1, f:number=1, fr:integer=1, hf:number=1, ..
xlabel:string="x", ylabel:string="y", zlabel:string="z", ..
niveau=none, values=none, ..
light=[0.5,0.5,1], amb=0.1, max=0.9, huecolor=0, ..
contourcolor=8, contourwidth=1, z0=0,
frame=none, sframe=none)

3D plot with hue, and optional niveau lines.

x, y, and z must be compatible matrices. They determine the
coordinates of the 3D images of a parameter matrix. hue is an
the matrix at each point. E.g., plot3d computes the hue using a
light source.

niveau is a row vector of niveaus levels, which are to be drawn.
values is a matrix of the same size as x, y, and z which contains
the values, which determine the niveau. By default, the value will
be z.

If scale is specified, then the plot is scaled to fit into a cube
of side length 2*scale centered at 0.

If fr=0 then no frame will be drawn around the plot.

disconnect is a vector of indices containing the rows of the
matrix, which should not be connected.

This function should only be used via plot3d.

See:   plot3d (Plot Functions plot2d and plot3d),   plot3d (Maxima Documentation)
```
```function framedwire (x:real, y:real, z:real,
scale:real vector=1, fr:integer=1, hf:number=1,
xlabel:string="x", ylabel:string="y", zlabel:string="z",
wirecolor:number=1, rowsonly:integer=0, z0:real=0,
frame:real vector=none, sframe:real vector=none)

3D wire plot with frame.

x, y, and z must be compatible matrices. They determine the
coordinates of the 3D images of a parameter matrix.

If scale is specified, then the plot is scaled to fit into a cube
of side length 2*scale centered at 0.

If fr=0 then no frame will be drawn around the plot.

With rowsonly=1 the wire will be drawn only in one direction.

The wirecolor can be specified with the variable wirecolor. Use any
of the 16 predefined colors, or an rgb value.

This function should only be used via plot3d.

See:   plot3d (Plot Functions plot2d and plot3d),   plot3d (Maxima Documentation),   rgb (Basic Plot Functions)
```
```function framedmark3 (x:real, y:real, z:real,
scale:real vector=1, fr:integer=1, hf:number=1,
xlabel:string="x", ylabel:string="y", zlabel:string="z",
color=1, z0:number=0,
frame:real vector=none, sframe:real vector=none)

3D point plot with frame.

x, y, and z must be row vectors. They determine the coordinates of
the 3D images of the points.

This function should only be used via plot3d.

See:   plot3d (Plot Functions plot2d and plot3d),   plot3d (Maxima Documentation),   rgb (Basic Plot Functions)
```

Documentation Homepage