Name: CONCRV  25
CONCRV plots contours generated by other software packages.
The call is:  CALL CONCRV (XRAY, YRAY, N, ZLEV)       level 2, 3
         or:  void concrv (float *xray, float *yray, int n, 
                                                    float zlev);
XRAY, YRAY    are arrays containing  the X- and Y-coordinates of
              a contour line.
N             is the number of points.
ZLEV          is a function value used for labels.
Name: CONTUR  25
The routine CONTUR calculates and plots contours of the function
Z = F(X,Y).
The call is:  CALL CONTUR (XRAY, N, YRAY, M, ZMAT, ZLEV)
                                                      level 2, 3
         or:  void contur (float *xray, int n, float *yray, 
                              int m, float *zmat[], float zlev);
XRAY          is an array containing X-coordinates.
N             is the dimension of XRAY.
YRAY          is an array containing Y-coordinates.
M             is the dimension of YRAY.
ZMAT          is a  matrix  of the  dimension  (N, M) containing
              function values.
ZLEV          is a function value that defines the contour  line
              to be calculated. ZLEV can be used for labels.
Name: CONMAT  25
The routine  CONMAT  plots contours of the  function Z = F(X,Y).
The function values correspond to a linear grid in the XY-plane.
The call is:  CALL CONMAT (ZMAT, N, M, ZLEV)          level 2, 3
         or:  void conmat (float *zmat[], int n, int m, 
                                                    float zlev);
ZMAT          is a matrix of the dimension (N, M) containing the
              function values. If XA, XE, YA and YE are the axis
              limits in  GRAF or values defined with the routine
              SURSZE, the connection of  grid points and  matrix
              elements can be described by the formula:
              ZMAT(I,J) = F(X,Y) where
                X = XA + (I - 1) * (XE - XA) / (N-1),  I=1,..,N
                Y = YA + (J - 1) * (YE - YA) / (M-1),  J=1,..,M.
N, M          define the dimension of ZMAT.
ZLEV          is a function value that defines  the contour line
              to be calculated.  The value  can  be used for la-
              bels.
Notes:      - CONCRV, CONTUR and CONMAT use linear interpolation
              to connect contour points.
            - Geographical projections  can be defined  for con-
              touring.
            - The thickness of contours can be set with  THKCRV.
              Line styles and colours can also be defined.
            - The number of matrix points in  CONTUR  and CONMAT
              is limited to N * M <= 256000 in Fortran 77. There
              is no limit for the C and Fortran 90  libraries of
              DISLIN.  
            - To plot contours  for randomly  distributed points
              of the form X(N), Y(N) and Z(N),  the routine GET-
              MAT can be used to calculate a function matrix.
Name: CONSHD  25
The routine  CONSHD  plots filled  contours of the  function Z =
F(X,Y).  Two  algorithms  can be  selected  for contour filling:
a cell filling algorithm and a polygon filling algorithm.  For a
polygon filling,  only closed contours  can be filled. The algo-
rithm can be defined with the routine SHDMOD. 
The call is:  CALL CONSHD (XRAY, N, YRAY, M, ZMAT, ZLVRAY, NLEV) 
                                                      level 2, 3
         or:  void conshd (float *xray, int n, float *yray,
                           int m, float *zmat, float *zlvray,
                           int nlev);
XRAY          is an array containing X-coordinates.
N             is the dimension of XRAY.
YRAY          is an array containing Y-coordinates.
M             is the dimension of YRAY.
ZMAT          is a  matrix  of the  dimension (N, M)  containing
              function values.
ZLVRAY        is an array containing the levels. The levels must
              be sorted  in ascending order  if cell filling  is
              selected.  For polygon filling,  the levels should
              be sorted  in such a way  that inner contours  are
              plotted last.
