计算机图形概述_第1页
计算机图形概述_第2页
计算机图形概述_第3页
计算机图形概述_第4页
计算机图形概述_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

9计算机图形

9.1概述

计算机图形是计算机辅助设计的最重要的基础技术,因为任何设计过程和设计结果都

离不开图形,计算机图形软件作为CAD软件的支撑软件和开发环境,它的标准化对CAD

软件开发的规范也起着十分重要的作用。

计算机图形技术由于发展十分迅速,给它的标准化、规范化带来很大困难。因此,在

本章中,不但系统介绍了已经标准经、或正在标准化的内容,不介绍今后可能成为标准的一

些内容,并试图对一些新出现的工业标准作一评论。

从应用的角度看,整个图形系

统由以下几部分组成:

•用于编写图形应用软件的图

形软件包

•用于开发应用软件的应户界

面开发工具

•图形元文件的生成和解释

•CGI终端、X终端和其他图

形终端

图形系统体系结构如图9.1所

示。

计算机图形系统标准体系中的

图形系统标准,如GKS,GKS—3D,图9.1图形系统体系结构

PHIGS等是关于独立于设备的图形软件包的标准。新的出现的X窗口软件也可用作图形软

件包,或作为图形软件包的基础。图形接口标准CGI用于图形终端和其他绘图机等设备接

口的标准化。图形系统可方便地和CGI终端接口。在实际使用中,通过适当的驱动程序,

GKS等图形软件包也可和X终端(执行X协议)或其他图形终端接口。图形元文件标准

CGM用于元文件解释和生成的标准化。该软件通常也作为图形软件包的一部分供应用软件

调用。

在目前计算机图形系统标准中,并不包含有关用户界面的标准。但是在开发CAD应用

软件时,用户界面是重要的组成部分。在这方面已出现了一些以X窗口为基础的用户界面

开发工具,如MOTIF、OFENLOOK,目前它们快慢一种事实上的标准。由于用户界而和

图形的关系密切,在本章中,把它列入图形标准的一部分。

至于计算机图形参考模型CGRM,它并不针对图形系统中某一部分。可以把它看成图

形系统的一个概念模型。它的作用在于使各个图形标准规范化,明确各个图形标准之间的关

系,或者说,它是一个图形标准的标准。

9.2计算机图形标准体系

至U目前为止,ISO/IECJTC1的第24分技术委员会已制定了•套较为成熟的计算机图形

标准。我们可以画出其标准体系如图9.2所示。

1.计算机图形参考模型

建立系统的参考模型是当

计算机图形标“体系

前ISO/IEC开展标准经工作的

一种新的方法,目的是对复杂的

系统从整体方面进行约束,使得

各个单元技术的发展能够协调

一致。

计算机图形参考模型

(CGRM)把计算机图形标准所

支持的系统称为计算机图形环图9.2计算机图形系统标准体系

境,并定义了5个抽象层,构造、虚拟、视见、逻辑和物理环境,定义了每一层的数据元操

作,每层都包括数据元系和处理元素。这5个层组成计划机图形环境。CGRM还服务还解

释了图形环境的内部逻辑关系和外部接U。

2.图形系统标准

图形系统标准包括GKS、GKS-3DPHIGS等关于独立于设备的图形系统软件包的标准。

图形系统又称为应用编程接口(API),它提供应用程序和图形输入、输出设备间的功能接口。

3.语言联编标准

国际标准化组只对于图形系统GKS、GKS-3D、PHIGS分别制订了关于FORTRAN>

Pascal.C、Ada语言的联编标准(languagebinding)。这种标准实际上是图形功能调用的子程

序名和对应功能的对照表,为系统开发人员和用哀悼提从可遵循的准则。目的同样是为了用

户的应用程序不依赖具体的图形系统,具有良好的可移植性。

4.图形元件与图形接口

图形元文件(CGM)标准用于元文件解释和和成的标准经。该标准定义了图形数据物理

文件的标准格式。图形系统通过元文件生成/解释器对图形元文件进行读写。

图形接口CGI用于图形终端和其他绘图机等设备接口的标准经。CGI的应用可省去图

形设备的驱动程序或使驱动程序为最小。

5.关于一致性测试

标准实现的一致性测试是信息技术领域中检查系统是否符合标准的重要技术,它越来

越成为标准经工作不可缺少的组成部分。ISO/IEC最新发布的标准草案——计算机图形标准

实现的一致性测试,建立了测试套(testsuit)的概念,说明了测试软件及测试域,解释了什么

叫测试服务以及所涉及的证明、权力、法律、上诉等问题。

6.关于工业流行规范

当前符合标准的图形系统速度慢,内存开销大,一直是困扰计算机系统科研开发人的

一大难题。虽然我们有理由认为这种情况随着计算机的发展最终会降低为次要困素,但在当

前是非常严重的。国际上CAD软件商也一直在寻求解决这滩题的方法。最近CAD市场

上出现的GL系统影响很大,受到各大软件公司的青睐。这种情况造成了有些虽然不是标准,

但事实上大家都自愿向期靠扰的工业流行规范的存在。这也是我国开展标准化工作需要协调

的问题。国际标准经组织对这种情况也不会视而不见,肯定会采取•定的措施。

9.3图形参考模型CGRM

9.3.1引言

计算机图形参考模型(CGRM)是一个新的、十分重要的计算机国际标准,其标准编号为

ISO/IECDIS11072。该标准目前尚属国际标准草案,不久将成为正式国际标准。

自1985年公布了第一个计算机图形的国际标准:图形核心系统GKS(ISO7942)

以来,ISOTC97(后改为ISO/IECJTC1)已先后制定了一系列计算机图形的标准,如GKS的

语言联编、三维图形核心系统GKS-3D及其语言联编。另外的三维图形标准有程序员层次

交互式图形系统(PHIGS)及其语言联编、计算机图形元文件(CGM)和计算机图形接口(CGI)

