Contact us Heritage collections Image license terms
HOME ACL ACD ICF SUS DCS G&A STARLINK Literature
Further reading □ OverviewContentsPrefaceNotation1. Introduction2. Structures3. Output primitives4. Attributes5. Networks6. 2D viewing7. 3D PHIGS8. Examples9. Input Classes10. Interaction11. Workstations12. Environment13. Further output14. Archives15. BindingsIndex
C&A INF CCD CISD Archives Contact us Heritage archives Image license terms

Search

   
ACDLiteratureBooksPHIGS
ACDLiteratureBooksPHIGS
ACL ACD C&A INF CCD CISD Archives
Further reading

OverviewContentsPrefaceNotation1. Introduction2. Structures3. Output primitives4. Attributes5. Networks6. 2D viewing7. 3D PHIGS8. Examples9. Input Classes10. Interaction11. Workstations12. Environment13. Further output14. Archives15. BindingsIndex

Chapter 15: Bindings

15.1 INTRODUCTION

The PHIGS standard defines a set of functions and data types that are independent of any particular programming language. As explained in Section 1.2.2, these functions and data types need to be represented in terms of the facilities of a particular programming language, in order that PHIGS can be used in a standardized way by an application using that language. This is the purpose of the PHIGS language binding standard IS 9593.

IS 9593 is a multi-part standard, each part of which describes the binding to a particular programming language. Part 1 describes the Fortran binding, Part 2 the Pascal binding, Part 3 the Ada binding and Part 4 the C binding. At the time of writing, only the Fortran and Ada bindings have been published as International Standards. The C binding is a Draft International Standard (October 1990), and the Pascal binding lags considerably behind.

The remainder of this chapter describes the essential features of the Fortran language binding, to the level of detail necessary to enable a programmer to use the functions described in this book, through the Fortran binding. Readers should be aware that the Fortran binding which was eventually standardized, had some significant differences from early drafts. Several of the PHIGS implementations on the market use an early version of the Fortran binding. It is wise to consider which language binding is actually used when purchasing a PHIGS implementation.

15.2 ORGANIZATION OF THE FORTRAN BINDING

The Fortran binding defines a set of Fortran subroutines and parameters which correspond to the PHIGS functions. With the exception of some of the inquiry functions, there is one subroutine per PHIGS function. Inquiry functions are omitted from this chapter, and the reader is referred either to the Fortran language binding itself, or to the documentation of the PHIGS implementation used for details of these.

Table 1 gives the Fortran subroutine names corresponding to the major PHIGS functions and their arguments. The functions are listed in alphabetical order.

In view of the large number of functions described in this chapter, an abbreviated notation is used for describing parameter lists. Each function description consists of the name of the function and a reference to the section of the book in which it is described. The Fortran subroutine name and parameter list appear on the second line. Input parameters are indicated in a roman typeface, and output parameters in italic. Table 2 gives the meanings of the names used in the parameter lists and the corresponding Fortran data types. The names are listed in alphabetical order. In a few instances parameter names with lengths greater than 6 characters have been used in the interests of clarity. This is mainly the addition of the character '3' to distinguish between the parameter names for corresponding 2D and 3D functions. The type ENUMERATION means that the type is a set of enumerated values. As described below, these types are represented as INTEGERs. The emphasised names in the right-hand column of Table 2, are the names of the corresponding entries in Table 3, which give the correspondence between these types and INTEGER values.

Dimensions of array parameters are indicated in brackets after the array type, for example:

EVOL REAL (6)

means that the parameter EVOL is a real array with 6 elements.

The notation used in the earlier chapters of this book substituted variable names for the values of parameters which enumerate a number of possible options, for example, the variables CLIP and NOCLIP were used to represent particular values of clipping indicators. In the PHIGS Fortran language binding, enumerated values are represented as INTEGERs and the language binding standardizes names and INTEGER values for each PHIGS enumerated type. The names will be made available for use by the application, either by means of PARAMETER or DATA statements, the exact details of how the names are included in an application will vary from implementation to implementation. Table 3 gives the correspondence between enumerated types, INTEGER value, Fortran name and the names largely used in the earlier chapters of this book. For the type Element, only the first 5 values are shown. This type gives names to all the PHIGS structure elements, for the remaining values, the reader is referred to the documentation of the PHIGS implementation being used. Enumerated types used only by the INQUIRY functions have been omitted from this table.

Table 1

