Name: AXIS3D  23
The routine AXIS3D defines the lengths of the 3-D box.  For  the
lengths, any positive  values can be specified; DISLIN uses only
the ratio of the values to calculate the axis lengths.
The call is:  CALL AXIS3D (X3AXIS, Y3AXIS, Z3AXIS) level 1, 2, 3
         or:  void axis3d (float x3axis, float y3axis, 
                                                  float z3axis);
X3AXIS        is the length of the  X-axis in absolute 3-D coor-
              dinates (> 0).
Y3AXIS        is the length of the  Y-axis in absolute 3-D coor-
              dinates (> 0).
Z3AXIS        is the length of the  Z-axis in absolute 3-D coor-
              dinates (> 0).
                                           Default: (2., 2., 2.)
Note:         The lower left corner of the 3-D box is the  point
              (-X3AXIS/2, -Y3AXIS/2, -Z3AXIS/2); the upper right
              corner is the point (X3AXIS/2, Y3AXIS/2, Z3AXIS/2)
              The centre point is (0., 0., 0.).
Name: VIEW3D  23
The routine VIEW3D defines the viewpoint.
The call is:    CALL VIEW3D (XVU, YVU, ZVU, CVU)   level 1, 2, 3
         or:    void view3d (float xvu, float yvu, float zvu,
                                                     char *cvu);
XVU, YVU, ZVU   define the position  of the viewpoint.  If CVU =
                'ABS', the parameters must contain  absolute 3-D
                coordinates, if CVU = 'USER', they must  contain
                user coordinates and if CVU = 'ANGLE', the view-
                point must be specified by two angles  and a ra-
                dius.  In the  latter case,  XVU  is a  rotation
                angle,  YVU is the  angle  between the line from
                the  viewpoint  to the centre of the 3-D box and
                the horizontal direction and ZVU is the distance
                of the viewpoint from the centre of the 3-D box.
                XVU and YVU must be specified in degrees and ZVU
                in absolute 3-D coordinates.
CVU             is a  character string  defining  the meaning of
                XVU, YVU and ZVU.
                Def.:  (2*X3AXIS, -2.5*Y3AXIS, 2*Z3AXIS, 'ABS').
Note:           The viewpoint  must be  placed  outside the  3-D
                box. If the point lies inside, DISLIN will print
                a warning and use the default viewpoint.
Name: VFOC3D  23
The routine  VFOC3D  defines  the focus point.  It specifies the
location in the 3-D box that the camera points to.
The call is:  CALL VFOC3D (XFC, YFC, ZFC, CVU)     level 1, 2, 3
         or:  void vfoc3d (float xfc, float yfc, float zfc,
                                                      char *cvu)
XFC, YFC, ZFC define the position  of  the focus point.  If  CVU
              = 'ABS', the parameters must contain  absolute 3-D
              coordinates,  if CVU = 'USER',  they  must contain
              user coordinates.
CVU           is a character string defining the meaning of XFC,
              YFC and ZFC.
                                   Default: (0., 0., 0., 'ABS').
Name: VUP3D   23
The rotation  of the camera  around the  viewing axis is defined
by an angle.
The call is:  CALL VUP3D (ANG)                     level 1, 2, 3
         or:  void vup3d (float ang);
ANG           defines the rotation angle in degrees.  The camera
              is rotated in a clockwise direction.
                                               Default: ANG = 0.

Name: VANG3D  23
VANG3D  defines  the  view angle. It specifies the field of view
of the lens.
The call is:  CALL VANG3D (ANG)                    level 1, 2, 3
         or:  void vang3d (float ang);
ANG           defines the view angle in degrees.
                                              Default: ANG = 28.
Name: GRAF3D  23
The routine  GRAF3D plots a three-dimensional axis system.  This
routine must be called  before any objects can be plotted in the
3-D box.
The call is:  CALL GRAF3D (XA, XE, XOR, XSTEP, YA, YE, YOR, 
                           YSTEP, ZA, ZE, ZOR, ZSTEP)    level 1
         or:  void graf3 (
                    float xa, float xe, float xor, float xstep,
                    float ya, float ye, float yor, float ystep,
                    float za, float ze, float zor, float zstep); 
XA, XE        are the lower and upper limits of the X-axis.
XOR, XSTEP    are the first  X-axis label  and the step  between
              labels.
YA, YE        are the lower and upper limits of the Y-axis.
YOR, YSTEP    are the first  Z-axis label  and the step  between
              labels.
