多边形和三角形网格
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
多边形和三角 形网格 通过三维数字化仪或者三维激光测距装置直接对物 体表面进行采样来获取相应的顶点数据 概览
多边形表示 三角形表示
断层扫描重建,如CT、MRI等值面抽取
多边形表示物体的主要来源
原始数据一般为三维空间中的点集 采用适当的重建算法得到其多边形表示 这种基于测量的造型方法适用于外形复杂、难以用
辽宁师范大学计算机与信息技术学院 宋传鸣
《图形与游戏开发的3D数学》
多边形和三角 形网格 首先是一系列由v开头的行,每行表示一个顶点
概览 多边形表示 三角形表示
顶点编号从1开始,依次类推
三角网格的存储:OBJ格式
v后有3个浮点数,彼此用空格分开,分别为x,y,z坐标
然后是一系列由f开头的行,每行表示一个三角面片
《图形与游戏开发的3D数学》
多边形和三角 形网格 顶点坐标表(x,y,z)
概览 多边形表示 三角形表示
多边形表示的数据结构: OBJ格式
每个顶点处可能有多个平面片 ,一般情况下顶点数小
于面片数
鸭子模型中含有3474个顶点
纹理坐标表(u,v)
存储多边形表面每一顶点在相应纹理图像平面上的
顶点坐标表 纹理坐标表 法向表 面表
vi=(xi, yi, zi) i=1,2,…,顶点数目 vtp=(up, vp) p=1,2,…纹理坐标数目 vna=(nxa, nya, nza) a=1,2,…法向数目
fs=(vi/vtp/vna, vi/vtp/vna, vj/vtq/vnb, vk/vtr/vnc,… ) s =1,2,…,面片数
物体的多边形几何表示实例
野鸭模型的多边形表示包括6656个面片, 3474个顶点
(a) 线框图
(b) 原始法向着色图
(c) 平均法向着色图
辽宁师范大学计算机与信息技术学院 宋传鸣
《图形与游戏开发的3D数学》
多边形和三角 形网格 通过三维数字化仪或者三维激光测距装置直接对物 体表面进行采样来获取相应的顶点数据 概览
f后有3个整数 ,彼此用空格分开 ,对应三角面片的三个
顶点的编号,顶点顺序为逆时针
该结构的优点
格式简单,便于模型的读取和保存
该结构的不足
不利于检索和遍历 ,如要按逆时针顺序遍历包含某个
顶点的所有三角面片,则需要遍历整个模型
辽宁师范大学计算机与信息技术学院 宋传鸣
《图形与游戏开发的3D数学》
多边形和三角 形网格 按逆时针顺序遍历包含某个顶点的所有三角面片
概览 多边形表示 三角形表示
三角网格的半边表示:操作举例
辽宁师范大学计算机与信息技术学院 宋传鸣
《图形与游戏开发的3D数学》
多边形和三角 形网格 纹理映射坐标 : 对每个需要渲染的像素都要计算 2D 纹理映射坐标 , 这些坐标用以索引纹理图 , 从而为相 概览 应像素着色 多边形表示
数学公式直接描述的实物
辽宁师范大学计算机与信息技术学院 宋传鸣
《图形与游戏开发的3D数学》
多边形和三角 形网格 解析数学公式的逼近
概览 多边形表示 三角形表示
多边形表示物体的主要来源
常用的物体外形数学表示方法包括参数曲面、细分
曲面、隐式曲面等
通过控制逼近误差 ,对表面进行离散采样 ,就可以得到
形物体是处棱角分明的
如果顶点法向是周围面片法向的某种平均 ,则绘制结
果是光滑的
基于面片法向着色
辽宁师范大学计算机与信息技术学院 宋传鸣
基于平均法向着色
《图形与游戏开发的3D数学》
多边形和三角 形网格 面表
概览 多边形表示 三角形表示
多边形表示的数据结构: OBJ格式
由指向顶点、纹理坐标以及法向的指针组成 鸭子模型含有6656个面
计算机科学与技术专业研究型课程
多边形和三角形网格
宋传鸣
chmsong@lnnu.edu.cn
辽宁师范大学计算机与信息技术学院
多边形和三角 形网格 几何造型技术是一项研究在计算机中如何表示物体 模型形状的技术 概览
多边形表示 三角形表示
几何造型
几何造型技术在航空航天、汽车、造船、机械、建
《图形与游戏开发的3D数学》
多边形和三角 形网格 半边的数据结构
概览 多边形表示 三角形表示
起始顶点的指针
三角网格的半边表示
邻接面的指针(如果为边界,指针为NULL ) 下一条半边(逆时针方向)
相邻的半边
前一条半边(可选)
v5 e5,1 f2 e4,1 e3,1 e3,2 e7,1 f3 e1,1 f1 e4,2 v2 v1 e2,1 v3 e6,1 v4
《图形与游戏开发的3D数学》
多边形和三角 形网格 逐片操作 : 三角网格的一系列基本操作都是逐点和 逐三角形应用基本操作的结果 概览
多边形表示 三角形表示
渲染三角网格、旋转和缩放网格等
三角网格操作
焊接顶点 : 当两个或更多顶点相同 ( 也许有误差 ) 时 ,
将它们焊接在一起,只保留一个,删除其它的顶点 扫描三角形列表,将对B的引用全部换成对A的引用 现在B是孤立点,将它从顶点列表中删除
辽宁师范大学计算机与信息技术学院 宋传鸣
《图形与游戏开发的3D数学》
多边形和三角 形网格 焊接顶点时会出现的问题
概览 多边形表示 三角形表示
三角网格操作
焊接前应去除孤立点,否则易导致网格变形
当两个顶点均来自细长三角形时 ,焊接可能产生退
化三角形
辽宁师范大学计算机与信息技术学院 宋传鸣
辽宁师范大学计算机与信息技术学院 宋传鸣
《图形与游戏开发的3D数学》
多边形和三角 形网格 表示简单
概览 多边形表示 三角形表示
可以表示具有任意拓扑的物体 可以表示具有丰富细节的物体
多边形表示的优势
大部分图形硬件支持多边形物体的加速绘制 多边形表示的大规模场景 草地
16.7×106个多边形
多边形表示 三角形表示
三维测量和扫描
多边形表示物体的主要来源
辽宁师范大学计算机与信息技术学院 宋传鸣
《图形与游戏开发的3D数学》
多边形和三角 形网格 三维数字化仪
概览 多边形表示 三角形表示
多边形表示物体的主要来源
辽宁师范大学计算机与信息技术学院 宋传鸣
《图形与游戏开发的3D数学》
半边
起点
相邻半边
面
下条半边 前条半边
e3,1 e3,2
v3 v2
e3,2 e3,1
f1 f2
e1,1 e4,1
e2,1 e5,1
e4,1
e4,2
辽宁师范大学计算机与信息技术学院 宋传鸣
v3
v5
e4,2
e4,1
f2
f3
e5,1
e6,1
e3,2
e7,1
《图形与游戏开发的3D数学》
多边形和三角 形网格 面的数据结构
油轮
辽宁师范大学计算机与信息技术学院 宋传鸣
《图形与游戏开发的3D数学》
多边形和三角 形网格 只是物体的逼近表示,局部放大将导致几何失真
概览 多边形表示 三角形表示
难以用传统方法修改(编辑)物体外形 缺乏解析表达式,几何属性计算困难
多边形表示的不足
在表示复杂拓扑和具有丰富细节的物体时 , 数据量
满足精度的曲面物体的多边形逼近表示
参数曲面的多边形逼近
辽宁师范大学计算机与信息技术学院 宋传鸣
《图形与游戏开发的3D数学》
多边形和三角 形网格 解析数学公式的逼近
概览 多边形表示 三角形表示
多边形表示物体的主要来源
细分曲面的多边形逼近
隐式曲面的多边形逼近
辽宁师范大学计算机与信息技术学院 宋传鸣
三角形表示
三角网格顶点的额外信息
表面法向量
计算光照
进行背面剔除
模拟例子在表面弹跳的效果 通过只考虑正面而加速碰撞检测
辽宁师范大学计算机与信息技术学院 宋传鸣
《图形与游戏开发的3D数学》
多边形和三角 形网格
概览 多边形表示 三角形表示
大规模网格模型:雕塑
辽宁师范大学计算机与信息技术学院 宋传鸣
多边形表示 三角形表示
三角网格操作
辽宁师范大学计算机与信息技术学院 宋传鸣
《图形与游戏开发的3D数学》
多边形和三角 形网格 边缩坍:将边缩减为顶点
概览 多边形表示 三角形表示
三角网格操作
网格消减 : 将三角形和顶点数较多的网格变为三角
形和顶点数较少的网格 , 并且保持网格外观和主要 顶点尽可能不变
v5 e7,1 v4
e1,1 v1
f1 e2,1
e6,1
顶点 v1 v2 v3 v4 v5
辽宁师范大学计算机与信息技术学院 宋传鸣
坐标 (x1,y1,z1) (x2,y2,z2) (x3,y3,z3) (x4,y4,z4) (x5,y5,z5)
以此为起点的半边 e2,1 e1,1 e4,1 e7,1 e5,1
辽宁师范大学计算机与信息技术学院 宋传鸣
坐标,以确定表面上各顶点的颜色等材质属性
鸭子的身体、脚趾、眼睛和嘴具有不同的颜色
辽宁师范大学计算机与信息技术学院 宋传鸣
《图形与游戏开发的3D数学》
多边形和三角 形网格 法向表 (nx,ny,nz)
概览 多边形表示 三角形表示
多边形表示的数据结构: OBJ格式
控制物体绘制时的着色光滑程度 如果顶点法向取作所在面片的法向 ,绘制出来的多边
《图形与游戏开发的3D数学》
多边形和三角 形网格 焊接顶点时会出现的问题
概览 多边形表示 三角形表示
三角网格操作
焊接若应用原顶点的平均作为新顶点 ,可能会导致
多米诺效应
辽宁师范大学计算机与信息技术学院 宋传鸣
《图形与游戏开发的3D数学》
多边形和三角 形网格 面拆分:复制顶点,使边不再被共用,使得几何间断的 地方拓扑也是间断的 概览
庞大,建模、编辑、绘制、存储的负担重
辽宁师范大学计算机与信息技术学院 宋传鸣
《图形与游戏开发的3D数学》
多边形和三角 形网格 用三角形组成的面片列表来近似三维模型
概览 多边形表示 三角形表示
容易通过三维扫描技术大量获取
物体的三角网格表示
当采用足够多的面片时,可以任意精度逼近复杂曲面 数据结构简单,光照计算和显示速度快,适合并行处理
多边形和三角 形网格 也称为双向链接边表(Doubly Connected Edge List)
概览 多边形表示 三角形表示
基本思想
三角网格的半边表示
把一条无向的边拆分成两条有向的半边 ,边的方向沿
着逆时针方向
半边结构需要存储顶点、半边和面的信息
v5 e7,1
v2 e3,1 e1,1 f1 e2,1 e3,2
三角形表示
三角网格顶点的额外信息
表面法向量
计算光照
进行背面剔除
模拟例子在表面弹跳的效果
光照值
辽宁师范大学计算机与信息技术学院 宋传鸣
《图形与游戏开发的3D数学》
多边形和三角 形网格 光照值 : 对每个需要渲染的像素都要计算 2D 纹理映 射坐标 , 这些坐标用以索引纹理图 , 从而为相应像素 概览 着色 多边形表示
概览 多边形表示 三角形表示
边界上的一条半边
三角网格的半边表示
v2
e5,1 e e3,1 e3,2f2 4,1 f3
v5 e7,1 v4
面
半边
f1 f2 f3
e1,1 e3,2 e4,2
e1,1 v1
f1 e2,1 v3
e4,2
e6,1
辽宁师范大学计算机与信息技术学院 宋传鸣
《图形与游戏开发的3D数学》
辽宁师范大学计算机与信息技术学院 宋传鸣
《图形与游戏开发的3D数学》
多边形和三角 形网格 表示简单
概览 多边形表示 三角形表示
可以表示具有任意拓扑的物体 可以表示具有丰富细节的物体
多边形表示的优势
大部分图形硬件支持多边形物体的加速绘制 多边形表示的大规模场景
草地
多边形表示的复杂物体
e5wk.baidu.com1
f2 e4,1 e4,2
f3
v1
v3
e6,1
v4
辽宁师范大学计算机与信息技术学院 宋传鸣
《图形与游戏开发的3D数学》
多边形和三角 形网格 顶点的数据结构
概览 多边形表示 三角形表示
坐标值
三角网格的半边表示
指向以此顶点为起始端点的半边
v2
e5,1 e3,1 e3,2 f2 e4,1 e4,2 v3 f3
筑和电子等行业得到了广泛应用
并非所有物体的几何形状都可用数学公式精确描述
采用大量的平面片来逼近物体外形 平面片:三角形,四边形或n-边形
辽宁师范大学计算机与信息技术学院 宋传鸣
《图形与游戏开发的3D数学》
多边形和三角 形网格 多边形表示是图形学中最常用的物体几何表示方法
概览 多边形表示 三角形表示