DCL:GRPH2:UDPACK: Contour Routines
The UDPACK is a subroutine package for drawing 2-D contour graphs. The contour lines are drawn in the UC, and are compatible with all normalization transformations.
The labeled contour lines in this package are drawn by subroutines that draw
line segments with the internal variable 'LCHAR' handled by
sgpget/sgpset of GRPH1 set as .true..
This package only draws the contour lines, and does not draw the outer frames
such as the coordinate axes.
The following are the subroutines for the user in the UDPACK.
udcntr | . . . | Draws a 2-D contour graph (using a work area provided internally). |
udcntz | . . . | Draws a 2-D contour graph (using a work area given by the user). |
udgcla | . . . | Generates contour by minimum & maximum values and step size. |
udgclb | . . . | Generates contour by the array giving the grip point values and step size. |
udiclv | . . . | Initializes (clears) a contour level. |
udsclv | . . . | Generates a single contour level. |
uddclv | . . . | Deletes a single contour level. |
udsfmt | . . . | Specifies the format of a contour level. |
udpget/udpset | . . . | Inquires/changes an internal variable. |
Information concerning grid-point coordinates are handled by the UWPACK (See
Section 11.)
uwsgxa/uwsgya | . . . | Sets by giving each coordinate value. |
uwsgxb/uwsgyb | . . . | Sets using the minimum and maximum values. |
If you wish to have a quick look at the contour for a 2-D data set, then simply
make a call to udcntr (or udcntz). Evenly-spaced grid points
will be set to the full extent of the window, and the contour level will be
generated automatically.
If the grid points are not evenly spaced, then call uwsgxa (X
direction)/uwsgya (Y direction) before the call to udcntr,
and set the coordinate values of the grid points beforehand. When you wish to
set equidistant grid points in only a certain part of the window, then use
uwsgxb (X direction)/uwsgyb (Y direction) to set the
minimum and maximum values for the grid points.
Or, when you wish to specify the contour level beforehand, then call
udgcla or udgclb before making the call to udcntr (or
udcntz). However, in this case, only contour levels with equal
intervals are generated. If you wish to generate contour levels at uneven
intervals, or if you wish to add a specific contour level, generate each contour
level using
udsclv. (To clear a single contour level, call uddclv. To
clear all contour levels, call udiclv.)
Internally, the routines use the COMMON blocks named udblk1, udblk2,
and udblk3. The user must not use an external procedure or a COMMON
block with the same name.