等标准。同时,在此期间,随着计算机技术的发展,又出现了一些与计算机图形有关的工业

标准,如X-Windows,Postcript(广泛应用于计算机排版领域),GL图形语言(用于三维图形)

等。为了总结计算机图形标准经的现有成果,为下一步标准化工作提出指导性框架,担出了

制定计算机图形参考模型标准的要求。

计算机图形参考模型定义了一个框架结构,它可用来比较现有的和将来的计算图形标

准,描述它们之间的关系。因而为计算机图形的用户(如CAD应用软件的开发者和使用者,

计算机图形软件的开发者)提供有关标准化方面的重要信息。自然,它也是标准化部门制定

有关标准时的重要依据。

CGRM用5个抽象的层次来定义计算机图形。它们分别称为构造、虚拟、视见、逻辑

和物理环境(仿造于OSI网络的七层模型)。其中构造层最高、物理层最低,低层为最高层提

供他务,应用软件则建立在构造环境之一。CGRM定义了每层数据据元素的操作。

CGRM采用输出原语来定义计算机图形的输出,用这些输出的原语可以构成供操作员

观看的构图。CGRM采用输入表征(token)来定义计算机图形的输入,通过一个表征存储器

可把输入表征累积成应用程序所需的形式。从概念上看,在己收到的输入和己产生的输出之

间的联结由应用程序来处置。应用程序也可以把这件事委托给某个环境来办理。为了允许构

造复杂的构图,CGRM定义了一个称为集合存储器的存储设施(GKS中的图段存储器可作为

一个例子),由此可得到各种构图。类似地,对于输入表征也定义了一个称为聚集存储器的

设施,由此可得到各种构图。类似地,对于输入表征也定义了一个称为聚集存储器的设施,

由此可得到表征存储器的项(即由低层环境中的输入表征组合出高一层环境中的新的输入表

征)。

CGRM可用于:

a.认定和精练计算图形的需求:

b.认定制定计算机图形标准和外部接口的要求;

c.根据计算梵图形的需求来发展模型;

d.确定新的计算机图形标准的体系;

e.对计算机图形标准进行比较;

在第932节中将介绍计算机图形参考模型本身,包括环境模型、数据元素、处理元素

和各层环境的特征。在第9.3.3节中将介绍现有图形标准和CGRM的关系。

9.3.1计算机图表参考模型

计算机图形参考模型把计算机图形定义为5个称为环境的抽象层。每个层都用处理和

数据元素加以描述。此外,CGRM还定义了一些用于描述图形输入和输出的概念。

9.3.2.1外部关系

图9.3表示了计算机图形环境的外部

接口。

计算机图形环境有下述外部接口:

a.操作员接口:物理环境提供了和

操作员的接口,这也是整个计算

机图形环境与操作员之间的接

口;

b.应用接口:构造环境提供了和应

用之间的接口,这也是整个计算图9.3外部接口

机图形环境与应用软件之间的接

应用

□;It

c.数据获取文件接(datacapturemetafileinterfaces):每层构造环金

环境均可提用于进口和出口全部或部分数据元素的1T

接口,数据元素包括构图、集合存储器、表征存储器、I拟环症

聚集存储器和环境状态。

审计跟踪元文件接口该J_________1_

d,(audittrailmetafileinterface):视见环境

接口用于记录和重演通过应用接口的信息流。

环境模型

9.13.2.2逻辑环境

CGRM把计算机图形定义为5个称为环境的抽象层,分

别称为构造(construction)、虚拟(viewing)、逻辑性(logical)和物

物理环境

理(physical),见图9.4。每个环境的内部模型是相同的。在

9.325节中将详细叙述每一层的结构,每层环境的目的和任

操作员

务。图9.4中的输入和输出的对称性反映了目的的任务的对称

性,而不是为了错综复杂的对称性。图9.4计算机图形环境

每个环境由数据元纱和处理元素组成,

见图9.5o其中处理元素用矩形表示,数据元

素用圆表示,数据流用箭头表示。发自数据元

素指向处理元素的箭头表示该数据元素的值

可由该处理来置;从数据元纱发出的带箭头的

虚线表示该数据元素可从或可向数据获取元

件进口或出口;两个处理之间的箭头表示两者

之间可直接传送数据,而不用通过数据存储

器。

在每个环境中,只有单一的接口从比它

高一层环境中接收与图形输出有关的数据,只

图9.5环境模型

有单一的接口众它低一层环境中接收与图形□表示处理元素:O表示数据元素

输入有关的数据。在两个相邻层之间传递输入

和输出信息进使用同•个坐标系。同一层的构图、集合存储器、表征存储器和聚集器也使用

同一坐标系。可以有多个存储和检索数据据获取元文件中数据的接口,但只是有一个产生记

录通过应用接口的顺序信息流的审计跟踪元文件的接口。

9.3.2.3数据元素

1.构图

构图(Composition)是指一个给定环境层中的一组输出原语,构图表示该环境的“输出

工作集”。构图将受吸收和操纵两种处理的影响。全部或部分构图可通过分配进程分配一下

一层环境中去。构图的部分或全部可输出到数据获取元文件中去或者从数据获取元文件中加

到或替找到当前构图的•部分或全部。

2.集合存储器

集合(collection)是一组有名字的、也可以是结构化的输出实体。集合存储在集合存储器

内,仅用于本层环境中,GKS中的图段就是集合的例子。操纵进程和吸收进程会改变集合。

操纵进程可以用集合存储器的内容来改变构图的内容。

3.表征存储器

表征存储器(tokenstore)是在给定环境中准备“发了"(emanation)到高一层环境的一组

结构化的输入表征。向高一层坐标系的坐橘为换在发出而不是装配时进行的.输入征可以是

装配或操纵进程的的结果。输入表征可以由发出进程发出到高一层环境。

4.聚集存储器

聚集(aggregation)是一组输入实体,它有一个名字,可以有一定结构。聚集和输入表征

