计算机图形学--三角网格相关概念

本文介绍了三角网格的概念,包括顶点几何信息、拓扑连接和附加属性。讲解了半边表示法在存储和遍历网格中的优势,以及如何通过双向链接表存储额外信息。此外,还概述了网格处理的几个方面,如简化、细分和重剖,特别是层次细节网格简化技术,用于在保持视觉效果的同时减少几何复杂性。最后提到了特征敏感网格处理,用于优化网格的规则性和保持关键特征。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文整理自西安交通大学软件学院祝继华老师的计算机图形学课件,请勿转载

三角网格的概念

三角网格描述

  • 顶点几何信息:
    • n个顶点 V = ( v 1 , v 2 , … , v n ) V=(v_1,v_2,…,v_n) V=(v1,v2,,vn)
  • 三角网络拓扑连接的信息
    • 一维的边:对应顶点的二元组,如 ( v 1 , v 2 ) (v_1,v_2) (v1,v2)
    • 二维的面:对应顶点的有序三元组(逆时针),如 ( v 1 , v 2 , v 3 ) (v_1,v_2,v_3) (v1,v2,v3)
  • 附加属性:
    • 与某顶点、边或面关联的法向、纹理坐标等信息。

三角网格模型的存储

  • 可通过不同的方法获得:
    • 三维扫描仪,采用特定方法生成三角网格模型;
    • 三维动画和造型软件。
  • 文件格式:
    • 文本:易于阅读和理解;(OBJ和PLY文件格式)
    • 二进制:具有较高的编码效率。

三角网格的半边表示

  • 精确的表示三角网格:
    • 只需存储顶点和每个面所包含的顶点。
  • 对网格拓扑进行检索和遍历:
    • 按顺时针顺序遍历包含某顶点的所有面。
  • 原始的存储结构:需要遍历整个模型;
  • 改进的存储结构:增加少量的存储量,提供一系列访问的便利,例如三角网格的半边表示结构。

双向链接表

把一条无向的边拆分成两条有向的“半边”,规定半边的方向总是沿着逆时针方向

  • 半边e和半边Opposite(e)对应同一条边;
  • 除顶点、边和面外,存储额外信息

image-20220216161505865

存储的信息

  • 顶点的几何信息,即空间坐标(v);
  • 一条从该顶点出发的半边(e):
    • 该半边的源顶点Origin(e)
    • 该半边在同一三角形中的下一半边Next(e)
    • 与该半边同属一条边的对边Opposite(e)
    • 该半边所属面IncFace(e)

此存储结构便于各种网格上的遍历操作

  • 获得半边e的上一半边: Prev(e)= Next(Next(e))。
  • 半边e指向的顶点:Target(e)= Origin(Next(e))。

网格处理概述

从应用目标出发,网格处理包括

  • 简化:用较少面片表示几何,提高绘制效率;
  • 细分:以原始网格为基础,按一定规则生成包含更多面片的几何;
  • 重剖:为了获得更规则的网格模型,可能具有更少或更多的面片

网格简化

减少已有网格的面片数量,仍能表达原三维模型的过程

层次细节网格简化技术

Level of Detail(LOD)

  • 基本不影响画面视觉效果的条件下,逐次简化景物的表面细节来减少场景的几何复杂性,提高绘制算法的效率;
  • 实质:降低显示三维场景模型的复杂度,损失一定的图形质量,达到实时绘制目的

基本原理

对原始多面体模型,建立不同逼近程度的几何模型:

  • 每个模型均保留一定层次的细节;
  • 近处观察物体,静止或运动较慢物体,采用精细的模型;
  • 远处观察物体,运动较快的物体,采用较粗糙的模型;

建立原始网格模型的不同层次细节的模型

  • 顶点删除:删除一个顶点,对相邻三角形形成的空洞作三角剖分,保持网格的拓扑一致性
  • 边压缩:把一条边压缩为顶点,与该边相邻两个三角形退化,两个顶点融合为一个新的顶点
  • 面片收缩:把面片收缩为顶点,本身极其相邻三个三角形都退化,三个顶点收缩为一个新顶点

image-20220216162645300

网格细分

通过按一定规则给网格增加顶点和面片数量,让网格模型变得更加光滑。

  • Loop细分法;
  • 3 \sqrt 3 3 细分法;
  • Butterfly细分

Loop细分法

  • 最早的基于三角网络的细分法;
  • 步骤:
    • 增加顶点:调增网格的拓扑结构;
    • 顶点位置调整:平滑网格的粗糙程度。
  • 生成两类顶点,E-顶点和V-顶点

模型细分的一些示例图

image-20220216164914932

特征敏感网格重剖

在网格简化后的模型中,三角形形状的规则性难以有较好的保证

三角网格模型的规则性指标:

  • 网格中顶点的度数尽可能接近于6;
  • 每个三角面的顶角尽可能的接近于60度;
  • 构成网格的各边的边长尽可能相近

网格重剖:生成较规则的网格模型,并尽可能与原网格在几何上相近

特征敏感度量

特阵区域:具有至少一个较大主曲率的区域

  • 对于几何模型的外观及表达尤为重要;
  • 特征区域曲面上单位法向发生变化:尖锐特征,平滑特征,平坦区域

特阵敏感度量:通过改变度量,为与特阵相关的网格处理提供一种统一的解决方案

  • 欧氏度量;
  • 马氏距离。

特阵敏感距离

image-20220216171521908

image-20220216171538430

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Hydrion-Qlz

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值