Information processing systems — Computer graphics — Programmer's Hierarchical Interactive Graphics System (PHIGS) language bindings — Part 1: FORTRAN — Amendment 1

Specifies a language independent nucleus of a graphics system. Describes the FORTRAN language dependent layer.

Systèmes de traitement de l'information — Infographie — Interfaces langage entre un programme d'application et son support graphique — Partie 1: FORTRAN — Amendement 1

General Information

Status
Published
Publication Date
19-Apr-1995
Current Stage
6060 - International Standard published
Completion Date
20-Apr-1995
Ref Project

Relations

Buy Standard

Standard
ISO/IEC 9593-1:1990/Amd 1:1995
English language
149 pages
sale 15% off
Preview
sale 15% off
Preview

Standards Content (Sample)

ISO/IEC
INTERNATIONAL
9593-1
STANDARD
First edition
1990-06-0 1
AMENDMENT 1
1995-04- 15
Information processing Systems - Computer
Programmerk Hierarchical Interactive
graphics -
Graphits System (PHIGS) language bindings -
Part 1:
FORTRAN
AMENDMENT 1
Systemes de traitement de I’information - lnfographie - Interfaces langage
entre un Programme d’application et son support graphique
Partie 7: FORTRAN
AMENDEMENT I
Reference number
ISO/IEC 9593-1:1990/Amd.1:1995(E)

---------------------- Page: 1 ----------------------
ISO/IEC 9593-1:1990/Amd.l:1995(E)
Conte&
1
i. scope .
........................................................ 1
2. Normative references
2
3PrincipIes. .
2
3 .i. Specification .
.............. 2
3.2. Mapping of PHIGS fimction names to FORTRAN subroutine names
2
3.3.Parameters .
................................................ 2
3.4. The FORTRAN subset
3
35Errorhandling .
......................................... 4
4. Generating FORTRAN subroutine names
6
5Datatypes .
10
.........................................................
6.Enumerationtypes
10
7.ListofthePHIGSfu.nctionnames. .
................................... 10
8. PHGS errors specific to the FORTRAN binding
................................................. 10
9. The PHIGS function interface
.........................................
10
10. Utility functions not defined in PHIGS
............................................. 11
11. PHIGS PLUS Enumeration types
........................................ 16
12. List of the PHIGS PLUS function names
..................... 16
12.1. List of functions ordered alphabetically by bound name
......... 18
12.2. List of functions ordered alphabetically by PHIGS PLUS function name
........................................... 20
13. The PHIGS PLUS iimction interface
................................................. 20
13.1. General principles
...........................................
20
13.2. Output primitive functions
.......................................
33
13.3. Attribute specification functions
................................... 33
13.3.1. Bundled attribute selection
.................................. 34
13.3.2. Individual attribute selection
....................................
46
13.3.3. Aspect source flag setting
...........................
47
13.3.4. Workstation attribute table definition
..................................................
55
13.4. Inquiry fiuictions
........................ 55
13.4.1. Inquiry fimctions for workstation state list
.................. 63
13.4.2. Inquiry functions for workstation description table
...........................
111
14. Utility functions not defined in PHIGS and PHIGS PLUS
........................................
118
Annex A FORTRAN Examples(informative)
...............................................
124
Annex B Function Lists(normative)
.........................................
130
Annex C Memory Management(normative)
0 ISO/IEC 1995
All rights reserved. Unless otherwise specified, no part of this publication may be
reproduced or utilized in any form or by any means, electronie or mechanical, including
photocopying and microfilm, without Permission in writing from the publisher.
ISO/IEC Copyright Office l Case postale 56 l CH- 12 11 Geneve 20 l Switzerland
Printed in Switzerland

---------------------- Page: 2 ----------------------
ISOLIEC 9593~1:1990/Amd.l:1995(E)
0 ISO/IEC
Foreword
ISO (the International Organization for Standardization) and IEC (the Inter-
national Electrotechnical Commission) form the specialized System for worldwide
standardization. National bodies that are members of ISO or IEC participate in the
development of International Standards through technical committees established
by the respective organization to deal with particular fields of technical activity.
ISO and IEC technical committees collaborate in fields of mutual interest. Other
international organizations, governmental and non-governmental, in liaison with
ISO and IEC, also take part in the work.
In the field of information technology, ISO and IEC have established a joint
technical committee, ISO/IEC JTC 1. Draft International Standards adopted by the
joint technical committee are circulated to national bodies for voting. Publication
as an International Standard requires approval by at least 75 % of the national
bodies casting a vote.
Amendment 1 to International Standard ISO/IEC 95934: 1990 was prepared by
Joint Technical Committee ISO/IEC JTC 1, Information technology.
. . .
111

