ISO/IEC 9592-1:1997
(Main)Information technology — Computer graphics and image processing — Programmer's Hierarchical Interactive Graphics System (PHIGS) — Part 1: Functional description
Information technology — Computer graphics and image processing — Programmer's Hierarchical Interactive Graphics System (PHIGS) — Part 1: Functional description
Technologies de l'information — Infographie et traitement de l'image — Interface de programmation du système graphique hiérarchisé (PHIGS) — Partie 1: Description fonctionnelle
General Information
Relations
Standards Content (Sample)
INTERNATIONAL
ISOAEC
STANDARD
9592-l
Second edition
1997-11-15
Information technology - Computer
graphics and image processing -
Programmer’s Hierarchical Interactive
Graphics System (PHIGS) -
Part 1:
Functional description
Technologies de I’informa tion - lnfographie et traitement de /‘image -
Interface de programmation du systkme graphique hikrarchisb (PHIGS) --
Partie I: Description fonctionnelle
Reference number
ISO/I EC 9592- 1: 1997(E)
---------------------- Page: 1 ----------------------
ISO/IEC 9592-l: 1997(E)
Contents
1
....................................................................................................................
1 Scope.
.............................................................................................. 2
2 Normative references
.......... .................................................................................................... 3
3 Definitions
.................................................................................. 19
4 PHIGS functional overview
4.1 About this part of ISO/IEC 9592 . 19
4.1.1 Specification and conformance . 19
........................................................................................... 19
4.1.2 Registration
......................................................................... 19
4.1.3 Notational conventions
.................................................................................. 19
4.2 Overview and concepts
.............................................................................................. 19
4.2.1 Overview
............................................................................................... 20
4.2.2 Concepts
...................................................................................... 24
4.2.3 PHIGS profiles
................................................................................ 25
4.3 Structures and traversal
......................................................... 25
4.3.1 Structure elements and structures
................................................................................ 27
4.3.2 Structure networks
............................................................. 29
4.3.3 Structure traversal and display
29
4.3.3.1 Posting .
4.3.3.2 Traversal . 29
30
4.3.3.3 Posting groups .
4.3.3.4 Priority . 33
structure
4.3.3.5 Direct interpretation . 35
4.3.3.6 Traversing structure networks . 38
4.3.4 Conditional traversal of structures . 38
4.3.5 Structure editing . 41
4.3.6 Structure element moving and copying . 42
4.3.7 Manipulation of structures in CSS . 42
4.3.8 CSS search and inquiry . 43
4.3.9 Structure archival and retrieval . 44
4.3.10 Generalized Structure Elements (GSE) . 45
4.3.11 Application data . 46
4.3.12 Direct interpretation structure picture definition . 46
4.3.13 Stability of the non-retained picture . 47
4.4 Output primitives . 48
4.4.1 Structure elements and output primitives . 48
4.4.2 Marker class . 49
4.4.2.1 Polymarker . 49
4.4.3 Curve class . 49
4.4.3.1 Polyline . 49
4.4.3.2 Polyline set . 49
4.4.3.3 Non-uniform B-spline curve . 49
4.4.3.4 Non-uniform B-spline curve with colour . 50
0 ISO/IEC 1997
All rights reserved. Unless otherwise specified, no part of this publication may be reproduced or
utilized in any form or by any means, electronic or mechanical, including photocopying and
microfilm, without permission in writing from the publisher.
ISOAEC Copyright Office * Case postale 56 l CH-1211 Geneve 20 l Switzerland
Printed in Switzerland
ii
---------------------- Page: 2 ----------------------
ISOIIEC 9592=1:1997(E)
OISO/IEC
4.4.3.5 Circle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
4.4.3.6 Circular arc . 50
4.4.3.7 Ellipse . 51
4.4.3.8 Elliptical arc . 51
4.4.4 Text class . 51
4.4.4.1 Text . 51
4.4.4.2 Annotation text . 51
4.4.5 Surface class . 51
4.4.5.1 Facets . 51
4.4.5.2 With-data primitives . 52
4.4.5.3 Clipping surfaces . 53
4.4.5.4 Modelling clip . 53
4.4.5.5 Fill area . 53
4.4.5.6 Fill area set . 53
4.4.5.7 Fill area set with data . 54
4.4.5.8 Set of fill area sets with data . 54
4.4.5.9 Triangle set with data . 54
4.4.5.10 Triangle strip with data . 55
4.4.5.11 Quadrilateral mesh with data . 55
4.4.5.12 Fill circle . 56
4.4.5.13 Circular arc close . 56
4.4.5.14 Fill ellipse . 56
4.4.5.15 Elliptical arc close . 56
4.4.5.16 Non-uniform B-spline surface . 56
4.4.5.17 Surface trimming . 57
4.4.5.18 Non-uniform B-spline surface with data . 58
................................................................................ 60
4.4.5.19 Cell array
4.4.5.20 Generalized drawing primitive . 61
61
4.5 Output primitive attributes .
61
4.5.1 Types of attributes .
61
4.5.1.1 Main classification .
62
4.5.1.2 Geometric attributes .
62
4.5.1.3 Non-geometric attributes .
64
4.5.1.4 Viewing attributes .
64
4.5.1.5 Identification attributes .
.................................................................. 64
4.5.1.6 Rendering attributes
....................................................................................... 65
4.5.1.7 Colour
4.5.2 General colour specification . 65
4.5.3 Polymarker attributes . 67
4.5.4 Curve attributes . 69
4.5.4.1 Polyline attributes . 69
4.5.4.2 Polyline set attributes . 70
4.5.4.3 Non-uniform B-spline curve attributes . 71
................ .72
4.5.4.4 Non-uniform B-spline curve with colour attributes
72
4.5.5 Text attributes .
72
4.5.5.1 Text primitive attributes .
......................................................... 79
4.5.5.2 Annotation text attributes
.................................................. 80
4.5.5.3 Text extent and concatenation
.................................................................................. 82
4.5.6 Surface attributes
...................................................................... 82
4.5.6.1 Interior attributes
.......................................................................... 84
4.5.6.2 Edge attributes
.85
4.5.6.3 Individual edge control for surface primitives .
. . .
111
---------------------- Page: 3 ----------------------
@ISO/IEC
ISO/IEC 9592=1:1997(E)
............................................................ 85
4.5.6.4 Data mapping attributes
................................................ 86
4.5.6.5 Fill area set with data attributes
....................................... 86
4.5.6.6 Set of fill area set with data attributes
................................................ 86
4.5.6.7 Triangle set with data attributes
.............................................
4.5.6.8 Triangle strip with data attributes 86
....................................
4.5.6.9 Quadrilateral mesh with data attributes 86
................................
4.5.6.10 Non-uniform B-spline surface attributes 86
...............
4.5.6.11 Non-uniform B-spline surface with data attributes -89
............................................................
4.5.6.12 Reflectance properties 89
4.5.6.13 Alpha . 90
.............................................
4.5.7 Generalized drawing primitive attributes 91
...............................................................
4.5.8 Implicitly specified attributes 91
4.5.8.1 General . 91
.............................................................................
4.5.8.2 Facet normal 91
.......................................................................
4.5.8.3 Facet orientation 93
...................................................................
4.5.8.4 Reflectance normal 93
..........................................................................
4.5.8.5 Intrinsic colour 93
4.5.8.6 Intrinsic alpha . 94
................................................................................. 95
4.5.9 Name set attribute
........................................................................................ 96
4.5.10 Highlighting
........................................................................... 96
4.5.11 Minimal simulations
......................................................................... 96
4.5.12 Degenerate primitives
............................................................................................... 96
4.5.13 Stability
................................................................................... 97
4.6 The rendering pipeline
4.6.1 General . 97
4.6.1.1 Primitives affected by the rendering pipeline . 97
4.6.1.2 The effect of the interior style on lighting and shading. . “97
4.6.1.3 Aspects and attributes used in the rendering pipeline . -98
4.6.2 Alpha mapping . 98
4.6.3 Data mapping . 98
4.6.4 Texture mapping . 103
4.6.4.1 General . 103
4.6.4.2 Specification . 104
4.6.4.3 Representation . 104
4.6.4.4 Parameterization . 105
4.6.4.5 Composition . 108
4.6.4.6 Sampling . 112
4.6.4.7 Binding . 113
4.6.4.8 Mapping . 114
4.6.4.9 Mapping controls . 114
4.6.5 Lighting . 115
4.6.5.1 Reflectance calculation . 115
4.6.5.2 Light sources . 116
116
4.6.5.3 Workstation light sources .
............................................................................................... 117
4.6.6 Shading
117
4.6.6.1 General .
4.6.6.2 Interpolation . 117
4.6.6.3 Colour interpolation . 117
4.6.6.4 Data interpolation . 118
4.6.6.5 Normal-vector interpretation . 118
4.6.6.6 Polyline set shading . 118
4.6.6.7 Interior shading . 119
iv
---------------------- Page: 4 ----------------------
OISO/IEC ISO/IEC 9592-l: 1997(E)
4.6.7 The rendering colour model .
123
4.6.8 Depth cueing .
124
4.6.9 Alpha application .
125
4.6.10 Colour mapping .
125
4.7 Workstations .
127
4.7.1 Workstation characteristics
................................................................ 127
4.7.2 Workstation configuration
.................................................................. 128
4.7.3 Workstation selection .
129
4.7.4 Controlling picture changes .
129
4.7.4.1 Introduction . 129
4.7.4.2 Retained picture changes .
130
4.7.4.3 Non-retained picture updating .
136
4.7.4.4 Selective retained picture updating .
136
4.7.5 Device coordinate clip regions .
137
4.7.6 Clearing the display surface .
138
4.7.7 Sending messages to a workstation .
138
4.7.8 Hidden line / hidden surface removal .
138
4.7.9 Image resources .
139
4.7.10 Target manipulation . 140
4.7.11 Traversal resources . 142
4.8 Coordinate systems and transformations . 143
4.8.1 Coordinate system handedness . 143
4.8.2 Modelling transformations and clipping . 143
4.8.3 Modelling utility functions . 145
4.8.4 Viewing . 145
4.8.5 Viewing construction functions . 148
4.8.6 Workstation transformation . 154
4.8.7 Transformation of locator input . 155
4.8.8 Transformation of stroke input . 156
4.8.9 Input utility functions . 157
4.9 Graphical input . 159
4.9.1 Introduction to logical input devices . 159
4.9.2 Logical input device model . 160
4.9.3 Operating modes of logical input devices . 161
4.9.4 Measures of each input class . 162
4.9.5 Input queue and current event report . 165
4.9.6 Initialization of input devices . 165
4.9.7 Locator and stroke input using 2D input . 167
4.9.8 Pick input using directly structured elements . 168
...................................................... 169
4.9.9 Definition of logical input devices
...................................................................... 169
4.9.10 Local input processing
.................................................................................. 169
4.9.10.1 General
4.9.10.2 Local viewing operations . 170
4.9.10.3 Local lighting operations . 174
4.10 PHIGS metafile interface . 177
4.11 PHIGS states . 178
4.12 Inquiry functions . 179
4.13 Error handling . 180
4.14 Special interfaces between PHIGS and application program. . ,182
4.15 Limitations . 182
4.15.1 General . 182
4.15.2 Non-planar geometry and data . 182
---------------------- Page: 5 ----------------------
ISO/IEC 9592-l: 1997(E) OISOIIEC
4.15.3 Relationship of shading method to geometry . 182
4.15.4 Normal-vector interpolation . 183
................................................................ 183
4.15.5 Effects of transformations
4.156 Approximation criteria and data splines . 183
.......................................................................... 184
4.16 Minimum support criteria
4.16.1 Concepts of minimum support . 184
4.16.2 Explicitly defined and required . 184
4.16.3 Explicitly defined and non-required . 184
4.16.4 Conceptually defined and non-required . 185
......................................................................... 186
5 PHIGS Functional Specification
................................................................................ 186
5.1 Notational conventions
5.1.1 Function heading and parameter list . 186
5.1.2 Functions generating structure elements . 186
5.2 Control functions . 188
5.3 Output primitive functions . 202
5.3.1 General . 202
5.3.2 Function definitions . 203
5.4 Attribute specification functions . 216
5.4.1 Bundled attribute selection . 216
5.4.1.1 General . 216
5.4.1.2 Function definitions . 216
5.4.2 Individually selected bundled attributes . 218
5.4.2.1 General . 218
5.4.2.2 Function definitions . 218
5.4.3 Individual attributes . 229
5.4.3.1 General . 229
5.4.3.2 Function definitions . 230
5.4.4 Workstation attribute table definition . 236
5.4.4.1 General . 236
5.4.4.2 Function definitions . 236
5.4.5 Workstation filter definition . 244
5.4.6 Colour model control . 245
5.4.7 HLHSR attributes . 245
5.4.8 Attribute utility functions . 246
5.5 Transformation and clipping functions . 247
5.5.1 Modelling transformations and clipping . 247
5.5.1.1 General . 247
5.5.1.2 Function definitions . 247
5.5.2 View operations . 249
5.5.3 Workstation transformation . 250
............................................... 251 L
5.5.4 Utility functions to support modelling
.................................................................................... 251
5.5.4.1 General
5.5.4.2 Function definitions . 252
.................................................. 255
5.5.5 Utility functions to support viewing
............................................................... 256
5.5.6 View construction functions
.............................................................. 261
5.5.7 Workstation utility functions
.......................................................................... 261
5.6 Structure content functions
................................................................. 272
5.7 Structure manipulation functions
.......................................................................... 274
5.8 Structure display functions
5.9 Structure archiving functions . 278
282
5.10 Input functions .
282
5.10.1 Pick support functions .
vi
---------------------- Page: 6 ----------------------
OISO/IEC
ISO/IEC 9592=1:1997(E)
5.10.2 Local input device definition functions .
285
5.10.2.1 General .
285
5.10.2.2 Function definitions
.............................................................. 286
5.10.3 Initialization of input devices .
291
5.10.3.1 General .
291
5.10.3.2 Function definitions
.............................................................. 292
5.10.4 Setting the mode of input devices .
295
5.10.5 Request input functions .
298
5.10.5.1 General .
298
5.10.5.2 Function definitions .
298
5.10.6 Sample input functions .
301
5.10.6.1 General .
301
5.10.6.2 Function definitions .
301
5.10.7 Event input functions .
303
5.10.7.1 General .
303
5.10.7.2 Function definitions .
304
5.10.8 Local input operation functions .
307
5.10.9 Direct interpretation picking functions .
309
5.10.9.1 General .
309
5.10.9.2 Function definitions .
309
5.11 Metafile functions . 310
5.12 Inquiry functions . 312
5.12.1 Introduction . 312
5.12.2 Inquiry functions for operating state values . 313
5.12.3 Inquiry functions for PHIGS description table .
...
Questions, Comments and Discussion
Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.