ADD NAMES TO SET
PADS(NSN, NAMSET)
ANNOTATION TEXT RELATIVE
PATR(RPX, RPY, APX, APY, CHARS)
ANNOTATION TEXT RELATIVE 3
PATR3(RPX, RPY, RPZ, APX, APY, APZ, CHARS)
APPLICATION DATA
PAP(LDR, DA TREC)
ARCHIVE ALL STRUCTURES
PARAST(AFID)
ARCHIVE STRUCTURE NETWORKS
PARSN(AFID, N, LSTRIDN)
ARCHIVE STRUCTURES
PARST(AFID, N, LSTRIDN)
AWAIT EVENT
PWAIT(TOUT, WKID, JCL, JDNR)
BUILD TRANSFORMATION MATRIX
PBLTM(XO, YO, DX, DY, PHI, FX, FY, ERRIND, XFRMT)
BUILD TRANSFORMATION MATRIX 3
PBLTM3(XO, YO, ZO, DX, DY, DZ, PHIX, PHIY, PHIZ, FX, FY, FZ, ERRIND, XFRMT3)
CELL ARRAY
PCA(PX, PY, QX, QY, DIMX, DIMY, ISC, ISR, NROWS, NCOLS, COLIA)
CELL ARRAY 3
PCA3(CPXA, CPYA, CPZA, DIMX, DIMY, ISC, ISR, NROWS, NCOLS, COLIA)
CHANGE STRUCTURE IDENTIFIER
PCSTID(OLDSID, NEWSID)
CHANGE STRUCTURE IDENTIFIER AND REFERENCES
PCSTIR(OLDSID, NEWSID)
CHANGE STRUCTURE REFERENCES
PCSTRF(OLDSID, NEWSID)
CLOSE ARCHIVE FILE
PCLARF(AFID)
CLOSE PHIGS
PCLPH
CLOSE STRUCTURE
PCLST
CLOSE WORKSTATION
PCLWK(WKID)
COMPOSE MATRIX
PCOM(XFRMTA, XFRMTB, ERRIND, XFRMTO)
COMPOSE MATRIX 3
PCOM3(XFRMTA3, XFRMTB3, ERRIND, XFRMTO3)
COMPOSE TRANSFORMATION MATRIX
PCOTM(XFRMTI, XO, YO, DX, DY, PHI, FX, FY, ERRIND, XFRMTO)
COMPOSE TRANSFORMATION MATRIX 3
PCOTM3(XFRMTI3, XO, YO, ZO, DX, DY, DZ, PHIX, PHIY, PHIZ, FX, FY .FZ, ERRIND, XFRMTO3)
COPY ALL ELEMENTS FROM STRUCTURE
PCELST(STRID)
DELETE ALL STRUCTURES
PDAS
DELETE ALL STRUCTURES FROM ARCHIVE
PDASAR(AFID)
DELETE ELEMENT
PDEL
DELETE ELEMENT RANGE
PDELRA(EPI, EP2)
DELETE ELEMENTS BETWEEN LABELS
PDELLB(LABEL1, LABEL2)
DELETE STRUCTURE
PDST(STRID)
DELETE STRUCTURE NETWORK
PDSN(STRID, REFHNF)
DELETE STRUCTURE NETWORKS FROM ARCHIVE
PDSNAR(AFID, N, LSTRIDN)
DELETE STRUCTURES FROM ARCHIVE
PDST AR(AFID, N, LSTRIDN)
ELEMENT SEARCH
PELS(STRID, STRTEP, SRCDIR, EISN, EIS, EESN, EES, ERRIND, STATUS, FNDEP)
EMERGENCY CLOSE
PECLPH
EMPTY STRUCTURE
PEMST(STRID)
ERROR HANDLING
PERHND(ERRNR, FCTID, ERRFIL)
ERROR LOGGING
PERLOG(ERRNR, FCTID, ERRFIL )
EVALUATE VIEW MAPPING MATRIX
PEVMM(VWWNLM, PJVPLM, ERRIND, VWMPMT)
EVALUATE VIEW MAPPING MATRIX 3
PEVMM3(VWWNLM,PJVPLM3, PJTYPE, PJRX, PJRY, PJRZ, VPLD, BPLD, FPLD, ERRIND, VWMPMTJ)
EVALUATE VIEW ORIENTATION MA1RIX
PEVOM(VWRX, VWRY, VUPX, VUPY, ERRIND, VWORMT)
EVALUATE VIEW ORIENTATION MATRIX 3
PEVOM3(VWRX, VWRY, VWRZ, VPNX, VPNY, VPNZ, VUPX, VUPY, VUPZ, ERRIND, VWORMT3)
EXECUTE STRUCTURE
PEXST(STRID)
FILL AREA
PFA(N, PXAN, PYAN)
FILL AREA 3
PFA3(N, PXAN, PYAN, PZAN)
FILL AREA SET
PFAS(NPL, IXA, PXA, PYA)
FILL AREA SET 3
PFAS3(NPL, IXA, PXA, PYA, PZA)
FLUSH DEVICE EVENTS
PFLUSH(WKID, ICL, IDNR)
GENERALIZED DRAWING PRIMITIVE
PGDP(N, PXA, PYA, PRIMID, LDR, DATREC)
GENERALIZED DRAWING PRIMITIVE 3
PGDP3(N, PXA, PYA, PZA, PRIMID, LDR, DATREC)
GENERALIZED STRUCTURE ELEMENT
PGSE(GSEID, LDR, DATREC)
GET CHOICE
PGTCH(STAT.CHNR)
GET ITEM TYPE FROM METAFILE
PGTITM(WKID, TYPE, IDRL)
GET LOCATOR
PGTLC(VIEWI, LPX, LPY)
GET LOCATOR 3
PGTLC3(VIEWI, LPX, LPY, LPZ)
GET PICK
PGTPK(IPPD, STAT,PPD, PP)
GET STRING
PGTST(LOSTR, STR)
GET STROKE
PGTSK(N, VIEWI, NP, PXAN, PYAN)
GET STROKE 3
PGTSK3(N, VIEWI, NP, PXAN, PYAN, PZAN)
GET VALUATOR
PGTVL(VAL)
INCREMENTAL SPATIAL SEARCH
PISS3(SRPX,SRPY, SDIST, SPTHSZ, SPATH, MCLIPF, SRCHCI, NFLN, NFLISX, NFLIS, NFLESX, IFLN, IFLISX, IFLIS, IFLESX, IFLES, IPTHSZ, ERRIND, FPTHSZ, FPATH)
INCREMENTAL SPATIAL SEARCH 3
PISS3(SRPX, SRPY, SRPZ, SDIST, SPTHSZ, SPATH, MCLIPF, SRCHCI, NFLN, NFLISX, NFLIS, NFLESX, IFLN, IFLISX, IFLIS, IFLESX, IFLES, IPTHSZ, ERRIND, FPTHSZ, FPATH)
INITIALIZE CHOICE
PINCH(WKID,CHDNR, ISTAT, ICHNR, PET, XMIN, XMAX, YMIN, YMAX, LDR, DATREC)
INITIALIZE CHOICE 3
PINCH3(WKID, CHDNR, ISTAT, ICHNR, PET, EVOL, LDR, DATREC)
INITIALIZE LOCATOR
PINLC(WKID, LCDNR, IVIEWI, IPX, IPY, PET, XMIN, XMAX, YMIN, YMAX, LDR, DATREC)
INITIALIZE LOCATOR 3
PINLC3(WKID, LCDNR, IVIEWI, IPX, IPY, IPZ, PET, EVOL, LDR,DATREC)
INITIALIZE PICK
PINPK(WKID, PKDNR, ISTAT, IIPPD, IPP, PET, XMIN, XMAX, YMIN, YMAX, LDR, DATREC, PPORDR)
INITIALIZE PICK 3
PINPK3(WKID, PKDNR,IST A T, IIPPD,IPP, PET, EVOL,LDR,DA TREC,PPORDR)
INITIALIZE STRING
PINST(WKID, STDNR, LSTR, ISTR, PET, XMIN, XMAX, YMIN, YMAX, LDR, DATREC)
INITIALIZE STRING 3
PINST3(WKID, STDNR, LSTR, ISTR, PET, EVOL, LDR, DATREC)
INITIALIZE STROKE
PINSK(WKID, SKDNR, IVIEWI, INP, IPXA, IPYA, PET, XMIN, XMAX, YMIN, YMAX, LDR, DATREC)
INITIALIZE STROKE 3
PINSK3(WKID, SKDNR, IVIEWI, INP, IPXA, IPYA, IPZA, EVOL, LDR, DATREC)
INITIALIZE VALUATOR
PINVL(WKID, VLDNR, IVAL, PET, XMIN, XMAX, YMIN, YMAX, LDR, DATREC)
INITIALIZE VALUATOR 3
PINVL3(WKID, VLDNR, IVAL, PET, EVOL, LDR, DATREC)
INTERPRET ITEM
PIITM(TYPE, IDRL, LDR, DATREC)
LABEL
PLB(LABEL)
MESSAGE
PMSG(WKID, MESS)
OFFSET ELEMENT POINTER
POSEP(EPO)
OPEN ARCHIVE FILE
POP ARF(AFID,ARCFIL)
OPEN PHIGS
POPPH(ERRFIL, BUFA)
OPEN STRUCTURE
POPST(STRID)
OPEN WORKSTATION
POPWK(WKID, CONID, WTYPE)
PACK DATA RECORD
PPREC(IL, IA, RL, RA, SL, PLSTR, PSTR, MLDR, ERRIND, PLDR, PACREC)
POLYLINE
PPL(N, PXAN, PYAN)
POLYLINE 3
PPL3(N, PXAN, PYAN, PZAN)
POLYMARKER
PPM(N, PXAN, PYAN)
POLYMARKER 3
PPM3(N, PXAN, PYAN, PZAN)
POST STRUCTURE
PPOST(WKID, STRID, PRIORT)
READ ITEM FROM METAFILE
PRDITM(WKID, MIDRL, MLDR, DATREC)
REDRAW ALL STRUCTURES
PRST(WKID, COFL)
REMOVE NAMES FROM SET
PRES(NSN, NAMSET)
REQUEST CHOICE
PRQCH(WKID, CHDNR, STAT, CHNR)
REQUEST LOCATOR
PRQLC(WKID, LCDNR, STAT, VIEWI, PX, PY)
REQUEST LOCATOR 3
PRQLC3(WKID, LCDNR, STAT, VIEWI, PX, PY, PZ)
REQUEST PICK
PRQPK(WKID, PKDNR, IPPD, STAT, PPD, PP)
REQUEST STRING
PRQST(WKID, STDNR, STAT, LOSTR, STR)
REQUEST STROKE
PRQSK(WKID, SKDNR, N, STAT, VIEWI, NP, PXAN, PYAN)
REQUEST STROKE 3
PRQSK3(WKID, SKDNR, N, STAT, VIEWI, NP, PXAN, PYAN, PZAN)
REQUEST VALUATOR
PRQVL(WKID, VLDNR, STAT, VAL)
RESTORE MODELLING CLIPPING VOLUME
PRMCV
RETRIEVE ALL STRUCTURES
PRAST(AFID)
RETRIEVE PATHS TO ANCESTORS
PREPAN(AFID, STRID, PTHORD, PTHDEP, IPTHSZ, NELM, OL, APTHSZ, PATHS)
RETRIEVE PATHS TO DESCENDANTS
PREPDE(AFID, STRID, PTHORD, PTHDEP, IPTHSZ, NELM, OL, APTHSZ, PATHS)
RETRIEVE STRUCTURE IDENTIFIERS
PRSID(AFID, ILSIZE, NSTRID, LSTRID)
RETRIEVE STRUCTURE NETWORKS
PRESN(AFID, N, LSTRIDN)
RETRIEVE STRUCTURES
PREST(AFID, N, LSTRIDN)
ROTATE
PRO(ROTANG, ERRIND, XFRMT)
ROTATE X
PROX(ROTANG, ERRIND, XFRMTJ)
ROTATE Y
PROY(ROTANG, ERRIND, XFRMTJ)
ROTATE Z
PROZ(ROTANG, ERRIND, XFRMT3)
SAMPLE CHOICE
PSMCH(WKID, CHDNR, STAT, CHNR)
SAMPLE LOCATOR
PSMLC(WKID, LCDNR, VIEWI, LPX, LPY)
SAMPLE LOCATOR 3
PSMLC3(WKID, LCDNR, VIEWI, LPX, LPY, LPZ)
SAMPLE PICK
PSMPK(WKID, PKDNR, IPPD, STAT, PPD, PP)
SAMPLE STRING
PSMST(WKID, STDNR, LOSTR, STR)
SAMPLE STROKE
PSMSK(WKID, SKDNR, N, VIEWI, NP, PXAN, PYAN)
SAMPLE STROKE 3
PSMSK3(WKID, SKDNR, N, VIEWI, NP, PXAN, PYAN, PZAN)
SAMPLE VALUATOR
PSMVL(WKID, VLDNR, VAL)
SCALE
PSC(FX, FY, ERRIND, XFRMT)
SCALE 3
PSC3(FX, FY, FZ, ERRIND, XFRMT3)
SET ANNOTATION STYLE
PSANS(ASTYLE)
SET ANNOTATION TEXT ALIGNMENT
PSATAL(ATALH, ATALV)
SET ANNOTATION TEXT CHARACTER HEIGHT
PSATCH(ATCHH)
SET ANNOTATION TEXT CHARACTER UP VECTOR
PSATCU(ATCHUX, ATCHUY)
SET ANNOTATION TEXT PATH
PSATP(ATP)
SET CHARACTER EXPANSION FACTOR
PSCHXP(CHXP)
SET CHARACTER HEIGHT
PSCHH(CHH)
SET CHARACTER SPACING
PSCHSP(CHSP)
SET CHARACTER UP VECTOR
PSCHUP(CHUX, CHUY)
SET CHOICE MODE
PSCHM(WKID, CHDNR, MODE, ESW)
SET COLOUR MODEL
PSCMD(WKID, CMODEL)
SET COLOUR REPRESENTATION
PSCR(WKID, CI, NCCS, CSPEC)
SET CONFLICT RESOLUTION
PSCNRS(ARCCR, RETCR)
SET DISPLAY UPDATE STATE
PSDUS(WKID, DEFMOD, MODMOD)
SET EDGE COLOUR INDEX
PSEDCI(COLI)
SET EDGE FLAG
PSEDFG(EDFLAG)
SET EDGE INDEX
PSEDI(EDI)
SET EDGE REPRESENTATION
PSEDR(WKID, EDI, EDFLAG, EDTYPE, EWIDTH, COLI)
SET EDGE TYPE
PSEDT(EDTYPE)
SET EDGEWIDTH SCALE FACTOR
PSEWSC(EWIDTH)
SET EDIT MODE
PSEDM(EDITMO)
SET ELEMENT POINTER
PSEP(EP)
SET ELEMENT POINTER AT LABEL
PSEPLB(LABEL)
SET ERROR HANDLING MODE
PSERHM(ERHM)
SET GLOBAL TRANSFORMATION
PSGMT(XFRMT)
SET GLOBAL TRANSFORMATION 3
PSGMT3(XFRMT3)
SET HIGHLIGHTING FILTER
PSHLFT(WKID, ISN, IS, ESN, ES)
SET HLHSR IDENTIFIER
PSHRID(HRID)
SET HLHSR MODE
PSHRM(WKID, HRM)
SET INDIVIDUAL ASF
PSIASF(ASPCID, ASFVAL)
SET INTERIOR COLOUR INDEX
PSICI(COLI)
SET INTERIOR INDEX
PSII(II)
SET INTERIOR REPRESENTATION
PSIR(WKID, II, INTS, STYLI, COLI)
SET INTERIOR STYLE
PSIS(INTS)
SET INTERIOR STYLE INDEX
PSISI(ISTYLI)
SET INVISIBILITY FILTER
PSIVFT(WKID, ISN, IS, ESN, ES)
SET LINETYPE
PSLN(LTYPE)
SET LINEWIDTH SCALE FACTOR
PSLWSC(L WIDTH)
SET LOCAL TRANSFORMATION
PSLMT(XFRMT, CTYPE)
SET LOCAL TRANSFORMATION 3
PSLMT3(XFRMT3, CTYPE)
SET LOCATOR MODE
PSLCM(WKID, LCDNR, MODE, ESW)
SET MARKER SIZE SCALE FACTOR
PSMKSC(MSZSF)
SET MARKER TYPE
PSMK(MTYPE)
SET MODELLING CLIPPING INDICA TOR
PSMCLI(MCLIPI)
SET MODELLING CLIPPING VOLUME
PSMCV(OP, NHALFS, HALFSP)
SET MODELLING CLIPPING VOLUME 3
PSMCV3(OP, NHALFS, HALFSP3)
SET PATTERN REFERENCE POINT
PSP ARF(RFX, RFY)
SET PATTERN REFERENCE POINT AND VECTORS
PSPRPV(RFX, RFY, RFZ, RFVX, RFVY, RFVZ)
SET PATTERN REPRESENTATION
PSPAR(WKID, PAI, DIMX, DIMY, ISC, ISR, NROWS, NCOLS, COLIA)
SET PATTERN SIZE
PSP A(SZX, SZY)
SET PICK FILTER
PSPKFT(WKID, PKDNR, ISN, IS, ESN, ES)
SET PICK IDENTIFIER
PSPKID(PKID)
SET PICK MODE
PSPKM(WKID, PKDNR, MODE, ESW)
SET POLYLINE COLOUR INDEX
PSPLCI(COLI)
SET POLYLINE INDEX
PSPLI(PLI)
SET POLYLINE REPRESENTATION
PSPLR(WKID, PLI, LTYPE, LWIDTH, COLI)
SET POLYMARKER COLOUR INDEX
PSPMCI(COLI)
SET POLYMARKER INDEX
PSPMI(PMI)
SET POLYMARKER REPRESENTATION
PSPMR(WKID, PMI, MTYPE, MSZSF, COLI)
SET STRING MODE
PSSTM(WKID, STDNR, MODE, ESW)
SET STROKE MODE
PSSKM(WKID, SKDNR, MODE, ESW)
SET TEXT ALIGNMENT
PSTXAL(TXALH, TXALV)
SET TEXT COLOUR INDEX
PSTXCI(COLI)
SET TEXT FONT
PSTXFN(FONT)
SET TEXT INDEX
PSTXI(TXI)
SET TEXT PATH
PSTXP(TXP)
SET TEXT PRECISION
PSTXPR(PREC)
SET TEXT REPRESENTATION
PSTXR(WKID, TXI, FONT, PREC, CHXP, CHSP, COLI)
SET VALUATOR MODE
PSVLM(WKID, VLDNR, MODE, ESW)
SET VIEW INDEX
PSVWI(VIEWI)
SET VIEW REPRESENTATION
PSVWR(WKID, VIEWI, VWORMT, VWMPMT, VWCPLM, XYCLPI)
SET VIEW REPRESENTATION 3
PSVWR3(WKID, VIEWI, VWORMT3, VWMPMT3, VWCPLM3, XYCLPI, BCLIPI, FCLIPI)
SET VIEW TRANSFORMATION INPUT PRIORITY
PSVTIP(WKID, VIEWI, RFVWIX, RELPRI)
SET WORKSTATION VIEWPORT
PSWKV(WKID, XMIN, XMAX, YMIN, YMAX)
SET WORKSTATION VIEWPORT 3
PSWKV3(WKID, WKVP)
SET WORKSTATION WINDOW
PSWKW(WKID, XMIN, XMAX, YMIN, YMAX)
SET WORKSTATION WINDOW 3
PSWKW3(WKID, WKWN)
TEXT
PTX(PX, PY, CHARS)
TEXT 3
PTX3(PX, PY, PZ, TDX, TDY, TDZ, CHARS)
TRANSFORM POINT
PFP(XI, YI, XFRMT, ERRIND, XO, YO)
TRANSFORM POINT 3
PTP3(XI, YI, ZI, XFRMT3, ERRIND, XO, YO, 20)
TRANSLATE
PTR(DX, DY, ERRIND, XFRMT)
TRANSLATE 3
PTR3(DX, DY, DZ, ERRIND, XFRMT3)
UNPACK DATA RECORD
PUREC(ULDR, UACREC, IIL, IRL, ISL, ERRIND, IL, IAU, RL, RAU, SL, ULSTR, USTR)
UNPOST ALL STRUCTURES
PUPAST(WKID)
UNPOSTSTRUCTURE
PUPOST(WKID, STRID)
UPDATE WORKSTATION
PUWK(WKID, REGFL)
WRITE ITEM TO METAFILE
PWITM(WKID, TYPE, IDRL, LDR, DATREC)