ZA, ZE        are the lower and upper limits of the Z-axis.
ZOR, ZSTEP    are the first  Z-axis label  and the step  between
              labels.
Notes:      - GRAF3D must  be called  from  level 1 and sets the
              level to 3.
            - To avoid overwriting labels, GRAF3D suppresses the
              plotting of certain start labels.  This option can
              be disabled with the statement CALL FLAB3D.
            - The user is referred to the notes on GRAF.
Name: FLAB3D  23
To avoid overwriting labels,  GRAF3D suppresses  the plotting of
certain start labels.  This option can be be disabled with FLAB-
3D.
The call is:   CALL FLAB3D                         level 1, 2, 3
         or:   void flab3d ();
Name: CURV3D  23
The routine CURV3D is similar to  CURVE and connects data points
with lines or marks them with symbols.
The call is:  CALL CURV3D (XRAY, YRAY, ZRAY, N)          level 3
         or:  void curv3d (float *xray, float *yray,
                                            float *zray, int n);
XRAY          is an array  containing the  X-coordinates of data
              points.
YRAY          is an array  containing the  Y-coordinates of data
              points.
ZRAY          is an array  containing the  Z-coordinates of data
              points.
N             is the number of data points.
Note:         Data points  will be  interpolated  linearly.  The
              user is referred to the notes on CURVE.
Name: SURFUN  23
The routine  SURFUN  plots  a surface  of the  three-dimensional
function Z = F(X,Y).
The call is: CALL SURFUN (ZFUN, IXP, XDEL, IYP, YDEL)    level 3
         or: void surfun (float (*zfun)(), int ixp, float xdel, 
                                           int iyp, float ydel);
ZFUN         is the name of a  FUNCTION subroutine  that returns
             the function value for a given X- and Y-coordinate.
             ZFUN must be declared  EXTERNAL in the calling pro-
             gram.
XDEL, YDEL   are the distances  between grid lines in user coor-
             dinates. XDEL and YDEL determine the density of the
             surface plotted by SURFUN.
IXP, IYP     are the number of  points between grid lines inter-
             polated by SURFUN (>= 0). If IXP = 0, surface lines
             in the X-direction will be suppressed;  if IYP = 0,
             surface lines  in the Y-direction  will be suppres-
             sed.
Name: SURMAT  23
The routine  SURMAT  plots  a  surface  of the three-dimensional
function Z = F(X,Y).  The function values  must be  given in the
form of a matrix.
The call is:  CALL SURMAT (ZMAT, IXDIM, IYDIM, IXPTS, IYPTS)
                                                         level 3
         or:  void surmat (float *zmat, int ixdim, int iydim,
                                          int ixpts, int iypts);
ZMAT          is a matrix with the dimension (IXDIM, IYDIM) con-
              taining the function values.
IXDIM, IYDIM  are the dimensions of ZMAT, XRAY and YRAY (>= 2).
IXPTS, IYPTS  are the number of points interpolated between grid
              lines in the X- and  Y-direction. These parameters
              determine the density  of surfaces plotted by SUR-
              MAT.  For positive  values,  the surface  will  be
              interpolated linearly.  For a negative value,  the
              absolute  value will be used as a step for plotted
              surface lines.  If IXPTS = 0, surface lines in the
              Y-direction will be suppressed; if IYPTS = 0, sur-
              face lines in the X-direction will be suppressed.
Notes:      - The suppression of  hidden lines  can be  disabled
              with CALL NOHIDE.
            - Surfaces can be  protected from  overwriting  with
              CALL SHLSUR  if the hidden-line  algorithm  is not
              disabled.
            - If XA, XE, YA and YE are the axis limits in GRAF3D
              or defined with the routine SURSZE, the connection
              of  grid points and matrix elements can be descri-
              bed by the formula: ZMAT(I,J) = F(X,Y) where

                    X = XA + (I - 1) * (XE - XA) / (IXDIM - 1),
                                                 I = 1,..,IXDIM 
                    Y = YA + (J - 1) * (YE - YA) / (IYDIM - 1),
                                                 J = 1,..,IYDIM.
Name: SHLSUR  23
Surfaces  can be  protected  from  overwriting  with the routine
SHLSUR if the hidden-line algorithm is not disabled.
The call is:  CALL SHLSUR                          level 1, 2, 3
         or:  void shlsur ();
Name: SURFCE  23
The routine  SURFCE  plots  a  surface  of the three-dimensional
function  Z = F(X,Y).  This routine  can be used with non linear
grids.
The call is:  CALL SURFCE (XRAY, IXDIM, YRAY, IYDIM, ZMAT)
                                                         level 3
         or:  void surfce (float *xray, int ixdim, float *yray,
                                        int iydim, float *zmat);
