Information technology - Computer graphics - Interfacing techniques for dialogues with graphical devices (CGI) - Functional specification - Part 6: Raster

Describes those functions of the interface concerned with creating, modifying, retrieving, and displaying portions of an image stored as pixel data. Annexes A and B form an integral part of this standard. Annexes C, D, E and F are for information only.

Technologies de l'information — Infographie — Interfaces pour l'infographie — Spécifications fonctionnelles — Partie 6: Raster

General Information

Status
Published
Publication Date
17-Dec-1991
Current Stage
9093 - International Standard confirmed
Start Date
08-Dec-2021
Completion Date
30-Oct-2025

Overview

ISO/IEC 9636-6:1991 - "Information technology - Computer graphics - Interfacing techniques for dialogues with graphical devices (CGI) - Functional specification - Part 6: Raster" defines the raster-specific functions of the Computer Graphics Interface (CGI). It describes how CGI clients create, modify, retrieve and display image portions stored as pixel data (bitmaps), and how raster operations are controlled in a device-independent yet efficient way. Annexes A and B are integral; C–F are informative. The standard applies to Virtual Devices of class OUTPUT and OUTIN with display type RASTER.

Key topics and technical scope

  • Bitmap management
    • Creation and deletion of bitmaps
    • Bitmap identifiers and distinction between displayable and non‑displayable bitmaps
    • Bitmap types: INDEXED, DIRECT, and MIXED
  • Raster control functions
    • Selecting, drawing and displaying bitmaps
    • Setting mapped-bitmap foreground/background colours and transparent colour
    • Control of drawing modes and fill operations
  • Raster operation functions
    • Pixel array read/write (PIXEL ARRAY, GET PIXEL ARRAY, GET PIXEL ARRAY DIMENSIONS)
    • Bitmap manipulation operations (two-operand bitblt, tile three‑operand bitblt, source-destination bitblt)
    • Transparency handling, rendering in full-depth and mapped bitmaps
  • Mapping and clipping
    • VDC-to-device mapping and clipping rules to determine position/size of created bitmaps
  • Inquiry and state
    • Raster description table and raster capability inquiry (e.g., INQUIRE RASTER CAPABILITY)
    • Lists of supported drawing-mode/transparency pairs and state lists for rasters and bitmaps
  • Interoperability
    • Specifies interactions with other parts of ISO/IEC 9636 (Parts 1–5), notably control, output, segments, input

Practical applications

ISO/IEC 9636-6:1991 is useful for:

  • Graphics system and driver implementers who need a standard functional specification for raster operations and bitmap handling
  • Middleware and GUI toolkit developers implementing device‑independent raster APIs
  • Device vendors (displays, printers, framebuffers) ensuring consistent bitmap display and pixel manipulation
  • CAD, visualization and imaging software teams that require predictable raster behaviour across hardware
  • Test engineers and standards compliance teams creating conformance tests and validating raster capabilities

Related standards

  • ISO/IEC 9636-1: Overview, profiles, and conformance
  • ISO/IEC 9636-2: Control
  • ISO/IEC 9636-3: Output
  • ISO/IEC 9636-4: Segments
  • ISO/IEC 9636-5: Input and echoing

Keywords: ISO/IEC 9636-6:1991, CGI, computer graphics, raster, bitmaps, pixel array, bitblt, raster operations, VDC-to-device mapping, displayable bitmap.

Standard

ISO/IEC 9636-6:1991 - Information technology -- Computer graphics -- Interfacing techniques for dialogues with graphical devices (CGI) -- Functional specification

English language
49 pages
sale 15% off
Preview
sale 15% off
Preview

Frequently Asked Questions

ISO/IEC 9636-6:1991 is a standard published by the International Organization for Standardization (ISO). Its full title is "Information technology - Computer graphics - Interfacing techniques for dialogues with graphical devices (CGI) - Functional specification - Part 6: Raster". This standard covers: Describes those functions of the interface concerned with creating, modifying, retrieving, and displaying portions of an image stored as pixel data. Annexes A and B form an integral part of this standard. Annexes C, D, E and F are for information only.

Describes those functions of the interface concerned with creating, modifying, retrieving, and displaying portions of an image stored as pixel data. Annexes A and B form an integral part of this standard. Annexes C, D, E and F are for information only.

ISO/IEC 9636-6:1991 is classified under the following ICS (International Classification for Standards) categories: 35.140 - Computer graphics. The ICS classification helps identify the subject area and facilitates finding related standards.

You can purchase ISO/IEC 9636-6:1991 directly from iTeh Standards. The document is available in PDF format and is delivered instantly after payment. Add the standard to your cart and complete the secure checkout process. iTeh Standards is an authorized distributor of ISO standards.

Standards Content (Sample)