---------------------- Page: 3 ----------------------
ISO/IEC 95934: 1990/Amd.l: 1995(E) @ ISO/IEC
Introduction
Repke the Irmoduction of ISO/IEC 9.593-1 with th.e following text:
. .
ISO/IEC 9592- 1: 1989, provides a set of functions for the display and modification of 2D or 3D graphical
data. Part 1 is extended by Part 4 (PHIGS PLUS) to incorporate the effects of lighting, shading and other
properties that are important for the display of surfaces and multidimensional data.
ISO/IEC 9592-1 and ISO/IEC 9592-4 are specified in a language independent manner and must be embedded
in language dependent layers (language bindings) for use with particular programming languages.
The purpose of this part of ISO/IEC 9593 is to define the FORTRAN language binding for ISO/IEC 9592-1
and ISO/IEC 9592-4.
iv

---------------------- Page: 4 ----------------------
@ ISO/IEC ISO/IEC 9593~1:1990/Amd.l:1995(E)
Information processing Systems - Computer graphics -
Programmerk Hierarchical Interactive Graphits System (PHIGS)
language bindings -
Part 1:
FORTRAN
AMENDMENT 1
1 Scope
Replnce clcruse 1:
The “Programmer’s Hierarchical Interactive Graphits System” (PHIGS), ISO/IEC 9592-1: 1989, and ISO/IEC
9592-4: 1992, specify a language independent nucleus of a graphics System. For integration into a
programming language, PHIGS PLUS is embedded in a language dependent layer obeying the particular
conventions of that language. This part of ISO/IEC 9593 specifies the FORTRAN language dependent layer.
2 Normative references
Ackl the followiq refei-ewe to clause 2:
. .
ISO/LEC 9592-4: 1992, Information processing Systems - Computer graphics - Programmer’s Hierarchical
Interactive Graphits System (PHIGS) Part 4 - Plus Lumi&e Und Sur$aces (PHIGS PLUS).

---------------------- Page: 5 ----------------------
ISO/IEC 95934: 1990/Amd.l: 1995(E)
OISO/IEC
3 Principles
3.1 Specifxation
Replace suhclause 3.1, Specificntion, of ISOLEC 9593-1 with the following text:
. . .
This part of ISO/IEC 9593 defines the PHIGS and PHIGS PLUS language binding interface for FORTRAN
77, as described in ISO 1539: 1980. With some minor modifications, application programs tan be transported
between full FORTRAN77 and FORTRAN77 Subset PHIGS and PHIGS PLUS installations.
This binding incorporates the rules of conformance defined in the PHIGS (ISO!IEC 9592-1) and PHIGS
PLUS (ISO/rEC 9592-4) Standard for PHIGS and PHIGS PLUS implernentations, with those additional
requirements specifically defined for FORTRAN language implernentations defined in this part of ISO/IEC
9593. The following criteria are established for determining conformance of an implementation to this
binding:
In Order to conform, an implementation of the FORTRAN bindin, * of PHIGS shall implement those
functions specified in ISO/IEC 9592- 1. The implementation shall make visible all of the declarations in the
FORTRAN binding specified in clause 5 to 10 in this part of ISO/IEC 9593.
In Order to conform, an implementation of the FORTRAN binding of PHIGS PLUS shall implement
those functions specified in ISO/IEC 9592-1 and also those functions specified in ISO/IEC 9592-4. The
implementation shall make visible all of the declarations in the FORTRAN binding specified in clause 11 to
14 and in clause 5 to 10, as modified by clause 11 to 14, in this part of ISO/IEC 9593.
Thus, for example, the Syntax of the function names shall be precisely as specified in this part of
ISO/IEC 9593 and the Parameters shall be of the data types stated in this part of ISO/IEC 9593.
A PHIGS FORTRAN application should run without modification under a PHIGS PLUS
FORTRAN binding implementation.
3.2 Mapping of PHfGS function names to FORTRAN subroutine names
Append the following pmqyq~h to subclnuse 3.2,
.
However, two abbreviations are changed for PHIGS PLUS; MAPPING becomes M and WORKSTATION
becomes W, due to the FORTRAN subroutine naming restrictions.
3.3 Parameters
No clwnge to ISOLEC 9.593-1.
3.4 The FORTRAN subset
No ch.ange to ISO/IEC 9593-1.
2

---------------------- Page: 6 ----------------------
ISO/IEC 9593~1:1990/Amd.1:1995(E)
OISO/IEC
3.5 Error handling
No chmge to ISO/IEC 9593-1.