ZMAT          is a matrix with the dimension (IXDIM, IYDIM) con-
              taining the function values.
IXDIM, IYDIM  are the dimensions of ZMAT, XRAY and YRAY (>= 2).
XRAY, YRAY    are arrays  containing the X- and Y-user coordina-
              tes.
Name: SURSHD  23
The routine  SURSHD  plots  a  coloured  surface  of the  three-
dimensional function Z = F(X,Y). 
The call is:  CALL SURSHD (XRAY, IXDIM, YRAY, IYDIM, ZMAT)
                                                         level 3
         or:  void surshd (float *xray, int ixdim, float *yray,
                                        int iydim, float *zmat);
ZMAT          is a matrix with the dimension (IXDIM, IYDIM) con-
              taining the function values.
IXDIM, IYDIM  are the dimensions of ZMAT, XRAY and YRAY (>= 2).
XRAY, YRAY    are arrays  containing the X- and Y-user coordina-
              tes.
Notes:      - Colour values are calculated from the Z-scaling in
              the routine  GRAF3D or from the  parameters of the
              routine ZSCALE.
           -  A flat shading or a smooth shading can be selected
              with  the routine SHDMOD. The default is flat sha-
              ding. If smooth shading is selected, a Z-buffer is
              used for hidden-surface elimination. In this case,
              a raster format is needed for the graphics  output
              format      (for example METAFL ('XWIN') or METAFL
              ('TIFF')).
            - Additional grid lines can be enabled with the rou-
              tine SURMSH.
Name: SURFCP  23
A three-dimensional  parametric  function  is a function  of the
form   (x(t,u), y(t,u), z(t,u))  where   tmin <= t <= tmax   and
umin <= u <= umax.  The routine  SURFCP  plots a  shaded surface
from a parametric function.  The colours of the surface are cal-
culated  from the  Z-scaling  in the routine  GRAF3D or from the
parameters of the routine ZSCALE.
The call is:  CALL SURFCP (ZFUN, TMIN, TMAX, TSTEP, 
                                     UMIN, UMAX, USTEP)  level 3
         or:  void surfcp (float (*zfun)(), 
                           float tmin, float tmax, float tstep,
                           float umin, float umax, float ustep);
ZFUN          is the  name of a  FUNCTION  subroutine  with  the
              formal parameters X, Y and IOPT. If IOPT = 1, ZFUN
              should  return  the X-coordinate of the parametric
              function, if IOPT = 2, ZFUN should  return  the Y-
              coordinate and if IOPT = 3, ZFUN should return the
              Z-coordinate.
TMIN, TMAX,   define  the  range  and  step  size  of  the first
       TSTEP  parameter. 
UMIN, UMAX,   define the  range  and  step  size  of  the second
       USTEP  parameter.
Notes:     -  A flat shading or a smooth shading can be selected
              with  the routine SHDMOD. The default is flat sha-
              ding. If smooth shading is selected, a Z-buffer is
              used for hidden-surface elimination. In this case,
              a raster format is needed for the graphics  output
              format      (for example METAFL ('XWIN') or METAFL
              ('TIFF')).
            - Additional grid lines can be enabled with the rou-
              tine SURMSH.
Name: ZSCALE  23
The routine  ZSCALE  defines a Z-scaling  that will be used from
the routine SURSHD to calculate colour values.
The call is:  CALL ZSCALE (ZMIN, ZMAX)             level 1, 2, 3
         or:  void zscale (float zmin, float zmax);
ZMIN, ZMAX    are minimum  and maximum  of the Z-scaling in user
              coordinates.  For a logarithmic scaling, the para-
              meters must be exponents of base 10.
Name: NOHIDE  23
The routine NOHIDE disables the hidden-line algorithm.
The call is   CALL NOHIDE                          level 1, 2, 3
         or:  void nohide ();
Name: SUROPT  23
Surface lines plotted  with the routine SURFCE can be suppressed
for the X- and Y-directions. 
The call is:  CALL SUROPT (COPT)                   level 1, 2, 3
         or:  void suropt (char *copt);
COPT          is a character string  that  can  have the  values
              'XISO', 'YISO' and 'BOTH'.  If COPT = 'XISO', sur-
              face lines in the  Y-direction will be  suppressed
              by SURFCE.  If COPT = 'YISO', surface lines in the
              X-direction will be suppressed.
                                         Default: COPT = 'BOTH'.