INTERNATIONAL ISOIIEC
STANDARD
First edition
1991-12-15
Information technology - Computer graphics -
Interfacing techniques for dialogues with
graphical devices (CGI) - Functional
specification -
Part 6:
Raster
Technologies de I’information - lnfographie - Interfaces pour
l’infographie - Spkcifica tions font tionnelles -
Partie 6: Raster
pp_-mp_______I_F -___-----_._-______-------- ---a-_ _-_____,-.
BP
-~- ._ _---
--
___- ---
^.--
--
=r --
-. 5=
-
zz
=
=
T 1
= 5
z
5 g
Z
=
=
XL =
- =
Reference number
E
=
x
ZZZ=
ZZZZZ
;@ --- ---
-.- -- ---
ISOA EC 9636-6: 1991 (E)
ISO/IEC 9636-6 : 1991 (E)
Contents Page
Foreword . iv
V
Introduction .
1 scope . 1
2 Normative references . 2
3 Raster concepts . 3
3.1 Introduction . 3
3.2 Architectural concepts . 3
3.2.1 Bitmaps . 3
3.2.2 Displayable bitmaps . 3
3.23 Non-displayable bitmaps . 4
3.2.4 Bitmap identifiers . 5
33 Control of bitmap manipulations . 5
33.1 The drawing bitmap .
33.2 Two-operand bitblts .
333 Tile three-operand bitblt .
33.4 Bitmaps regions used as patterns .
33.5 Drawing modes .
33.6 Transparency .
....................................................... 7
33.7 Raster operation functions with mapped bitmaps
33.8 Rendering in full-depth bitmaps . 7
33.9 Rendering in mapped bitmaps . 7
3.4 Pixel array .
.................................................................................. 8
3.5 The VDC-to-Device Mapping and clipping
................................................ 8
35.1 Determining the position and size of created bitmaps
Clipping . 9
3.5.2
3.6 .
Insuti
4 Interactions with other parts of ISO/IEC 9636 . 11
................................................................................ 11
4.1 heractions with ISO/IEC 9636-2 (Control)
.................................................................................. 11
4.2 Interactions with ISO/IEC 9636-3 (Output)
43 Interactions with ISO/IEC 96364 (Segments) . 11
4.4 Interactions with ISO/IEC 9636-5 (Input) .
5 Abstract specification of functions
.................................................................................................................
5.1 Introduction . 12
Data types employed . 12
5.1.1
5.1.2 Validity of returned information .
5.2 Raster control functions .
............................................................................ 12
5.2.1 GET NEW BITMAP IDENTIFIER
5.2.2 CREATE BITMAP .
5.23 DELETE BITMAP .
5.2.4 DRAWING BITMAP .
5.2.5 DISPLAY BITMAP .
...................................................... 15
5.2.6 MAPPED BITMAP FOREGROUND COLOUR
..................................................... 15
5.2.7 MAPPED BITMAP BACKGROUND COLOUR
TRANSPARENT COLOUR
5.2.8 .
.............................................................................................................. 16
53 Raster attribute functions
.................................................................................................... 16
53.1 DRAWING MODE
............................................................................................................ 17
53.2 FILLBITMAP
5.4 Raster operation functions .
5.4.1 PIXEL ARRAY .
0 ISO/IEC 1991
All rights reserved. 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.
ISO/IEC Copyright Office l Case postale 56 l CH-1211 Geneve 20 l Switzerland
Printed in Switzerland
ii
ISO/IEC 9636-6 : 1991 (E)
................................................................................................. 19
5.4.2 GET PIXEL ARRAY
GET PIXEL ARRAY DIMENSIONS . 20
5.43
.......................................................................... 20
SOURCE DESTINATION BITBLT
5.4.4
........................................................................... 21
TILE THREE OPERAND BITBLT
5.4.5
..................................................................................................................................
6 Raster inquiry functions
................................................................................................................................... 25
Introduction
6.1
Data types employed .
6.1.1
Validity of returned information . 25
6.1.2
................................................................................................................ 25
6.2 Raster description table
INQUIRE RASTER CAPABILITY . 25
6.2.1
INQUIRE LIST OF SUPPORTED DRAWING-MODE/TRANSPARENCY
6.2.2
PAIRS .
INQUIRE LIST OF SUPPORTED DRAWING-MODE-3nRANSPARENCY
6.2.3
PAIRS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
.............................................................................................................................. 26
6.3 Raster state list
...................................................................................... 26
6.3.1 INQUIRE RASTER STATE
INQUIRE LIST OF NON-DISPLAYABLE BITMAP IDENTIFIERS . 26
6.3.2
INQUIRE LIST OF DISPLAYABLE BITMAP IDENTIFIERS . 27
6.3.3
............................................................................................................................ 27
6.4 Bitmap state list
...................................................................................... 27
6.4.1 INQUIRE BITMAP STATE
.......................................................................................................... 28
7 Raster description tables and state lists
Raster description table . 28
7.1
7.2 State lists . 29
7.2.1 Raster state list .
7.2.2 Bitmap state list . 29
Formal grammar of the functional specification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Raster errors
Guidelines for CGI implementors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
List of BOOLEANOP class drawing-mode-3 values
Some raster operation examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Algorithmic explanation of raster operations . . . . . .~.
. . .
ill
ISO/IEC 9636-6 : 1991 (E)
Foreword
IS0 (the International Organization for Standardization) and IEC (the International Electrotechnical Commission) form the
specialized system for worldwide standardization. National bodies that are members of IS0 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. IS0 and IEC technical committees collaborate in fields of mutual interest. Other
international organizations, governmental and non-governmental, in liaison with IS0 and IEC, also take part in the work.
In the field of information technology, IS0 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.
International Standard ISO/IEC 9636-6 was prepared by Joint Technical Committee ISODX J‘K 1, Information
technology.
ISOLEC 9636 consists of the following parts, under the general title Information technology - Computer graphics -
Inteqacing 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
Annexes A and B form an integral part of this part of ISO/IEC 9636. Annexes C, D, E, and F are for information only.