---------------------- Page: 7 ----------------------
ISO/IEC 9593~1:1990/Amd.l:1995(E) OISO/IEC
4 Generating FORTRAN subroutine names
Ad th.e following, nlphabetically, to tnble 2 of clause 4:
. .
Table 2 - Reduce compound terms for uniqueness
REPRESENTATION PLUS -> P
Ah1 the following, nlphabeticall?~, to tnble 3 of clmse 4:
.
.
Table 3 - Deletions
GEOMETRIC NON-UNIFORM WITH

---------------------- Page: 8 ----------------------
OISO/IEC
ISO/IEC 95934: 1990/Amd.l: 1995(E)
Add the following, alphabetically, to table 4 to clause 4:
Table 4 - Abbreviations
PHIGS PLUS word abbreviation
remarks
APPROXIMATION A
B-SPLINE BS
BACK B
CHARACTERISTICS
C
COORDINATE CD
CRITERIA C
CUE C
CULLING C
CURVE C
DATA D
DEPTH D SET DEPTH CUE INDEX:DP
DIRECT D
DISTINGUISHING D
DYNAMICS DC
FACET F
LIGHT L
MAPPING M
MESH M FOR PHIGS PLUS
METHOD M
PARAMETRIC P
PLACEMENT P
PLUS P
PROPERTIES P
QUADRILATERAL
Q
REFLECTANCE RF
RENDERING R
SHADING S
SPLINE
S
STRIP
ST
SURFACE S
SOURCE S
TRIMMING T
TRIANGLE T
WORKSTATION
W FOR PHIGS PLUS

---------------------- Page: 9 ----------------------
OISO/IEC
ISO/IEC 9593~1:1990/Amd.l:1995(E)
5 Data types
Append the follocving dnta tye definitions to clnuse 5:
.
COLRV colour value
INTEGER containing colour index when CTYPE is INDIRECT
INTEGER NCC when CTYPE is not INDIRECT
REAL,,REAL,,REAL,,.REAL,, containing C,,C2,CJ,.CII (,,=NCC) when
CTYPE is not INDIRECT
COLRVH homogeneous colour value
REAL,,REAL,,REAL, ,. REAL,, and REAL containing WC, ,WC2,WC3,. . .WC,, and W
(,=NCC)
GCOLR general colour
a compound data type containing colour type and colour value of COLRV
NORM normal vector
REAL,REAL,REAL containing X-,Y- and Z- values
P2H two-dimensional homogeneous Point
REAL,REAL,REAL containing WX-,WY- and W- values (or WU-,WV- and W- of a
trimming curve control Point) W value is ignored in case of non-rational type
P3H three-dimensional homogeneous Point
REAL,REAL,REAL,REAL containing W-X-,WY-,WZ- and W- values
W value is ignored in case of non-rational type
A(P3) array of coordinates of Points
REAL(*),REAL(*),REAL(*) containing X-,Y- and Z- values(*=number of columns by
number of rows)
L(L(P3{,COLRV})) list of vertex data lists
REAL PXA(*),PYA(*),PZA(*) *=last value of array of end indices for Point lists(NP)
INTEGER VCOLI(*) *=NP, when CTYPE is INDIRECT
REAL VCOLR(*) *=number of components of colour value(NCC) x NP,
when CTYPE is not INDIRECT
(COLRV}{ ,NORM}{ ,L(R)} facet data
INTEGER FCOLI when CTYPE is INDIRECT
=number of components of colour value(NCC), when CTYPE
REAL FCOLR(*) *
is not INDIRECT
REAL FNXA,FNY A,FNZA facet normal data
REAL FDLEN length of application-specific data
REAL FDATA(FDLEN) facet application-specific data
L(L(E)) list of edge flags lists
INTEGER EDATA(*) *=last value of array of end indices for Point lists
REAL PXA(*),PYA(*) *=last value of array of end indices for Point lists(NP)
INTEGER VCOLI(*) *=NP, when CTYPE is INDIRECT
REAL VCOLR(*) *=number of components of colour value(NCC) x NP, when CTYPE

