CALL GCATOG(WKID) or CALL GCGTOA(WKID)
Input:
GCGTOA and GCATOG work only on GKSGRAL with the CERN-supplied
driver versions as the routines require modifications to the driver code.
The DECGKS version tests the workstation type; if it is VXUIS or VXXW
it does nothing, otherwise it writes an error message on the file
GKSPACK.ERR.
The routines change a terminal from graphics to alpha mode (GCGTOA) and from alpha to graphics mode (GCATOG). The terminal must be an activated GKS workstation. Thus they allow the application to perform FORTRAN I/O to the terminal during a graphics session. The effect on the terminal depends on its capabilities. For example, as Pericom PG terminals do not have a dialog area, calling GCGTOA causes the bell to ring and the program then halts until the operator presses return. This gives the user time to look at the image drawn in graphics mode before switching the screen to the alpha-numeric bit plane. However, on terminals with a dialog area (e.g. Pericom MG series and Tektronix 4107 compatible terminals), the FORTRAN I/O will appear immediately overlayed with the graphics.
After the FORTRAN I/O has been performed the application must call GCATOG to reset the graphics environment. Note that GCGTOA returns immediately, without waiting for a user action. Thus, if one wishes the program to wait until the user has read a message and is ready to continue, then it is essential to include a READ statement, as the following program fragment illustrates:
CALL GCGTOA (WKID)
WRITE(*,*) ' GIVE X COORDINATE: '
C Wait for a reply
READ (*,*) X
CALL GCATOG (WKID)
This routine is described fully in section on Page
.
The DECGKS version is a dummy.
Input:
Input:
GCINIT provides an easy initialization of GKS for interactive or batch applications. If TERMTP=0 GCINIT will prompt the interactive user for the terminal type and connection ID. LUFILE and KERFIL are Fortran logical unit numbers and no file names are assigned as these can easily be provided by the user. Note that the logical unit numbers 91, 92, 93 are reserved for GKSGRAL and, to avoid nasty surprises, do not use 5, 6 or 7. The current values for LUFILE and their effect are:
LUFILE<=0 An interactive dialog will guide the user. 0<LUFILE<100 GKS Appendix E metafile on unit LUFILE. 100<LUFILE<200 PostScript file on unit LUFILE-100. 200<LUFILE<300 Encapsulated PostScript file on LUFILE-200. 1000<LUFILE<1100 Tektronix 4014 style file on unit LUFILE-1000For example, LUFILE=109 would produce PostScript output on the Fortran file defined by logical unit=9. Output of Tektronix 4014 escape codes is available under VMS and Aegis. It can be provided under VM/CMS if requested.
Supplies information in implementation file. See introduction to this section for file naming details.
Input:
Output:
Supplies implementation name string.
Output:
Asks the user to enter interactively a workstation type, and provides the list of the available workstation types if the user enters '?'. Automatically returns to the program the connection id to be used for the selected workstation type.
Output:
Input:
GCNAME enables the user to give the name 'STRING' to the current frame
when output to a metafile for inclusion in compound documents.
The name 'STRING' may also be used by GRVIEW and GRCONV
to select frames on the metafile.
Users of this facility must place the call to GCNAME before
outputting any primitives to a new frame.
For examples of its use, see on Page
and on Page
.
Restrictions: Only the first 7 characters of 'STRING' are used.
If less than 7 characters are given 'STRING' will be padded with
'$'s (dollars).
For VM/CMS system reasons, the character set for 'STRING' can
only contain upper-case alphabetic, the digits 0-9, and the dollar
sign ('$'), so lower-case characters are converted to upper-case.
Analog to the routine GQWKC but returns a workstation type name instead of a workstation type integer value.
Input:
Output:
This routine is described fully in section on Page
.
The DECGKS version is a dummy.
Input:
GCSTOP deactivates and closes all GKS workstations and closes GKS.
Returns the workstation type name corresponding to a workstation type integer value.
Input:
Output:
Get workstation type and connection id corresponding to a given workstation type name (e.g. 'VXXW').
Input:
Output:
Input:
Output:
GPRMPT gives a prompt and waits for a reply from the user in a GKS interactive graphics program. As an example, GPRMPT could be used to hold a picture on the screen until the user was ready to view the next one, or terminate the program. If the user hits only a Carriage Return then LSTRI=0 and 'REPLY' is not defined. For example:
CALL GPRMPT(WKID, 'Type RETURN or QUIT', LSTRI, REPLY)
IF(LSTRI.GT.0) THEN
C Call STOPPG to do whatever you want to do on QUIT
IF REPLY(1:4) .EQ. 'QUIT') CALL STOPPG
ENDIF
Currently the prompt is put into a GKS segment which is deleted after the reply. If a segment is open when GPRMPT is called, the prompt will be added to it but it will not be deleted. This could be confusing and should be avoided by closing an open segment before calling GPRMPT. If the workstation is not a terminal or the job is in batch GPRMPT does nothing.
Restrictions: If GPRMPT is used repeatedly within one picture, the prompts will overprint if the terminal does not have selective erasure. If long prompts and/or small workstation windows are used the prompt will be truncated.
Emulates the GTSGRAL request stroke (locator loop) which requires a button push to input each point. This is in contrast to the DECGKS implementation of GRQSK which reads the current cursor position in a loop with fixed time or position intervals. If it is intended to use this routine to replace the version of GRQSK in the GKS library it must be linked ahead of the library.
Input:
Output:
Emulation of GTS-GRAL utility to draw a circular arc defined by 4 points.
Input:
Emulation of GTS-GRAL utility to draw a Bezier curve defined by a Bezier polygon.
Input:
Emulation of GTS-GRAL utility to draw a circle defined by (midpoint, peripheral point).
Input:
Emulation of GTS-GRAL utility to draw a circle defined by (midpoint, radius).
Input:
Emulation of GTS-GRAL utility to draw a curve defined by interpolating points.
Input:
Emulation of GTS-GRAL utility to draw an ellipse defined by (midpoint, semi-axes). An ellipse is drawn with midpoint XM,YM; the length of semi-axis in the X-direction is A, and in the Y-direction is B.
Input:
Emulation of GTS-GRAL utility to draw an elliptical arc specified by the
midpoint XM,YM, the size of the semi-axes in direction X and Y (A, B),
and BEGRAD and ENDRAD which define the radius of the start and end points.
The ellipse is rotated with angle ROTATE in an anti-clockwise direction.
Input:
Emulation of GTS-GRAL utility to define a menu in a given echo area.
Input:
Dummy routine which writes error message to file GTSTODEC.ERR.
Output:
Dummy routine which writes error message to file GTSTODEC.ERR.
Input: