第4章 图形的表示与数据结构
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2. 请检测下列三维形体是否满足欧拉公式.
(c)
(d)
4.2.3 构造实体几何法
构造实体几何法(CSG,Constructive Solid Geometry) 由两个实体间的并、交或差操作生成新的实体。
A B
A B
A B
(a)A,B形体的并
(b)A,B形体的差
(c)A,B形体的交
图4-26 构造几何实体法生成三维实体
在构造实体几何法中,集合运算的实现过程可以用 一棵二叉树(称为CSG树)来描述:
二叉空间分割(binary space partitioning,BSP)
方法每次将一实体用任一位置和任一方向的平面分
为二部分。
4.3 非规则对象的表示 4.3.1 分形几何(fractal geometry)
分形几何物体具有一个基本特征:无限的自相似性。 无限的自相似性是指物体的整体和局部之间细节的无 限重现。 分形物体的描述又包含: 分形维数,又称分数维数 生 成 过 程 : 初 始 生 成 元 ( initiator)、 生 成 元 (genenator)
体是 3 维几何元素,由封闭表面围成空间,也是欧
氏空间R3中非空、有界的封闭子集,其边界是有限
面的并集。
4.1.2 几何信息与拓扑信息
图形对象及构成它的点、线、面的位置、相互间关
系和几何尺寸等都是图形信息;
表示图形对象的线型、颜色、亮度以及供模拟、分
析用的质量、比重、体积等数据,是有关对象的非
图4-22 四边形网格含6个四边 形,由3*4个顶点形成
4.2.2 扫描表示
扫描表示法(sweep representation)可以利用简
单的运动规则生成有效实体。
包含两个要素:
一是作扫描运动的基本图形; 二是扫描运动的方式: 平移、旋转。
扫描方向 基面
基面
(a)
(b)
基面 基面
回转轴
解决:光线投射(Ray-casting)算法
光线投射(Ray-casting)算法: 具体算法是:
1)将射线与CSG树中的所有基本体素求交,求出所有
的交点。
2)将所有交点相对于CSG树表示的物体进行分类,确
定位于物体边界上的那部分交点。
3)对所有位于物体边界上的交点计算它们在射线上的
参数值并进行排序,确定距离最近的交点。得到其
定义点集的正则运算r运算为:
r A c i A
正则运算即为先对物体取内点再取闭包的运算。r· A
称为A的正则集。
(a)带有孤立点和边 的二维点集A
(b)内点集合i·A
(c)正则点集c·i·A
图4-7 正则形体
二维流形指的是对于实体表面上的任意一点,都可
以找到一个围绕着它的任意小的领域,该领域与平
图4-30
二维平面图形对象的四叉树表示
八叉树
z 6 5 2 8 y 7 4 1 x 3 1 2 3 4 5 6 7 8
图4-31 三维空间分成八个卦限及其节点表示
6 7 2 3 7 2 3 3 5 0 1 1
(b)
(a)
0
1
2
3
4
5
6
7
z
具有子孙的节点 空节点 (c) 实节点
4.2.6 BSP树
体素是三维空间中可以用有限个尺寸参数定位和定 形的体.
欧氏空间中, 形体由点、线、面、环、体等几何元素 构成 点是0维几何元素,分端点、交点、切点和孤立点等。 边是 1 维几何元素,是两个邻面(正则形体)或多个邻 面(非正则形体)的交界。直线边、曲线边
面是2维几何元素,是形体上一个有限、非零的区域,
4.3.4 基于物理的建模
基于物理的建模方法:描述了物体在内外力相互作用
下的行为。
通常用一组网格结点来逼近物体。网格结点间取为
柔性连接,再考虑贯穿物体网格的力传递。
基于力学方程的动画描述比基于运动学方程的描述
产生的运动更真实。
4.3.5 数据场的可视化
科技计算可视化(scientific visualization)指的是运
用计算机图形学和图象处理技术,将科学计算过程
中及计算结果的数据转换为图形及图象在屏幕上显
示出来并进行交互处理的理论、方法和技术。
4.4 图形的层次结构
4.4.1 段的层次概念
图4-34 由直线、矩形等图素和门、窗等图段组成的楼房
作业:
1. 已知八叉树的八等区域分法为下图A所示,请画出以 下图B几何形体的八叉树示意图。
BC
ABD
AB,BD,AD
CA
BCD
BC,CD,BD
AD
ACD
AC,CD,AD
BC
CD
表示其拓扑信息
例如,翼边结构表示(Winged Edges Structure)
E1
V1 F2
E
E2
F1
E3
V2
E4
图4-18 翼边结构表示
2. 平面方程
可以利用平面方程:Ax+By+Cz+D=0
• • •
求得平面的法向量
图形信息。
图形信息往往从几何信息及拓扑信息两方面考虑。 几何信息:形体在欧氏空间中的位置和大小 ( 物体的
各部分几何形状及其在空间的位置)
拓扑信息:形体各分量(点、边、面)的数目及其相
互间的连接关系。
1. 几何信息
(1)几何分量的数学表示, 如: 点: (x, y, z) 直线:x=(y-y0)/a=(z-z0)/b 平面:ax+by+cz+b=0
鉴别空间上的点与物体平面的位置关系。
判别点在面的内部或外部
实体存在侧方法——平面法向量 法向量指向物体外部,当多边形顶点指定为逆 时针方向时,法向量方向满足右手定则。
3. 多边形网格
三维形体的曲面边界通常用多边形网格( polygon
mesh)的拼接来模拟。
三角形带、四边形网格
图4-21 三角形带由10个三 角形和12个顶点相连而成
(2)几何分量之间的相互关系(拓扑信息)
f1 f2 f3
点v
v1 v2 e1 e2
v1 v2 v3
f1 f 2
面f
e1 e2
图4-2 形体几何分量间的相互关系
边e
几何信息的二义性
2. 拓朴信息
平面立体的几何分量之间一共有九种拓扑关系
v f f f 面相邻性 f:{f} f f f v 顶点—面相邻性 v:{f} f e f 顶点相邻性 v:{v} v e v 边-面相邻性 e:{f} 边-顶点包含性 e:{v} e e e e e 顶点-边相邻性 v:{e} v v 面-顶点包含性 f:{v} v v v e e v e f v e e e f e
面上的一个圆盘是拓扑等价的。
(a)二维流形
(b)二维流形 图4-8 正则形体 (c)非二维流形
实体:对于一个占据有限空间的正则形体,如果 其表面是二维流形,则该正则形体为实体。
4.1.7 平面多面体与欧拉公式
欧拉公式是检查实体有效性的一个必要条件(不是充 分条件)
简单多面体条件: (1)所在面是单连通的,上面没有洞 (2)立体是单连通的,而且没有孔洞 (3)每条棱边上恰好邻接两个面 (4)每一个顶点处至少有三条棱边相遇
二叉空间分割法(BSP)
4.2.1 多边形表面模型 边界表示(B-reps)的最普遍方式是多边形表面模型,它
使用一组包围物体内部的平面多边形,也即平面多面
体,来描述实体。
体 D 面 A ABC ABD BCD ACD V
C
边 顶点
AB
BC A
CA B
AD C
BD D
CD
B
图4-17
四面体及其点、边、面的关系
面-边包含性 f:{e}
边相邻性 e:{e:}
图4-3 平面立体的九种拓扑关系
4.1.3 坐标系
建模坐标系 用户坐标系 坐标系 观察坐标系 规格化的设备坐标 设备坐标系 图4-4 坐标系的分类 直角坐标系 仿射坐标系 圆柱坐标系 球坐标系 极坐标系
4.1.4 实体的定义
(a)有悬面
(b)有悬边
客观存在的三维形体具有这样一些性质:
第4章 图形的表示与数据结构
造型技术:
把研究如何在计算机中建立恰当的模型表示不 同图形对象的技术称为造型技术。 有两类图形对象:
规则对象:几何造型、几何模型
不规则对象
4.1 基本概念
4.1.1 Fra Baidu bibliotek本图形元素与段的概念
基本图形元素:图素或图元、体素
图素是指可以用一定的几何参数和属性参数描述 的最基本的图形输出元素。包括点、线、圆、圆 弧、椭圆、二次曲线等。
(1)刚性
(2)维数的一致性
(3)占据有限的空间
(4)边界的确定性
(5)封闭性
三维空间中的物体是一个内部连通的三维点集, 是由其内部的点集及紧紧包着这些点的表皮组成的。
4.1.4 正则集合运算
利用正则集的概念来定义上述的三维有效物体: 由内部点构成的点集的闭包就是正则集,三 维空间中正则集就是正则形体,也就是三维有效 物体。
由一个外环和若干个内环界定其范围。
一个面可以无内环,但必须有一个且只有一个外环。 面有方向性,以其外法线矢量方向为该面的正向。
环是有序、有向边(真线段或曲线段)组成的面的封 闭边界。
环中的边不能相交,相邻两条边共享一个端点
确定面的最大外边界的环称之为外环 确定面中内孔或凸台边界的环称之为内环
其顶点数V、边数E和面数F满足如下关系:
V-E+F=2。
V-E+F=2
v=8 E=12 F=6
图4-12
v=5 E=8 F=5
简单多面体
v=6 E=12 F=8
令H表示多面体表面上孔的个数,G表示贯穿多面体 的孔的个数,C表示独立的、不相连接的多面体数, 则扩展后的欧拉公式为:V-E+F-H=2(C-G)
4.3.2 形状语法
形状语法( shape grammars):给定一组产生式规
则,形状设计者可以在从给定初始物体到最终物体
结构的每一次变换中应用不同的规则。
4.3.3 微粒系统
用于模拟自然景物或模拟其它非规则形状物体展示
“流体”性质的一个方法是微粒系统( particle systems)。 这一方法尤其擅长描述随时间变化的物体。 微粒运动的模拟方式:随机过程模拟、运动路径 模拟、力学模拟
• •
树的叶子:体素或形体变换参数。 树的非终端结点: 正则的集合运算或变换(平移或旋转)操作 二叉树根结点:构造的实体
•
差(-)
x
差(-)
平移
1
2
2
x
x
=体素
图3.2.7 CSG表示
构造实体几何法的优点: 可以构造出多种不同的符合需要的实体。 问题: 求交困难 CSG树不能显式地表示形体的边界
二维情况,常用二维数组存放。
三维情况下,常用三维数组p[i][j][k]来存放。
P98 图4-29
4.2.5 八叉树
八叉树(octrees)又称为分层树结构,它对空间进 行自适应划分,采用具有层次结构的八叉树来表示 实体。
四叉树
象限1 象限2 1 2 3 4 B B B B E B F B E B B B 象限4 (a) 象限3 E E F E F F F F (b) E E F E F F F E E F E E ...... B F F B
不能正确表示曲面信息。
线框模型表示 不出轮廓线
无法进行图形的线面消隐。 加重用户的输入负担
图4-16线框模型无法表示轮廓线
难以保证数据的统一性和有效性。
可以将实体模型的表示可分为以下方法: 边界表示法(BR) 扫描表示法
构造实体几何法(CSG)
空间位置枚举表示法
八叉树法
V=24 F=16
图4-13 非简单多面体
E=36 H=2 G=0
C=1
4.2 三维形体的表示
线框模型
由定义一个物体的直线和曲线组成,每一条直线和
曲线都是单独构造出来的,并不存在面的信息。
线框模型存在着几个缺陷:
二义性
容易构造出无效形体
(a)有效形体 (b)无效形体 图4-15 线框模型表示的三维形体
所在基本体素表面的法矢量。
发射平面
xy y B
射线
射线 a z z b c d
x
A
(a)
(b)
图4-28 光线投射算法(实体A并B则取ad,实体A交B则取cb,实体A-B则取ab)
4.2.4 空间位置枚举表示
空间位置枚举表示法将包含实体的空间分割为大 小相同、形状规则(正方形或立方体)的体素,
然后,以体素的集合来表示图形对象。
U
图3.2.10 边界表示
1. 多边形表
•
几何表
属性表
•
例如:顶点表、边表和多边形表。
为图4-17所示的四面体建立的三张表如下:
顶点表 A
B C D
x1,y1,z1 x2,y2,z2 x3,y3,z3 x4,y4,z4
AB
边表
A,B B,C C,A A,D B,C C,D
ABC
面表
AB,BC,AC