1、BRITISH STANDARD BS ISO/IEC 9636-1:1991 Implementation of ISO/IEC9636-1:1991 Information technology Computer graphics Interfacing techniques for dialogues with graphical devices (CGI) Functional specification Part 1: Overview, profiles, and conformanceBSISO/IEC9636-1:1991 This BritishStandard, havin
2、g been prepared under the directionof the Information Systems Technology StandardsPolicy Committee, waspublishedunder the authorityofthe Standards Boardand comesinto effect on 15June1992 BSI03-2000 The following BSI references relate to the work on this standard: Committee reference IST/31 Draft for
3、 comment90/62654DC ISBN 0 580 20735 8 Committees responsible for this BritishStandard The preparation of this BritishStandard was entrusted by the Information Systems Technology Standards Policy Committee (IST/-) to Technical Committee IST/31, upon which the following bodies were represented: Depart
4、ment of Trade and Industry (IT Standards Unit) Information Systems Committee of the Universities Funding Council Rutherford Appleton Laboratory Amendments issued since publication Amd. No. Date CommentsBSISO/IEC9636-1:1991 BSI 03-2000 i Contents Page Committees responsible Inside front cover Nationa
5、l foreword ii Foreword iv Text of ISO/IEC9636-1 1BSISO/IEC9636-1:1991 ii BSI 03-2000 National foreword This BritishStandard reproduces verbatim ISO/IEC9636-1:1991 and implements it as the UK national standard. This BritishStandard is published under the direction of the Information Systems Technolog
6、y Standards Policy Committee whose Technical Committee IST/31 has the responsibility to: aid enquirers to understand the text; present to the responsible international committee any enquiries on interpretation, or proposals for change, and keep UK interests informed; monitor related international an
7、d European developments and promulgate them in the UK. NOTEInternational and European Standards, as well as overseas standards, are available from BSI Sales Department, BSI, Linford Wood, Milton Keynes, MK146LE. A British Standard does not purport to include all the necessary provisions of a contrac
8、t. Users of British Standards are responsible for their correct application. Compliance with a British Standard does not of itself confer immunity from legal obligations. Summary of pages This document comprises a front cover, an inside front cover, pagesi andii, theISO/IEC title page, pagesiitoiv,
9、pages1 to82 and a back cover. This standard has been updated (see copyright date) and may have had amendments incorporated. This will be indicated in the amendment table on the inside front cover.ISO/IEC9636-1:1991(E) ii BSI 03-2000 Contents Page Foreword iv Introduction 1 1 Scope 3 1.1 Relationship
10、 of CGI to a computing environment 4 1.2 Position of CGI in a managed environment 4 2 Normative references 4 3 Definitions and abbreviations 5 3.1 Organization of the definitions 5 3.2 Definitions 5 3.3 Abbreviations 22 4 Reference models 23 4.1 Introduction 23 4.2 Model for CGI client/target relati
11、onships 23 4.2.1 CGI configurations diagram 23 4.2.2 Types of clients 25 4.2.3 Types of targets 25 4.3 Example configurations 26 4.3.1 CGI Virtual Devices as GKS workstations 26 4.3.2 CGM interpretation using CGI 26 4.3.3 CGI Virtual Devices as3D workstations 27 4.3.4 Input/output workstations as co
12、mbinations of CGI Virtual Devices 27 4.4 Relationship to other standards 29 4.4.1 Introduction 29 4.4.2 CGI data encodings standards 29 4.4.3 CGI language bindings standards 29 4.4.4 Relation to GKS (ISO7942:1985) 29 4.4.5 Relation to GKS-3D (ISO8805:1989) and PHIGS (ISO/IEC9592:1989) 29 4.4.6 Relat
13、ion to CGM (ISO8632:1987) 30 4.4.7 Relation to Procedures for Registration of Graphical Items (ISO/IEC TR9973:1988) 30 5 Concepts 30 5.1 Introduction 30 5.2 Global CGI concepts 31 5.2.1 CGI Graphic Object Pipeline 31 5.2.2 CGI state model 37 5.2.3 Description tables 37 5.2.4 State lists 37 5.2.5 Sta
14、tic and dynamic state lists 38 5.2.6 The structure of description tables and state lists 38 5.2.7 The principles of inquiry 38 5.2.8 Error philosophy 39 5.2.9 Method of describing functions 41 5.2.10 Data types employed 41 5.2.11 Formal grammar 44 5.3 Overview of ISO/IEC9636-2: Control 44 5.4 Overvi
15、ew of ISO/IEC9636-3: Output 44 5.5 Overview of ISO/IEC9636-4: Segments 45 5.6 Overview of ISO/IEC9636-5: Input and echoing 45 5.7 Overview of ISO/IEC9636-6: Raster 45 6 Profiles 45 6.1 Profile definition 46ISO/IEC9636-1:1991(E) BSI 03-2000 iii Page 6.1.1 Constituency Profile registration 47 6.2 Foun
16、dation Profiles 47 6.3 Constituency Profiles 48 6.3.1 GKS Constituency Profiles 48 6.3.2 CGM Constituency Profile 48 6.3.3 Advanced1-Way Output Constituency Profile 48 6.4 Foundation Profile definition 48 6.4.1 2-WAY OUTPUT Foundation Profile 48 6.4.2 1-WAY OUTPUT Foundation Profile 49 6.4.3 INPUT F
17、oundation Profile 49 6.5 GKS Profile definition 50 6.5.1 GKS OUTPUT-0 Profile 50 6.5.2 GKS OUTPUT-1 Profile 53 6.5.3 GKS INPUT-b Profile 56 6.5.4 GKS INPUT-c Profile 57 6.5.5 GKS OUTIN-0b Profile 59 6.5.6 GKS OUTIN-0c Profile 59 6.5.7 GKS OUTIN-1b Profile 59 6.5.8 GKS OUTIN-1c Profile 59 6.6 CGM Pro
18、file definition 59 6.6.1 BASIC CGM Profile 59 6.7 Other Constituency Profile definitions 61 6.7.1 ADVANCED 1-WAY OUTPUT Profile 61 7 Classification and designation 63 7.1 Implementation conformance 63 7.2 Client conformance 63 7.3 Extensions 64 7.4 Inquiry 64 7.5 Parsing 64 Annex A (normative) Funct
19、ion identifiers 65 Annex B (normative) Profile identifiers 73 Annex C (informative) Guidelines for bindings and encodings 73 Annex D (informative) Format guidelines for definition of Constituency Profiles 79 Annex E (informative) CGI in a distributed system model 80 Annex F (informative) Typographic
20、 conventions 82 Figure 1 CGI Client/Target Configurations 24 Figure 2 CGI Virtual Devices as GKS workstations 26 Figure 3 CGM interpretation using CGI 27 Figure 4 CGI Virtual Devices as 3D workstations 28 Figure 5 Implementing input/output workstations as combinations of CGIVirtual Devices 28 Figure
21、 6 CGI Graphic Object Pipeline 32 Figure 7 Additional raster pipeline components 36 Figure 8 Distributed system example 81 Table 1 Parts of the CGI Functional Specification 3 Table 2 GKS Constituency Profiles 48 Table 3 Foundation Profile Identifiers 73 Table 4 Constituency Profile Identifiers 73ISO
22、/IEC9636-1:1991(E) iv BSI 03-2000 Foreword ISO (the International Organization for Standardization) and IEC (theInternational Electrotechnical Commission) form the specialized system for worldwide standardization. National bodies that are members of ISO or IEC participate in the development of Inter
23、national 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
24、 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 JTC1. Draft International Standards adopted by the joint technical committee are circulated to national bodies for voting. Publication as an Intern
25、ational Standard requires approval by at least75% of the national bodies casting a vote. International Standard ISO/IEC9636-1 was prepared by Joint Technical Committee ISO/IEC JTC1, Information technology. ISO/IEC9636 consists of the following parts, under the general title Information technology Co
26、mputer graphics Interfacing techniques for dialogues with graphical devices (CGI) Functional specification: Part 1: Overview, profiles, and conformance; Part 2: Control; Part 3: Output; Part 4: Segments; Part 5: Input and echoing; Part 6: Raster. Annex A and Annex B form an integral part of this par
27、t of ISO/IEC9636. Annex C, Annex D, Annex E and Annex F are for information only.ISO/IEC9636-1:1991(E) BSI 03-2000 1 Introduction Purpose The Computer Graphics Interface (CGI) specifies a standard interface between device-independent and device-dependent parts of a graphics system. ISO/IEC9636 speci
28、fies sets of functions for control and data exchange over this interface. This interface may be implemented as a software-to-software interface (as a data stream encoding used in a network environment or as a procedural binding to one or more software packages), or as a software-to-hardware interfac
29、e (as a data stream encoding to one or more devices presenting a standardized Computer Graphics Interface as their device protocol). Related standards specify data stream encodings (for use in the software-to-software case, over a network, and in the software-to-hardware case), and procedural bindin
30、gs (for use in the software to software case). ISO/IEC9636 includes a reference model and a description of the CGIs relationship to other standards. ISO/IEC9636 only defines graphics functions, graphics control functions, and functions to control data representations and deferral in data stream enco
31、dings. ISO/IEC9636 does not define the protocols to be used to convey these functions between the parts of a (potentially distributed) system. Benefits Design requirements To realize the benefits described above, a number of design principles have been adopted: a) The Computer Graphics Interface sho
32、uld provide a suitable set of functions for the description of a wide range of pictorial information; b) The Computer Graphics Interface should provide a suitable set of functions for the necessary CGI session control of a wide range of graphics devices; c) The Computer Graphics Interface should add
33、ress the more usual and essential features found on graphical devices directly and should provide access to less common facilities; Intrinsic The CGI will simplify the development and implementation of graphics systems. ISO/IEC9636 will encourage a uniform access to the graphics devices within an in
34、stallation. As new devices are made available, graphics device drivers adhering to this interface can be installed for use by existing programs. Interchange ISO/IEC9636 promotes the exchange of software between installations. By isolating the device-dependent aspects of any graphics system, modulari
35、ty is encouraged, which promotes increased portability. The standard set of functions, access mechanisms, and terminology will allow developers and users to move between installations with minimal retraining. Educational The standard set of functions uses a standard terminology. This allows both the
36、 academic and industrial communities to develop instructional programs concentrating on programming techniques and methodologies based on these standard functions. Economic In view of the trend towards lower hardware and higher software costs, the following benefits accrue from ISO/IEC9636: It encou
37、rages transporting of software between installations, thereby reducing costs associated with “reinvention”; It protects the large software investment made by both users and vendors because the software will not be rendered obsolete by the introduction of new devices; It allows developers of new soft
38、ware to focus on higher-level graphics functions and applications instead of device-level functions; It reduces maintenance of software systems because the standard encourages modularity; It increases vendor independence for the user because any system designed to use a particular device can more ea
39、sily be changed to use some other device; It allows vendors to develop and market devices that will easily interface to the customers system; It enables users, manufacturers and vendors to take advantage of new, lower-cost graphics hardware designs. The total systems hardware cost may be reduced bec
40、ause system redesign may not be necessary.ISO/IEC9636-1:1991(E) 2 BSI 03-2000 d) The design of the Computer Graphics Interface should not preclude extension of ISO/IEC9636 at a later stage to cover facilities currently not standardized; e) The Computer Graphics Interface should be usable from GKS (G
41、raphical Kernel System ISO7942). In particular, the CGI should include functional capability to support the various levels of a GKS workstation in an efficient and concise manner, without compromising the ability of the interface to support non-GKS systems in an efficient and concise manner; f) The
42、Computer Graphics Interface should be compatible with the Computer Graphics Metafile ISO8632. In particular, those CGM elements not associated with the file-oriented aspects of the CGM shall have corresponding CGI functions which have identical abstract names and parameterization; g) ISO/IEC9636 sho
43、uld address the needs of different applications that have conflicting requirements for allocation of processing burden between host and device; speed of generation and interpretation of functions; ease of transfer through different transport mechanisms. Design criteria The above requirements were us
44、ed to formulate the following design criteria: a) Completeness In any area of ISO/IEC9636, the functionality specified by ISO/IEC9636 should be complete in itself. b) Conciseness Redundant functions or parameters should be avoided. c) Consistency Contradictory functions should be avoided. d) Extensi
45、bility The ability to add new functions and generality to ISO/IEC9636 should not be precluded. e) Fidelity The results and behaviour of functions should be well defined. f) Implementability A function should be able to be efficiently supported on most host systems and or graphics hardware. g) Orthog
46、onality Independent functions for separate and noninteracting activities should be provided. h) Predictability The recommended or proper use of a standard function should guarantee the results of using that particular function. i) Standard practice Only those functions that reflect existing practice
47、, that are necessary to support existing practice, or that are necessary to support standards being developed concurrently should be standardized. j) Usefulness Functions should be powerful enough to perform useful tasks. k) Well-structured The number of assumptions that functions make about each ot
48、her should be minimized. A function should have a well-defined interface and a simply stated unconditional purpose. Multi-purpose functions and side effects should be avoided.ISO/IEC9636-1:1991(E) BSI 03-2000 3 Parts of the CGI functional specification ISO/IEC9636, the functional specification of th
49、e Computer Graphics Interface, consists of a number of parts presenting portions of the CGI functionality, including an overview in this part of ISO/IEC9636. Table 1 Parts of the CGI Functional Specification This part of ISO/IEC9636 gives a general overview and introduction to the basic concepts and principles of ISO/IEC9636. It includes a reference model, the relationship to other standards, and profiles. In addition, it contains overviews of each of the subsequent parts. This part of ISO/IEC9636 thu