Table 2

            
Parameter   Type                    Description  
AFID        INTEGER                 archive file identifier 
APTHSZ      INTEGER                 actual size of Nth structure path
APX         REAL                    x-annotation offset
APY         REAL                    y-annotation offset
APZ         REAL                    z-annotation offset
ARCCR       ENUMERATION             archival conflict resolution
ARCFIL      INTEGER                 archive file name
ASFVAL      ENUMERATION             aspect source flag value
ASPCID      ENUMERATION             aspect identifier
ASTYLE      INTEGER                 annotation style
ATALH       ENUMERATION             annotation text alignment horizontal
ATALV       ENUMERATION             annotation text alignment vertical
ATCHH       REAL                    annotation text character height
ATCHUX      REAL                    x-annotation text character up vector
ATCHUY      REAL                    y-annotation text character up vector
ATP         ENUMERATION             annotation text path
BCLIPI      ENUMERATION             back clipping indicator
BPLD        REAL                    back plane distance
BUFA        INTEGER                 amount of memory units
CHARS       CHARACTER *(*)          character string
CHDNR       INTEGER                 choice device number
CHH         REAL                    character height
CHNR        INTEGER                 choice number
CHSP        REAL                    character spacing
CHUX        REAL                    x-character up vector
CHUY        REAL                    y-character up vector
CHXP        REAL                    character expansion factor
CI          INTEGER                 colour index
CMODEL      INTEGER                 colour model
COFL        ENUMERATION             control flag
COLI        INTEGER                 colour index
COLIA       INTEGER (DIMX,DIMY)     colour index array                
CONID       INTEGER                 connection identifier
CPXA        REAL (3)                x-cell parallelogram
CPYA        REAL (3)                y-cell parallelogram
CPZA        REAL (3)                z-cell parallelogram
CSPEC       REAL (*)                colour specification
CTYPE       ENUMERATION             composition type
DATREC      CHARACTER *80(LDR)      data record
DEFMOD      ENUMERATION             deferral mode
DIMX        INTEGER                 dimension of array COLIA
DIMY        INTEGER                 dimension of array COLIA
DX          REAL                    x-shift vector
DY          REAL                    y-shift vector        
DZ          REAL                    z-shift vector
EDFLAG      ENUMERATION             on/off switch edge flag
EDI         INTEGER                 edge index
EDITMO      ENUMERATION             edit mode
EDTYPE      INTEGER                 edgetype
EES         ENUMERATION (EESN)      element exclusion set
EESN        INTEGER                 number of elements in exclusion set
EIS         ENUMERATION (EISN)      element inclusion set
EISN        INTEGER                 number of elements in inclusion set
EP,EP1,EP2  INTEGER                 element position
EPO         INTEGER                 element position offset
ERHM        ENUMERATION             off/on switch error handling mode
ERRFIL      INTEGER                 error file
ERRIND      INTEGER                 error indicator
ERRNR       INTEGER                 error number
ES          INTEGER (ESN)           exclusion set
ESN         INTEGER                 number of names in exclusion set
ESW         ENUMERATION             echo switch
EYOL        REAL (6)                echo volume
EWIDTH      REAL                    edgewidth scale factor
FCLIPI      ENUMERATION             front clipping indicator
FCTID       INTEGER                 function identification
FNDEP       INTEGER                 found element position
FONT        INTEGER                 text font
FPATH       INTEGER (2,IPTHSZ)      found path
FPLD        REAL                    front plane distance
FPTHSZ      INTEGER                 found path size
FX          REAL                    x-scale factor
FY          REAL                    y-scale factor
FZ          REAL                    z-scale factor
GSEID       INTEGER                 generalized structure element identifier
HALFSP      REAL (4,NHALFS)         list of half-spaces
HALFSP3     REAL (6,NHALFS)         list of half-spaces
HRID        INTEGER                 HLHSR identifier
HRM         INTEGER                 HLHSR mode
IA          INTEGER (*)             integer entries
IAU         INTEGER (IIL)           integer entries
ICHNR       INTEGER                 initial choice number
ICL         ENUMERATION             input class
IDNR        INTEGER                 logical input device number
IDRL        INTEGER                 item data record length
IFLES       INTEGER (*)             inverted filter exclusion sets
IFLESX      INTEGER (IFLN)          array of end indices of inverted filter exclusion sets
IFLIS       INTEGER (*)             inverted filter inclusion sets
IFLISX      INTEGER (IFLN)          array of end indices of inverted filter inclusion sets 
IFLN        INTEGER                 number of inverted filters
II          INTEGER                 interior index
IIL         INTEGER                 dimension of integer array
IIPPD       INTEGER                 depth of initial pick path
IL          INTEGER                 number of integer entries
ILSIZE      INTEGER                 size of list (LSTRID)
INP         INTEGER                 number of points in initial stroke
INTS        ENUMERATION             interior style
IPP         INTEGER (3,IPPD)        initial pick path
IPPD        INTEGER                 depth of pick path to return
IPTHSZ      INTEGER                 size of path array
IPX         REAL                    x-initial locator position
IPY         REAL                    y-initial locator position
IPZ         REAL                    z-initial locator position
IPXA        REAL (*)                x-initial stroke
IPYA        REAL (*)                y-initial stroke
IPZA        REAL (*)                z-initial stroke
IRL         INTEGER                 dimension of real array
IS          INTEGER (ISN)           inclusion set
ISC         INTEGER                 index of start column
ISL         INTEGER                 dimension of character array
ISN         INTEGER                 number of names in inclusion set
ISR         INTEGER                 index of start row
ISTAT       ENUMERATION             initial input device status
ISTR        CHARACTER *80           initial string
ISTYLI      INTEGER                 interior style index
IVAL        REAL                    initial value            
IVIEWI      INTEGER                 initial view index
IXA         INTEGER (NPL)           array of end indices for point lists
LABEL       INTEGER                 label identifier
LABEL1      INTEGER                 label identifier
LABEL2      INTEGER                 label identifier
LCDNR       INTEGER                 locator device number
LDR         INTEGER                 dimension of data record array
LOSTR       INTEGER                 number of characters returned
LPX         REAL                    x-locator position
LPY         REAL                    y-locator position
LPZ         REAL                    z-locator position
LSTR        INTEGER                 length of initial string
LSTRID      INTEGER (*)             list of structure identifiers
LSTRID      INTEGER (N)             list of structure identifiers
LTYPE       INTEGER                 linetype
LWIDTH      REAL                    linewidth scale factor
MCLIPF      ENUMERATION             modelling clipping indicator
MCLIPI      ENUMERATION             modelling clipping indicator
MESS        CHARACTER *(*)          message
MIDRL       INTEGER                 maximum item data record length
MLDR        INTEGER                 dimension of data record 
MODE        ENUMERATION             operating mode
MODMOD      ENUMERATION             modification mode
MSZSF       REAL                    marker size scale factor 
MTYPE       INTEGER                 marker type 
N           INTEGER                 array dimension 
NAMSET      INTEGER (NSN)           name set 
NCCS        INTEGER                 number of components of colour specification 
NCOLS       INTEGER                 number of columns 
NELM        INTEGER                 element of list of paths 
NEWSID      INTEGER                 resulting structure identifier 
NFLES       INTEGER (*)             normal filter exclusion sets 
NFLESX      INTEGER (NFLN)          array of end indices of normal filter exclusion sets 
NFLIS       INTEGER (*)             normal filter inclusion sets 
NFLISX      INTEGER (NFLN)          array of end indices of normal filter inclusion sets 
NFLN        INTEGER                 number of normal filters 
NHALFS      INTEGER                 number of half-spaces in list 
NP          INTEGER                 number of points in stroke 
NPL         INTEGER                 number of point lists 
NROWS       INTEGER                 number of rows 
NSN         INTEGER                 number of names in set 
NSTRID      INTEGER                 number of structure identifiers in list 
OL          INTEGER                 number of paths available 
OLDSID      INTEGER                 original structure identifier 
OP          INTEGER                 operator 
PACREC      CHARACTER *80 (MLDR)    data record 
PAI         INTEGER                 pattern index 
PATHS       INTEGER (2,IPTHSZ)      Nth structure path 
PET         INTEGER                 prompt and echo type 
PHI         REAL                    rotation angle 
PHIX        REAL                    x-rotation angle 
PHIY        REAL                    y-rotation angle 
PHIZ        REAL                    z-rotation angle 
PJRX        REAL                    x-projection reference point 
PJRY        REAL                    y-projection reference point 
PJRZ        REAL                    z-projection reference point 
PJTYPE      ENUMERATION             projection type 
PJVPLM      REAL (4)                projection viewport limits 
PJVPLM3     REAL (6)                projection viewport limits 
PKDNR       INTEGER                 pick device number 
PKID        INTEGER                 pick identifier 
PLDR        INTEGER                 number of elements used in PACREC 
PLI         INTEGER                 polyline index 
PLSTR       INTEGER (*)             lengths of each character string entry 
PMI         INTEGER                 polymarker index 
PP          INTEGER (3,1PPD)        pick path  
PPD         INTEGER                 depth of actual pick path
PPORDR      ENUMERATION             pick path order
PREC        ENUMERATION             text precision
PRIMID      INTEGER                 GDP or GDP3 identifier
PRIORT      REAL                    display priority
PSTR        CHARACTER *(*)(*)       character string entries
PTHDEP      INTEGER                 path depth
PTHORD      ENUMERATION             path order
PX          REAL                    x-coordinate of position
PXA         REAL (*)                x-coordinates of points
PXAN        REAL (N)                x-coordinates of points
PY          REAL                    y-coordinate of position
PYA         REAL (*)                y-coordinates of points
PYAN        REAL (N)                y-coordinates of points
PZ          REAL                    z-coordinates of position
PZA         REAL (*)                z-coordinate of position
PZAN        REAL (N)                z-coordinates of points
QX          REAL                    x-coordinate of position
QY          REAL                    y-coordinate of position
RA          INTEGER (*)             real entries
RAU         REAL (IRL)              real entries
REFHNF      ENUMERATION             reference handling flag
REGFL       ENUMERATION             reference flag
RELPRI      ENUMERATION             relative input priority
RETCR       ENUMERATION             retrieval conflict resolution
RFVWIX      INTEGER                 reference view index
RFVX        REAL (2)                x-pattern reference vectors
RFVY        REAL (2)                y-pattern reference vectors
RFVZ        REAL (2)                z-pattern reference vectors
RFX         REAL                    x-pattern reference point
RFY         REAL                    y-pattern reference point
RFZ         REAL                    z-pattern reference point
RL          INTEGER                 number of real entries
ROTANG      REAL                    rotation angle
RPX         REAL                    x-reference point
RPY         REAL                    y-reference point
RPZ         REAL                    z-reference point
SKDNR       INTEGER                 stroke device number
SL          INTEGER                 number of character string entries
SPATH       INTEGER (2,SPTHSZ)      starting path
SPTHSZ      INTEGER                 number of elements in starting path
SRCDIR      ENUMERATION             search direction 
SRCHCI      INTEGER                 search ceiling
SRPX        REAL                    x-search reference point
SRPY        REAL                    y-search reference point
SRPZ        REAL                    z-search reference point
STAT        ENUMERATION             input device status
STATUS      ENUMERATION             search success indicator
STDNR       INTEGER                 string device number
STR         CHARACTER *(*)          string
STRID       INTEGER                 structure identifier
STRTEP      INTEGER                 start element position
STYLI       INTEGER                 interior style index
SZX         REAL                    x-pattern size
SZY         REAL                    y-pattern size
TDX         REAL (2)                x-text direction vectors
TDY         REAL (2)                y-text direction vectors
TDZ         REAL (2)                z-text direction vectors
TOUT        REAL                    time out 
TXALH       ENUMERATION             text alignment horizontal   
TXALV       ENUMERATION             text alignment vertical
TXI         INTEGER                 text index
TXP         ENUMERATION             text path
TYPE        INTEGER                 item type
UACREC      CHARACTER*80 (ULDR)     data record
ULDR        INTEGER                 number of elements used in UACREC
ULSTR       INTEGER (ISL)           length of each character string entry
USTR        CHARACTER *(*)(ISL)     character string entries
VAL         REAL                    value
VIEWI       INTEGER                 view index
VLDNR       INTEGER                 valuator device number
VPLD        REAL                    view plane distance
VPNX        REAL                    x-view plane normal
VPNY        REAL                    y-view plane normal
VPNZ        REAL                    z-view plane normal
VUPX        REAL                    x-view up vector
VUPY        REAL                    y-view up vector
VUPZ        REAL                    z-view up vector
VWCPLM      REAL (4)                view clipping limits
VWCPLM3     REAL (6)                view clipping limits
VWMPMT      REAL (3,3)              view mapping matrix
VWMPMT3     REAL (4,4)              view mapping matrix
VWORMT      REAL (3,3)              view orientation matrix
VWORMT3     REAL (4,4)              view orientation matrix
VWRX        REAL                    x-view reference point
VWRY        REAL                    y-view reference point
VWRZ        REAL                    z-view reference point
VWWNLM      REAL (4)                window limits
WKID        INTEGER                 workstation identifier
WKVP        REAL (6)                workstation viewport limits
WKWN        REAL (6)                workstation window limits
WTYPE       INTEGER                 workstation type
X0          REAL                    x-fixed point 
XFRMT       REAL (3,3)              transformation matrix
XFRMT3      REAL (4,4)              transformation matrix
XFRMTA      REAL (3,3)              transformation matrix
XFRMTA3     REAL (4,4)              transformation matrix
XFRMTB      REAL (3,3)              transformation matrix
XFRMTB3     REAL (4,4)              transformation matrix 
XFRMTI      REAL (3,3)              transformation matrix
XFRMTI3     REAL (4,4)              transformation matrix 
XFRMTO      REAL (3,3)              transformation matrix
XFRMT03     REAL (4,4)              transformation matrix 
XI          REAL                    x-point
XMAX        REAL                    x-limit of region
XMIN        REAL                    x-limit of region 
XO          REAL                    x-transformed point
XYCLPI      ENUMERATION             x-y clipping indicator
Y0          REAL                    y-fixed point
YI          REAL                    y-point
YMAX        REAL                    y-limit of region
YMIN        REAL                    y-limit of region 
YO          REAL                    y-transformed point
Z0          REAL                    z-fixed point
ZI          REAL                    z-point
ZO          REAL                    z-transformed point