---------------------- Page: 10 ----------------------
OISO/IEC ISO/IEC 9593,1:199O~Amd.l:1995(E)
is not INDIRECT
REAL VNXA(*),VNYA(*) vertex normal data(*=NP)
INTEGER VDLEN length of application-specific data
REAL VDATA(*) vertex application-specific data( *=VDLEN x NP)
L(L(P3{,COLRV){,NORM}{,L(R)}))
REAL PXA(*),PYA(*),PZA(*) *=last value of array of end indices for Point lists(NP)
INTEGER VCOLI(*) *=NP, when CTYPE is INDIRECT
number of components of colour value(NCC) x NP, when CTYPE
REAL VCOLR(*) 4:=
is not INDIRECT
REAL VNXA(*),VNYA(*),VNZA(*) vertex normal data(*=NP)
INTEGER VDLEN length of application-specific data
REAL VDATA(*) vertex application-specific data( *=VDLEN x NP)
L(L(L(1))) list of lists of vertex indices lists
REAL VIND(*) *=last value of array of end vertex indices for each fill area
L(L(L(E))) list of lists of edge flags lists
INTEGER EDATA(*) *=last value of array of end vertex indices for each fill area
L({ COLRV}{ ,NORM}{ ,L(R)}) list of facet data
INTEGER FCOLI(*) *=number of fill area Sets(N) in set of fill area sets 3 with data or
set of fill area sets with data, number of triangles(N) at following 4 functions,
triangle set 3 with data, triangle set with data, triangle Strip 3 with data and
triangle Strip with data, when CTYPE is INDIRECT
REAL FCOLR(*) *=number of components of colour value(NCC) x NFS, when CTYPE
is not INDIRECT
REAL FNXA(*),FNYA(*),FNZA(*) facet normal data(*=N)
INTEGER FDLEN length of application-specific data
REAL FDATA(*) facet application-specific data( *=FDLEN x N)
L(P3{ ,COLRV}{ ,NORM}{ ,L(R)}) list of vertex data
REAL PXA(*),PYA(*),PZA(*) *=number of points(NP)
INTEGER VCOLI(*) *=NP, when CTYPE is INDIRECT
REAL VCOLR(*) *=number of components of colour value(NCC) x NP, when CTYPE
is not INDIRECT
REAL VNXA(*),VNYA(*),VNZA(*) vertex normal data(*=NP)
INTEGER VDLEN length of application-specific data
REAL VDATA(*) vertex application-specific data( *=VDLEN x NP)
L(P2{ ,COLRV}{ ,NORM}{ ,L(R)}) list of vertex data
REAL PXA(*),PYA(*) *=number of points(NP)
INTEGER VCOLI(*) *=NP, when CTYPE is INDIRECT
REAL VCOLR(*) *=number of components of colour value(NCC) x NP, when CTYPE
is not INDIRECT
REAL VNXA(*),VNYA(*),VNZA(*) vertex normal data(*=NP)
INTEGER VDLEN length of application-specific data
REAL VDATA(*) vertex application-specific data( *=VDLEN x NP)
A( COLRV) colour array
INTEGER COLIA(q’) *- -number of columns(DIMX) x number of rows(DIMY),
when CTYPE is INDIRECT
REAL COLRA(*) *=number of components of colour value(NCC) x DIMX x DIMY,
when CTYPE is not INDIRECT

---------------------- Page: 11 ----------------------
ISO/IEC 9593~1:1990/Amd.l:1995(E) OISO/IEC
A({ COLRV}{ ,NORM}{ ,L(R)}) array of facet data
INTEGER FCOLI(*) * =number of columns minus l(NC-1) x number of rows minus l(NR-l),
when CTYPE is INDIRECT
REAL FCOLR(*) *=number of components of colour value(NCC) x NC-1 x NR-l,
when CTYPE is not INDIRECT
REAL FNXA(*),FNYA(*),FNZA(*) facet normal data(*= NC-1 x NR-l)
INTEGER FDLEN length of application-specific data
REAL FDATA(*) facet application-specific data(*=FDLEN x NC- 1 x NR-l)
A(P3(,COLRV}{,NORM}{,L(R)}) array of vertex data
REAL PXA(*),PYA(*),PZA(*) *- -number of columns(NC) x number of rows(NR)
INTEGER VCOLI(*) *=NC x NR, when CTYPE is INDIRECT
REAL VCOLR(*) *=number of components of colour value(NCC) x NC x NR,
when CTYPE is not INDIRECT
REAL VNXA(*),VNYA(*),VNZA(*) vertex normal data(*= NC x NR)
INTEGER VDLEN length of application-specific data
REAL VDATA(*) vertex application-specific data(*=VDLEN x NC x NR)
A(P2{,COLRV}{,NORM}{,L(R)}) array of vertex data
REAL PXA(*),PYA(*) *- -number of columns(NC) x number of rows(NR)
INTEGER VCOLI(*) *=NC x NR, when CTYPE is INDIRECT
REAL VCOLR(*) * =number of components of colour value(NCC) x NC x NR,
when CTYPE is not INDIRECT
REAL VNXA(*),VNYA(*),VNZA(*) vertex normal data(*= NC x NR)
INTEGER VDLEN length of application-specific data
REAL VDATA(*) vertex application-specific data(*=VDLEN x NC x NR)
A(2xE) array of edge data
INTEGER EDATA(*) *=2 x number of columns(NC) x number of rows(NR)
L(P3H)IL(P3) list of curve control Points
REAL PXA(*),PYA(*),PZA(*),PWA(*) *=number of control Points, when CRTYPE is PRAT
REAL PXA(*),PYA(*),PZA(*) * =number of control Points, when CRTYPE is PNRAT
L(COLRVH)IL(COLRV) list of colour spline control Points
REAL CSCR(*) *=( number of components of colour value(NCC)+l} x
nunaber of colour spline control points(NCSCP), when CRTYPE is PRAT
REAL CSCR(*) *=number of components of colour value(NCC) x
number of colour spline control points(NCSCP), when CRTYPE is PNRAT
A(P3H)IA(P3) array of surface control Points
-u number of control Points dimension(UNCP) x
REAL PXA(*),PYA(*),PZA(*),PWA(*) *-
v number of control Points dimension(VNCP), when CRTYPE is PRAT
-u number of control Points ditnension(UNCP) x
REAL PXA(*),PYA(*),PZA(*) *-
v number of control Points dimension(VNCP), when CRTYPE is PNRAT
L(L(TRIMCURVE)) list of trimming loop definitions lists
-number of components of list of trimming loop definitions lists(NCLTL)
INTEGER TACRI(*) *-
INTEGER TCVF(*) trimming curve visibility flag(*=NCLTL)
INTEGER TSORD(*) trimming curve spline order( *=NCLTL)
INTEGER TNKA(*) number of spline knots( *=NCLTL)
REAL TKNOTS(*) *=last value of array of number of spline knots in array(TNKA)
REAL TPARL(2,*) trimming curve Parameter range limits(*=NCLTL)
INTEGER TRTYPE(*) trimming curve spline rationality( *=NCLTL)