不同。仅限于本层环境内使用。聚集存放在聚集存放器内。聚集受到装配和操纵过程的影响。

操纵过程还可以使用聚集存储器的内容来改变表征存储器的内容。

5.环境状态

对某一层环境,除了数据元素外,还可有一个环境状态(表)。环境状态通常是一些处理

进程之间共享信息,也可用来决定某些操作能否执行。状态信息可以出一层环境中所有的进

程使用。一个进程通常设置或使用本层的环境状态,但可以通过控制操作把环境状态传播到

相邻层中去。

9.3.2.4处理元素

图形参考模型中共有5种处理元素,分别介绍如下。

1.吸收

吸收(absorption)是一个处理过程(进程),它接受来自高一层环境的输出实体,对其进行

必要的儿何变换或其他变换,形成适合于本层的实体。高一层的输出实体包括由分配进程分

配的构图和控制信息。吸收进程将来自高一层的构图中的输出原语经过坐标变换、剪取和非

儿何变换,就业成一个或多个人本层形式的输出原语,形成本层的构图或集合。控制信息用

输入和输出的控制,用于改变决定进程行为的环境状态。

2.操纵

操纵(manipulation)进程可以处理任一数据元素中的实体,产生出本数据元素或其他数

据元素中的新的实体。必要时,还可对它进行几何和其它变换。所以,操纵还提供了一层内

输入和输出之间的联系。

3.分配

分配(distribution)进程把来自本层的实体传送到下一层环境中去,只有控制实体直接来

自吸收进程,不对分配的实体进行几何或其他变换。

4.装配

装配(assembly)进程从低一层接受输入实体,经处理后存入聚集存储器或表征存储顺,

不对装配的数据进行几何或其他变换。控制信息用于改变本层的环境状态。装配的结果可通

过发出进程送至高一层环境,或直接通过分配进程送低一层环境。

5.发出

发出(emanation)进程将直接来自装置的输入控制实体和来自本层表征存储器的输入表

征传送到高一层的环境。发出进程可以自动地把表征存储器中的变化(如定位器改变了当前

设置)传播到高•层离征存储器,也可仅当高一层显式地请求时,才发出输出实体。

93.2.5各个环境的特征

从概念上我们可以把一个图形系统分成5层环境。允许其中某一些是空的。每一层的

主要特征是:

构造层:本层中,要显示的应用数据“准备”成模型(该层的构图)。应用程序只能对模

型和集合存储器进行编辑。指令存储器的输入表征的格式与应用程序要用的完全一致。

虚拟层:在本层中,由上一层模型产生了它的景。景是由一组在几何上完全确定的虚

拟输出原构成(通常是三维图形)。

视见层:在本层中,上一层的景通过投影得到一个特定的视图。视见环境中的输出电

语的几何维数可以比虚拟层低一维。

逻辑层:在本层中,视图通过着色,浓淡、消稳等手段形成图像。此时,将把所有颜

色、浓淡、图案等特性附加到逻辑输出原语上去。

物理层:在本层中,图像“呈现”为某个输出设备的上的显示。

CGRM在定义计算机图的5层环境时,还定义了相邻两层之间的内部接口。这些接口

不是用于和操作员、应用软件之间的接口,但它确定了哪些是需要标准化的地方。这些接口

可用于保证各自分别定义的计算机图形标准之间的成功地“衔接”在一起。

相邻层之间的接口还是唯一的可以进行扇入的地方。

引入环境层、内部接口和扇出、扇入等概念便于理清不同图形标准,如GKS、PHIGS

和X-Windows之间的关系,也允许在一个大的图形系统中同时存在支持不同标准的子系统,

这些正是图形参考模型试图解决的一个重要问题。

9.3.3现有图形标准和CGRM的关系

9.3.3.1图形核心系统GKS和三维图形核心系统GKS—3D

按CGRM分层环境模型,GKS和GKS-3D仅由下4层组成。虚拟层中的输出原语采用

NDC(规格化设备坐标系)坐标空间。GKS中的逻辑工作站对应于视见层、逻辑层和物理层。

对二维标准GKS,视见层只作一次等同变换,因而可以认为该层是空的。而对GKS—3D,

该层则完成了视见变换。成束外表属性的实现和NDC到DC(设备坐标系)的变换均在逻辑层

的成像(rendering)过程中完成。这样使得由应用程序在虚拟环境中产生的以NDC或NDC3

表示的景象和在具体工作站上.由成像所得到的图象及其显示可清晰地区分开来。

GKS中的图段存储器WISS相当于虚拟的集合存储器。对输入的应答可看成逻辑层中

操纵进程产生的图象输出原语。

GKS缺乏在任何一层中构图的概念,其结果使它很难和CGRM相匹配。

9.3.3.2程序员层次交互式图形系统PHICS

PHIGS可对应于5层环境。PHIGS中央结构存储器(CSS)对应于构造层的集合存储器,

PHIGS工作站对应于视见、逻辑和物理3层环境。通过公布(POST)结构到工作站以显示

图形。公布在该工作站上的结构集形成视见层内概念上的集成存储器。PHIGS的遍历过程

由视见环境中的操纵来完成。公布则是从构造层和虚拟层进行分配的结果。遍历过程的输出

是视见环境中用NPC(规格化投影坐标系)坐标表示的构图。

PHIGS的外表控制机构本质上和GKS、GKS-3D-致,属性在遍历公布的结构时才附

加到原语上去。PHIGS的归档文件是构造层中一组数据获取文件。

933.3图形元件CGM和图形接口CGI

用于存储器和传输图片描述信息的元文件(简称图形元件CGM)是一个视见环境中用

于获取2D图片(构图)的数据获取元文件。此处的元文件和CGRM中元文件夹区别在于后者

只包含单个构图(图片),而前者要包含多个图片。

和图形设备对话的交互技术(简称图形接口CGI)提供了一个与视见、逻辑和物理环境之

