第八章三维形体的表示 ■表示形体的两种模型 实体的定义 正则集合运算 特征表示 空间分割表示 推移表示 边界表示 构造实体几何表示 不规则形体的建模方法 L系统 2021/1/21 浙江大学计算机学院
2021/1/21 浙江大学计算机学院 1 第八章 三维形体的表示 ◼ 表示形体的两种模型 ◼ 实体的定义 ◼ 正则集合运算 ◼ 特征表示 ◼ 空间分割表示 ◼ 推移表示 ◼ 边界表示 ◼ 构造实体几何表示 ◼ 不规则形体的建模方法 ◼ L系统
三维图形在科学研究和工程技术中有着广泛的应用。在CAD中,需 要对所设计的作品从不同的角度进行审视。计算机几何造型就是 用计算机系统来表示、控制、分析和输出三维形体。所以几何造 型是计算机图形学中一个十分重要的应用领域,它是CAD/CAM和 CIMS系统的核心技术,也是用来实现计算机辅助设计的基本手段。 几何造型的功能 形体输入,即把形体从用户格式转换成计算机内部格式; 图形数据的存储和管理; ■图形控制,如对形体进行平移、缩放、旋转等几何变换; ■图形修改,如应用集合运算、欧拉运算、有理B样条操作及其 交互手段实现对形体局部或整体修改; 图形分析,如形体的容差分析,物质特性分析等; 图形显示输出,如消隐、光照、颜色的控制等; ■询问形体的属性及其有关参数 2021/1/21 浙江大学计算机学院
2021/1/21 浙江大学计算机学院 2 引 言 ◼ 三维图形在科学研究和工程技术中有着广泛的应用。在CAD中,需 要对所设计的作品从不同的角度进行审视。计算机几何造型就是 用计算机系统来表示、控制、分析和输出三维形体。所以几何造 型是计算机图形学中一个十分重要的应用领域,它是CAD/CAM和 CIMS系统的核心技术,也是用来实现计算机辅助设计的基本手段。 几何造型的功能: ◼ 形体输入,即把形体从用户格式转换成计算机内部格式; ◼ 图形数据的存储和管理; ◼ 图形控制,如对形体进行平移、缩放、旋转等几何变换; ◼ 图形修改,如应用集合运算、欧拉运算、有理B样条操作及其 交互手段实现对形体局部或整体修改; ◼ 图形分析,如形体的容差分析,物质特性分析等; ◼ 图形显示输出,如消隐、光照、颜色的控制等; ◼ 询问形体的属性及其有关参数
形体 形体( object 在计算机中形体 般定义为六层拓扑 结构,首先介绍在 外壳(she) 三维空间中基本术 语的定义。 面face) 环loop) loop 边(oop)—顶点 vertex) 曲线和直线 点的 方程 几何坐标 2021/1/21 浙江大学计算机学院
2021/1/21 浙江大学计算机学院 3 形 体 ◼ 在计算机中形体一 般定义为六层拓扑 结构,首先介绍在 三维空间中基本术 语的定义。 形体(object) 外壳(shell) 面(face) 环(loop) 边(loop) 顶点(vertex) 曲线和直线 方程 点的 几何坐标
形体 体素 具有有限个参数定义,且简单 的连续封闭的形体称为体素, 如长方体、圆柱体、圆锥、球、环等 半空间 集合{P|F(P)≤0成为半空间,其中P为R中的一点,F为一个平面, 当F=0时,表示一个平面,这个平面的半空间可以由 F(P)=ax+by+Cz+d定义的平面加上在平面某一侧的所有点组成。显 然一个长方体可以看成是6个平面半空间的交。 几何信息 用来表示形体的几何性质和度量关系称为几何信息。 拓扑信息 用来表示形体之间的连接关系称为拓扑信息。 2021/1/21 浙江大学计算机学院
2021/1/21 浙江大学计算机学院 4 形 体 ◼ 体素 具有有限个参数定义,且简单 的连续封闭的形体称为体素, 如长方体、圆柱体、圆锥、球、环等。 ◼ 半空间 集合{P|F(P)≤0}成为半空间,其中P为R 3中的一点,F为一个平面, 当F=0时,表示一个平面,这个平面的半空间可以由 F(P)=ax+by+cz+d定义的平面加上在平面某一侧的所有点组成。显 然一个长方体可以看成是6个平面半空间的交。 ◼ 几何信息 用来表示形体的几何性质和度量关系称为几何信息。 ◼ 拓扑信息 用来表示形体之间的连接关系称为拓扑信息
表示形体的两种模型 模型分类 形体表示 数据模型过程模型 线框模型表面模型实体模型 2021/1/21 浙江大学计算机学院
2021/1/21 浙江大学计算机学院 5 表示形体的两种模型 ◼ 模型分类
表示形体的两种模型 <。数据模型 ■完全以数据描述 例如 用以8个顶点表示的立方体 以中心点和半径表示的球 以数据文件的形式存在 包括—特征表示、空间分割表示、推移表示、边 界表示、构造实体几何表示等 进一步分为 线框模型 表面模型 ■实体模型 2021/1/21 浙江大学计算机学院
2021/1/21 浙江大学计算机学院 6 表示形体的两种模型 ◼ 数据模型 ◼ 完全以数据描述 ◼ 例如 ◼ 用以8个顶点表示的立方体 ◼ 以中心点和半径表示的球 ◼ 以数据文件的形式存在 ◼ 包括----特征表示、空间分割表示、推移表示、边 界表示、构造实体几何表示等 ◼ 进一步分为 ◼ 线框模型 ◼ 表面模型 ◼ 实体模型
e2 线框模型 s S4 e emV e10 s 4 e 线框模型:将形体表示成 e6 e12 e2 一组轮廓线的集合 e8 S s ■一般地,画出了形体的棱线与 V7 v 轮廓线就能唯一地表示出来 如图,八个顶点可以定义一个 长方体,但还不足以识别它 如果定义了棱线,则无论如何 放置长方体都能唯一地表示了。 对于多面体由于其轮廓线和棱 线通常是一致的,所以多面体 的线模型更便于识别,且简单。 2021/1/21 浙江大学计算机学院 7
2021/1/21 浙江大学计算机学院 7 线框模型 线框模型:将形体表示成 一组轮廓线的集合。 ◼ 一般地,画出了形体的棱线与 轮廓线就能唯一地表示出来。 如图,八个顶点可以定义一个 长方体,但还不足以识别它, 如果定义了棱线,则无论如何 放置长方体都能唯一地表示了。 对于多面体由于其轮廓线和棱 线通常是一致的,所以多面体 的线模型更便于识别,且简单。 e12 v4 v8 s3 e2 e4 e6 e8 e2 e7 e11 e10 e9 e3 e1 v2 v3 v1 v7 v5 v6 s2 s6 s5 s1 s4
线框模型 优点:简单、处理速度快 缺点: 1、对于非平面多面体,如圆柱、球等形体, 其轮廓线随观察方向的改变而改变,无法用 组固定的轮廓线来表示它们。 线框模型与形体之间不存在一一对应关系: 它仅仅通过给定的轮廓线约束所表示形体的 边界面,而在轮廓线之间的地方,形体的表 面可以任意变化。 3、没有形体的表面信息,不适于真实感显示, 由此导致表示的形体可能产生二义性。 2021/1/21 浙江大学计算机学院
2021/1/21 浙江大学计算机学院 8 线框模型 ◼ 优点:简单、处理速度快 ◼ 缺点: 1、对于非平面多面体,如圆柱、球等形体, 其轮廓线随观察方向的改变而改变,无法用 一组固定的轮廓线来表示它们。 2、线框模型与形体之间不存在一一对应关系: 它仅仅通过给定的轮廓线约束所表示形体的 边界面,而在轮廓线之间的地方,形体的表 面可以任意变化。 3、没有形体的表面信息,不适于真实感显示, 由此导致表示的形体可能产生二义性
表面模型 表面模型 将形体表示成一组表面的集合 如果把线框模型中的棱线包围的部分定义为 面,所形成的模型便是表面模型。其数据结 构是在线模型的基础上附加一些指针,有序 地连接棱线。下图中表面编号表示第几个表 面,表面特征表面是平面还是曲面。 形体与其表面一一对应,适合于真实感显示 顶点属连接指针 表面编号5号 表面特征01202 起始指针11 2303 顶点个数4 3404 4|1 2021/1/21 浙江大学计算机学院
2021/1/21 浙江大学计算机学院 9 表面模型 ◼ 表面模型 ◼ 将形体表示成一组表面的集合 ◼ 如果把线框模型中的棱线包围的部分定义为 面,所形成的模型便是表面模型。其数据结 构是在线模型的基础上附加一些指针,有序 地连接棱线。下图中表面编号表示第几个表 面,表面特征表面是平面还是曲面。 ◼ 形体与其表面一一对应,适合于真实感显示 顶点个数 4 起始指针 1 表面特征 0 表面编号 5 4 1 3 4 0 2 3 0 1 2 0 属 连接指针 性 顶点 号 1 4 2 3 2 3 4 1
表面模型 n缺点: 不能有效的用来表示实体 原因: ■1、表面模型中的所有面未必形成一个封 闭的边界 2、各个面的侧向没有明确定义,即不知 道实体位于面的哪一侧 2021/1/21 浙江大学计算机学院
2021/1/21 浙江大学计算机学院 10 表面模型 ◼ 缺点: ◼ 不能有效的用来表示实体 ◼ 原因: ◼ 1、表面模型中的所有面未必形成一个封 闭的边界 ◼ 2、各个面的侧向没有明确定义,即不知 道实体位于面的哪一侧