---------------------- Page: 12 ----------------------
OISO/IEC ISOiIEC 9593~1:1990/Amd.1:1995(E)
INTEGER NTCCP(*) number of timming curve spline control points(*=NCLTL)
REAL TPWXA(*),TPWYA(*),TPWWA(*) *=last value of number of trimming curve
spline control Points, when CRTYPE is PRAT
REAL TPWXA(*),TPWYA(*) *=last value of number of trimming curve
spline control Points, when CRTYPE is PNRAT
L(P2H)IL(P2) list of trimming curve control Points
REAL TPWUA(*),TPWVA(*),TPWWA(*) *- -number of control Points, when CRTYPE is PRAT
REAL TPWUA(*),TPWVA(*) *=number of control Points, when CRTYPE is PNRAT
A(COLRVH)IA(COLRV) array of colour spline control Points
REAL CSCP(*) *={ number of components of colour value(NCC)+l} x
u number of colour spline control Points dimension(NUCSCP) x
v number of colour spline control Points dimension(NVCSCP), when CRTYPE is PRAT
REAL CSCP(*) *=number of components of colour value(NCC) x
u number of colour spline control Points dimension(NUCSCP) x
v number of colour spline control Points dimension(NVCSCP), when CRTYPE is PNRAT
L(DATASPLINE) list of data spline (for non-uniform B-spline surface with data)
INTEGER DUSORD(*) u data spline order(*=NDS)
INTEGER DVSORD(*) v data spline order(*=NDS)
INTEGER DNUKA(*) number of u spline knots(*=NDS)
INTEGER DNVKA(*) number of v spline knots(*=NDS)
REAL DUKNTS(*) *=last value of number of u spline knots(DNUKA) x NDS
REAL DVKNTS(*) *=last value of number of v spline knots(DNVKA) x NDS
INTEGER DRTY PE(*) data spline rationali ty( *=NDS)
u number of data spline control Points dimension(*=NDS)
INTEGER NUDSCP(*)
INTEGER NVDSCP(*) v number of data spline control Points dimension(*=NDS)
INTEGER DDIMS(*) data dimension( *=NDS)
REAL DSCP(*) *= NDs
c (MDSCP(i) xmscP(i) XDDIMSW )
1=1
DDIMS(i) = n+l (n = d,,d?,d,,.d,,w) when DRTYPE(i) is PRAT.
DDIMS(i) = n (n = d,,d,,d? ,. d,,) when DRTYPE(i) is PNRAT.
A(DATAH)IA(DATA) control Points of data spline
MIs
REAL DSCP(*) *=
c (lviYzxCP(i) xNK!xCP(i) xmm4SLi) )
i=l
DDIMS(i) = n+l (n = d,,d2,d3,.d,,w) when DRTYPE(i) is PRAT.
DDIMS(i) = n (n = d,,d,,d+.d,) when DRTYPE(i) is PNRAT.
L
NDS=number of data spline
NUDSCP=u number of data spline control Points dimension
NVDSCP=v number of data spline control Points dimension
DDIMS=data dimension for spline

