CONTENTS Title Page Copyright Page Preface 1 Using the FORTRAN Binding 1.1 PHIGS Standard 1.2 Device-Independent Programming 1.3 Calling Sequences 1.4 Passing Mechanisms 1.5 Constants and Include Files 1.6 Packing and Unpacking Data Records 1.7 Standard Escape Data Records 1.8 Contrasting PHIGS, PHIGS PLUS, and DEC PHIGS Extension Functions 2 VMS Programming Considerations 2.1 Online Help 2.2 Capabilities of Supported Devices 2.3 Including Definition Files 2.4 Compiling, Linking, and Running Your Programs 2.5 User-Defined Error Control Functions 2.6 Logical Names and DEC PHIGS Programming 2.7 Specifying Bit Masks as Workstation Type Values 3 ULTRIX Programming Considerations 3.1 Capabilities of Supported Devices 3.2 Including Definition Files 3.3 Compiling, Linking, and Running Your Programs 3.4 Environment Variables and DEC PHIGS Programming 3.5 Specifying Bit Masks as Workstation Type Values 4 Control Functions CLOSE PHIGS CLOSE WORKSTATION ESCAPE HIT TEST MESSAGE MESSAGE (FORTRAN-77 Subset) OPEN PHIGS OPEN WORKSTATION REDRAW ALL STRUCTURES SET DISPLAY UPDATE STATE UPDATE WORKSTATION UPDATE WORKSTATION SYNCHRONOUSLY 5 Structure Functions APPLICATION DATA ARCHIVE ALL STRUCTURES ARCHIVE STRUCTURE NETWORKS ARCHIVE STRUCTURES CHANGE STRUCTURE IDENTIFIER CHANGE STRUCTURE IDENTIFIER AND REFERENCES CHANGE STRUCTURE REFERENCES CLOSE ARCHIVE FILE CLOSE STRUCTURE COPY ALL ELEMENTS FROM STRUCTURE DELETE ALL STRUCTURES DELETE ALL STRUCTURES FROM ARCHIVE DELETE ELEMENT DELETE ELEMENT RANGE DELETE ELEMENTS BETWEEN LABELS DELETE STRUCTURE DELETE STRUCTURE NETWORK DELETE STRUCTURE NETWORKS FROM ARCHIVE DELETE STRUCTURES FROM ARCHIVE EMPTY STRUCTURE EXECUTE STRUCTURE GENERALIZED STRUCTURE ELEMENT LABEL OFFSET ELEMENT POINTER OPEN ARCHIVE FILE OPEN STRUCTURE POST STRUCTURE POST STRUCTURE TO A VIEW RETRIEVE ALL STRUCTURES RETRIEVE STRUCTURE IDENTIFIERS RETRIEVE STRUCTURE NETWORKS RETRIEVE STRUCTURES SET CONFLICT RESOLUTION SET EDIT MODE SET ELEMENT POINTER SET ELEMENT POINTER AT LABEL SET ELEMENT POINTER AT PICK IDENTIFIER UNPOST ALL STRUCTURES UNPOST ALL STRUCTURES FROM A VIEW UNPOST ALL STRUCTURES FROM ALL VIEWS UNPOST STRUCTURE UNPOST STRUCTURE FROM A VIEW UNPOST STRUCTURE FROM ALL VIEWS 6 Output Functions ANNOTATION TEXT RELATIVE ANNOTATION TEXT RELATIVE (FORTRAN-77 Subset) ANNOTATION TEXT RELATIVE 3 ANNOTATION TEXT RELATIVE 3 (FORTRAN-77 Subset) CIRCLE CIRCULAR ARC FILL AREA FILL AREA 3 FILL AREA 3 WITH DATA FILL AREA SET FILL AREA SET 3 FILL AREA SET 3 WITH DATA INDEX POLYGONS WITH DATA NONUNIFORM B-SPLINE CURVE NONUNIFORM B-SPLINE SURFACE PIXMAP POLYLINE POLYLINE 3 POLYLINE SET 3 WITH DATA POLYMARKER POLYMARKER 3 QUADRILATERAL MESH 3 WITH DATA TEXT TEXT (FORTRAN-77 Subset) TEXT 3 TEXT 3 (FORTRAN-77 Subset) TRIANGLE STRIP 3 WITH DATA 7 Attribute Functions ADD NAMES TO SET REMOVE NAMES FROM SET SET ANNOTATION STYLE SET ANNOTATION TEXT ALIGNMENT SET ANNOTATION TEXT CHARACTER HEIGHT SET ANNOTATION TEXT CHARACTER UP VECTOR SET ANNOTATION TEXT PATH SET AREA PROPERTIES SET BACK AREA PROPERTIES SET BACK INTERIOR COLOUR SET BACK INTERIOR REFLECTANCE EQUATION SET BACK INTERIOR SHADING METHOD SET BACK INTERIOR STYLE SET BACK INTERIOR STYLE INDEX SET CHARACTER EXPANSION FACTOR SET CHARACTER HEIGHT SET CHARACTER SPACING SET CHARACTER UP VECTOR SET COLOUR MODEL SET COLOUR REPRESENTATION SET CURVE APPROXIMATION CRITERIA SET DEPTH CUE INDEX SET DEPTH CUE REPRESENTATION SET EDGE COLOUR SET EDGE COLOUR INDEX SET EDGE FLAG SET EDGE INDEX SET EDGE REPRESENTATION SET EDGE TYPE SET EDGE WIDTH SCALE FACTOR SET EXTENDED EDGE REPRESENTATION SET EXTENDED INTERIOR REPRESENTATION SET EXTENDED POLYLINE REPRESENTATION SET EXTENDED POLYMARKER REPRESENTATION SET EXTENDED TEXT REPRESENTATION SET FACE CULLING MODE SET FACE DISTINGUISHING MODE SET GEOMETRIC NORMAL CALCULATION MODE SET HIGHLIGHT INDEX SET HIGHLIGHT REPRESENTATION SET HIGHLIGHTING FILTER SET HLHSR IDENTIFIER SET HLHSR MODE SET INDIVIDUAL ASF SET INTERIOR COLOUR SET INTERIOR COLOUR INDEX SET INTERIOR INDEX SET INTERIOR REFLECTANCE EQUATION SET INTERIOR REPRESENTATION SET INTERIOR SHADING METHOD SET INTERIOR STYLE SET INTERIOR STYLE INDEX SET INVISIBILITY FILTER SET LIGHT SOURCE REPRESENTATION SET LIGHT SOURCE STATE SET LINE TYPE SET LINE WIDTH SCALE FACTOR SET MARKER SIZE SCALE FACTOR SET MARKER TYPE SET PICK HIGHLIGHT INDEX SET PIXMAP REPRESENTATION SET POLYLINE COLOUR SET POLYLINE COLOUR INDEX SET POLYLINE INDEX SET POLYLINE REPRESENTATION SET POLYLINE SHADING METHOD SET POLYMARKER COLOUR SET POLYMARKER COLOUR INDEX SET POLYMARKER INDEX SET POLYMARKER REPRESENTATION SET RENDERING COLOUR MODEL SET SURFACE APPROXIMATION CRITERIA SET TEXT ALIGNMENT SET TEXT COLOUR SET TEXT COLOUR INDEX SET TEXT FONT SET TEXT INDEX SET TEXT PATH SET TEXT PRECISION SET TEXT REPRESENTATION 8 Transformation Functions BUILD TRANSFORMATION MATRIX BUILD TRANSFORMATION MATRIX 3 COMPOSE MATRIX COMPOSE MATRIX 3 COMPOSE TRANSFORMATION MATRIX COMPOSE TRANSFORMATION MATRIX 3 EVALUATE VIEW MAPPING MATRIX EVALUATE VIEW MAPPING MATRIX 3 EVALUATE VIEW ORIENTATION MATRIX EVALUATE VIEW ORIENTATION MATRIX 3 ROTATE ROTATE X ROTATE Y ROTATE Z SCALE SCALE 3 SET EXTENDED VIEW REPRESENTATION SET EXTENDED VIEW REPRESENTATION 3 SET GLOBAL TRANSFORMATION SET GLOBAL TRANSFORMATION 3 SET LOCAL TRANSFORMATION SET LOCAL TRANSFORMATION 3 SET VIEW DISPLAY PRIORITY SET VIEW INDEX SET VIEW REPRESENTATION SET VIEW REPRESENTATION 3 SET VIEW TRANSFORMATION INPUT PRIORITY SET WORKSTATION VIEWPORT SET WORKSTATION VIEWPORT 3 SET WORKSTATION WINDOW SET WORKSTATION WINDOW 3 TRANSFORM POINT TRANSFORM POINT 3 TRANSLATE TRANSLATE 3 9 Input Functions AWAIT EVENT FLUSH DEVICE EVENTS GET CHOICE GET LOCATOR GET LOCATOR 3 GET PICK GET STRING GET STROKE GET STROKE 3 GET VALUATOR INITIALIZE CHOICE INITIALIZE CHOICE 3 INITIALIZE LOCATOR INITIALIZE LOCATOR 3 INITIALIZE PICK INITIALIZE PICK 3 INITIALIZE STRING INITIALIZE STRING 3 INITIALIZE STROKE INITIALIZE STROKE 3 INITIALIZE VALUATOR INITIALIZE VALUATOR 3 REQUEST CHOICE REQUEST LOCATOR REQUEST LOCATOR 3 REQUEST PICK REQUEST STRING REQUEST STROKE REQUEST STROKE 3 REQUEST VALUATOR SAMPLE CHOICE SAMPLE LOCATOR SAMPLE LOCATOR 3 SAMPLE PICK SAMPLE STRING SAMPLE STROKE SAMPLE STROKE 3 SAMPLE VALUATOR SET CHOICE MODE SET LOCATOR MODE SET PICK FILTER SET PICK IDENTIFIER SET PICK MODE SET STRING MODE SET STROKE MODE SET VALUATOR MODE 10 Inquiry Functions INQUIRE ALL CONFLICTING STRUCTURES INQUIRE ANCESTORS OF STRUCTURE INQUIRE ANNOTATION FACILITIES INQUIRE ARCHIVE FILES INQUIRE ARCHIVE STATE VALUE INQUIRE CHOICE DEVICE STATE INQUIRE CHOICE DEVICE STATE 3 INQUIRE COLOUR FACILITIES INQUIRE COLOUR MODEL INQUIRE COLOUR MODEL FACILITIES INQUIRE COLOUR REPRESENTATION INQUIRE COLOUR STATUS INQUIRE CONFLICT RESOLUTION INQUIRE CONFLICTING STRUCTURES IN NETWORK INQUIRE CURRENT ELEMENT CONTENT INQUIRE CURRENT ELEMENT TYPE AND SIZE INQUIRE CURVE AND SURFACE FACILITIES INQUIRE DEFAULT CHOICE DEVICE DATA INQUIRE DEFAULT CHOICE DEVICE DATA 3 INQUIRE DEFAULT DISPLAY UPDATE STATE INQUIRE DEFAULT LOCATOR DEVICE DATA INQUIRE DEFAULT LOCATOR DEVICE DATA 3 INQUIRE DEFAULT PICK DEVICE DATA INQUIRE DEFAULT PICK DEVICE DATA 3 INQUIRE DEFAULT STRING DEVICE DATA INQUIRE DEFAULT STRING DEVICE DATA 3 INQUIRE DEFAULT STROKE DEVICE DATA INQUIRE DEFAULT STROKE DEVICE DATA 3 INQUIRE DEFAULT VALUATOR DEVICE DATA INQUIRE DEFAULT VALUATOR DEVICE DATA 3 INQUIRE DEPTH CUE FACILITIES INQUIRE DEPTH CUE REPRESENTATION INQUIRE DESCENDANTS OF STRUCTURE INQUIRE DIRECT COLOUR MODEL FACILITIES INQUIRE DISPLAY SPACE SIZE INQUIRE DISPLAY SPACE SIZE 3 INQUIRE DISPLAY UPDATE STATE INQUIRE DYNAMICS OF STRUCTURES INQUIRE DYNAMICS OF WORKSTATION ATTRIBUTES INQUIRE EDGE FACILITIES INQUIRE EDGE REPRESENTATION INQUIRE EDIT MODE INQUIRE ELEMENT CONTENT INQUIRE ELEMENT POINTER INQUIRE ELEMENT TYPE AND SIZE INQUIRE ERROR HANDLING MODE INQUIRE EXTENDED EDGE REPRESENTATION INQUIRE EXTENDED INTERIOR FACILITIES INQUIRE EXTENDED INTERIOR REPRESENTATION INQUIRE EXTENDED POLYLINE FACILITIES INQUIRE EXTENDED POLYLINE REPRESENTATION INQUIRE EXTENDED POLYMARKER REPRESENTATION INQUIRE EXTENDED TEXT REPRESENTATION INQUIRE EXTENDED VIEW REPRESENTATION INQUIRE GENERALIZED STRUCTURE ELEMENT FACILITIES INQUIRE HIGHLIGHT FACILITIES INQUIRE HIGHLIGHT REPRESENTATION INQUIRE HIGHLIGHTING FILTER INQUIRE HLHSR FACILITIES INQUIRE HLHSR MODE INQUIRE INPUT QUEUE OVERFLOW INQUIRE INTERIOR FACILITIES INQUIRE INTERIOR REPRESENTATION INQUIRE INVISIBILITY FILTER INQUIRE LIGHT SOURCE FACILITIES INQUIRE LIGHT SOURCE REPRESENTATION INQUIRE LIST OF AVAILABLE GENERALIZED STRUCTURE ELEMENTS INQUIRE LIST OF AVAILABLE WORKSTATION TYPES INQUIRE LIST OF COLOUR INDICES INQUIRE LIST OF DEPTH CUE INDICES INQUIRE LIST OF EDGE INDICES INQUIRE LIST OF HIGHLIGHT INDICES INQUIRE LIST OF INTERIOR INDICES INQUIRE LIST OF LIGHT SOURCE INDICES INQUIRE LIST OF POLYLINE INDICES INQUIRE LIST OF POLYMARKER INDICES INQUIRE LIST OF TEXT INDICES INQUIRE LIST OF VIEW INDICES INQUIRE LOCATOR DEVICE STATE INQUIRE LOCATOR DEVICE STATE 3 INQUIRE MORE SIMULTANEOUS EVENTS INQUIRE NUMBER OF AVAILABLE LOGICAL INPUT DEVICES INQUIRE NUMBER OF DISPLAY PRIORITIES SUPPORTED INQUIRE OPEN STRUCTURE INQUIRE PHIGS FACILITIES INQUIRE PICK DEVICE STATE INQUIRE PICK DEVICE STATE 3 INQUIRE PIXMAP REPRESENTATION INQUIRE POLYLINE FACILITIES INQUIRE POLYLINE REPRESENTATION INQUIRE POLYMARKER FACILITIES INQUIRE POLYMARKER REPRESENTATION INQUIRE POSTED STRUCTURES INQUIRE POSTED STRUCTURES TO A VIEW INQUIRE PREDEFINED COLOUR REPRESENTATION INQUIRE PREDEFINED DEPTH CUE REPRESENTATION INQUIRE PREDEFINED EDGE REPRESENTATION INQUIRE PREDEFINED EXTENDED EDGE REPRESENTATION INQUIRE PREDEFINED EXTENDED INTERIOR REPRESENTATION INQUIRE PREDEFINED EXTENDED POLYLINE REPRESENTATION INQUIRE PREDEFINED EXTENDED POLYMARKER REPRESENTATION INQUIRE PREDEFINED EXTENDED TEXT REPRESENTATION INQUIRE PREDEFINED HIGHLIGHT REPRESENTATION INQUIRE PREDEFINED INTERIOR REPRESENTATION INQUIRE PREDEFINED LIGHT SOURCE REPRESENTATION INQUIRE PREDEFINED POLYLINE REPRESENTATION INQUIRE PREDEFINED POLYMARKER REPRESENTATION INQUIRE PREDEFINED TEXT REPRESENTATION INQUIRE PREDEFINED VIEW REPRESENTATION INQUIRE RENDERING COLOUR MODEL FACILITIES INQUIRE SET OF OPEN WORKSTATIONS INQUIRE SET OF VIEWS TO WHICH POSTED INQUIRE SET OF WORKSTATIONS TO WHICH POSTED INQUIRE STRING DEVICE STATE INQUIRE STRING DEVICE STATE 3 INQUIRE STROKE DEVICE STATE INQUIRE STROKE DEVICE STATE 3 INQUIRE STRUCTURE IDENTIFIERS INQUIRE STRUCTURE STATE VALUE INQUIRE STRUCTURE STATUS INQUIRE SYSTEM STATE VALUE INQUIRE TEXT EXTENT INQUIRE TEXT FACILITIES INQUIRE TEXT REPRESENTATION INQUIRE VALUATOR DEVICE STATE INQUIRE VALUATOR DEVICE STATE 3 INQUIRE VIEW DISPLAY PRIORITIES INQUIRE VIEW FACILITIES INQUIRE VIEW REPRESENTATION INQUIRE WORKSTATION CATEGORY INQUIRE WORKSTATION CLASSIFICATION INQUIRE WORKSTATION CONNECTION AND TYPE INQUIRE WORKSTATION RENDERING INQUIRE WORKSTATION STATE TABLE LENGTHS INQUIRE WORKSTATION STATE VALUE INQUIRE WORKSTATION TRANSFORMATION INQUIRE WORKSTATION TRANSFORMATION 3 11 Error Control Functions EMERGENCY CLOSE PHIGS ERROR HANDLING ERROR LOGGING SET ERROR HANDLING MODE 12 Immediate Mode Functions BEGIN RENDERING BEGIN STRUCTURE END RENDERING END STRUCTURE 13 Color Approximation Functions 13.1 Types of Color Approximation 13.2 Pseudo Color Maps 13.3 Changing the Size of the Color Map on VMS Systems 13.4 Changing the Size of the Color Map on ULTRIX Systems GET REQUIRED COLOURS INITIALIZE PSEUDO COLOUR SET COLOUR APPROXIMATION INDEX SET PLANE MASK SET PSEUDO COLOUR SETUP PSEUDO COLOUR 14 Utility Functions ADD NONUNIFORM B-SPLINE TRIM CURVE TO DATA RECORD INQUIRE A TRIM CURVE FROM A DATA RECORD PACK DATA RECORD UNPACK DATA RECORD A Error Codes A.1 Error Codes and Constants A.2 FORTRAN-Specific Error Codes A.3 PHIGS Error Codes B Constants B.1 FORTRAN Constants B.2 Error Handling Constants C Output Parameters for Element Types EXAMPLES 1-1 Packing and Unpacking a Data Record TABLES 2-1 DEC PHIGS Supported Logicals 3-1 DEC PHIGS Supported Environment Variables A-1 PHIGS Error Codes and Messages B-1 FORTRAN Constants B-2 FORTRAN Error Constants