Name: SURVIS  23
This routine defines the visible part of an surface.
The call is:  CALL SURVIS (CVIS)                   level 1, 2, 3
         or:  void survis (char *cvis);
CVIS          is a character  string  that  can have  the values
              'TOP', 'BOTTOM', and 'BOTH'. 
                                         Default: CVIS = 'BOTH'.
Name: SURCLR  23
The routine SURCLR defines colours for  the upper and lower side
of a surface.
The call is:  CALL SURCLR (ICTOP, ICBOT)           level 1, 2, 3
         or:  void surclr (int ictop, int icbot);
ICTOP, ICBOT  are colour numbers in the range -1 to 255. For the
              value -1, the current colour will be used.
                                              Default: (-1, -1).
Name: SURSZE  23
The limits of  the base grid used  for surfaces and contours can
be altered with the routine SURSZE.  By default, the scaling va-
lues in GRAF are used.
The call is:  CALL SURSZE (XMIN, XMAX, YMIN, YMAX) level 1, 2, 3
         or:  void sursze (float xmin, float xmax, float ymin, 
                                                    float ymax);
XMIN, XMAX    are user coordinates for the X-direction.
YMIN, YMAX    are user coordinates for the Y-direction.
Note:         For a logarithmic scaling,  the parameters must be
              exponents of base 10.
Name: SURMSH  23
The routine  SURMSH  can enable  additional  grid lines  for the
routines SURSHD and SURFCP.
The call is:  CALL SURMSH (COPT)                   level 1, 2, 3
         or:  void surmsh (char *copt);
COPT          is a character string  that  can  have  the values 
              'ON' and 'OFF'.
                                          Default: COPT = 'OFF'.
Name: CLIP3D  23
The routine CLIP3D defines 3-D clipping in the  world coordinate
system or in the eye coordinate system.
The call is:  CALL CLIP3D (COPT)                   level 1, 2, 3
         or:  void clip3d (char *copt);
COPT          is a character string  that  can  have  the values
              'WORLD' and 'EYE'.
                                        Default: COPT = 'WORLD'.
Name: VCLP3D  23
If 3-D clipping is done in the eye coordinate system,  front and
back clipping planes can be defined with the routine VCLP3D.
The call is:   CALL VCLP3D (XFRONT, XBACK)         level 1, 2, 3
         or:   void vlcp3d (float xfront, float xback);
XFRONT, XBACK  are  the distances from the viewpoint in absolute
               3-D coordinates. A negative value means infinity.
                                             Default: (1., -1.).
Name: GETMAT  23
The  routine  GETMAT calculates a  function matrix  for randomly
data points.                                                     
The call is:  CALL GETMAT (XRAY, YRAY, ZRAY, N, ZMAT, NX, NY, 
                           ZVAL, IMAT, WMAT)          level 2, 3
         or:  void getmat (float *xray, float *yray, 
                           float *zray, int n, float *zmat[],
                           int nx, int ny, int *imat[], 
                                                 float *wmat[]);  
XRAY, YRAY,   are  arrays  containing  the  randomly distributed
    ZRAY      data points.
N             is the number of points.
ZMAT          is the  function matrix  of the dimension (NX, NY)
              calculated by GETMAT.  The matrix elements corres-
              pond to a linear grid in the XY-plane whose limits
              are determined by the scaling values  in GRAF3D or
              SURSZE.
NX, NY        are the dimensions of ZMAT, IMAT and WMAT.
ZVAL          will be used  as a value  for matrix elements when
              no data points can be found in an area around  the
              corresponding grid points.  In general,  the start
              scaling of the Z-axis will be used for ZVAL.
IMAT          is a  working  matrix  of the dimension  (NX, NY).
              After  a call to  GETMAT,  IMAT(I, J) contains the
              number  of  random  data  points  found in an area
              around the grid points. The value -1  means that a
              random data value lies at a grid point.
WMAT          is a working matrix of the dimension (NX, NY).
Name: MDFMAT  23
The routine MDFMAT modifies the algorithm in GETMAT.
The call is:  CALL MDFMAT (IX, IY, W)              level 1, 2, 3
         or:  void mdfmat (int ix, int iy, float w);
IX, IY        are  the  number  of grid lines  in the X-  and Y-
              direction which determine the size  of the  region
              around data points.
W             is a weighting number.
                                           Default: (2, 2, 2.0).
