[工学]CADCAM第五章 图形技术基础.ppt

  1. 1、本文档共65页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[工学]CADCAM第五章 图形技术基础

第五章 图形技术基础 5.1 坐标系与坐标变换 5.1.1 坐标系 5.1.2 窗口与视区 5.1.3 窗口--视区的变换 5.2 二维图形的裁剪 5.2.1 点的裁剪 5.2.2 直线段的裁剪 5.3 隐藏线和隐藏面的消除 5.1 坐标系与坐标变换-5.1.1 坐标系 坐标系分类: 赤道坐标系 地理坐标系 天球坐标系 直角坐标系 (笛卡尔坐标系) 5.1 坐标系与坐标变换-5.1.1 坐标系 直角坐标系 (笛卡尔坐标系)分类: 世界坐标系(World Coordinate System) 世界坐标系是最常用的坐标系,它是一个符合右手定则的直角坐标系,分为二维图形的坐标系和三维物体的坐标系。 世界坐标系是用来定义用户在二维或三维世界中的物体,因此也可以称作自然(全局)坐标系。理论上讲,世界坐标系是无限大且连续的,即它的定义域为实数域。 设备坐标系(Device Coordinate System) 所有的图形输出设备,例如显示器、绘图仪,都有一个自身的坐标系,称之为设备坐标系或物理坐标系。 设备坐标系是一个二维平面坐标系,它的度量单位是像素(显示器)或步长(绘图机),因此它的定义域是整数域且是有界的。 例如: 分辨率为1024?768的显示器的设备坐标(屏幕坐标)范围为:X向0-1023像素,Y向0-767像素;分辨率为640?480的显示器的设备坐标范围为:X向0-639像素,Y向0-479像素。 绘图仪的步长为1μm或10μm; 这迫使应用程序与具 体的图形输出设备有 关,给图形和应用程 序的移植带来不便。 规格化设备坐标系(屏幕坐标系) (Normalized Device Coordinate System ) 5.1.2 窗口与视区- 窗口 窗口(Window) 在工程设计中,有时为了突出图形的某一部分,而将该部分单独的画出来,就是所谓的局部视图 如何将指定的局部视图从整体中分离出来:计算机图形学中提出了窗口这一概念 窗口是在世界坐标系中定义的确定显示内容的一个矩形区域,只有在这个区域内的图形才能在设备坐标系中输出,而窗口之外的部分则被裁掉(即窗口是用户在输入的图形上选定一个观察区域 ) 5.1.2 窗口与视区-视区 视区(Viewport) 视区是在设备坐标系(通常是屏幕)中定义的一个矩形区域,用于输出窗口中的图形。视区决定了窗口中的图形要显示于屏幕上的位置和大小,即视区是在图形输出设备上用来复制窗口(全部或部分)内容的矩形区域。 视区是一个有限的整数域,它应小于等于屏幕区域,而定义小于屏幕的视区是非常有用的,这样可以在同一屏幕上定义多个视区,用来同时显示不同的图形的信息。 5.2 二维图形的裁剪 通过定义窗口和视区,可以将图形的某一部分显示于屏幕上的指定位置,这不仅要进行上述的窗口-视区变换,更重要的是必须要正确识别图形在窗口内部分(可见部分)和窗口外部分(不可见部分),以便把窗口内的图形信息输出,而窗口外的部分则不输出。我们把这种选择可见信息的方法叫做裁剪(Clipping) 5.2.1 点的裁剪 判断点的可见性可以用下面简单的不等式, 若点 满足: 则点 为可见(在窗口内),否则不可见(在窗口外)。 由点的裁剪方法我们会想到另外一种最简单的方法—逐点比较法,即把图形离散为点,然后逐点判断是否满足上面的不等式。若满足,则为可见点,在窗口内;否则就在窗口外,被裁剪掉。 从理论上讲这是一种万能裁剪法,但是实际上这种方法没有实用价值,因为这种方法的速度太慢,同时使得裁剪出来的点列不再保持原来图形的画线序列,因而给图形输出带来困难。 5.2.2 直线段的裁剪 直线段与窗口的位置关系有如下几种(根据直线的两个端点): 直线段的两个端点在窗口内; 直线段的两个端点在窗口外,且与窗口不相交; 编码裁剪算法原理: 由于矩形窗口是凸多边形,因此一条直线段的可见部分最多为一段,因此可以通过判断两个端点的可见性来确定直线段的可见部分。 每一线段或者整个位于窗口内,或者整个位于窗口外,或者被窗口分割可以很快地舍弃其中的一部分。 编码裁剪算法的分区代码 将窗口边界延长,把平面划分成9个区,每个区用4位二进制代码表示; 线段的两个端点按其所在区域付与对应的代码,代码意义如下: 第1位:如果端点在窗口左边界的左侧则为1,否则为0; 第2位:如果端点在窗口右边界的右侧则为1,否则为0; 第3位:如果端点在窗口下边界的下侧则为1,否则为0

文档评论(0)

qiwqpu54 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档