------------------------------------------------------
Argument | Type | Mode
------------------------------------------------------
INTEGER FUNCTION NGCKOP (WKID) | Integer | Input
------------------------------------------------------
IOPEN = NGCKOP(WKID)
will set IOPEN to "1" if the workstation whose identifier is WKID is
currently open, otherwise IOPEN will be set to "0".
------------------------------------------------------
Argument | Type | Mode | Dimension
------------------------------------------------------
CALL NGDOTS (X, | Real | Input | NUM
Y, | Real | Input | NUM
NUM, | Integer | Input |
SIZE, | Real | Input |
ICOLOR) | Integer | Input |
------------------------------------------------------
The coordinates must be world coordinates and not user coordinates. NGDOTS does not respect the log scaling or axis reversal options of the SET call and will report a warning if these are not set to their default values.
The dots are scaled appropriately so that they will be circular when the normalization transformation does not preserve aspect ratio.
The algorithm is to construct a single circle and then translate it to the various coordinate positions. The original circle is computed by using trig functions to get points in the first octant, and then using symmetries to get the rest of the points on the circle.
The number of points used for the circle is adjusted depending on the relative size of the circle. The maximum number of points is 512 and the minimum is 8.
If circles are desired rather than dots, then toggle the ngmisc parameter CT (see the man page for ngmisc_params which describes all of the available ngmisc parameters) with a call to NGSETI:
CALL NGSETI('CT',1)
before NGDOTS to get circles, and
CALL NGSETI('CT',0)
before calling NGDOTS to get dots. The default is to draw dots.
Assuming that normalization transformation 0 is in effect and that color index 2 has been defined as red in a call to GSCR, then
CALL NGDOTS(0.5, 0.25, 1, 0.1, 2)
would draw a single red dot at world coordinate position (.5,.25)
with a diameter of 0.1 .
Assuming that normalization transformation 0 is in effect and that color index 2 has been defined as red in a call to GSCR, then
CALL NGDOTS(0.5, 0.25, 1, 0.1, 2)
would draw a single red dot at world coordinate position (.5,.25)
with a diameter of 0.1 .
Do an "ncargex fngngdts" for a relevant example.
----------------------------------------- Argument | Type | Mode ----------------------------------------- CALL NGMFTC (WKID) | Integer | Input -----------------------------------------
If you simply want to suspend output to a metafile workstation, but do not need to write to another metafile workstation, simply use the GKS entry GDAWK to deactivate the workstation, thus suspending output, and GOPWK to reactivate the workstation when you want to resume output.
For saving the state of all primitive attribute values of an NCGM workstation at the time of the temporary close and restoring them at the time of the reopen with NGREOP, see the documentation for NGSRAT.
If NGMFTC is used and NGREOP is not subsequently invoked to reopen the file so that it can be terminated normally in the same job step, then an improperly terminated metafile will result from the temporary close.
Do an "ncargex pgkex27" for a relevant example.
-----------------------------------------
Argument | Type | Mode
-----------------------------------------
CALL NGPICT (WKID, | Integer | Input
ACTION) | Integer | Input
-----------------------------------------
If WKID=2 designates a metafile workstation, then
CALL NGPICT(2,1)
would duplicate the action of a FRAME call.
If WKID=2 designates an X11 workstation, then
CALL NGPICT(2,4)
would cause a pause in the X11 window and wait for a key click or a
mouse click. A "<READY>" prompt, indicating that the window is waiting
for a mouse click or a key click, would appear at the lower left of
the X11 window after the window has been updated. After a mouse click
in the X11 window, that window will be cleared before program execution
continues.
------------------------------------------------------
Argument | Type | Mode | Dimension
------------------------------------------------------
CALL NGREOP (WKID, | Integer | Input |
CONID, | Integer | Input |
ITYPE, | Integer | Input |
FNAME, | Character | Input |
IOPT, | Integer | Input |
IAT, | Integer | Input | 14
RAT, | Integer | Input | 7
NCOLRS, | Integer | Input |
NSTART, | Integer | Input |
CTAB) | Real | Input | 3 x NCOLRS
------------------------------------------------------
NGREOP only reopens the metafile and does not activate it. It will be necessary to call GACWK before sending graphics primitives to the reopened metafile.
NGREOP can also be used to reopen a previously created metafile - either created in an independent job step, or in the same job step.
The following sequence:
CALL NGMFTC(1)
CALL NGSRAT(2, IAT, RAT)
... do stuff
CALL NGREOP(CALL NGREOP(1, 2, 1, 'gmeta1', 2,
+ IAT, RAT, NCOLS, 0, CTAB)
would temporarily close the metafile with workstation ID of 1 (in this
case a metafile with name "gmeta1") and save the GKS state variables
at the time of the close. Then the call to NGREOP would reopen the
metafile for appending.
Do an "ncargex pgkex27" for a relevant example.
------------------------------------------------------
Argument | Type | Mode | Dimension
------------------------------------------------------
CALL NGSRAT (IOPT, | Integer | Input |
IAT, | Integer | Input | 14
RAT) | Real | Input | 7
------------------------------------------------------
To restore the NCAR GKS primitive attribute values to what they were as of the last time NGSRAT was called with argument IOPT = 0, then call NGSRAT with first argument of 1. IAT and RAT are ignored in this case.
If you call NGSRAT with a fist argument of 2, then the current settings of the NCAR GKS primitive attribute values are returned in arrays IAT and RAT as per the description of IAT and RAT above.
If you call NGSRAT with a fist argument of 3, then arrays IAT and RAT must be supplied and the values therein will be used to set the NCAR GKS primitive attribute values as per the description of IAT and RAT above.
A common use of NGSRAT would be in conjunction with NGMFTC and NGREOP for saving the GKS state after writing to one metafile, writing to a new metafile, and then restoring the GKS state when reopening the initial metafile.
The following sequence:
CALL NGSRAT(0,IAT,RAT)
... do some setting and drawing
CALL NGSRAT(1,IAT,RAT)
would save the values of all NCAR GKS primitive attributes
before the code that does setting and drawing and then restore the
attribute values after the setting and drawing.
Do an "ncargex pgkex27" for a relevant example.