Name: BOX3D   23
The routine BOX3D plots a border around the 3-D box.
The call is:  CALL BOX3D                                 level 3
         or:  void box3d (); 
Name: GRID3D  23
The routine GRID3D plots a grid in the 3-D box.
The call is:  CALL GRID3D (IGRID, JGRID, COPT)           level 3
         or:  void grid3d (int igrid, int jgrid, char *copt);
IGRID         is the number of grid lines between labels  in the
              X-direction (or Y-direction for the YZ-plane).
JGRID         is the number of grid lines between labels  in the
              Z-direction (or Y-direction for the XY-plane).
COPT          is a character string which defines where the grid
              will be plotted.
  = 'ALL'     will plot a grid in the XY-, XZ- and YZ-plane.
  = 'BACK'    will plot a grid in the XZ- and YZ-plane.
  = 'BOTTOM'  will plot a grid in the XY-plane.
Name: GRFINI  23
The routine GRFINI defines a plane in the 3-D box onto which all
plot vectors will be projected. The plane in the 3-D box corres-
ponds to a region in the  XY-plane which is determined by AXSPOS
and AXSLEN. GRFINI sets the level to 1.
The call is:  CALL GRFINI (X1, Y1, Z1, X2, Y2, Z2, X3, Y3, Z3)
                                                         level 3
         or:  void grfini (float x1, float x2, float x3,
                           float y1, float y2, float y3,
                           float z1, float z2, float z3);  
X1, Y1, Z1    are the absolute 3-D coordinates of the lower left
              corner of the 3-D plane.
X2, Y2, Z2    are  the  absolute  3-D  coordinates  of the lower
              right corner of the 3-D plane.
X3, Y3, Z3    are  the  absolute  3-D  coordinates  of the upper
              right corner of the 3-D plane.
Note:         If  (NXA,NYA)  is the lower  left corner,  NXL the
              width  and NYL the height of the region determined
              by  the  routines  AXSPOS  and  AXSLEN,  the point
              (X1,Y1,Z1)  corresponds to  (NXA,NYA),  (X2,Y2,Z2) 
              to  (NXA+NXL-1,NYA) and (X3,Y3,Z3) to  (NXA+NXL-1,
              NYA-NYL+1), respectively.
Name: GRFFIN  23
The routine GRFFIN terminates a  projection  into 3-D space. The
level will be set back to 3.
The call is:  CALL GRFFIN                          level 1, 2, 3
         or:  void grffin (); 
Name: ZBFINI  23
The routine ZBFINI creates a Z-buffer.  The graphics output for-
mat must be set to a raster format  (for example METAFL ('XWIN')
or METAFL ('TIFF')).
The call is:  CALL ZBFINI (IRET)                     level 1,2,3
         or:  int  zbfini ();
IRET          is the returned status (0: no errors).
Name: ZBFFIN  23
The routine  ZBFFIN terminates writing  to a Z-buffer  and frees
the allocated space.
The call is:  CALL ZBFFIN                            level 1,2,3
         or:  void zbffin ();
Name: ZBFTRI  23
The routine  ZBFTRI plots a smooth triangle where hidden-surface
elimination is done with the Z-buffer.
The call is:  CALL ZBFTRI (XRAY, YRAY, ZRAY, IRAY)       level 3
         or:  void zbftri (float *xray, float *yray, 
                                        float *zray, int *iray);
XRAY, YRAY,   are the  X-, Y-,  and  Z-coordinates  of the three
       ZRAY   corners of the triangle in user coordinates.
IRAY          is an integer array  containing  the  three colour
              values of the triangle corners.          
Name: ZBFLIN  23
The routine ZBFLIN  plots a line in the current colour where the
Z-buffer  is used  for hiddenline elimination.  This routine  is 
used by SURSHD and SURFCP for drawing surface grids.
The call is:  CALL ZBFLIN (X1, Y1, Z1, X2, Y2, Z2)       level 3
         or:  void zbflin (float x1, float y1, float z1,
                           float x2, float y2, float z2);   
X1, Y1, Z1    are the user coordinates of the start point.
X2, Y2, Z2    are the user coordinates of the end point.
Name: STRT3D  23
The routine STRT3D moves the pen to a three-dimensional point.
The call is:  CALL STRT3D (X, Y, Z)                      level 3
         or:  void strt3d (float x, float y, float z);
X, Y, Z       are the absolute 3-D coordinates of the point.
Name: CONN3D  23
The routine CONN3D plots a line from the current pen position to
a three-dimensional point.  The line will be cut off at the sides
of the 3-D box. Different line styles can be used.
The call is:  CALL CONN3D (X, Y, Z)                      level 3
         or:  void conn3d (float x, float y, float z);