间的接口,它相当于CGRM中虚拟和视见环境之间的接口。

在CGI中,输出原语可集合到相当于视见环境中集合存储器的图段存储器中。在逻辑

层中,进行了VDC到DC的坐标变换。CGI还提供了物理环境中的光栅功能,它们对应于

CGI中称为位图存储器的俄理集合存储器的操纵进程中的操作。

9.3.3.4窗口系统

计算机图形系统和窗口系统均用于建立、操纵显示在共享显示面上的对象,并与之进

行交互。然而,窗口系统的主要功能不像图形系统主要是有关图形的输出和输入,而是关于

多个应用之间共享资源的管理。

窗口管理系统由窗口系统和窗口管理程序两部分组成。窗口系统提供了控制输入和输

出资源的基本进程,类似于操作系统的核心。窗口管理程序控制共享的资源的策略,类似于

操作系统中的调度程序和壳程序。

从CGRM的角度看,可以把窗口管理系统看作一个操作员,也可以把它看作一个计算

机图形系统。

9.3.1计算机图形标准的应用

计算机图形标准在CAD中的应用将随应用系统规模的大小、不同的CAD应用领域而

有所不同。

9.3.4.1按应用规模分类

CAD应用系统的规模大体可分成普及型和提高型两类。普及型系统是以微机为基础的

系统、很多还是一种单机系统:提高型系统是以工作站、服务器的连网系统为基础,软件功

能比较完善,具有计算机辅助设计(CAD)、计算机辅助工程(CAE)和计算机辅助制造

(CAM)等功能的系统。

对普及型系统,由于共应用软件功能简单、规模小,不需要也不可能建立大型的图形

系统。从目前看,绝大部分国际标准都无法在这类系统上实现。只有二维图形标准、图形接

口CGI和工业标准Windows(一种用户界面工具)才能在它上面实现,并且已有一定的普

及。在图形编码上,比较流行的AutocadCAD软件所用DXF格式,可以认为是一种工业标

准。

对提高型系统绝大多数图形标准都是可以实现的,也需要应用。这类系统也是制定图

形标准时考虑的对晚。由于这类系统规模大,软件模块多,因而不论是编程环境,还是用户

界面,数据编码,都应尽可能使用标准的工具和环境,以利用系统的集成和更新。

9.3.4.2按应用领域分类

CAD主要的应用领域包括机械、建筑和电子,其他相关的领域还可包括地图、轻工(服

装、家具、工艺品等)。本章重点考虑机械、建筑和电三个领域。

在机械和建筑CAD领域,在图形方面有一个共同点是以三维图形为主,因而三维图形

标准是规模的重点,在图形编码主面,由于现有标准是以二维图形为基础,无法描述带属性、

有拓朴结构的三维模型,因而并未推广使用。

在电子CAD领域,当前仍以二维图形为主,因而二维图形标准是规范重点。在图形编

码方面,由于电子CAD要求使用图形和属性、拓朴关系相结合的格式,目前所用数据交换

格式也不是以图形编码标准为基础的标准。

至于用户界面标准,在上述三个领域均能适用。

9.3.43未来的应用

CAD的未来将是走向计算机集成制造(CIM)。由CIM不但反CAD、CAE、CAM完

全集成在一起,而且把计算机辅助测试(CAT)、计算机辅助工艺设计(CAPP)、机器人

或柔性制造系统的控制,乃至生产过程的管理、企业的管与日俱增主息系统全部集成在一起,

它将对系统的标准经,包括图形的标准经提出更高的要求。

另外,多媒体技术的发展在CAD领域必然也会有用。因此,有关图像,包括动态图像

的编码标准,也会用于CAD领域。

未来的CAD应用将要求更加完备、一致和配套的图形标准,并要求图形标准和数据库

标准、网络标准和产品数据的描述和交换标准一致和配套。目前这方面还有相当的距离。

9.4二维图形标准

9.4.1GKS图形核心系统

图形核心系统(GKS)是一个为应用程序服务的基本图形系统,它提供了在应用程序

和一组图形输入、图形输出设备之间的功能性接口,该功能性接口包括在各式各样的图形设

备上为交互的或非交互的二维作图所需的全部基本功能,即:输HI功能、输入功能、控制功

能、变换功能、图段功能、元文件功能、询问功能和出错处理功能。

9.4.1.1输出功能

GKS产生的图形输出由称为输出原语的图原属性的两组基本元素构成。输出原语是输

出设备完成的基本绘图动作的•种投象。GKS把它们归并为5种基本图原和一种广义绘图

原语(GDP)。这5种基本图原是折线、多点记号、正文、填充区和象阵列。广义绘图原语

可被用来绘制圆、圆弧、椭圆和样条曲线等。每个GKS实现系统具有哪些GDP功能依赖于

工作站。图原属笥用来控制输出原语在设备上出现时的外表特性或用于跟输入的联系(图原

拣取标识符)。控制图原外表特性的图原属性分为两种:一种是几何属性,如字符高度,字

符竖向、正文对准、图案大小、图案参照点等;一种是非几何外表属性,如线性、线宽比例

因子、记号类型、记号大小比例因子、正文类型、正文字体、正文准确度、字符扩展因子、

字符间隔、填充区内部式样、填充区样式索引及图原颜色等。儿何属性均是单独指定的非几

何外表属性有两种指定方式:单独指定和成束指定。所谓单独指定是指对每个图原属性提供

单独的GKS功能,允许应用程序以独立于工作站的方式指定该属性的值。因此,单独指定

的图原属性亦称为独立于工作站的属性。成束指定是指将一个图原的所有非几何外表属性集

中于一个属性束表中,它的每个表项给出该图原的一组属性值。并由该属性束表的索引值来

指定。成束指定时,只要调用一个墨索引值的子程序即可指定一组属性值。属性束表是与工

作站相关的,同一个图形属性束表在不同的工作站上可以有不同的值,并可动态地改变。因