Table 3

Data type          Value  Fortran Name PHIGS Name 
Archive State        0    PARCL        ARCL 
                     1    PAROP        AROP 
Aspect identifier    0    PLN          LINETYPE 
                     1    PLWSC        LINEWIDTH_SCALE_ FACTOR 
                     2    PPLCI        POLYLINE_COLOUR_ INDEX 
                     3    PMK          MARKER_TYPE 
                     4    PMKSC        MARKERSIZE_SCALE_ FACTOR 
                     5    PPMCI        POLYMARKER_COLOUR_ INDEX 
                     6    PTXFN        TEXT_FONT 
                     7    PTXPR        TEXT_PRECISION 
                     8    PCHXP        CHARACTER_EXPANSION_ FACTOR 
                     9    PCHSP        CHARACTER_SPACING 
                    10    PTXCI        TEXT_COLOUR_INDEX 
                    11    PIS          INTERIOR_STYLE 
                    12    PISI         INTERIOR_STYLE_INDEX 
                    13    PICI         INTERIOR_COLOUR_INDEX 
                    14    PEDFG        EDGE_FLAG 
                    15    PEDT         EDGE_TYPE 
                    16    PEWSC        EDGE_WIDTH_SCALE_ FACTOR 
                    17    PEDCI        EDGE_COLOUR_INDEX 