NLEV          is the number of levels.
Name: CONPTS  25
The routine  CONPTS  generates  contours  without  plotting.
Multiple curves can be returned for one contour level.
The call is:  CALL CONPTS (XRAY, N, YRAY, M, ZMAT, ZLEV, XPTRAY,
                           YPTRAY, MAXPTS, IRAY, MAXCRV, NCURVS)
                                                level 0, 1, 2, 3
         or:  void conpts (float *xray, int n, float *yray,
                           int m, float *zmat, float zlev, 
                           float *xptray, float *yptray,
                           int maxpts, int *iray, int maxcrv,
                           int *ncurvs);
XRAY          is an array containing X-coordinates.
N             is the dimension of XRAY.
YRAY          is an array containing Y-coordinates.
M             is the dimension of YRAY.
ZMAT          is  a matrix  of the  dimension (N, M)  containing
              function values.
ZLEV          is a function value  that defines the contour line
              to be calculated. 
XPTRAY,       are  returned  arrays  containing  the  calculated
   YPTRAY     contour. The arrays can contain several curves.
MAXPTS        is the maximal number of points that can be passed
              to XPTRAY and YPTRAY.
IRAY          is a returned integer array that contains the num-
              ber of points for each generated contour curve.
MAXCRV        is the maximal  number  of entries that can be
              passed to IRAY.
NCURVS        is the returned number of generated curves.
Name: LABCLR  20,21,25
The routine LABCLR defines the colour of contour labels.
The call is:  CALL LABCLR (NCLR, 'CONTUR')         level 1, 2, 3
         or:  void labclr (int nclr, "CONTUR");
NCLR          is a colour number between  -1 and 255.  If NCLR =
              -1,  the contour labels  will be plotted  with the
              current  colour.
                                              Default: NCLR = -1
Name: CONLAB  25
The routine CONLAB defines a character string which will be used
for labels  if the routine  LABELS  is called with the parameter
'CONLAB'.
The call is:  CALL CONLAB (CLAB)                   level 1, 2, 3
         or:  void conlab (char *clab);
CLAB          is a character string containing the label.
                                            Default: CLAB = ' '.
Name: CONMOD  25
The routine CONMOD modifies the appearance of contour labels. By
default,  DISLIN suppresses the plotting of labels at a position
where the contour is very curved.  To measure the curvature of a
contour for an interval, DISLIN calculates the ratio between the
arc length and the length of the straight line  between the  in-
terval limits. If the quotient is much greater than 1,  the con-
tour l ine is very curved in that interval.
The call is:  CALL CONMOD (XFAC, XQUOT)            level 1, 2, 3
         or:  void conmod (float xfac, float xquot);
XFAC          defines the length of intervals (>= 0). The curva-
              ture of contours  will be tested  in intervals  of
              the  length  (1 + XFAC) * W  where W  is the label
              length.
XQUOT         defines an  upper limit  for the  quotient  of arc
              length and length of the straight line  (> 1).  If
              the quotient is greater than  XQUOT,  the plotting
              of labels will be suppressed  in the tested inter-
              val.
                                            Default: (0.5, 1.5).
Name: CONGAP  25
The routine  CONGAP  defines the distance  between contour lines
and labels.
The call is:  CALL CONGAP (XFAC)                   level 1, 2, 3
         or:  void congap (float xfac);
XFAC          is a  real number used  as a  scaling factor.  The
              distance between contour lines  and labels  is set
              to  XFAC * NH  where  NH is the current  character
              height.
                                            Default: XFAC = 0.5.
Name: SHDMOD  25,23
The routine SHDMOD defines flat or smooth shading  for surfaces,  
or an algorithm  used for contour filling.
The call is:  CALL SHDMOD (COPT, CTYPE)         level 1, 2, 3
         or:  void shdmod (char *copt, char *ctype);
COPT          is a character string defining the algorithm.
 = 'CELL'     defines cell filling for contours.
 = 'POLY'     defines polygon filling for contours.
 = 'FLAT'     defines flat shading for surfaces.
 = 'SMOOTH'   defines smooth shading for surfaces.
CTYPE         is a character string that can have the  values
              'CONTOUR' and 'SURFACE'.
                               Default:  ('CELL', 'CONTOUR'),
                                         ('FLAT', 'SURFACE').