此,成束指定的图原属性亦称为工作站属性。GKS提供了一组专门设置这些属性束表的值

的功能,GKS还提供“置外貌源旗标"(SetAspectSourceFlags)功能,使应用程序可设置或

更改图原属性的指定方式。

9.4.1.2输入功能

GKS把各种交互图形输入设备抽象成与设备无关的6种逻辑输入设备,它们是定位器、

笔划器、定值器、选择器、拣取器和字符串设备。每个逻辑输入设备可以在三种不同的操作

方式(请求、采样、事件)下工作,这三种操作方式是为适应下述三种不同的交互作用样式

的需要而设定的;其一,希望能根据应用程序的要求,在指定的设备上由操作员控制某个特

定时刻获取输入信息;其二,希望能在任何时刻随时直接获取操作员动用所产生的信息;其

三,希望把交互作用的控制权交给操作员,由他决定在何时、何设备上输入何种信息。GKS

提供相应的设置操作方式的功能,以及在每种操作方式下如何获取输入信息的功能。对每个

输入类,都有一个初始化功能,用来设置初值、提示和应符类型、应答区域及与该输入相关

的控制信息(置于数据记录中)。

9.4.1.3控制功能

各种图形输入输出设备在GKS中抽明为图表工作站,共有6种类别的工作站,即输出

(Output),输入(Input)、输出和输入(Outin或称交互工作站)、独立于工作站的图段存计器

(WISS)、GKS元文件输出(MO)、GKS元文件输入(MI)。GKS提供的控制功能包括:

打开GKS、关闭GKS;打开工作站、启用工作站、停用工作站、关闭工作站;画面修乞讨

的控制功能一隐式控制和显式控制,根据调有置延迟状态功能时,隐含再生方式参数的值是

允许(Allowed)或禁止(Suppressed),规定今后画面修改的视觉效果的产生是隐式控制(即

出系统自行控制)还是显示控制。在显示控制时,其画面修改必须调有下述功能之一才能可

见,它们是更新工作站、重画工作站上所有图段、清工作站、置延迟状态时将隐含再生方式

赋为允许(Allowed),关闭工作站部。GKS提供的另外的控制功能是“消息”功能“逸出”

功能。“逸出”功能用于对非儿何图形输出的非标准功能扩充,它规定了一-种标准格式,通

过把要扩充的功能的标识符、该功能要求的输入数据记录、该功能的输出数据记录参数化来

完成对扩充功能的描述的引用。

9.4.1.4变换功能

GKS使用了三种和三种变换,即世界坐标系(WC),规格化设备坐标系(NDC)和

设备坐标(DC);规格化变换(WS—NDC),工作站变换(NDC-DC)和图段变换(NDC一

NDC)。

GKS允许同时定义多个规格化变换,以便在一个画面上可同时显示多个不同比例和内

容的图,但只允许一个工作站变换。

9.4.1.5图段功能

在GKS中,图原可以组合到图段中,也可在图段外产生。当图原产生时。若有一个图

段是打开的,该图原就组合到该打开的图段中,在GKS中同时只能打开一个图段。图段一

旦关闭,则不能重新打开、而且也不能对该图段内的图原进行任何增、删。图段有•一系列属

性,即图段变换、可见性、醒目性图段优先级和可检测性。图段变换是一个任意的二维坐标

变换,它用来对已有图段进行平移、缩放、旋转等。GKS的力段还用来实现拣取输入功能,

用一画面的重画。此外,为了使图段可在不同的工作站上转移,实现图段(子图形或图符)

的插入,GKS设置WISS及相关的图段操纵功能,即,联结图段到指定的工作站上,复制

图段内容到指定工作站上及插入图段。

9.4.1.6元文件功能

为了长期保存图形信息,GKS提供也一个称为元文件的顺序文件接口一GKS元文件

(GKSM)。它用于:图形信息的存档;在系统之间传送图形信息;不同地方之间的图形信

息的传递;不同的GKS应用之间图表信息的传送;与图形信息相伴随的非图形信息的储存

和复用。在GKS中,元文件作为两个特殊的工作站(MO和MD出现打开M0工作站并启

用它之后,所有图表输出原语、工作站控制、工作站变换、工作站属性的改变及图段控制和

操纵功能将以相应的元文件记录(项目)形式写入元文件中。这些写入的元文件记录可由本

程度中另外的程序,在另一时刻乃至在另一个系统上通过打开一个MI工作站进行读入。GKS

提供“从GKSM读入项目”和“解释项目”等功能,以便重现原图形。

9.4.1.7询问功能

GKS设计的一个特点是它引进了状态、状态表和描述表概念,并描述了GKS的全部状

态如何存放在各种状态表和描述表中。GKS的询问则允许应用获取有关GKS当前状态的信

息。这些询问功能大体上可分为三类:1)可设置的状态表的询问,如操作状态、GKS状态

表、工作站状态表、图段状态表的询问;2)描述表的询问,使用这类询问功能可获取图形

环境信息,使就用程序具有更好的可移植性及对具体环境的良好的适应性;3)对出错状态表

和象素存储器的询问。

9.4.1,8出错处理功能

GKS有一个良好定义的出错信息集,这可以报告给应用程序。所采用的原则是把要报

告的信息放在一个出错文件中,该文件在调用打开GKS时由应用程序规定。当错误被检测

出时,GKS提供一个标准处理过程——出错处理功能供应用程序使用。GKS还提供另外一

种出错处理设施,即允许应用程序用自己的出错处理功能代替标准出错处理功能,以便使应

用程序可针对某些情况进行•些特殊处理,不过要求该出错处理程序中只能调用出错登录功

能、询问功能和紧急关闭GKS功能,不能调用其他GKS功能。

9.4.1.9GKS的分级

按照设计要求,GKS应具有适用于范围广的各种图形应用所需的实持性功能。针对各