Aspect source        0    PBUNDL       BUNDLED 
                     1    PINDIV       INDIVIDUAL 
Clipping indicator   0    PNCLIP       NOCLIP 
                     1    PCLIP        CLIP 
Composition type     0    PCPRE        PRECONCATENATION 
                     1    PCPOST       POSTCONCATENATE 
                     2    PCREPL       REPLACE 
Conflict resolution  0    PCRMNT       MAINTAIN 
                     1    PCRABA       ABANDON 
                     2    PCRUPD       UPDATE 
Control flag         0    PCONDI       CONDITIONALLY 
                     1    PALWAY       ALWAYS 
Deferral mode        0    PASAP        ASAP 
                     1    PBNIG        BNIG 
                     2    PBNIL        BNIL 
                     3    PASTI        ASTI 
                     4    PWAITD       WAIT 
Echo switch          0    PNECHO       NOECHO 
                     1    PECHO        ECHO 
Edit mode            0    PINSRT       INSERT  
                     1    PREPLC       REPLACE 
Element              0    PEALL        ALL 
                     1    PENIL        NIL 
                     2    PEPL3        POLYLINE_3  
                     3    PEPL         POLYLINE 
                     4    PEPM3        POLYMARKER_3 
                     5    PEPM         POLYMARKER
                     ............
