06SolidModel

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
根据立体元素之间的关系,拓扑关系分为九种:
V2
V2
V3
e2
e
V1 边-点包含性
f
V1
V4
面-点包含性
e3 f
e1
e4
面-边包含性
V4
V2
V3
e2
e1
V1 顶点相邻性
V1 e2
e3 e1
e e3
e4 边相邻性
f2 V1
f3 f1
顶点-边相邻性
顶点-面相邻性
f2
f1
f3
面相邻性
f3 f1 e 面-边相邻性
关系
v2
f1 v1
f2 v3
v4
21
OpenGL Polyhedron Functions
• OpenGL Polyhedron Functions – glutWireTetrahedron() – glutWireCube() – glutWireOctahedron() – glutWireDodecahedron() – glutWireIcosahedron()
38
细分表示-空间位置枚举表示
• 形体空间细分为小的均匀的立方体单元 • 用三维数组C[I][J][K]表示物体,数组中的元素与单位小立方
体一一对应 –当C[I][J][K] = 1时,表示对应的小立方体被物体占据 –当C[I][J][K] = 0时,表示对应的小立方体没有被物体占据
39
细分表示-八叉树表示
E3 {V3,V4, F2,}
E4 {V4,V2, F1, F2}
接下来的问题?
E5 {V4,V1, F1,}
V {V1,V2,V3,V4} {(x1, y1, z1),(x2, y2, z2 ),(x3, y3, z3),(x4, y4, z4 )]
25
4.翼边结构:翼边结构是一种普通的数据结构,用边节点 的环信息来表示,属于表面模型。
组单元实体,如长方体、圆柱体、圆锥体、球体等。 ② 由参数定义的一条(或一组)截面轮廓线,沿一条(或
一组)空间参数曲线作扫描运动产生的形体。
二、几何信息与拓扑关系
几何关系描述物体的位置和大小,主要用顶点坐标和长宽 等参数来表示。
拓扑关系用来描述点、棱边及面片之间的邻接关系,具体 表现为棱边及面片的数据结构指向顶点的指针。
以边为主线组织数据,数据结构的每一个 节点记录着与边有关的信息。
每个节点的内容包括: ①有两个顶点指针,分别指向该边的
起、终点的位置; ②有两个面指针,分别指向包含该边
的左右两个表面的环表。
③.有边指针,分别指向该边端点处相连的其它边。
Solid Modeling
• 多边形网格表示法-边界表示
• 构建问题:
–以几何描述方式直接输入模型
–通过编写程序来生成模型 –使用建模程序
如何构建?
–使用三维数字化仪器对真实模型进行不同点采样
–根据同一个物体的一幅或多幅图像进行重建
27
边界表示
• 边界表示的优点是: –绘制高效 –覆盖域大,原则上能表示所有的形体
缺点?
28
The Problems of Polygons
• 对一个外接立方体的形体进行前 后、左右、上下等部分八个小立 方体,如果小立方体单元为满或 为空,表示该立方体完全在形体 中或完全不在形体中,则其停止 分解;对部分形体占有的小立方 体需进一步分解为八个子立方体, 直至所有小立方体单元要么全部 满,要么全部空,或已分解到规 定的分解精度为止。
67 2 37 2 33
• 正则形体由其内部点和边界组成的,内部点和边界 之间没有任何间隙。
• 有效实体:符合正则形体的实体。简称实体
• 如何判断?
欧拉公式
1.简单多面体的欧拉公式: V:顶点数,E:边数,F:表面数
V-E+F=2
非简单多面体的欧拉公式:
V–E+F–H=2(C–G)
H:多面体表面上孔个数; G:贯穿多面体的孔个数; C:表示 独立、不相连的多面体数。
三维实体的表示方法
• 边界表示—多边形网格表示 • 构造实体几何表示 • 空间细分表示
• 建模路线
建模
• 建模: 三维几何信息的表示 • 外:屏幕上物体的立体外形如何表示? • 内:立体外形信息在计算机内部如何表示?
18
Байду номын сангаас
Some Sample Triangle Meshes
• 用许多简单的元素如三角形表示形状,而不是用少 得多的但是更复杂\更精确的元素来表示形状.
–枚举 –八叉树 –单元 • 建模路线
37
空间细分表示
• 细分表示(Space-partitioning):将形体按某种规则 分解为小的更易于描述的部分,每一小部分又可分 为更小的部分,这种分解过程直至每一小部分都能 够直接描述为止。
• 人们使用它或是因为原始数据已是以这种形式存储 或原始数据容易转换成这种表示.另外,在绘制CSG 模型时,可以把CSG表示转换成一个中间的含有体 素的数据结构,然后从这个数据结构进行光线跟踪 绘制.
上升为理论
19
边界表示
• 边界表示模型是一种采用描述形体表面方法的几何表 示模型,Boundary representations(B-reps)
• 一个形体一般可以通过其边界拆成一些有界的“面” 或“小片”的子集来表示,而每一个面又可以通过其 边界的边和顶点来表示。
• 若面的表示无二义性,则其边界表示模型也无二义性, 但通常不一定只有唯一的表示。
实体定义
• 刚性。一个实体必须有不变的形状。 • 具有封闭的边界,根据边界可将空间分为内部和外
部两部分。 • 内部连通 • 占据有效的空间 • 经过集合运算后,仍然是有效的实体。
实体的有效性判断
• 正则形体定义:形体上任意一点的足够小的邻域在 拓扑上应是一个等价的封闭圆,即围绕该点的形体 邻域在二维空间中可构成一个单连通域。
20
边界表示
• 按照体-面-环-边-点的层次,详细记录了构成形 体所有几何元素的几何信息及其相互连接的拓扑关系
• 边界表示的一个重要特点是在该表示法中,描述形体 的信息包括几何信息(Geometry)和拓扑信息 (Topology)两个方面
–几何信息:指形体在欧氏空间中的位置和大小
–拓扑信息:是形体各分量的数目及其相互之间的连接
41
细分表示-单元细分表示
• 单元细分表示
–对空间位置枚举表示的空间分割方法作了改进:
单一体素
多种体素
5 0 11
具有子孙的节点(P) 空节点(E) 实节点(F)
40
细分表示-八叉树表示
• 八叉树表示
–对空间位置枚举表示的空间分割方法作了改进:
均匀分割
自适应分割
–八叉树建立过程
•八叉树的根节点对应整个物体空间 •如果它完全被物体占据,将该节点标记为F(Full),算法结束; •如果它内部没有物体,将该节点标记为E(Empty),算法结束; •如果它被物体部分占据,将该节点标记为P(Partial),并将它分割 成8个子立方体,对每一个子立方体进行同样的处理
CSG的应用开始于三维对象的初始集,称为CSG基本 图元,如立方体、圆柱、圆锥等,基本图元可作为 CSG软件包的菜单选项来提供,基本图元也可以使用 扫描方法、样条构造或其他建模程序形成。
CSG表示可以看成是一棵有序的二叉树。
–其终端节点或是体素、或是形体变换参数。 –非终端结点或是正则的集合运算,或是变换(平移和/或旋
• 一个例子
33
扫描表示法(Sweep Representation)
• 将物体A沿着轨迹P推移得到物体B,称B为sweep体 • 平移sweep----将一个二维区域沿着一个矢量方向推移 • 旋转sweep----将一个二维区域绕旋转轴旋转一周
34
扫描表示法(Sweep Representation)
Problem #1 — Hard to edit • don’t want to just move individual vertices Problem #2 —Not always very compact description • it takes a lot of flat elements to make a smooth surface Problem #3 —Ease of construction • it will take long time to construction directly Example
曲线边由一系列型值点或控制点, 也可以用显式方程表示。 3.环: 环是有序、有向边组成的封闭边界,环有内外之分。 外环:确定面的最大外边界的环,按逆时针方向排序。 内环:而把确定面上内孔或凸台边界的环,按顺时针 方向排序。
4.面 面是二维几何元素,是形体上一个有限、非零的区域
范围:由一个外环和若干个内环界定其范围。 或:由一个外环确定其范围。
实体造型基础
一、基本几何元素
1.点: 点是几何造型中的最基本元素,它是0维几何元素。 形式:分端点、交点、切点、控制点、型值点、插值点
悬点和孤立点等,孤立点、悬点,但形体上不存在。 表示:一维空间中的点用一元数组;二维空间中的点用
二元数组。
2.边: 一维几何元素,是两个相邻面的交线。
形式:棱线、转向轮廓线等。 表示:直线边由其端点(起点和终点);
转)操作,这种运算或变换只对其紧接着的子结点(子形 体)起作用。
31
CSG二叉树表示
32
CSG表示法优缺点
• 优点 –数据结构比较简单,内部数据的管理比较容易; –控制性好:形状比较容易修改。
• 缺点 –对形体的表示受体素的种类和对体素操作的种类的限 制(CSG方法表示形体的覆盖域有较大的局限性)。 –形体的边界几何元素(点、边、面)是隐含地表示在 CSG中,故显示与绘制CSG表示的形体需要较长的时间 –表示不唯一
数据结构?
22
边界表示的数据结构
• 边界表示法的数据结构有四种方法:直接表示、顶点 表指针表示、边表指针表示、翼边表示、半边表示
• 1.直接表示
• 以面为基础,按照体、面、顶点坐标的树结构层次
组织元素数据
v2
O {F1 F2}
f1 v1
f2 v3 v4
F1 {(x1, y1, z1),(x2, y2, z2 ),(x4, y4, z4)}
24
边界表示的数据结构
• 3.边表指针表示
• 以边/顶点,顶点/坐标,面/边三张关系表表示;
O {F1 F2} F1 {E1, E4, E5} F2 {E2 , E3, E4}
E1 {V1,V2, F1,}
v2
e1 f1
v1
e2 f2
e4
v3 e3
E2 {V2,V3, F2, }
e5
v4
29
Solid Modeling
• 边界表示-多边形网格表示法 • 结构实体几何法(Constructive Solid
Geometry,CSG) • 扫描表示法(Sweep Representation) • 细分表示
• 建模路线
30
结构实体几何法
通过两个指定对象间的并、交或差操作而生成一个新 的对象。
方向:表面的外法线的方向作为该面的正方向。 种类:平面、二次曲面、构造曲面等。 表示:平面用属于该平面上的三点、相交直线等表示,
曲面用方程表示。
5.体
体是三维几何元素,由封闭表面围成的空间,是非空、 有界的封闭子集,其边界是有限面的并集。
体的定义形式: ① 用一些确定的尺寸参数控制其最终位置和形状的一
• 广义sweep
–任意物体沿着任意轨迹推移 –推移过程中物体可以变形
35
扫描表示法(Sweep Representation)
• 优点 –容易构建,适合做图形输入手段
• 缺点 –绘制需要前处理:不能直接获取形体的边界信息 –表示形体的覆盖域有限
• 一个例子
36
Solid Modeling
• 边界表示-多边形网格表示法 • 构造表示(CSG) • 细分表示
计算机图形学 Solid Modeling
主讲:侯守明 河南理工大学 计算机学院
1
造型技术
• 研究如何在计算机中建立恰当的模型来表示不同 物体对象的技术。
• 曲面造型:研究在计算机内如何描述和表示一张 曲面并对其控制。
• 实体造型:研究在计算机内如何秒速、定义及表 示一个三维物体。
• 例子
2
未来电动越野车
F2 {(x2, y2, z2 ),(x3, y3, z3),(x4, y4, z4)}
23
边界表示的数据结构
• 2.顶点表指针表示
• 以顶点/坐标和面/顶点序列两张关系表表示
v2
O {F1 F2} F1 {1, 2, 4} F2 {4, 2,3}
f1 v1
f2 v3 v4
V {V1,V2 ,V3,V4} {(x1, y1, z1), (x2, y2, z2 ), (x3, y3, z3), (x4, y4, z4 )}
相关文档
最新文档