ISO/IEC 9636-6 : 1991 (E)
Introduction
This part of ISO/IEC 9636 describes the functions of the Computer Graphics Interface concerned with raster graphic specific
devices.
.ng, displaying and
The functional capability incorporated in this part of ISO/IEC 9636 is concerned with creating, manipulati
retri .eving information stored as pixel data below the CGI in a device independent, yet efficient manner.
The functionality described in this part of ISO/IEC 9636 pertains to Virtual Devices of class OUTPUT and OUTIN with
display type RASTER.
This page intentionally left blank

INTERNATIONAL STANDARD ISOllEC 9636-6 : 1991(E)
Information technology - Computer graphics -
Interfacing techniques for dialogues with graphical
devices (CGI) - Functional specification -
Part 6:
Raster
1 Scope
This part of ISO/IEC 9636 describes those functions of the Computer Graphics Interface concerned with creating, modifying
retrieving, and displaying portions of an image stored as pixel data. It includes functionality for combining such images.
This part of ISO/IEC 9636 is part 6 of ISO/IEC 9636 and should be read in conjunction with ISO/IEC 9636-1, ISO/IEC 9636-
2, and ISO/IEC 9636-3. The relationship of this part of ISO/IEC 9636 to the other parts of ISO/IEC 9636 is described in
ISO/IEC 9636-l (see ISO/IEC 9636-l) 5.2.1 and figures 6 and 7) and in clause 4.
The functionality described in this part of ISO/lEC 9636 pertains to Virtual Devices of class OUTPUT and OUTIN with
display type RASTER.
ISO/IEC 9636-6 : 1991 (E)
2 Normative references
The following standards contain provisions which, through reference in this text, constitute provisions of this part of
ISOAEC 9636. At the time of publication, the editions indicated were valid. All standards are subject to revision, and parties
to agreements based on this part of ISO/IEC 9636 are encouraged to investigate the possibility of applying the most recent
editions of the standards listed below. Members of IEC and IS0 maintain registers of currently valid International Standards.
ISOAEC 9636-l : 1991 Information technology - Computer graphics - Inter$acing techniques for dialogues with graphical
Functional specification - Part 1: Overview, profiles, and conformance.
devices (CGI) -
ISOIIEC 9636-2 : 199 1 Information technology - Computer graphics - Inteqacing techniques for dialogues with graphical
devices (CGI) - Functional specification -Part 2: Control.
ISO/IEC 9636-3 : 1991 Information technology - Computer graphics - Interfacing techniques for dialogues with graphical
devices (CGI) - Functional specification -Part 3: Output.
Integacing techniques for dialogues with graphical
ISO/IEC 9636-4 : 1991 Information technology - Computer graphics -
devices (CGI) - Functional specification -Part 4: Segments.
Interfacing techniques for dialogues with graphical
ISOAEC 9636-5 : 1991 Information technology - Computer graphics -
devices (CGI) - Functional specification -Part 5: Input and echoing.
-I) Information technology - Computer graphics - Interfacing techniques for dialogues with graphical
ISOLIEC 9637-l :
devices (CGI) -Data stream binding - Part 1: Character encoding.
-I) Information technology - Computer graphics - Interfacing techniques for dialogues with graphical
ISO/IEC 9637-2 :
devices (CG) - Data stream binding - Part 2: Binary encoding.
Procedures for registration of graphical items.
ISO/IEC TR 9973 : 1988 Information processing -
l)
To be published.
ISO/IEC 9636-6 : 1991 (E)
Raster concepts
3.1 Introduction
This part of ISO/IEC 9636 defines a set of functions for creating, modifying, retrieving, and displaying information stored as
pixel data below the CGI. This functionality is divided into the following areas
-
including functions for the creation and deletion of bitmaps, and the selection of drawing
Raster control functions,
mapped bitmap expansion.
and display bitmaps, and the control of raster transparency and
-
Raster attribute functions, for setting particular attributes which have significance with other graphical output,
defined in ISO/IEC 9636-3 and this part of ISO/IEC 9636, when used in conjunction with raster functionality.
-
Raster operation functions, including display and retrieval of pixel array data, and various forms of bitmap
manipulation operations (bitblts) including movement, combination, and replication of bitmap regions.
-
Raster inquiry functions, which provide access to the description tables and state lists defined in this part of
ISO/IEC 9636.
3.2 Architectural concepts
3.2.1 Bitmaps
A bitmap is a region of computer memory that can be treated as if it were a rectangular array of pixels. Bitmaps are created
and maintained below the CGI, and their internal format is hidden from the CGI client. Bitmaps never share common memory.
Functions are provided to allow a CGI client to create and manage bitmaps.
Bitmaps may be INDEXED, DIRECT, and MIXED, as specified by the Array of Supported Bitmap Mode Combinations entry
in the Raster Description Table, indicating the type of colour values that may be contained in a bitmap. When MIXED, both
indexed and direct colour values may exist simultaneously in a bitmap.
Displayable bitmaps
3.2.2
Displayable bitmaps are special bitmaps that can be displayed on the display surface. The client can select which displayable
bitmap is to be displayed on the display surface and a different displayable bitmap may be selected by the client at any time.
There are from 1 to N predefined displayable bitmaps, where N is defined in the Raster Description Table. Predefined
displayable bitmaps are all created to be the same size as the display surface and may not be deleted. Additional displayable
bitmaps may be created at any arbitrary rectangular size by the client. Client created bitmaps may be deleted.
In some environments the displayed bitmap is subject to spontaneous change in dimensions; for example, in window-managed
environments. Whether or not such spontaneous change in the displayable bitmap dimensions is allowed is indicated by an
entry in the Output Device Description Table defined in ISO/IEC 9636-2. If such spontaneous change in dimensions is
allowed, the device coordinate information in the Bitmap State List for the currently displayed bitmap will be modified to
reflect the change. Thus, to detect such a spontaneous change, periodic polling by the client of this information is necessary.
Alternatively, the CGI client may receive asynchronous notification of a change of dimensions by the environment via a non-
CGI interface.
When the currently selected display bitmap does not completely cover the display surface, the CGI allows latitude about
whether the contents of previous displayable bitmaps are visible in those regions of the display surface not covered by the
currently selected display bitmap. The Previous Display Bitmap Data entry in the Raster Description Table specifies the
implemented behaviour, which may be either CLEARED or PRESERVED. A value of PRESERVED indicates that it is
possible for the display surface to be dirty even though the drawing surface is clear. If the contents of a previous displayable
bitmap are visible and the bitmap is selected as the current drawing bitmap, it is implementation-dependent whether changes to
the bitmap are visible.
ISO/IEC 9636-6 : 1991 (E)
Architectural concepts
Raster concepts
3.2.3 Non-displayable bitmaps
These bitmaps cannot be displayed directly, but the information within a non-displayable bitmap may be moved to or combined
with a displayable bitmap.
Pixels in a non-displayable bitmap are treated as if their aspect ratio is the same as that of pixels in a displayable bitmap for the
device.
Non-displayable bitmaps may be one of two types: FULL DEPTH or MAPPED, as illustrated in figure 1.
FULL DEPTH BITMAPS
-
-
DISPLAYABLE NON-DISPLAYABLE
-
-
Always client-defined
Full depth by definition.
and can be of arbitrary
Either client-defined or
rectangular size
.
predefined and may be
of arbitrary rectangular
size.
MAPPED BITMAPS
Always non-displayable and can be of arbitrary rectangular size. The pixels of a
mapped bitmap are one bit deep. They may be either foreground or background values.
These abstract values are mapped to actual colours of the client’s choice when the
mapped bitmap is involved in an operation.
Background pixels are
Pixels having Mapped
mapped to Mapped Bitmap
Bitmap Background
Background Colour
Colour are mapped to
background value
MAPPED
BITMAP
Foreground pixels are
All other pixels are
mapped to Mapped Bitmap
mapped to foreground
Foreground Colour
value
Figure 1 - Types of bitmaps
The pixels of full-depth bitmaps have the same number of bits per pixel as displayable bitmaps. Thus, a full-depth bitmap has the
same colour capabilities as the physical device, and maintains the pixel values as CI or CD colour specifiers in the same manner
as displayable bitmaps.
The pixels of a mapped bitmap can assume only the two abstract valuesforeground or background, which are mapped to actual
colours of the client’s choice when the bitmap is involved in an operation. Mapped bitmaps are thus convenient for such purposes
as storing bitmap character fonts.
ISO/IEC 963616 : 1991 (E)
Raster concepts
Architectural concepts
The effect of PREPARE DRAWING SURFACE on a mapped bitmap is to set all pixels of the mapped bitmap to the
background value.
3.2.4 Bitmap identifiers
Bitmaps are referenced through an identifier. The first N consecutive identifiers identify the N predefined displayable bitmaps.
The value of N is contained in the Raster Description Table and is an invariant resource of the CGI Virtual Device. The list of
predefined displayable bitmap identifiers is given by the default value of the List Of Bitmap Identifiers entry (for displayable
bitmaps) in the Raster State List.
The client can define its own identifiers for bitmaps it creates or it may have identifiers defined for it by using the function
GET NEW BITMAP IDENTIFIER. The identifier is passed as an input parameter to the CREATE BITMAP function which
then creates a bitmap with the given identifier.
3.3 Control of bitmap manipulations
3.3.1 The drawing bitmap
The client can select which bitmap is affected by drawing operations. This is referred to as the drawing bitmap. Any bitmap
may be selected as the drawing bitmap regardless of its depth type or displayability: FULL DEPTH or MAPPED, NON
DISPLAYABLE or DISPLAYABLE. It is the currently selected drawing bitmap, not the current display bitmap, that is
affected by functions such as PREPARE DRAWING SURFACE, VDC EXTENT, DEVICE VIEWPORT, POLYLINE,
DRAW ALL SEGMENTS. The client should select explicitly the current displayed bitmap as the drawing bitmap if such
functions are to apply to the displayed bitmap.
3.3.2 Two-operand bitblts
A two-operand bitblt function is provided to support operations that move and combine the contents of rectangular regions of
bitmaps in memory. The regions of interest are specified using points in VDC. The actual movement of data takes place
without regard to the VDC coordinate systems (see figure 2). If the destination for these operations is also the currently
selected display bitmap then these operations may affect the displayed picture. The two-operand bitblt function combines the
source and destination pixels according to the bitmap type and drawing modes in tables 1 and 2. The particular drawing mode
used is specified as one of the parameters of the two-operand bitblt function.