Input class          0    PNCLAS       NONE 
                     1    PLOCAT       LOCATOR 
                     2    PSTROK       STROKE 
                     3    PVALUA       VALUATOR
                     4    PCHOIC       CHOICE 
                     5    PPICK        PICK 
                     6    PSTRIN       STRING 
Input device status  0    PNONE        NONE  
                     1    POK          OK 
                     2    PNPICK       NOPICK 
                     3    PNCHOI       NOCHOICE 
Interior style       0    PHOLLO       HOLLOW 
                     1    PSOLID       SOLID 
                     2    PPATTR       PATTERN 
                     3    PHATCH       HATCH 
                     4    PISEMP       EMPTY  
Modification mode    0    PNIVE        NIVE 
                     1    PUWOR        UWOR 
                     2    PUQUM        UQUM 
Off/on switch        0    POFF         OFF 
                     1    PON          ON 
Operating mode       0    PREQU        REQUEST 
                     1    PSAMPL       SAMPLE 
                     2    PEVENT       EVENT 
Path order           0    PPOTOP       TOPFIRST 
                     1    PPOBOT       BOTTOMFIRST 
Projection type      0    PPARL        PARALLEL 
                     1    PPERS        PERSPECTIVE 
Reference handling   0    PDELE        DELETE 
flag                 1    PKEEP        KEEP 
Regeneration flag    0    PPOSTP       POSTPONE 
                     1    PPERFO       PERFORM 
Relative input       0    PHIGHR       HIGHER 
priority             1    PLOWER       LOWER 
Search direction     0    PBWD         BACKWARD 
                     1    PFWD         FORWARD 
Search success       0    PFAIL        FAILURE 
indicator            1    PSUCC        SUCCESS 
Text alignment       0    PAHNOR       NORMAL 
horizontal           1    PALEFT       LEFT 
                     2    PACENT       CENTRE 
                     3    PARITE       RIGHT 
Text alignment       0    PAVNOR       NORMAL 
vertical             1    PATOP        TOP 
                     2    PACAP        CAP 
                     3    PAHALF       HALF
                     4    PABASE       BASE 
                     5    PABOTT       BOTTOM 
Text path            0    PRIGHT       RIGHT 
                     1    PLEFT        LEFT 
                     2    PUP          UP 
                     3    PDOWN        DOWN 
Text precision       0    PSTRP        STRING 
                     1    PCHARP       CHAR 
                     2    PSTRKP       STROKE 
⇑ Top of page
© Chilton Computing and UKRI Science and Technology Facilities Council webmaster@chilton-computing.org.uk
Our thanks to UKRI Science and Technology Facilities Council for hosting this site