种所南要的GKS产现环境也是各种各样的,要想使用一个固定的GKS系统满足所有应用要

求和适用于各种环境是不切实际的。一种提高效率、节省开支并能使GKS用于各种环境的

方法就是提供适当的GKS子集,或称之为GKS分级结构。为此,GKS设计中规定了9级,

它们是LOa,LOb,LOc,Lia,Lia,Lib,Lie,L2a,L2b,L2c,每级GKS实现系统都严格规定它所

实现的GKS级别。

9.4.2图形接口CGI

CGI描述了一个图形系统中独立于设备部分和依赖于设备部分之间的接口,春目的是

在客户程序和虚拟设备之间,以一种独立于设备的方式提供图形信息的描述和通信。它所提

供的功能集包括控制功能集、独立于设备的图形对象输出功能集、图段功能集、输入和应答

功能以及产生、修改、检索和显示以象素数据存储的信息的光栅功能集。CGI开发的一个基

本设计目标是为GKS实现的CGM的解释程序提供有效支持。当然,一些商业上的软件包

也可直接利用CGI来开发,以便增强软件包的灵活性和可适应性。为了适应各种用户对CGI

功能范围的不同要求,CGI标准提供框架(Profiles)机制以标准化CGI的各级产现。框架代

表CGI虚拟设备的•个实现所提供的最小功能级及利用该实现的宫户程序所能期望的最大

能力级别。CGI标准定义了两种类型的框架,并对每一类进行具体的说明。

9.4.2.1控制功能集

该部分包括CGI涉及虚拟设备和出错控制的功能,它们参与图形图像信息的管理和接

口的图形与非图形部分的内部关系的管理。大致上,这些功能可分为5组:

(1)虚拟设备管理功能。

(2)坐标空间控制功能。

(3)出错控制功能。

(4)其它控制功能,包括逸出(Escape)功能,获得免出(GetEscape)功能、消息(Message)

功能。

(5)询问功能。

9A.2.2输出功能集

该功能集涉及图原功能、属性、对象的构成和其后的处理,以及有关的控制和询问功

能。这些功能可分成以下几类:

(1)图原功能,它CGI中图片(Picture)的几何构成。

(2)属性功能,它置状态表中属性的模态值,这些值用于确定图原的某些性质(包括视

见方面)。

(3)通用属性和输出控制功能,它规定另外某些功能的操作方式。控制有关图形对象

和属性功能的关于设备操作的一些方面及提供构成复合对象的设施。

(4)检索性能,它返回对正文对象的定位有用的信息(正文范围)。

(5)输出询问功能,它提供对■涉及输出和属性的描述表和状态表的获取。

9.4.2.3图段功能集

该功能集规定图形对象如何组合到图段中并用唯一的图段标识符标识。它提供用于产

生,修改和操纵图段的功能。

(1)图段操纵功能,包括图段的产生、关闭、删除、重新命名和复制等。

(2)图段属性功能,包括图段属性的设置和修改。

(3)图段询问功能,使用这些功能获取与图段有关的描述表和状态表中的信息。

此外,在复制图段时,CGI提供“继承滤波器"(InheritanceFilter)功能和“剪取继承”

(ClippingInheritance)功能,用来控制用于复制的属性值和剪取矩形。

9.4.2.4输入和应答功能集

在CGI中,按返回数据的类型将逻辑输入设备分成8类,即,定位器(Locator)、笔划

器(Stroke)、定值器(Valuator)、选择器(Choice)、拣取器(Pick)字符串设备(String)、光栅(Raster)