ISO/IEC 9636-6 : 1991 (E)
Raster concepts Control of bitmap manipulations
y extent
source
Origin
x extent (VDC)
wDc~ Uh”“I
:
:
;
\-
I :
,:
:
# /
x extent (VDC)
destination
u
y extent
origin
ABC /
(VW
J I
I I
(1~98~)
www
VDC
VDC
Note, the actual transfer of pixels between source and destination regions is performed without
regard to the coordinate system. The upper left source pixel shall always be moved to the upper
left destination pixel and is independent of the two different VDC systems of the bitmaps.
Figure 2 - Bitblt regions
3.3.3 Tile three-operand bitblt
Tile three-operand bitblts support the combination of two sources and a destination for the data movement. One of the sources
may be used as a replicating tile and is referred to as the pattern. The drawing mode-3 operation used is specified as one of the
parameters of the tile three-operand bitblt function, (refer to 5.4.5 and annex D). Annex E.3 illustrates the use of a tile three-
operand bitblt in tiling a filled area (the letter P) in the destination bitmap corresponding to the filled area given by the source
bitmap.
3.3.4 Bitmaps regions used as patterns
In addition to using bitmap regions as tiles for a tile three-operand bitblt, they may also be used to provide the pattern data for fill
objects defined in ISO/IEC 9636-3. Figure 3 illustrates the use of a bitmap region as a pattern for filling.

t,
t,
tr
u
a
LO
=I
UQ
ISO/IEC 9636-6 : 1991 (E)
Raster concepts Control of bitmap manipulations
3.3.7 Raster operation functions with mapped bitmaps
In performing a raster operation function which involves a combining operation over pixel values from one or more mapped
bitmaps, then, prior to the pixel combining operation, pixels in mapped bitmaps which have “foreground value” are expanded
to the value of Mapped Bitmap Foreground Colour in the Raster State List and those which have “background value” are
expanded to the value of Mapped Bitmap Background Colour in the Raster State List. Such expansion also occurs whenever
the destination bitmap is full-depth, even when there is no effective combining operation (e.g. d’ c- s).
In performing a raster operation function in which the destination bitmap is a mapped bitmap, then, after any pixel combining
operations, destination pixels are set to “background value” whenever the result of the combining operation was a pixel with
value equal to that of Mapped Bitmap Background Colour and to “foreground value” otherwise.
3.3.8 Rendering in full-depth bitmaps
The associated DRAWING MODE attribute value of a graphic object affects the way that object is rendered in the drawing
bitmap. For each pixel affected in rendering an object, the drawing colour may either be the colour attribute value associated
with the object (or edge) or the AUXILIARY COLOUR attribute value (if the associated TRANSPARENCY attribute is
OPAQUE). The drawing colour is combined with the destination pixel in accordance with the associated DRAWING MODE
attribute value and the result replaces the former value of the destination pixel. The Transparent Colour entry in the Raster
State List has no affect on this rendering operation.
Rendering in mapped bitmaps
3.3.9
The rendering of an object in the drawing bitmap when that bitmap is a mapped bitmap, is affected by the Mapped Bitmap
Background Colour and Mapped Bitmap Foreground Colour in the Raster State List. Conceptually, an affected destination
pixel is expanded to a full-depth value according to whether it is foreground or background. It is then combined with the
drawing colour (determined by the object’s colour and transparency attributes) in accordance with the associated DRAWING
MODE attribute value. If the result is equal to the value of Mapped Bitmap Background Colour then the affected destination
pixel is set to the “background value”, otherwise it is set to the “foreground value”.
3.4 Pixel array
The PIXEL ARRAY function is related to the Bitblt’s described above, in that it is not considered to create a graphic object
and is treated in a manner similar to a Bitblt where the source array is provided by the client and the destination is the drawing
bitmap. The colour information in the pixel array maps directly to the pixels of the destination bitmap. Thus the starting point
and colour information are specified in a device-independent fashion, but the appearance of the final image depends directly
on the resolution and aspect ratio of the target device. An MxN array of device-independent colour specifiers are assigned to
an MxN array of pixels (assuming the x and y scale parameters are both 1). The differences between CELL ARRAY, PIXEL
ARRAY, and Bitblt are illustrated in figure 4.
ISO/IEC 9636-6 : 1991 (E)
Pixel array Raster concepts
CELL ARRAY
All pixels lying underneath a cell receive the colour of that
ce11
PIXEL ARRAY
An MXN array of colour specifiers is combined with MXN array of
pixels (x scale = y scale = 1) in accordance with a raster operation
specified as a drawing mode parameter
xxxxxxxx
xxxxxxxx
xxxxxxxx
xxxxxxxx
BITBLT
The physical pixel information within a rectangular region of a bitmap
is transferred to another location
Figure 4 - A comparison of CELL ARRAY, PIXEL ARRAY, and Bitblt
The GET PIXEL ARRAY function returns a rectangular array of colour values from the identified source bitmap to the client.
3.5 The VDC-to-Device Mapping and clipping
3.5.1 Determining the position and size of created bitmaps
The position on the display surface and size, in pixels, of the bitmap to be created are derived from the VDC coordinates of the
bitmap extent (specified as a parameter of the function CREATE BITMAP) transformed by the VDC-to-Device Mapping of the
current drawing bitmap (see figure 5). In essence, the size, in pixels, is determined by passing the comer points of the bitmap
extent through the VDC-to-Device Mapping. The x and y displacements from the first DC point to the second give the
dimensions in pixels of the bitmap that the client desires to have created.
While the bitmap dimensions of an existing bitmap cannot be modified by the client, the client may modify the VDC-to-Device
Mapping for the bitmap by selecting the bitmap as the drawing bitmap and then invoking the functions VDC EXTENT and
DEVICE VIEWPORT (see ISO/IEC 9636-2).
Once created, the VDC-to-Device Mappings of different bitmaps are completely independent. The client might use the VDC
EXTENT function to specify several different bitmaps with the same VDC Extents (even if the dimensions in pixels of the
bitmaps were different) or might specify different VDC Extents for bitmaps having the same bitmap dimensions.

ISO/IEC 9636-6 : 1991 (E)
Raster concepts
The VDC-to-Device Mapping and clipping
current Drawing Bitmap State List:
Bottom Left Pixel
(1, 101)
Top Right Pixel (200,150)
VDC Extent
(L500), (200,1>
Requested Device Viewport
(1, lOl), (200, 150)
Effective Viewport
(1, lOl), (200, 150)
Current Drawing Bitmap
,(200,1) VDC
,
\
N
~
-
CI
VDC-
(1,5W
CREATE BITMAP with bitmap extent specified as (501,501) to
(600,600) would lead to:
Created Bitmap state List:
Bottom Left Pixel
(501, 100)
Top Right Pixel (600,91)
VDC Extent (501, Sol), (600,600)
Requested Device Viewport (501, lOO), (600,91)
Effective Viewport
(501, lOO), (600,91)
Created Bitmap
_(600,600) VDC
-N
--.
.
N
A
(600,91) DC
Effective
(501,501) VDC - - - - - -
Viewpor t
(501,100) DC
NOTE - The boundary pixels are included as part of the definition of the bitmap. This
results in a size in x of (600 - 500 + 1) = 100 pixels, and a size in y of (100 - 91 + 1) =
10 pixels.
Figure 5 - Creating bitmaps
3.5.2 Clipping
A CGI implementation supporting raster functionality renders into the currently selected drawing bitmap. Graphic objects
are clipped as described in ISO/IEC 9636-2 and ISO/IEC 9636-3 using the Drawing Surface Clipping entries in the Control
State List and the clip attributes associated with each object. However, when utilizing the functionality defined in this part
of ISO/IEC 9636, the inquiry functions defined in ISO/IEC 9636-2 that return the Drawing Surface Clip Rectangle and Drawing
Surface Clip Indicator will return this information from the state list of the currently selected drawing bitmap. Each bitmap,
ISO/IEC 9636-6 : 1991 (E)
Raster concepts
The VDC-to-Device Mapping and clipping
whether predefined by the implementation or client-defined, has its own Drawing Surface Clip Rectangle and Drawing
Surface Clip Indicator as described in 4.1. When a bitmap is selected as the current drawing bitmap (using the function
DRAWING BITMAP) the Drawing Surface Clip entries in the Control State List are effectively the same as those entries in
the state list of the currently selected drawing bitmap. Additionally, where the description of a clipping function defined in
ISO/IEC 9636-2 refers to “the limits of the device’s drawing surface” or “the physical device limits”, these terms should be
interpreted as being equivalent to the drawing bitmap’s dimensions in pixels.
The raster operation functions, PIXEL ARRAY, SOURCE DESTINATION BITBLT, and TILE THREE OPERAND
BITBLT, are not treated as graphic objects, and as such, object clipping is not applied. The drawing surface clipping is applied
if the Drawing Surface Clip Indicator is on (i.e. either DSCRECT or VIEWPORT). This clip only applies when modifying the
destination bitmap; it does not apply to either the source or pattern bitmap regions. The effective drawing surface clip
rectangle includes the intersection with the destination region.
A conforming CGI raster implementation is permitted to produce device-dependent effects when drawing outside of the
dimensions, in pixels, of the drawing bitmap if clipping has not been requested. If portions of the source or pattern bitmap
regions lie outside of the bitmap it is permitted to produce device-dependent effects; the preferred behaviour is that the source
and pattern bitmap regions which extend outside the bitmap be truncated to that portion which does lie in the bitmap. Should
the pattern bitmap region be truncated then the truncated portion is replicated as the tile. If the source bitmap region is
truncated then only an area the size of the source bitmap region is affected in the destination bitmap. The implemented
behaviour is indicated by the Source Bitmap Truncation Capability entry in the Raster Description Table.
If a bitmap exceeds the limits of the display surface, that part of the bitmap outside of the display surface is not drawn , which
is equivalent to clipping the contents of the bitmap to the limits of the display surface.
3.6 Inquiry
Raster inquiry functions, as defined in clause 6, provide the client with the means to access the information in the Raster
Description Table, and Raster and Bitmap State Lists. These description tables and state lists provide information about the
current state and capabilities of the CGI Virtual Device.
ISO/IEC 9636-6 : 1991 (E)
I
Interactions with other parts of ISO/IEC 9636
This clause discusses the interactions of the functions and features defined in this part of ISO/IEC 9636 with the other parts of
ISO/IEC 9636.
4.1 Interactions with ISO/IEC 9636-2 (Control)
The INITIALIZE function sets all state list entries to their default values and all dynamically created entities are deleted. It is
recommended that, when possible, the content of the drawing surface is not affected by the INITIALIZE function.
There are no state restrictions on the use of INITIALIZE or TERMINATE, i.e. INITIALIZE and TERMINATE may be used
at any time (see ISO/IEC 9636-2,5.2.1).
All functions in ISO/IEC 9636-2 that address the drawing surface (for example, EXECUTE DEFERRED ACTIONS,
PREPARE DRAWING SURFACE, END PAGE, VDC EXTENT, etc.) only affect the current drawing bitmap. If the drawing
bitmap is a mapped bitmap then PREPARE DRAWING SURFACE will set all pixels of the drawing bitmap to the
“background value”.
For a CGI implementation which supports the functionality defined in this part of ISO/IEC 9636, the VDC-to-Device Mapping
entries of the current drawing bitmap determine the VDC-to-Device Mapping. The corresponding values of the Control State
List defined in ISO/IEC 9636-2 in such implementations are actually the corresponding entries in the current Drawing
Bitmap’s Bitmap State List. Inquiry of the Control State List defined in ISO/IEC 9636-2 shall therefore always return values
for VDC-to-Device Mapping and Drawing Surface Clip entries from the current drawing bitmap’s Bitmap State List.
When a function defined in ISO/IEC 9636-2 that affects these values is invoked, it is the Bitmap State List or the current
drawing bitmap which is updated. If another drawing bitmap is selected, the values previously set in its Bitmap State List will
come into use in determining the VDC-to-Device Mapping and Drawing Surface Clip for subsequent output into the bitmap.
Where a description of a clipping function defined in ISO/IEC 9636-2 refers to “the limits of the device’s drawing surface” or
“the physical device limits”, then these terms should be interpreted as being equivalent to the drawing bitmap’s dimensions in
pixels.
4.2 Interactions with ISO/IEC 9636-3 (Output)
All functions in ISO/IEC 9636-3 that address the drawing surface (for example, POLYLINE, RECTANGLE, CIRCLE, TEXT,
CELL ARRAY, etc.) only affect the current drawing bitmap.
Deleting a bitmap that is used in conjunction with fill interior style BITMAP by fill objects defined in ISO/IEC 9636-3 will
result in these objects using the default fill bitmap.
Predefined bundles shall not specify interior style BITMAP as there are no predefined fill bitmaps.
Certain graphic objects formed by functions of ISO/IEC 9636-3 may have the raster attributes DRAWING MODE and FILL
BITMAP associated with them.
4.3 Interactions with ISOlIEC 9636-4 (Segments)
All segment rendering operations, including implicit segment regeneration, only affect the current drawing bitmap.
4.4 Interactions with ISO/IEC 9636-5 (Input)
There are no interactions between ISO/IEC 9636-5 and this part of ISO/IEC 9636. In particular, echoing is conceptually
performed downstream of any drawing or display bitmap and shall not produce client detectable effects in these bitmaps.
ISO/IEC 9636-6 : 1991 (E)
5 Abstract specification of functions
5.1 Introduction
This clause describes the abstract functional capabilities of the raster part of the CGI. The descriptions of individual functions
are grouped on the basis of functional association as follows:
-
Raster control functions
-
Raster attribute functions
-
Raster operation functions
5.1.1 Data types employed
The abstract specifications of functions detail the functions in terms of input and output parameters. The data type of each
parameter is selected from a standard set and is identified in the functional specification by a standard abbreviation.
The data types and the abbreviations used in this part of ISO/IEC 9636 are taken from the complete list of data types given in
ISO/IEC 9636- 1,5.2.10.
5.1.2 Validity of returned information
For all of the functions specified in this clause which solicit a response from the Virtual Device, a response validity flag is
returned as INVALID if an error was detected in executing the function. In such cases, other output parameters are undefined
and no meaning should be applied to any of these parameter values.
5.2 Raster control functions
5.2.1 GET NEW BITMAP IDENTIFIER
Parameters:
Out (INVALID, VALID) E
response validity
BN
out bitmap identifier
Effect:
The CGI returns a unique bitmap identifier. This bitmap identifier may be used as a parameter given to the CREATE
BITMAP function.
GET NEW BITMAP IDENTIFIER shall not return a bitmap identifier which is associated with an existing bitmap, either
a predefined displayable bitmap or a client-defined bitmap which has been created and not deleted.
If no new bitmap identifier is available, a response validity value of INVALID is returned.
NOTE - This function does not have to be used to obtain a bitmap identifier; however, it can be used to minimize the tracking
of bitmap identifiers by the client.
5.2.2 CREATE BITMAP
Parameters:
In bitmap identifier BN
In bitmap extent 2P
(MAPPED, FULL DEPTH)
In depth type E
ISO/IEC 9636-6 : 1991 (E)
Abstract specification of functions Raster control functions
In bitmap displayability (NON DISPLAYABLE, DISPLAYABLE) E
Effect:
This function creates a bitmap with the given bitmap identifier. The client can specify a bitmap identifier that is client
determined or use the function GET NEW BITMAP IDENTIFIER to obtain a unique bitmap identifier. Displayable
bitmaps may or may not be created depending on the value of Display Bitmap Creation Supported in the Raster
Description Table.
The Depth Type, Displayability, Bitmap Mode, Bottom Left Pixel, Top Right Pixel, VDC-to-Device Mapping group, and
Drawing Surface Clipping group of entries in the Bitmap State List are set directly or indirectly by this function. In
particular the Bottom Left Pixel, Top Right Pixel, and the VDC-to-Device Mapping group of entries are derived from the
bitmap extent parameter as follows:
-
The VDC Extent is set to the value of the bitmap extent parameter.
- The points derived from the bitmap extent parameter (see 3.5.1) are used to set the Bottom Left Pixel and Top Right
Pixel entries. These values are derived by the implementation after it has created the bitmap. For displayable bitmaps,
the Bottom Left Pixel and Top Right Pixel may differ from the specified bitmap extent and consequently an
implementation may create a bitmap that is smaller than that specified. Bitmaps do not share physical memory with
one another.
- The Requested Device Viewport and Effective Viewport entries are set to contain the entire bitmap as follows:
-
If the value of the Specification Mode of Device Viewport in the state list of the currently selected drawing
bitmap is PHYSICAL DEVICE COORDINATES, then these entries are set to the coordinate
...

Questions, Comments and Discussion

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

Loading comments...

The article discusses ISO/IEC 9636-6:1991, a standard for computer graphics interfacing techniques. It focuses on the functions of the interface that involve creating, modifying, retrieving, and displaying parts of an image stored as pixel data. Annexes A and B are important parts of the standard, while Annexes C, D, E, and F are provided for additional information.

기사 제목: ISO/IEC 9636-6:1991 - 정보 기술 - 컴퓨터 그래픽스 - 그래픽 장치와 대화를 위한 인터페이싱 기술 (CGI) - 기능 명세 - 제6부: 래스터 기사 내용: 이 기사는 픽셀 데이터로 저장된 이미지의 일부를 생성, 수정, 검색 및 표시하는 인터페이스 기능에 관련된 사항을 설명합니다. 부록 A와 B는 이 표준의 일부를 형성합니다. 부록 C, D, E 및 F는 참고용으로 제공됩니다.

記事のタイトル:ISO/IEC 9636-6:1991 - 情報技術 - コンピューターグラフィックス - グラフィカルデバイスとの対話のためのインタフェース技術(CGI)- 機能仕様- パート6:ラスタ 記事の内容:この記事では、ピクセルデータとして保存された画像の一部を生成、変更、取得、表示するインターフェースの機能について説明しています。付録AとBはこの規格の重要な部分を形成しています。付録C、D、E、およびFは情報提供のために提供されています。