DIGITAL Software Product Description ___________________________________________________________________ PRODUCT NAME: DIGITAL GKS Version 6.5 for OpenVMS VAX SPD 26.20.19 DESCRIPTION DIGITAL GKS (Graphical Kernel System) (formerly DEC GKS) for OpenVMS VAX Systems is a two-dimensional and three-dimensional graphics support system that provides a set of programming functions for creating in- teractive and noninteractive graphics applications. As a development tool, DIGITAL GKS is a solid base for portable, device-independent ap- plications that define and display graphical images, using a variety of graphics devices. DIGITAL GKS for OpenVMS VAX is Digital Equipment Corporation's imple- mentation of the 1988 ISO 8805 standard GKS for Three Dimensions (GKS-3D) and the ISO 7942 standard GKS. DIGITAL GKS conforms to level 2c of this standard, providing full output capabilities, including workstation- independent segment storage (level 2), and full synchronous and asyn- chronous input capabilities (level c). DIGITAL GKS is the merger of two earlier products: o DEC GKS-3D Version 1.2, a three-dimensional product o DEC GKS Version 4.2, a two-dimensional product The resulting product provides both two-dimensional and three-dimensional capabilities in a single package, and was first made available as DEC GKS Version 5.0. DIGITAL GKS supports DECwindows and DECwindows Motif for OpenVMS VAX or OpenVMS VAX Workstation Software (VWS), and is supported on most DIGITAL processors running the OpenVMS VAX Operating System. April 1997 AE-BP36U-TE DIGITAL GKS is device-independent; the same program can generate graph- ical output on different devices without modification to the source code. The graphical output formats supported by DIGITAL GKS include: o CGM (Computer Graphics Metafile) o DDIF (DIGITAL Document Interchange Format) o Hewlett-Packard Graphics Language (HP-GL) o Hewlett-Packard Printer Control Language (HP PCL) o PostScript DIGITAL GKS provides four language bindings in which graphical data can be created and managed. These bindings are: C, ISO FORTRAN, GKS$ (a two-dimensional, language-independent binding), and GKS3D$ (a three-dimensional, language-independent binding). DIGITAL GKS is a subroutine library packaged as a set of shareable im- ages with which application programs are linked. The shareable images are activated at run-time as needed. PEX Support DIGITAL GKS supports output to the DIGITAL implementation of PEX Ver- sion 5.0 and PEX Version 5.1 servers. For OpenVMS VAX, the PEX server extension and the PEXlib object library are included in the DIGITAL GKS kit. Output Modes With DIGITAL GKS, you can describe a graphical object using either seg- ments or immediate mode. A segment is a set of output primitives that are created, manipulated, and deleted as a group, but are not modi- fiable. DIGITAL GKS manages segments internally and automatically re- draws them if the display is damaged (for example, if the display win- dow is obscured and then exposed). 2 In immediate mode, primitives are rendered directly to the display sur- face without being stored internally in DIGITAL GKS. This mode is use- ful when graphical data is temporary, or will be refreshed by the ap- plication. Output Primitives DIGITAL GKS provides a variety of output primitives for creating ba- sic two-dimensional and three-dimensional graphics. These primitives are: Cell Array A rectangular image specified by a two-dimensional array of rectangular color cells on a plane arbi- trarily placed in three-dimensional space. Fill Area A polygonal area that can be hollow or filled with a uniform color, a pattern, or a hatch style. The edges of the area are not defined and cannot be controlled. Fill Area A set of polygonal areas with holes or disjointed Set regions that are treated as a single entity. These areas can be hollow or filled with a uniform color, patterns, or hatch styles. Control of edge at- tributes is provided. Generalized A primitive providing access to drawing capabilities Drawing of graphics devices not used by the other primitives Primitive listed here; circles and arcs are two common GDPs. (GDP) Polyline A set of connected lines defined by a series of points and having line type, line width, and color attributes defined. 3 Polymarker One or more symbols that can mark significant points in a display and have type, size, scale, and color attributes defined. Text A character string at a given position in world coordinates. This string can be in 8-bit or 16- bit format, and can be displayed in a variety of fonts, orientations, sizes, and colors. Text size is affected by transformations. Attributes Each output primitive has an associated set of attributes that con- trol the primitive's appearance. Attributes can be defined in groups (bundles) or individually. Some examples of attributes are: Line Type The style of a line, for example, dotted or dashed. Line The width of the line. Width Color The color of a primitive. You can select one of the predefined colors or specify the red, green, and blue intensities required to define a particular color on color devices. Character Text attributes, including font, character spacing, Attributes height, angle, path, and alignment. Viewing Operations DIGITAL GKS allows you to specify views of three-dimensional objects and define the "working" or world coordinate system used in these views. World coordinates can have any scale. For example, one application might have a maximum range from 0 to 1000.0; another application might limit the range from 0.01 to 0.1. 4 You can control multiple, simultaneous views of the same objects on one or more display surfaces, as well as the position and size of the image on the surface. For example, one application program can dis- play an image of a cube in one window on a workstation, and at the same time, the program can display a detail of the back of the cube in an- other window (on another workstation, if required). Control Functions Control functions are used to perform system management tasks related to the DIGITAL GKS environment, the workstation environment, and the graphics display. These tasks include turning DIGITAL GKS on and off when requested by the application, directing the flow of graphics data to logical output devices and managing the picture process. Inquiry Functions DIGITAL GKS includes a complete set of inquiry functions. These func- tions are used to obtain information about the DIGITAL GKS state, seg- ment storage, workstation capabilities, or the workstation state. This information is essential for developing modular, device-independent programs. Escape Functions Escape functions are included with DIGITAL GKS to enable access to func- tionality not provided in the GKS standard. The DIGITAL GKS escape func- tions include: o Double buffering control o Background pixmap control o Screen dumps 5 Logical Input Devices DIGITAL GKS supports synchronous and asynchronous input from the fol- lowing logical input devices: Locator Allows the user to select a point on the display. Stroke Allows the user to input a series of points on the dis- play. Valuator Allows the user to select a real number from a range of numbers, for example, by sliding a pointer to a position on a radio dial. Choice Allows the user to make a selection, for example, from a list of choices in a menu. String Allows the user to input a character string, for example, as input to a prompt. Pick Allows the user to select an object that is visible on the display. The information returned consists of a seg- ment name, a pick identifier, and the segment status. Primitives outside segments cannot be picked. Character Fonts and Sets DIGITAL GKS includes a series of stroke-precision character fonts. These character fonts were digitized by Dr. Allen V. Hershey of the Naval Surface Weapons Laboratory, and supplied to DIGITAL by the National Bureau of Standards. DIGITAL GKS also provides text support for the native character sets of the supported graphical devices. Language Bindings DIGITAL GKS functions can be accessed by four sets of subroutine calls or "bindings," as they are referred to by the GKS standards. These bind- ings are: o A FORTRAN binding that conforms to the ISO (DIS 8806/1) FORTRAN bind- ing to GKS-3D. 6 o A C binding that conforms to a three-dimensional extension of the ISO (DP 8651/4) C language binding to GKS. o GKS3D$, a language-independent, three-dimensional binding that fol- lows the standard calling conventions and is callable by many dif- ferent languages. o GKS$, a language-independent, two-dimensional binding that follows the standard calling conventions and is callable by many differ- ent languages. GKS-3D Metafile DIGITAL GKS provides the capability of reading and writing sequential files in two formats: the ISO 8805 suggested GKS-3D Metafile format and the ISO 7942 suggested two-dimensional GKSM Metafile format. The metafiles can be used to: o Save and restore graphical information between sessions in a device- independent format o Transfer graphical information between systems with compatible ver- sions of DIGITAL GKS o Transfer graphical information between two DIGITAL GKS applications o Transfer graphical information from a DEC GKS-3D application to a DIGITAL GKS application o Store accompanying nongraphical information DIGITAL Document Interchange Format (DDIF) Output DIGITAL GKS provides support for storing two-dimensional views of three- dimensional objects encoded in DIGITAL Document Interchange Format (DDIF). Views stored in DDIF can be processed by applications that conform to the DIGITAL Compound Document Architecture (CDA). 7 Computer Graphics Metafile (CGM) Output DIGITAL GKS provides support for storing information using the Computer Graphics Metafile (CGM), an approved ANSI standard format (ANSI X3.122- 1986). DIGITAL GKS supports CGM output for the following formats: o Clear Text Encoding - Graphical output data stored in this format is easily created, viewed, and modified using a common text edi- tor. This format is also suitable for transferring graphical out- put data through networks that support the transfer of text files only. o Character Encoding - Graphical output data is typically stored in this format to reduce the file size. This format is especially suited to transfers through networks that do not support binary transfers. o Binary Encoding - Graphical output data stored in this format is very compact and the fastest to read and write. This format is the least suitable for transmission over communication lines because all 8 bits in each byte are meaningful. Graphics Handlers DIGITAL GKS includes support for a wide variety of graphics devices provided by DIGITAL and other vendors. For devices that are not sup- ported by DIGITAL, users can develop their own graphics device han- dlers using the DIGITAL GKS device handler interface. Device handlers can be developed in VAX FORTRAN, DEC Fortran, VAX C, and DEC C. For more information on this interface, refer to the Build- ing a Device Handler System for DEC GKS and DEC PHIGS manual (Order No. QA-810AK-GZ), which can be purchased separately. 8 CONFORMANCE TO STANDARDS DIGITAL GKS is designed to conform to the following standards: o ISO 8805 standard GKS for Three Dimensions (GKS-3D). o ISO 7942 standard GKS. o MIT X Window System Version 11 Release 5 (X11R5). o PEX Version 5.0 and 5.1. o The FORTRAN binding conforms to the ISO (DIS 8806/1) FORTRAN bind- ing to GKS-3D. HARDWARE REQUIREMENTS The following processors are supported by DIGITAL GKS: VAX: VAXft Model 110, VAXft Model 310, VAXft Model 410, VAXft Model 610, VAXft Model 612 VAX 4000 Model 100, VAX 4000 Model 200, VAX 4000 Model 300, VAX 4000 Model 400, VAX 4000 Model 500, VAX 4000 Model 600, VAX 6000 Model 200 Series, VAX 6000 Model 300 Series, VAX 6000 Model 400 Series, VAX 6000 Model 500 Series, VAX 6000 Model 600 Series VAX 7000 Model 600 Series VAX 8200, VAX 8250, VAX 8300, VAX 8350, VAX 8500, VAX 8530, VAX 8550, VAX 8600, VAX 8650, VAX 8700, VAX 8800, VAX 8810, 9 VAX 8820, VAX 8830, VAX 8840 VAX 9000 Model 110, VAX 9000 Model 210, VAX 9000 Model 300 Series, VAX 9000 Model 400 Series VAX 10000 Model 600 Series MicroVAX: MicroVAX 3100 Model 10/10E, MicroVAX 3100 Model 20/20E, MicroVAX 3100 Model 30, MicroVAX 3100 Model 40, MicroVAX 3100 Model 80, MicroVAX 3100 Model 90, MicroVAX 3300, MicroVAX 3400, MicroVAX 3500, MicroVAX 3600, MicroVAX 3800, MicroVAX 3900 VAXstation: VAXstation 3100 Model 30, VAXstation 3100 Model 40, VAXstation 3100 Model 38, VAXstation 3100 Model 48, VAXstation 3100 Model 76 VAXstation 3200, VAXstation 3500, VAXstation 3520, VAXstation 3540 VAXstation 4000 Model 60, VAXstation 4000 Model 90, VAXstation 4000 Model 100 VAXstation 4000 VLC VAXserver: VAXserver 3100, VAXserver 3300, VAXserver 3400, VAXserver 3500, 10 VAXserver 3600, VAXserver 3602, VAXserver 3800, VAXserver 3900 VAXserver 4000 Model 200, VAXserver 4000 Model 300, VAXserver 4000 Model 500 VAXserver 6000 Model 210, VAXserver 6000 Model 220, VAXserver 6000 Model 310, VAXserver 6000 Model 320, VAXserver 6000 Model 410, VAXserver 6000 Model 420, VAXserver 6000 Model 510, VAXserver 6000 Model 520, VAXserver 6000 Model 610, VAXserver 6000 Model 620, VAXserver 6000 Model 630 Disk Space Requirements The disk space requirements for DIGITAL GKS depend on the kit you in- stall, as shown. DIGITAL GKS Development Kit: Disk space required for 49,000 blocks installation: Disk space required for 48,000 blocks use (permanent): DIGITAL GKS Run-Time-Only Kit: Disk space required for 28,000 blocks installation: 11 Disk space required for 27,000 blocks use (permanent): These counts refer to the disk space required on the system disk. The sizes are approximate; actual sizes may vary depending on the user's system environment, configuration, and software options. Memory Requirements for DECwindows and DECwindows Motif Support The minimum supported memory for DIGITAL GKS running in a standalone DECwindows and DECwindows Motif environment, with both the client and server executing on the same system, is 32 MB. The memory size sug- gested for most typical hardware configurations, however, is 64 MB or more, depending on the system. The system configuration and performance requirements of DECwindows and DECwindows Motif applications can determine the memory needed on your system as follows: o Less memory may be required on the client system (where the soft- ware is installed and executed) if the server (component display- ing the application) resides on another system. o More memory may be required on a system where improved performance is desired, or where several applications are running. OPTIONAL HARDWARE DIGITAL GKS supports a variety of interactive and hard copy devices. At least one of these devices is required to display graphics output. Terminal for DECwindows and DECwindows Motif Clients: o DECterminal VXT 2000 Terminals: o VT125 with black and white or optional color monitor (ReGIS) o VT240 with black and white monitor (ReGIS) 12 o VT241 with color monitor (ReGIS) o VT330 with black and white monitor o VT340 with color monitor o TEKTRONIX 4014 with enhanced graphics module (Option 34) or equivalent Note: The emulation of a TEKTRONIX 4014 is not supported on any hard- ware. o TEKTRONIX 4107 terminal o TEKTRONIX 4128 terminal o TEKTRONIX 4129 terminal o TEKTRONIX 4207 terminal Compatible Sixel Devices: o DIGITAL DEClaser 1100, 2100, 2150, 2200, 2250, 2300, 2400 Laser Printers o DIGITAL LN03 with LN03S-UA upgrade kit o DIGITAL LN03 PLUS Laser Printer o DIGITAL LN03S-JA Laser Printer o DIGITAL LA50 (restricted to a 2:1 aspect ratio) o DIGITAL LA75 o DIGITAL LA84 o DIGITAL LA86 o DIGITAL LA100 o DIGITAL LA280 o DIGITAL LA324 (Color Sixel Printer) o DIGITAL LA380 13 o TEKTRONIX 4611 hard copy unit when connected to the TEKTRONIX 4014 computer display terminal Compatible Hewlett-Packard Graphics Language Devices: o DIGITAL LVP16 Pen Plotter o HP7475 Hewlett-Packard Pen Plotter o HP7550 Hewlett-Packard Pen Plotter o HP7580 Hewlett-Packard Pen Plotter o HP7585 Hewlett-Packard Pen Plotter o LASERGRAPHICS MPS-2000 Film Recorder Compatible Hewlett-Packard PCL Level 4 Devices: o Hewlett-Packard LaserJet II Ink Jet Plotters: o DIGITAL LCG01 Color Ink Jet Plotter (ReGIS) o DIGITAL LJ250 (Color Sixel) Compatible PostScript Devices: o Apple LaserWriter o Apple LaserWriter Plus o DIGITAL DEClaser 1150, 2150, 2250 o DIGITAL LN03R ScriptPrinter o DIGITAL LPS20 Laser Printer o DIGITAL LPS20-GJ Laser Printer o DIGITAL LPS32 Laser Printer o DIGITAL LPS40 Laser Printer o DIGITAL LPS40-AJ Laser Printer 14 o DIGITAL LPS40-DJ Laser Printer CLUSTER ENVIRONMENT DIGITAL GKS is fully supported when installed on any valid and licensed VAXcluster V5.x configurations including CI, Ethernet, and Mixed In- terconnect configurations, and are fully described in the VAXcluster Software Product Description (SPD 29.78.xx). SOFTWARE REQUIREMENTS The software requirements for DIGITAL GKS Version 6.5 are: o OpenVMS VAX Operating System V5.5-2 or higher o DEC C/C++ Run-time Library Components Version 6.0 for OpenVMS VAX Additional software requirements are listed in the following sections. For Workstations Running VWS: OpenVMS VAX Workstation Software Version 4.4 For Workstations Running OpenVMS VAX DECwindows: DECwindows is packaged with the operating system; therefore, no ad- ditional DECwindows software components are necessary. For Workstations Running OpenVMS VAX DECwindows Motif: DECwindows Motif Version 1.1 or higher for OpenVMS VAX For the development of applications and programs that use DIGITAL GKS on OpenVMS VAX, one of the languages supported by DIGITAL GKS is also required. 15 OpenVMS VAX Tailoring The following OpenVMS VAX classes are required for full DIGITAL GKS functionality: o OpenVMS VAX required save set o Network support o Programming support o OpenVMS VAX workstation support-if you are using DIGITAL GKS on a workstation OPTIONAL SOFTWARE DIGITAL GKS supports the following languages: o VAX Ada Version 2.3 or higher o VAX BASIC Version 3.5 or higher o VAX BLISS-32 Implementation Language Version 4.6 or higher o VAX C Version 3.2 o VAX FORTRAN Version 5.8 or higher o VAX Pascal Version 5.0 or higher o VAX PL/I Version 3.4 or higher o DEC C Version 5.0 or higher o DEC Fortran Version 6.3 or higher Note: Certain versions of these products depend on a specific version of the operating system. Please refer to the Software Product Descrip- tion (SPD) of the product in question to determine which version is necessary. 16 GROWTH CONSIDERATIONS The minimum hardware and software requirements for any future version of this product may be different from the requirements for the cur- rent version. DISTRIBUTION MEDIA This product is distributed as follows: o On 9-track 1600 BPI Magnetic Tape (includes printed documentation) o On TK50 Streaming Tape (includes printed documentation) o As part of the OpenVMS VAX Software Library Package on CD-ROM This CD-ROM contains the DIGITAL GKS software binaries and online documentation in Bookreader and PostScript format. The DIGITAL GKS documentation is also available in printed form, which can be or- dered separately. Online documentation only is distributed on the OpenVMS VAX Online Doc- umentation Library CD-ROM (order number QA-VYR8A-G8). Binaries only are distributed on the OpenVMS VAX Software Products Library CD-ROM (order number QA-VWJ8A-A8). ORDERING INFORMATION Development Option: The following kits include media, the base documentation set, and the specified binding reference manual: Software Licenses DIGITAL GKS: QL-810A*-** Software Media: QA-810A*-H* Software Library Package CD-ROM: QA-YL48A-H8 Software Documentation DIGITAL GKS: QA-810A*-GZ Software Product Services DIGITAL GKS: QT-810A*-** Run-Time-Only Option: 17 Software Licenses DIGITAL GKS: QL-811A*-** Software Media: QA-811AA-H* Software Library Package CD-ROM: QA-YL48A-H8 Software Product Services DIGITAL GKS: QT-811A*-** * Denotes variant fields. For additional information on available li- censes, services, documentation, and media, refer to the appropri- ate price book. SOFTWARE LICENSING DIGITAL GKS is available in two forms: as a Development Kit and as a Run-Time-Only Kit. These kits are furnished only under a license. The Development Kit license enables you to develop and run your own graphics applications. The Run-Time-Only Kit license allows you to run applications that were developed on a system where the full DIGITAL GKS product was installed. As a result, the Run-Time-Only Kit license is available at a substantially lower cost per system than the Develop- ment Kit license. License Management Facility Support DIGITAL GKS supports the OpenVMS VAX License Management Facility (LMF). This facility allocates license units for DIGITAL GKS as follows: o For the Development option-on a Personal Use and Unlimited Use basis o For the Run-Time-Only option-on a Concurrent Use and Unlimited Use basis Each Personal Use License allows one identified individual to use DIGITAL GKS. Each Concurrent Use License allows only one individual at a time to use DIGITAL GKS. Each Unlimited Use License allows any number of in- dividuals to use DIGITAL GKS at the same time. 18 For further details on the License Management Facility, refer to the OpenVMS VAX Operating System Software Product Description (SPD 25.01.xx) or the OpenVMS VAX Operating System documentation. To obtain more in- formation about the DIGITAL licensing terms and policies, contact your local DIGITAL office. SOFTWARE PRODUCT SERVICES A variety of service options are available from DIGITAL. For more in- formation, contact your local DIGITAL office. SOFTWARE WARRANTY Warranty for this software product is provided by DIGITAL with the pur- chase of a DIGITAL GKS license, as defined in the Software Warranty Addendum of this SPD. The information in this document is valid at the time of release. Please contact your local DIGITAL office for the most up-to-date information. [R] Apple and LaserWriter are registered trademarks of Apple Computer, Inc. [R] Hewlett-Packard, HP, HP-GL, and LaserJet are registered trademarks of Hewlett-Packard Company. [R] LASERGRAPHICS MPS-2000 is a registered trademark of Laser Graphics, Inc. [R] Motif and OSF/1 are registered trademarks of Open Software Foundation, Inc. [R] PostScript is a registered trademark of Adobe Systems Incorporated. [R] TEKTRONIX and Tek are registered trademarks of Tektronix, Inc. [TM] X Window System is a trademark of Massachusetts Institute of Technology. 19 [TM] Bookreader, CI, CDA, DDIF, DEC, DEC C, DEC GKS, DEC GKS-3D, DEClaser, DECwindows, DIGITAL, DIGITAL GKS, LA50, LA75, LA84, LA86, LA100, LA280, LA324, LA380, LN03, LN03 PLUS, LN03 ScriptPrinter, LVP16, MicroVAX, OpenVMS, ReGIS, TK50, VAX, VAX Ada, VAX BASIC, VAX BLISS-32, VAX C, VAX FORTRAN, VAX Pascal, VAXcluster, VAXft, VAXserver, VAXstation, VAXstation 4000 VLC, VT125, VT240, VT241, VT330, VT340, and the DIGITAL logo are trademarks of Digital Equipment Corpora- tion. ©1997 Digital Equipment Corporation. All Rights Reserved. 20