---------------------- Page: 13 ----------------------
ISO/IEC 9593~1:1990/Amd.l:1995(E) OISO/IEC
6 Enumeration types
No Change to ISOIIEC 95934.
7 List of the PHIGS function names
No chmge to ISOLEC 9593-1.
8 PHIGS errors specific to the FORTRAN binding
No chnnge to ISOLEC 9593-1.
9. The PHIGS function interface
No chmge to ISOLEC 9.593-1.
10 Utility functions not defined in PHIGS
No ch.crnge to ISOLEC 9593-1.
10

---------------------- Page: 14 ----------------------
OISO/IEC ISO/IEC 9593,l:l99O/Amd.l:1995(E)
Add the following new clauses 11, 12, 13 and 14:
11 PHIGS PLUS Enumeration types
All the enumeration types of PHIGS PLUS are mapped to FORTRAN INTEGERs. The correspondence
between PHIGS PLUS scalars and FORTRAN INTEGERs is shown as follows in a list of symbolic
FORTRAN constants that may be included in any application program. This clause contains a mapping of
PHIGS PLUS enumeration types to FORTRAN variable names.
“Polyline shading method”, “interior shading method”, “data mapping method”, “reflectance property type”
“reflectance model”, “curve placement”, “light Source type”, “colour mapping method”, “curve approximation
“surface approximation type” and “parametric surface charcteristic type” are defmed as INTEGER
t ype” 7
rather than enumeration types in PHIGS PLUS. Constant definitions for the explicitly defined and required
values of these conceptually unbounded ranges arc provided as a convenience.
Also, a numbering of all PHIGS PLUS functions is given for use in the error handling procedures.
Mnemonic FORTRAN names and their values for PHIGS PLUS ENUMERATION type values:
aspect identifier
p-Olir~c coloicr . . . . .
INTEGER PPLCOL, PPMCOL, PTXCOL, PINCOL? PEDCOL,
1 PPSHMD, PISHMD, PDMPMD, PREFPR, PREFM,
2 PBTNSY, PBINSI, PBICOL, PBISHM, PBDMPM,
3 PBREFP, PBREFM. PCAPCR, PSAPCR, PPASUC
PARAMETER( PPLCOL=lS. PPMCOL=19, PTXCOL=20? PINCOL=2 1, PEDCOL=22,
1 PPSHMD=23, PISHMD=24, PDMPMD=25, PREFPR=26? PREFM=27,
2 PBINSY=28, PBINSI=29, PBICOL=30, PBISHM=3 1, PBDMPM=32,
PBREFP=33, PCAPCR=35,
3 PBREFM=34, PSAPCR=36, PPASUC=37 )
colour mapping method
true p.w14& p.rcl4d@-l1
INTEGER PTRUE, PSUDN
PSUD,
PARAMETER( PTRUE= 1, PSUD=2, PSUDN=3)
INTEGER rather than enumeration type. Explicitly defined and required Portion of conceptually unbounded range defined here.
colour type
iridiwct
INTEGER PINDIR
PARAMETER( PINDIR=O )
The following colour models are also colour types.
RGB .CIELUV,HSV,HLS
culling mode
Ilolle back-bcing fro@citig
INTEGER PNOFC. PBKFC, PFTFC
PARAMETER( PNOFC=O, PBKFC=l, PFTFC=2 )
11

