1、INTERNATIONAL STANDARD ISOAEC 9592-l Second edition 1997-11-15 Information technology - Computer graphics and image processing - Programmers Hierarchical Interactive Graphics System (PHIGS) - Part 1: Functional description Technologies de /information - lnfographie et traitement de /image - Interfac
2、e de programmation du syst output primitives containing both geometric and non-geometric data in their definition; attributes that control the application of lighting and shading; and a generalized mechanism for colour specification. Support is provided for controlling the application of textures to
3、 objects and for interactively applying changes to light source definitions. This International Standard enables graphical (and application) data to be stored in a hierarchical data store or to be interpreted directly. Information in the hierarchical data store can be inserted, modified and deleted
4、with the provided functions. Information for direct interpretation can only be inserted. The main motivations for standardization are to improve portability of programs and to define a basic methodology. Portability is achieved by providing all the capabilities necessary in a device independent way.
5、 If required, it provides applications with more direct control over the capabilities of the available hardware. The following principles are used in specifying PHIGS: a) Design: the three goals are consistency of approach, compatibility with related standards and orthogonal func- tionality where po
6、ssible. b) Functionality: the goals are completeness with the minimal set of functions. Organization of functions should be such as to achieve compact programs. All the functions necessary for application programs to use a dynamic hierarchical graphics system should be included. Redundant functions
7、are only supported where their availability enables application programs to improve performance or where some collection of capabilities is frequently used. Richness should be provided by utilities and toolkits on top of PHIGS. c) Error Handling: error conditions should be minimized, and their impac
8、t well defined. d) Device independence: the workstation concept in PHIGS deals with all device dependent functions. It allows an application program to address facilities of different graphics input and output devices with minimal changes to the application program. Where necessary, PHIGS allows an
9、application program to address specific capabilities of graphics input and output devices. e) Implementation: it should be possible to support PHIGS functions using most languages on most operating sys- tems. A PHIGS implementation should be capable of executing without consuming undue amounts of co
10、mputer resources. This international standard has a strong relationship to the principles and functionality of ISO/IEC 9592- 1: 1989 (known informally as PHIGS-89) and incorporates the functionality of ISO/IEC 9592-4:1992 (known informally as PHIGS PLUS). However, it has been updated to provide addi
11、tional functionality of relevance to modern hardware and applica- tions. xiv INTERNATIONAL STANDARD OISO/IEC ISO/IEC 9592-1:1997(E) Information technology - Computer graphics and image processing - Programmers Hierarchical Interactive Graphics System (PHIGS) - Part 1: Functional description 1 Scope
12、This part of ISO/IEC 9592 specifies a set of functions for computer graphics programming, the Programmers Hierarch- ical Interactive Graphics System (PHIGS). PHIGS is a graphics system for application programs that produce computer generated pictures on output devices. It supports operator input and
13、 interactions by supplying basic functions for graph- ical input and hierarchical picture definition. Picture definitions can be retained centrally where they may be edited by an application. Alternatively, graphical data may be processed without first storing it. To assist in this processing, expli
14、cit control over resources used to encapsulate the results of these processing operations is provided. Basic application requirements in the areas of lighting and shading are provided through primitives and functions for controlling the rendering of 3D objects. Utilization of raster images in the ge
15、neration of PHIGS pictures is provided. Pictures are displayed on output devices which may have associated input devices. Several input devices can be used simultaneously. The application program is allowed to adapt its behaviour to make best use of their capabilities. Graphical output can be constr
16、ained to particular views. Views can be specified parametrically and automatic process- ing of input operations can be used to control viewing. New input devices can be defined from the capabilities avail- able. Functions are specified for archiving picture definitions to file. In addition an interf
17、ace to the Computer Graphics Metafile (ISOLIEC 8632) is described. This part of ISO/IEC 9592 defines a language independent nucleus of a graphics system for integration into a program- ming language. PHIGS is embedded in a language layer obeying the particular conventions of the language. Such langu
18、age bindings are specified in ISOIIEC 9593. ISOIIEC 9592-1:1997(E) OISO/IEC 2 Normative references The following standards contain provisions which, through reference in this text, constitute provisions of this part of ISO/IEC 9592. At the time of publication, the editions indicated were valid. All
19、standards are subject to revision, and parties to agreements based on this part of ISO/IEC 9592 are encouraged to investigate the possibility of applying the most recent editions of the standards indicated below. Members of IEC and IS0 maintain registers of currently valid International Standards. I
20、SOLIEC 646: 199 1, Information technology - IS0 7-bit coded character set for information interchange. ISOAEC 2022: 1994, Information technology - Character code structure and extension techniques. IS0 6093: 1985, Information processing - Representation of numerical values in character strings for i
21、nformation inter- change. ISO/IEC 8632:1992, Information technology - Computer graphics - Metafile for the storage and transfer of picture description information - Part 1 : Functional description - Part 2 : Character encoding - Part 3 : Bina* encoding - Part 4 : Clear text encoding ISO/IEC 9593 (al
22、l parts), Information technology - Computer graphics - Programmers Hierarchical Interactive Graphics System (PHIGS) language bindings. OISO/IEC ISO/IEC 9592-1:1997(E) 3 Definitions For the purposes of this part of ISO/IEC 9592 the following definitions apply. NOTE As far as possible, graphics termin
23、ology which is commonly accepted and consistent with other graphics Standards is used. 3.1 acknowledgement: Output to the operator of a logical input device indicating that the input report generated by the firing of a trigger has either been accepted or rejected. 3.2 acknowledgement process: A proc
24、ess which notifies an operator of the status of an input report. Such input reports are generated by firing of an input report generation trigger. 3.3 addressable point: Any point of a device that can be addressed. 3.4 alpha: A value which specifies the proportion by which an object obscures the obj
25、ects behind it. This information is often used to achieve transparency effects. 3.5 alpha blending: The operation in the rendering pipeline which uses the alpha data to mix the colours of the primi- tive being rendered with the colours already existing in the displayed picture. 3.6 alpha mapping: Th
26、e action of associating the alpha information provided by the alpha source with the primitive being rendered. 3.7 alpha source: The location where alpha values are obtained. 3.8 ambient light source: A light source that contributes to the reflectance calculation independently of the orientation or p
27、osition of the facet being illuminated or the location of the viewers eye. 3.9 ambient reflection coefficient: The fraction of ambient light reflected from a facet. 3.10 ancestor structure: A parent structure or the ancestor of a parent structure. 3.11 annotation style: An aspect of annotation indic
28、ating how relationships between an annotation primitive and a reference point are displayed. 3.12 annotation text: An output primitive consisting of a character string which is always drawn parallel to the x-y plane of the display space and is unaffected by modelling and viewing transformations. Its
29、 position is determined by a reference point defined in modelling coordinate space and an offset in normalized projection coordinates. 3.13 application data structure element: A structure element for storing data used by an application program, the nature of which is not specified in this standard.
30、3.14 archive file: A mechanism for the storage and transportation of graphical data, represented by PHIGS structures and their contents. 3.15 aspect ratio: The ratio of lengths along the principal axes of an object. 3.16 aspect source flag (ASF): A flag indicating whether a particular workstation de
31、pendent aspect of an output primi- tive is selected from an attribute bundle, or as an individual attribute selection. 3.17 aspects of output primitives: The appearance of output primitives is controlled by the values of a set of charac- teristics called aspects, examples of which are the height of
32、a character or the linetype of a polyline. Geometric aspects are workstation independent and are controlled by the corresponding attributes. For non-geometric aspects, the map- ping between a particular aspect and its controlling attribute is defined by an associated aspect source flag (ASF). If the
33、 ASF is set to BUNDLED this aspect of the output primitive is controlled by the bundle index attribute. If the ASF is set to INDIVIDUAL then the aspect is controlled by the corresponding attribute. 3.18 atomic device: A logical input device providing a value derived from the values delivered by a on
34、e of the atomic input classes. 3.19 atomic input class: The characterization of the functionality of a simple logical input device. There are six classes of atomic logical input device: locator, stroke, valuator, choice, pick, and string. 3 ISO/IEC 9592-1:1997(E) OISO/IEC Definitions 3.20 attenuatio
35、n coefficient: A coefficient that determines the decrease in intensity of light as a function of the distance between a light source and an illuminated object. 3.21 attribute structure element: A structure element which, on traversal, updates the relevant attribute entry in the traversal state list.
36、 3.22 attribute: Attributes control the aspects and properties of output primitives. There are five types of attributes: geometric, non-geometric, viewing, rendering and identification. The geometric and non-geometric attributes control the values of aspects of output primitives. 3.23 back facing: A
37、 back-facing facet has a facet normal that, when transformed to NPC, has a negative Z component. See also front facing. 3.24 back plane: A plane parallel to the view plane whose location is specified as an N coordinate value in the view reference coordinate system. Output primitives behind the back
38、plane lie outside the view volume. 3.25 base target: A fixed target used for absolute target addressing. 3.26 break action: An implementation dependent and workstation dependent mechanism enabling the operator to inter- rupt an input operation. 3.27 bundle index: An attribute of an output primitive
39、which is an index into a bundle table; which defines the worksta- tion dependent aspects of the output primitive. 3.28 bundle table: A workstation dependent table specifying aspects of one or more output primitives. PHIGS has polyline, polymarker, text, interior, reflectance, parametric surface, dat
40、a mapping, and edge bundle tables. 3.29 bundle table entry: A single entry in a bundle table. Each entry contains one value for each aspect which applies to the correspondingoutput primitive. This set is workstation dependent. 3.30 cell array: An output primitive consisting of a parallelogram of equ
41、al sized cells, each of which is a parallelogram and has a single colour. 3.31 centralized structure store (CSS): The conceptual workstation independent storage area for structures. Struc- tures may reference other structures to produce structure networks within the centralized structure store. Stru
42、ctures may be posted to workstations for display. 3.32 character: A recognizable abstract graphic symbol which is independent of any specific design. 3.33 character base vector: An aspect of text which defines the direction of the baseline of a character. It is a two- dimensional vector in the text
43、plane specified in the text structure element. 3.34 character body: The rectangle defining the horizontal and vertical limits of an individual character. 3.35 character expansion factor: An aspect of text which specifies the deviation of character width from the defined nominal value of a given font
44、 on a given workstation. 3.36 character height: An aspect of text which specifies the height of an upper case character. 3.37 character set: A registered interpretation for entries in the character code table (see IS0 2022). 3.38 character spacing: An aspect of text which specifies the fraction of t
45、he character height aspect to be added between adjacent character bodies in a string. 3.39 character up vector: An aspect of text which defines the principal up direction of the text string. It is a two- dimensional vector in the text plane specified in the text structure element. 3.40 character wid
46、th: An aspect of text which specifies the width of a character. The actual width depends on the width to height ratio specified by the designer of the font to which the character belongs. 3.41 child structure: A structure specified in a structure reference. 3.42 choice device: A logical input device
47、 providing a non-negative integer defining one of a set of alternatives. 3.43 CIE: Abbreviation for the Commission Internationale de IEclairage. Used to refer to the CIE! universal colour definition system used as a colour model. 3.44 CIELUV: Abbreviation for the CIE 1976 (L*u*v*) colour space. 4 OI
48、SO/IEC ISO/IEC 9592-1:1997(E) Definitions 3.45 circular arc close: An output primitive consisting of a single filled area bounded by a circular arc in either a pie shape or with a chord joining the ends of the arc. 3.46 clipping: Removing parts of output primitives which lie outside a specified volu
49、me. The exact effect of clipping some output primitives may be implementation or workstation dependent. 3.47 colour index: An index used to access an entry in a colour table. 3.48 colour mapping: The conversion of direct colours in the rendering pipeline to other colours before they are displayed on the workstation. 3.49 colour model: Characterization of a colour space in terms of explicit parameters. 3.50 colour space: Geometric representation of colours in space, usually of three dimensions. 3.51 colour spline: The parametric curve or surface in colour space (or homogeneous colour s