X, Y, Z       are the absolute 3-D coordinates of the point.
Name: VECTR3  23
The routine VECTR3 plots a vector in the 3-D box.
The call is:  CALL VECTR3 (X1, Y1 ,Z1, X2, Y2, Z2, IVEC) level 3
         or:  void vectr3 (float x1, float y1, float z1,
                        float x2, float y2, float z2, int ivec);
X1, Y1, Z1    are  the  absolute 3-D coordinates  of  the  start
              point.
X2, Y2, Z2    are the absolute 3-D coordinates of the end point.
IVEC          defines the arrow head (see VECTOR).
Name: POS3PT  23
The routine POS3PT converts three-dimensional  user  coordinates
to absolute 3-D coordinates.
The call is:  CALL POS3PT (X, Y, Z, XP, YP, ZP)          level 3
         or:  void pos3pt (float  x , float  y , float  z ,
                           float *xp, float *yp, float *zp);
X, Y, Z       are the user coordinates.
XP, YP, ZP    are  the  absolute  3-D  coordinates calculated by
POS3PT.
Name: X3DPOS  23
The function  X3DPOS  calculates from user coordinates  absolute
3-D X-coordinates.
The call is:  XP  =  X3DPOS (X, Y, Z)                    level 3
         or:  float  x3dpos (float x, float y, float z);
XP            is the absolute X-coordinate calculated by X3DPOS.
X, Y, Z       are the user coordinates.
Name: Y3DPOS  23
The function  Y3DPOS  calculates from user coordinates  absolute
3-D Y-coordinates.
The call is:  YP  =  Y3DPOS (X, Y, Z)                    level 3
         or:  float  y3dpos (float x, float y, float z);
YP            is the absolute Y-coordinate calculated by Y3DPOS.
X, Y, Z       are the user coordinates.
Name: Z3DPOS  23
The function  Z3DPOS  calculates  from user coordinates absolute
3-D Z-coordinates.
The call is:  ZP  =  Z3DPOS (X, Y, Z)                    level 3
         or:  float  z3dpos (float x, float y, float z);
ZP            is the absolute Z-coordinate calculated by Z3DPOS.
X, Y, Z       are the user coordinates.
Name: REL3PT  23
The routine  REL3PT  converts  user coordinates  to plot coordi-
nates.
The call is:  CALL REL3PT (X, Y, Z, XP, YP)              level 3
         or:  void rel3pt (float x, float  y , float z,
                                    float *xp, float *yp);
X, Y, Z       are the user coordinates.
XP, YP        are the plot coordinates calculated by REL3PT.
Name: X3DREL  23
The function  X3DREL  converts  user coordinates to plot coordi-
nates.
The call is:  XP =  X3DREL (X, Y, Z)                     level 3
         or:  float x3drel (float x, float  y , float z);
XP            is the plot coordinate calculated by X3DREL.
X, Y, Z       are the user coordinates.
Name: Y3DREL  23
The function  Y3DREL  converts user coordinates  to plot coordi-
nates.
The call is:  YP  = Y3DREL (X, Y, Z)                     level 3
         or:  float y3drel (float x, float  y , float z);
YP            is the plot coordinate calculated by Y3DREL.
X, Y, Z       are the user coordinates.
Name: ABS3PT  23
The routine  ABS3PT  converts  absolute 3-D coordinates  to plot
coordinates.
The call is:  CALL ABS3PT (X, Y, Z, XP, YP)              level 3
         or:  void abs3pt (float x, float  y , float z,
                                    float *xp, float *yp);
X, Y, Z       are the absolute 3-D coordinates.
XP, YP        are the plot coordinates calculated by ABS3PT.
Name: X3DABS  23
The function X3DABS  converts absolute  3-D coordinates  to plot
coordinates.
The call is:  XP  = X3DABS (X, Y, Z)                     level 3
         or:  float x3dabs (float x, float y, float z);
XP            is the plot coordinate calculated by X3DABS.
X, Y, Z       are the absolute 3-D coordinates.
Name: Y3DABS  23
The function Y3DABS  converts absolute  3-D coordinates to  plot
coordinates.
The call is:  YP  = Y3DABS (X, Y, Z)                     level 3
         or:  float y3dabs (float x, float y, float z);
YP            is the plot coordinate calculated by Y3DABS.
X, Y, Z       are the absolute 3-D coordinates.