---------------------- Page: 15 ----------------------
ISO/IEC 9593~1:1990/Amd.l:1995(E) OISO/IEC
curve approximation criteria type
~\~otkstatioti dcpcdcnt Coll.PtOllt ln2h\*ccll kr1ots chotdll si:c in WC chordu .ri:e in NPC chorrlnl si:c in DC
chordd de\*icrtiotl irr IVC
chon-l~l dn*iotiotl in NPC chotd~l dointion in DC r-clnti\*e WC reloti\oe NPC
relnti\~c DC
INTEGER PWDCA, PCBKCA, PCSDCA,
PCSWCA, PCSNCA,
1 PRNCA,
PCDWCA, PCDNCA, PCDDCA. PRWCA,
2 PRDCA
PARAMETER( PWDCA=l, PCBKCA=2, PCSWCA=X PCSNCA=4. PCSDCA=5,
1 PCDWCA=6, PCDNCA=7, PCDDCA=8, PRWCA=9, PRNCA=lO,
2 PRDCA= 11)
INTEGER rather than enumeration type. Explicitly defined and required Portion of conceptually unboundcd range defined hcre.
curve placement (of ISOPARAMETRIC CURVE)
O\‘CI s1t rjilce behwcn knots
INTEGER PUBKCP
PUOSCP,
PARAMETER( PUOSCP=O, PUBKCP=l)
curve visibility flag
Uses the POFF/PON enumeration dcfined for edge l-lag and error handling mode.
data mapping method
colotr 1’ single iuiij01w siuglc riott-irriifbm BI ut~ijor~~~ BI rro~~rtrijnr-~1
PBNUDM
INTEGER PCDM, PSUDM, PSNUDM, PBUDM.
PBNUDM=5)
PARAMETER( PCDM= 1, PSUDM=2, PSNUDM=3, PBUDM=4,
INTEGER rather than enumeration typc. Explicitly defined and required portion of conceptually unbounded range defined hcrc.
depth tue mode
s1rpp”c.rscd nllo~c~ed
INTEGER PSUPPR PALLOW
PARAMETER( PSUPPR=O, PALLOW=l )
distinguishing mode
Uses the POFF/PON enumeration defined for edge flag and error handling mode.
edge data flag
110~14 edge Gsildity jlng
INTEGER PEN0 PEVF
PARAMETER( PENO=O, PEVF=l )
Not defined in PHIGS PLUS but used to indicate presence of optional data for FORTRAN binding.
12

---------------------- Page: 16 ----------------------
OISO/IEC ISO/IEC 9593~1:1990/Amd.1:1995(E)
element type
polylinc set 3 w.ith dato . . . . . .
INTEGER PEPLS3, PEFS3D, PEFSD, PECA3P,
PESFS3,
1 PESFSD, PETS3D, PETSD, PETST3, PETSTD,
2 PEQM3D. PEQMD, PEBC3, PEBC3C,
PEBS3,
3 PEBS3D, PEDMI, PERFI, PEBII, PEBDMI,
4 PEBRFI, PEPRSI, PEPLC. PEPLSM, PEPMC,
5 PETXC, PEFDM, PEFCM, PEIC,
PEISM,
6 PEDMM, PERFP, PERFM, PEBIS, PEBISI,
7 PEBIC, PEBISM, PEBDMM, PEBRFP, PEBRFM,
8 PELSS, PEEDC, PECAC, PESAC,
PEPSC,
9 PERCM, PEDPCI, PECMI)
PARAMETER( PEPLS3=7 1, PEFS3D=72, PEFSD=73, PECA3P=74, PESFS3=75,
1 PESFSD=76, PETS3D=77, PETSD=78, PETST3=79, PETSTD=80,
2 PEQM3D=8 1, PEQMD=82, PEBC3=83, PEBC3C=84, PEBS3=85,
3 PEBS3D=86, PEDMI=87, PERFI=88, PEBII=89, PEBDMI=90,
4 PEBRFI=91, PEPRSI=92, PEPLC=93, PEPLSM=94, PEPMC=95,
5 PETXC=96, PEFDM=97, PEFCM=98, PEIC=99, PEISM=lOO,
6 PEDMM=lOl, PERFP= 102, PERFM=103, PEBIS=lO4, PEBISI=l05,
7 PEBIC=106, PEBISM=l07, PEBDMM=lO& PEBRFP=109, PEBRFM=llO,
8 PELSS=lll. PEEDC= 112, PECAC=l13, PESAC=114, PEPSC=ll5,
9 PERCM=116, PEDPCI=117, PECMI=l 18)
facet data flag
110 jilcet htc1 colorrr dcltn
tlo17ll~
cnlolcr/di7tcl
not-mdki~tn colol4,~~lo~~~rlnl/cJntn
INTEGER PFNO, PFC, PFN, PFCN,
1 PFCD, PFND, PFCND
PARAMETER( PFNO=O. PFC= 1, PFN=2, PFD=3, PFCN=4,
1 PFCD=5. PFND=6, PFCND=7 )
Not defined in PHIGS PLUS but used to indicate presence of optional data for FORTRAN binding.
GDP attributes
1.cjlectnrlcf prnmetric si~ifk-c
PRFATT, PPSATT
INTEGER
PARAMETER( PRFATT=5, PPSATT=6 )
interior shading method
dotddot dmvkwmnl
?lOllE colo1tr dntn
PDDIS, PDNIS
INTEGER PNOIS, PCIS, PDIS,
PDDIS=4, PDNIS=S)
PARAMETER( PNOIS=l, PCIS=2, PDIS=3,
INTEGER rather than enumeration type. Explicitly defined and required Portion of conceptually unbounded range defined here.
light Source type
nrdGit directiond psitiotinl spe t
INTEGER PAMB, PDIRE, PPOSI, PSPOT
PARAMETER( PAMB=l. PDIRE=2, PPOSI=3, PSPOT=4)
INTEGER rather than enumeration type. Explicitly defined and required Portion of conceptually unbounded range defined here.
parametric surface characteristic type
lwcl cunv iri MC lt-wl citwe it1 WC
llolle woikstntiori clcpe~idcrit isoprmmWic cio~pc
PLCMPC, PLCWPC
INTEGER PNOPC, PWDPC, PICPC,
PLCMPC=4, PLCWPC=5)
PARAMETER( PNOPC= 1, PWDPC=2. PICPC=3,
INTEGER rather than enunwation type. Explicitly defined and required portion of conceptually unbounded range defined b-e.
13

---------------------- Page: 17 ----------------------
ISO/IEC 9593.1:1990/Amd.l:1995(E)
OISO/IEC
polyline shading method
IlOllC cc>l010
INTEGER PNOPS, PCPS
PARAMETER( PNOPS= 1, PCPS=2 )
INTEGER rather than enumeration type. Explicitly defined and required portion of conceptually unbounded range defincd her-e.
rationalitj
t7~tioticrl non-tntiotml
INTEGER PRAT. PNRAT
PARAMETER( PNRAT=l )
PRAT=O.
reflectance model
110 r-qlectnllcc ottibietit nrttl>ictit/~~i~irse nttti~iet~t/~liJ;fit.~c~~~~ecirlnl
INTEGER PNORM. PARM, PADRM, PADSRM
PARAMETER( PNORM= 1. PARM=2, PADRM=3, PADSRM=4)
INTEGER rather than enumeration type. Explicitly defined and required portion of conceptually unbounded range defined here.
reflectance property type
sitttplc rejlectnttcc
INTEGER PSRPT
PARAMETER( PSRPT= 1)
INTEGER rather than enumeration type. Explicitly delined and required Portion of conceptually unbounded range defincd her-c.
surface approximation criteria
~~~otkmtioti depetidetlt cotistnttt beh~wtl knots choirk7l si:e it1 WC chord~l size it1 NPC chotdd si:c itt DC
plmiflr dc\dntioti iti WC plmm delintiott it1 NPC plmnr de\dntiotl in DC rdntive itt WC r.eloti~*e in NPC
relative itr DC
INTEGER PWDSA, PCBKSA, PCSDSA,
PCSWSA, PCSNSA,
PPDNSA, PRNSA,
1 PPDWSA, PPDDSA, PRWSA,
2 PRDSA
PARAMETER( PWDSA=l, PCBKSA=2, PCSNSA=4,
PCSWSA=3, PCSDSA=5,
1 PPDWSA=6, PPDNSA=7, PPDDSA=& PRWSA=9, PRNSA=lO,
2 PRDSA= 11)
INTEGER rather than enumeration type. Explicitly defined and required Portion of conceptually unbounded range defined here.
Source selector
cololrr mpcct vet-tex coloir r j-kwt cololrl~ fncct htn
scrtes clntn
INTEGER PSCASF, PSVC, PSVD, PSFC, PSFD
PARAMETER( PSCASF=O, PSVC=l, PSVD=2, PSFC=3, PSFD=4 )
trimming curve visibility flag
Uses the POFF/PON enumeration defined for edge flag and error handling mode.
vertex data flag
coor-dimtc ottl). colorcr 110 Im-l1 ckltn cololrlhnlm7l
cololcr/d~tcr llol-vl4ll/iiotn cololrr~llo1~l,lol/clntn
INTEGER PCD, PCDC, PCDN, PCDD, PCDCN,
1 PCDCD, PCDND, PCDCND
PCDD=3, PCDCN=4,
PARAMETER( PCD=O, PCDC= 17 PCDN=2,
1 PCDCD=5, PCDND=6, PCDCND=7 )
Not defined in PHIGS PLUS but used to indicate presence of optional data for FORTRAN binding.
14

