1、BRITISH STANDARD BS ISO/IEC 9636-4:1991 Implementation of ISO/IEC9636-4:1991 Information technology Computer graphics Interfacing techniques for dialogues with graphical devices (CGI) Functional specification Part4: Segments UDC 681.3.04(084):681.3.01BSISO/IEC9636-4:1991 This BritishStandard, having
2、 been prepared under the directionof the Information Systems Technology Standards Policy Committee, was publishedunder the authority ofthe Standards Boardand comesinto effect on 15June1992 BSI03-2000 The following BSI references relate to the work on this standard: Committee reference IST/31 Draft f
3、or comment 90/62657 DC ISBN 0 580 20738 2 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: De
4、partment 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-4:1991 BSI 03-2000 i Contents Page Committees responsible Inside front cover Nat
5、ional foreword ii Foreword iv Text of ISO/IEC9636-4 1BSISO/IEC9636-4:1991 ii BSI 03-2000 National foreword This BritishStandard reproduces verbatim ISO/IEC9636-4:1991 and implements it as the UK national standard. This BritishStandard is published under the direction of the Information Systems Techn
6、ology 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 internationa
7、l and 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 con
8、tract. 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, pagesii t
9、oiv, pages1 to35 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-4:1991(E) ii BSI 03-2000 Contents Page Foreword iv Introduction 1 1 Scope 1 2 Normative
10、 references 1 3 Concepts 1 3.1 Introduction 1 3.1.1 Relationship of CGI segments to the graphic output pipeline 2 3.2 Creating segments 2 3.2.1 Segment identifiers 2 3.2.2 Creating and closing segments 2 3.2.3 Non-retained data 3 3.2.4 Segment storage overflow 3 3.3 Segment attributes 3 3.3.1 Introd
11、uction 3 3.3.2 Segment highlighting 3 3.3.3 Segment visibility 3 3.3.4 Segment detectability 3 3.3.5 Segment display priority 4 3.3.6 Segment pick priority 4 3.3.7 Segment transformation 4 3.4 Segment display 5 3.4.1 Introduction 5 3.4.2 Segment regeneration 5 3.4.3 Quick update methods 7 3.4.4 Expl
12、icit segment display 7 3.5 Copy segment and the inheritance filter 7 3.6 Delete and rename segments 8 3.7 Inquiry 8 3.8 Picking 9 3.9 State restrictions 9 4 Interactions with other parts of ISO/IEC9636 10 4.1 Interactions with ISO/IEC9636-2 10 4.1.1 INITIALIZE and TERMINATE 10 4.2 Interactions with
13、ISO/IEC9636-5 10 4.3 Interactions with ISO/IEC9636-6 10 5 Abstract specification of functions 10 5.1 Introduction 10 5.1.1 Data types employed 10 5.1.2 Validity of returned information 10 5.2 Segment manipulation functions 10 5.2.1 GET NEW SEGMENT IDENTIFIER 10 5.2.2 CREATE SEGMENT 11 5.2.3 REOPEN S
14、EGMENT 11 5.2.4 CLOSE SEGMENT 12 5.2.5 COPY SEGMENT 12 5.2.6 DELETE SEGMENT 13 5.2.7 DELETE ALL SEGMENTS 14 5.2.8 RENAME SEGMENT 14 5.2.9 DRAW ALL SEGMENTS 14 5.2.10 IMPLICIT SEGMENT REGENERATION MODE 15ISO/IEC9636-4:1991(E) BSI 03-2000 iii Page 5.2.11 RESET REGENERATION PENDING 15 5.2.12 PICK IDENT
15、IFIER 15 5.3 Segment attribute functions 15 5.3.1 SEGMENT VISIBILITY 15 5.3.2 SEGMENT TRANSFORMATION 16 5.3.3 SEGMENT HIGHLIGHTING 16 5.3.4 SEGMENT DISPLAY PRIORITY 16 5.3.5 SEGMENT DETECTABILITY 17 5.3.6 SEGMENT PICK PRIORITY 17 5.4 Miscellaneous segment functions 17 5.4.1 SIMULATE PICK 17 5.4.2 IN
16、HERITANCE FILTER 18 5.4.3 CLIPPING INHERITANCE 20 6 Segment inquiry functions 20 6.1 Introduction 20 6.1.1 Data types employed 20 6.1.2 Validity of returned information 21 6.2 Segment description table 21 6.2.1 INQUIRE SEGMENT CAPABILITY 21 6.3 Segment state list 21 6.3.1 INQUIRE SEGMENT STATE 21 6.
17、3.2 INQUIRE LIST OF INHERITANCE FILTER SETTINGS 21 6.3.3 INQUIRE CLIPPING INHERITANCE 22 6.3.4 INQUIRE LIST OF SEGMENT IDENTIFIERS IN USE 22 6.4 Individual segment state list 22 6.4.1 INQUIRE INDIVIDUAL SEGMENT STATE 22 7 CGI description tables and state lists 22 7.1 Description tables 23 7.2 State
18、lists 23 7.2.1 Segment state list 23 7.2.2 Individual segment state list 23 Annex A (normative) Formal grammar of the functional specification 25 Annex B (normative) Segment errors 33 Annex C (informative) Guidelines to implementors 34 Annex D (informative) Examples of COPY SEGMENT 34 Figure 1 Segme
19、nt Open state transitions 2 Table 1 State list information which may affect the appearance of the picture 5 Table 2 Segment Open State function restrictions 9 Table 3 Inheritance Filter Selection Names for Aspect Source Flags 19 Table 4 Inheritance Filter Selection Names for Attributes 19 Table 5 Se
20、gment Description Table 23 Table 6 Segment State List 23 Table 7 Individual Segment State List 24 Descriptors: Information processing, information interchange, graphic data processing, data handling, data transfer, interfaces, computer interfaces, specifications.ISO/IEC9636-4:1991(E) iv BSI 03-2000
21、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 International Standards through technic
22、al 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
23、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 International Standard requires approval
24、 by at least75% of the national bodies casting a vote. International Standard ISO/IEC9636-4 was prepared by Joint Technical Committee ISO/IEC JTC1, Information technology. ISO/IEC9636 consists of the following parts, under the general title Information technology Computer graphics Interfacing techni
25、ques for dialogues with graphical devices (CGI) Functional specification: Part1: Overview, profiles, and conformance; Part2: Control; Part3: Output; Part4: Segments; Part5: Input and echoing; Part6: Raster. Annex A and Annex B form an integral part of this part of ISO/IEC9636. Annex C and Annex D ar
26、e for information only.ISO/IEC9636-4:1991(E) BSI 03-2000 1 Introduction This part of ISO/IEC9636 describes the functions of the Computer Graphics Interface concerned with segment storage. The functionality incorporated in this part of ISO/IEC9636 is concerned with creating, modifying, and manipulati
27、ng graphic pictures using segments. The functionality described in this part of ISO/IEC9636 pertains to Virtual Devices of class OUTPUT and OUTIN. 1 Scope This part of ISO/IEC9636 defines those functions of the Computer Graphics Interface concerned with the creation, modification, and manipulation o
28、f graphic pictures using segments. This part of ISO/IEC9636 is part4 of ISO/IEC9636, and should be read in conjunction with ISO/IEC9636-1, ISO/IEC9636-2, and ISO/IEC9636-3. The relationship of this part of ISO/IEC9636 to the other parts of ISO/IEC9636 is described in ISO/IEC9636-1 and in clause4. Th
29、e functionality described in this part of ISO/IEC9636 pertains to Virtual Devices of class OUTPUT and OUTIN. 2 Normative references The following standards contain provisions which, through reference in this text, constitute provisions of this part of ISO/IEC9636. At the time of publication, the edi
30、tions indicated were valid. All standards are subject to revision, and parties to agreements based on this part of ISO/IEC9636 are encouraged to investigate the possibility of applying the most recent editions of the standards listed below. Members of IEC and ISO maintain registers of currently vali
31、d International Standards. ISO7942:1985, Information processing systems Computer graphics Graphical Kernel System (GKS) functional description. ISO/IEC9636-1:1991, Information technology Computer graphics Interfacing techniques for dialogues with graphical devices (CGI) Functional specification Part
32、1: Overview, profiles, and conformance. ISO/IEC9636-2:1991, Information technology Computer graphics Interfacing techniques for dialogues with graphical devices (CGI) Functional specification Part2: Control. ISO/IEC9636-3:1991, Information technology Computer graphics Interfacing techniques for dial
33、ogues with graphical devices (CGI) Functional specification Part3: Output. ISO/IEC9636-5:1991, Information technology Computer graphics Interfacing techniques for dialogues with graphical devices (CGI) Functional specification Part5: Input and echoing. ISO/IEC9636-6:1991, Information technology Comp
34、uter graphics Interfacing techniques for dialogues with graphical devices (CGI) Functional specification Part6: Raster. ISO/IEC9637-1:, Information technology Computer graphics Interfacing techniques for dialogues with graphical devices (CGI) Data stream binding Part1: Character encoding 1) . ISO/IE
35、C9637-2:, Information technology Computer graphics Interfacing techniques for dialogues with graphical devices (CGI) Data stream binding Part2: Binary encoding 1) . 3 Concepts 3.1 Introduction This part of ISO/IEC9636 specifies how graphic objects may be grouped in segments and be identified by a un
36、ique segment identifier. The graphic objects stored in segments are composed of graphic primitives with associated attribute values. This part of ISO/IEC9636 defines a set of functions for creating, modifying, and manipulating segments. This functionality is divided into the following areas: Segment
37、 manipulation functions, including segment creation, deletion, renaming, and copying. Graphic objects may also be appended to the end of an existing segment. Graphic objects within a segment, however, cannot be modified or deleted. 1) To be published.ISO/IEC9636-4:1991(E) 2 BSI 03-2000 Segment attri
38、bute functions, including modification of segment attributes (e.g.transformation, visibility). Some segment attributes affect the rendered appearance of segments and can be a basis for feedback during graphic picture manipulation. Other attributes affect how input concepts and segments are associate
39、d in support of pick input. Segment inquiry functions, by which access is provided to the information in the description tables and state lists concerned with segments. 3.1.1 Relationship of CGI segments to the graphic output pipeline The overview of the CGI Graphic Object Pipeline presented in ISO/
40、IEC9636-1, clause5, describes the relationship between segments and the pipeline. Additional details are described in this part of ISO/IEC9636 in connection with the particular functional areas that are affected. 3.2 Creating segments 3.2.1 Segment identifiers Each segment has a unique segment ident
41、ifier associated with it. The client can refer to a specific segment by using its associated segment identifier. Once a segment is deleted, the identifier that was associated with it may be reused for another segment definition. The segment identifier associated with a segment may be changed with th
42、e RENAME SEGMENT function. The Maximum Number of Simultaneously Existing Segments entry in the Segment Description Table indicates the number of segments which may coexist at one time (this number is implementation-dependent). The List of Segment Identifiers in use may be inquired from the Segment S
43、tate List. The client provides a segment identifier as a parameter to the CREATE SEGMENT function used to create a new segment. For cases in which the client does not wish to keep a record of which identifiers are available, the function GET NEW SEGMENT IDENTIFIER is provided. This function will ret
44、urn an available segment identifier. A segment identifier is a parameter of most of the functions defined in this part of ISO/IEC9636. 3.2.2 Creating and closing segments Segments are created when the CREATE SEGMENT function is invoked. This is the only means of creating a segment. A segment is open
45、ed by CREATE SEGMENT and the Segment Open State entry in the Segment State List is set to YES. There can be at most one segment open at any one time. While a segment is open, graphic objects passed along the Graphic Object Pipeline are stored in the segment (a process termed segment definition) and
46、rendered on the drawing surface if the segments Visibility attribute is VISIBLE. The open segment is closed by invoking the function CLOSE SEGMENT and the Segment Open State entry in the Segment State List is set to NO (see Figure 1). An existing segment may be reopened at a later time with the REOP
47、EN SEGMENT function. When reopened, subsequent graphic objects are appended to the open segment using the same conceptual mechanism as when the segment was created. A reopened segment is closed by invoking the function CLOSE SEGMENT. NOTEDELETE SEGMENT will change the state from YES or OVERFLOW to N
48、O only if the currently open segment is deleted. Figure 1 Segment Open state transitionsISO/IEC9636-4:1991(E) BSI 03-2000 3 Note that objects stored in segments have associated with them all applicable individual attribute values independent of the value of the corresponding ASF value. Thus by chang
49、ing the ASF (by means of INHERITANCE FILTER, see3.5), it is still possible to display the object with the individual attribute value associated on creation even when the corresponding ASF value was initially BUNDLED. 3.2.3 Non-retained data Any graphic object passing along the pipeline when there is no segment open is termed non-retained data. Such graphic objects are rendered onto the drawing surface in the usual manner as described in ISO/IEC9636-3. However, non-retained data is never rendered