和普通(General。光栅(Raster)类的逻辑输入设备用来输入象素阵列值。物理设备的例子是扫

描仪、摄像输入设备等。普通(General)类的逻辑输入设备用来输入指定格式的数据记录,这

种设备的例子是声音输入设备。每个逻辑输入设备有4种执行输入的方式,即请求、采样、

事件和应符请输入。在应符请求输入期间,CGI提供“应答请求”(EchoRequest)功能,允

许将该逻辑设备的当前量值应答在CGI虚拟设备上。

在该功能集中的功能可分成以下几组:

请求和采样功能;应答请求输入功能;事件输入功能;应答输出功能;输入和应答的

询问功能。

9.4.2.5光栅功能集

该功能集提供对以象素数据存储的信息的产生、修乞讨.、检索和显示的功能。它们包

括光栅控制功能;光栅属性功能;光栅操作功能;光栅询问功能。

9.4.3X窗口系统的程序设计界面

X窗口系统是工作站窗口系统的事产上的工业标准,是工作站上CAD软件及其用户界

面的主要支持环境之一。X库是X窗口系统的C语言程序设计界面,它是向应用程序员提

供的低级编程界面。

X窗口系统支持一个或多个包含重叠窗口或子窗口的屏幕。由一个用户所使用的一组

屏幕连同一个键盘和一个指示器(如鼠标器)合称为一显示。单个X服务器可向任意多个屏幕

提供显示服务,在一个X服务器中的所有窗口都是严格按层次安排的,最顶层为根窗口,

它覆盖整个屏幕。每个应用程序通常至少有一个窗口,它的根窗口的子窗口。应用程序可以

在每个屏幕上建立任意深度的窗口X为这些窗口提供图形、正文和光栅操作。

每个窗口有它自己的坐标范围、绘图属性颜色、字体、光标及其它感兴趣的输入事件

等。X不保存窗口的内容,当窗口的部分或全部被遮挡,而后又复现时,它的内容可以丢失,

服务器发送一个显露(Expose)事件通知客户,客户程序接此报告后,应重新生成窗口内容。

X也提供图像对象的屏外存储,称为象素图,单个位面的象素图也称为位图。象素图

用于与窗口呵交换的大多数图形功能中且可在各种图形操纵中定义图案或瓦片图。窗口和象

素合称可绘体(Drawables)。

X库和服务器之间双向传递信息是通过信息X协议实施。这些信息包有4种,即,请

求、回答、事件和出错。大多数X库中的函数只把请求加到一个输出缓存中,并不立即送

往服务器,这些请求以后异步地在服务器上执行。X库提供有关4种信息包的生成和传递的

控制,处理手段。

许多X库函数返回一个整形资源标识符,用它参照在X服务器中的对象。它们是窗口、

字体、象不图、颜色图、光标和图形相关信息(GraphicsContext。简称GC)。这些资源由请

求产生,由主求取消或释放或连接关闭时取消或释放。这些资源的大部分潜在地可在应用之

间共享;窗口显式地出窗口管理程序操纵;字体,光标自动地在多个屏幕间共享;字体按需

要装入和拆除且由多个客户共享。但X库不提供应用之间的GC共享。

X窗口系统有下列功能:

(1)系统显示功能

该类功能用于建立X库程序所使用的显示与X服务器的连接,获取该显示的有关信息,

获取图像格式、屏幕的有关信息,释放客户产生的数据,关闭该显示与X服务器的连接等。

(2)窗口功能

该类功能用于窗口的创建利拆除、窗口映射处理、窗口属性、窗口操作(包括位置、大

小、边宽的改变、有关栈次序的改变、窗口的坐标系变换到另一窗口等)、窗口信息功能(包

括获得窗口的有关信息、特性表的操纵、窗口特性的获取和改变等)。

(3)图形资源功能

色彩功能。用于产生、复制和销毁颜色图,分配、修改和释放颜色单元,读颜色图中项

等。象素图的产生和释放。

GC的操纵功能,包括GC的生产、复制、改变、释放以及设置GC中各结构成员的值

等。

(4)图形功能

X库提供的图形功能包括:

a.窗口/窗口内区域的清除。可绘体之间区域/位面的拷贝。

b.点/多点。线/折线/不相连线段组、矩形/矩形组、弧/多个弧的绘制。

c.填充区的绘制(包括单个/多个矩形,多边形,单个/我个弧的填充)。

d.正文和字体功能,包括字体装入和释放、可用字体的询问、字体搜索路径的设置和

检索、字符串大小的计算和询问、正文范围的计算、正文/复杂正文的绘制、正文字

符/图像正文字符的绘制等。

e.图像绘制和象素获以。

f.光标的产生、修改、撤销、光标的定义等。

(5)窗口管理功能

用于改变窗口的父窗口。控制窗口的生存期、颜色力的安装、指示器获取、键盘获取、

服务器获取、控制输入注视、控制指示器、键盘和指示器的处理、键盘解码、保存控制、主

机存取控制等。

(6)其它功能

预定义特性功能和实用函数

9.4.4二维图形标准的现状和实施意见

我国1987年正式公布了国家图形标准GB9544,它等效采用国际标准ISO7942,对正

文字体号、选择逻辑设备中的提示和应答类型定义了对应汉字的字体号和汉字的提示和应答

类型。增加了在正文、消息和字符串输入中有关汉字表示方法的注释,在初始化字符串设备

功能中增加了汉字字符串的输入主式。目前国内已有符合国家标准的GKS实现系统。

近儿年来,ISO着手GKS的修订工作,即GKS——9R的制定,并正式公布了计算机

图形接口(CGI)的国际标准,ISO/ICE9636。

建议我国在CAD领域中涉及二维计算机图形的应用软件的开发采用GKS(GB9544)

为图形支撑软件,我国国家图形标准应参照国际标准GKS的修订版,及时完成GB9544的

修订工作,实现一国际标准的同步。

9.5三维图形标准

在图形信息处理标准中,最著名的三维图形标准是PHIGS(ISO/IEC9592,

ISO/IEC9593)及GKS-3D(ISO/IEC8806)。但是,目前也存在一些其它的三维图形支持软

件,它们应用范围较广,受到用户的重视,例如GL及PEX等。

9.5.1程序员层次交互图形系统PHIGSPLUS

9.5,1.1概述

PHIGS是Programmer'sHierarchicalInteractiveGraphicsSystem的缩写。它是美国计算

机图形技术委员会(TechnicalCommitteeX3H3onComputerGraphics)于80年代中期推出的

一种图形信息系统标准,旨在提供在一个能为美国国家标准研究所(NASI)和国际标准化组织

(ISO)接受的图形标准。PHIGS图形标准的功能全面,对提高三维图形软件的可移植性与

质量都具有非常重要的意义。目前国内外大中小型计算机均采用PHIGS及其扩充版本

PHIGSPLUS作为图形核心支持系统。

PHIGS图形标准是在将二维与三维图形学中的技术概念加以总结和提炼的基础上制定

出一个独立硬件设备的图形信息处理系统标准。它在应用程序与图形设备之提供了一种功能

接口。在图形数据组织上,它建立于独立于工作站的中心结构存储区(CenterStructureStorage,

简写CSS)与图形档案管理文件

(ArchivesFile);在图形操作上,

它建立了适应网状的图形结构

模式的各种操作;在图形基本元

素(包括输出图形元素和属性元

素)的设置上,它既考虑到二维

与三维的结全,也满足矢量

(VectorWireframe)与光栅

(Raster)图像设备的某些特点。

图9.6表明了PHIGS的数据流

程。

从系统的组成来看,PHIGS由328个用户功能子程序构成。这些子程序按其内容又可

分为:控制、输出图原、属性设置、变换、结构管理、结构显示、结构档案管理、输入、图

形元文件、查询、错误控制及特殊接口功能模块。

9.5.1.2中心结构存储

中心结构存储结构元素

1.结构与结构元素

支持中心结构存储(CSS)是

结构1元素1各类型加索

PHIGS三维图形标准最重要的技术

特点,它以结构(Structure)为基本节结构2兀素2

点组织图形数据。全部结构存储在

.......……

CSS里。一个典型的图表结构通常

是由结构打开语句、若干结构元素结构n元素n

(Structureelement)>以及关闭语句所

构成的一个序列。结构元素是图形图9.7中心结构存储、结构和结构元素之间的关系

数据的基本入口,它将其应用表述为所说明的图形数据:输出图原、属性选择、视图选择、

模型变换与剪裁、名字集、调用其它结构等。任何结构元素不能在结构这外存在。但是,不

包括结构元素的控结构是允许的。图9.7表明中心结构存储、结构、结构元素之间的关系。

其中,结构是结构元素的线性序列,用以描述整体或副产品分物理对象或图形对象。结构的

标识符由用户唯一地给定。不同的结构通常以逻辑的或几何的方式组合在一起,定义出一个

完整的图形对象。

结构元素是图形数据的最小成分,若干元素按照一定的线怀关系组成一个结构的内容。

结构元素通常包括输出图原、属性设置、模型变换、视力索引、执行结构、标记及应用图形

数据等。

2.结构的网络

PHIGS提供的图形结构的基本组织方式是网状模式,形成一各非循环的网络。在这种

网络中,一个结构调用包含在CSS中的基他结构是通过一种执行结构(ExecuteStructure)元

素实现的;一个结构既可以调用其它结构,也可以被其它一个或多个结构所调用。

3.结构的遍历和显示

结构网络在一个工作站上的显示是通过公布结构(PostStructure)功能实现的。一个结构

如果是这个网络中的成员,综可能被显示。

为了显示一个结构网络,结构元素必须从CSS中抽取并处理,而遍历便是处理结构元

素的一种操作。遍历处理将从结构网络最上层的第一个元素开始,顺序处理结构网络中的每

个结构元素。

4.结构的编辑

PHIGS提供了单个存取结构元素修改结构内每一结构元素的能力。编辑功能包括设置

元素指针,插入或替代一个结构元素,删除、复制及查询结构元素的内容等操作。

5.对CSS结构的操作

对于存储在CSS中的结构,PH1GS提供了包括删除结构和结构网络、变更结构标识符

及查询结构等功能。

6.结构的档案管理

PHIGS的提从了结构档案管理功能,允许用户将存储在CSS中的结构存储到档案管理

文件,或档案文件抽取结构到CSSo这些功能既可以用于结构表、结构网络表,也可以用于

在CSS或档案文件中的所有结构。

7.通用结构元素(GSE)与应用数据

PHIGS提供了通用结构元素(GeneralizedStructureElement,缩写为GSE)以存取不属于

标准PHIG结构元素的特殊控制元素的属性功能。GSE是由一个标识符和一个数据记录标识

的。对GSE的遍历将不产生输出图原。

9.5.1.3图形输出

1.输出图原

PHIGS提供的基本图形输出信息是输出的原图原。根据编辑模式,它可建立14种标准

图原和一种广义绘图原语作为基本的结构元素。它们是:

折线、三维折线、多点记号、三维多点记号、正文、三维正文、相关注释正文、三维

相关注释正文、填充区、三难填充区、填充区组、三维填充组、象元阵列、三维象元阵列、

广义维图原语。

2.输出图原属性

PHIGS的每种输出图原具有4种类型的属性:几何属性,非几何属性,视图与标识属

性。

第一类属性控制图原的几何特性,它影响图原显示时的位置、外貌与尺寸,如字符的

高度等。几何属性独立于工作站。如果它由几何坐标描述,则在模型坐标系下给出。

第二类属性控制图原的非几何特性,它影响图原的影响形式。这包括折线的线型、除

CELLARRAY外所有图原的颜色索引、标记图原的比例系数等。非几何属性不用几何坐标

表示。它是通过成束(Bundled)或单一(【dividual)方式设置的。结构的单独指定属性元素是用

户可操作的最基本的输出属性。选择在束指定属性是确定一个成束属性表的入口索引。这种

表依赖于工作站,因为每一个工作站都有自己固有的成组属性表置于工作站状态目录中。

第三类属性是选择依赖于工作站的视图与消隐参数。

第四类属性是设置输出图原的可见性、可检测性和高亮度,用于标识被检测的图原或

图原组合。

PHIGS提供了结构属性元素和工作站属性表的设置功能。这些属性产定了输出图原在

结构遍历与显示期间的影像。它们不仅对其后的输出图原起作用,而且通过执行结构元素对

其下级对构也起作用,直到该属性在遍历中被同一,属性的新值代替为止。

9.5.1.4PHIGS工作站

PHIGS是建立在抽象的图形工作站概念在础上的。它提供了一种逻辑接口,应用程序

通过这种接口控制物理设备。这种抽象的工作站是通过硬件与软件的结合实施的。它能够单

一地处理输入或输出,也能同时处理输入输出。每一基作都包含着若干表示工作站特性、工

作站状态与工作站有关属性信息的表。在PHIGS的实际实现过程中,每一类工作站都有一

个固有的工作站特性表,描述该工作站的标准能力与特点。

PHIGS定义了5种抽象的工作站:

3维元素

OUTPUT,INPUT,OUTIN,MO,ML

|模型坐标系(M.C.)

OUTPT工作站仅具有输出能力。除可选择

组合模型变换

的广绘图原语外,它能显示所有的输出图原。

|世界坐标系(W.C.)

INPUT工作站至少具有一个逻辑输入设

模型剪取

备,但没有输出能力。

4独立干工作站

OUTIN工作站同时具有OUTPUT与

;依赖「工作站

INPUT工站站能力。

视图定向变换

M0工作站能够输出图形信息存储器,建

I视图参考坐标系(V.R.C.)■

立图形元件(METAFILE)。

视图映射变换与剪裁

MI工作站能够从外部存储器输入图形元

;规格化投影坐标系(N.PC.)

文件(METAFILE)到PHIGS系统。

工作站变换与剪取

9.5.1.5坐标系与图形变换

4设备坐标系(DC)

PHIGS提供了模型变换、视图变换、工作显示

站变换、以及有关模型与视图的实用功能。图

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论