---------------------- Page: 18 ----------------------
OISO/IEC ISO/IEC 9593~1:199O/Amd.l: 1995(E)
PHIGS PLUS functions. These names are used for error handling. The names are the same as the PHIGS
PLUS function names except that the sentinel Character ‘P’ is replaced by ‘E’. The same function
identifkation used for full FORTRAN 77.
INTEGER EPLS3C, EFAS3D. EFASD, ECA3P, ESFAS3
PARAMETER( EPLS3C=183, EFAS3D=184, EFASD=185, ECA3P=186, ESFAS3=187)
INTEGER ESFASD, ETS3D, ETSD, ETST3D, ETSTD
PARAMETER( ESFASD=188, ETS3D=l89, ETSD= 190, ETST3D=l91, ETSTD=l92)
INTEGER EQM3D, EQMD. EBSC3, EBSC3C, EBSS3
EQM3D=193.
PARAMETER( EQMD=194, EBSC3=195, EBSC3C=196, EBSS3=197)
INTEGER EBSS3D. ESDMI, ESRFI, ESBII, ESBDMI
PARAMETER( EBSS3D=l%, ESDMI=l99, ESRFI=200, ESBII=201, ESBDMI=202)
INTEGER ESBRFI
...

Questions, Comments and Discussion

Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.