Delaunay三角化重要性质,最小角最大化

news2025/1/11 15:54:34

欢迎关注更多精彩
关注我,学习常用算法与数据结构,一题多解,降维打击。

最大化最小角

推论 有点集P是一般点集(没有多点共线,没有4点共圆),那么该点集的delauney三角后的最小角不小于其他非delauney三角化后的最小角。

有序角

为了证明上述推论,先给出一些概念定义。

对于P点集的任意三角化T, A(T) 为所有角的有序数组。

A ( T ) = ( α 1 , α 2 , . . . , α 3 m ) , m 是三角形个数 A(T) = (\alpha_1, \alpha_2,..., \alpha_{3m}), m是三角形个数 A(T)=(α1,α2,...,α3m),m是三角形个数

T’为P点集的另一个三角化

A ( T ) < A ( T ′ ) 当且仅当存在 i , 使得 α i < α i ′ 且 α j = α j ′ ( j < i ) A(T)< A(T') 当且仅当存在i, 使得 \alpha_i<\alpha_i' 且 \alpha_j=\alpha_j' (j<i) A(T)<A(T)当且仅当存在i,使得αi<αiαj=αj(j<i)

有序角最大

引理 有点集P是一般点集(没有多点共线,没有4点共圆),D*为该点集的delauney三角化,T为任意三角化,则A(T)<=A(D*)

根据lawson flip 算法我们知道,从普通三角化到delauney三角化可以使用flip不满足空圆性的边来实现。

可以从flip对角的影响来证明。

在这里插入图片描述

证明:
上图中左边pqrs 四点共圆,根据圆周角定理,所有名称相同的角都是相等的。

右图中名称与左图相同的角意味着角是相等的,上划线代表大于,下划线代表小于。

右图通过虚线的辅助线,可以知道

α 4 — > α 4 , α 3 — > α 3 , α 1 — < α 1 , α 2 — < α 2 \overset{—}{\alpha_4}>\alpha_4, \overset{—}{\alpha_3}>\alpha_3, \underset{—}{\alpha_1}<\alpha_1, \underset{—}{\alpha_2}<\alpha_2 α4>α4,α3>α3,α1<α1,α2<α2

我们列举一下flip前(不满足空圆性)的角:

α 1 + α 2 , α 3 , α 4 , α 2 — , α 1 — , α 3 — + α 4 — \alpha_1+\alpha_2,\alpha_3,\alpha_4, \underset{—}{\alpha_2}, \underset{—}{\alpha_1},\overset{—}{\alpha_3}+\overset{—}{\alpha_4} α1+α2α3α4α2α1α3+α4

flip后的角:

α 1 , α 2 , α 3 — , α 4 — , α 2 — + α 3 , α 1 — + α 4 \alpha_1, \alpha_2,\overset{—}{\alpha_3},\overset{—}{\alpha_4},\underset{—}{\alpha_2}+\alpha_3,\underset{—}{\alpha_1}+\alpha_4 α1,α2α3,α4,α2+α3,α1+α4

可以发现flip后的所有都可以找到flip之前比自己小的角。

α 1 > α 1 — α 2 > α 2 — α 3 — > α 3 , α 4 — > α 4 , α 2 — + α 3 > α 3 α 1 — + α 4 > α 4 \begin{array}{c} \alpha_1> \underset{—}{\alpha_1}\\ \alpha_2> \underset{—}{\alpha_2}\\ \overset{—}{\alpha_3}>\alpha_3,\\ \overset{—}{\alpha_4}>\alpha_4,\\ \underset{—}{\alpha_2}+\alpha_3>\alpha_3\\ \underset{—}{\alpha_1}+\alpha_4>\alpha_4 \end{array} α1>α1α2>α2α3>α3,α4>α4,α2+α3>α3α1+α4>α4

所以每次有效的flip都会提升最小角。
增大A(T).

引理得证。

根据有序角最大,最小角也是最大的。


本人码农,希望通过自己的分享,让大家更容易学懂计算机知识。创作不易,帮忙点击公众号的链接。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1994546.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

HTML5+CSS3笔记(Xmind格式):第五天

Xmind鸟瞰图&#xff1a; 简单文字总结&#xff1a; HTML5CSS3知识总结&#xff1a; canvas坐标&#xff1a; 画图的基本步骤&#xff1a; 1.创建画布 2.获取画布 3.开始路径规划 4.规定画笔颜色 5.规定画笔粗细 6.开始作…

OLAP与OLTP:数据处理系统的两种核心架构

目录 一、什么是OLAP&#xff1f; 二、什么是OLTP&#xff1f; 三、OLAP与OLTP的主要区别 四、结论 在数据管理和分析的领域中&#xff0c;OLAP&#xff08;在线分析处理&#xff09;和OLTP&#xff08;在线事务处理&#xff09;代表了两种重要的数据处理模式。它们在功能、目标…

MoE-LLaVA: Mixture of Experts for Large Vision-Language Models

发表时间&#xff1a;6 Jul 2024 论文链接&#xff1a;https://arxiv.org/pdf/2401.15947 作者单位&#xff1a;Peking University Motivation&#xff1a;最近的进展表明&#xff0c;扩展大型视觉语言模型 (LVLM) 有效地提高了下游任务的性能。然而&#xff0c;现有的缩放方…

uniapp版本更新除了plus.runtime.getProperty的解决办法

以下是展示图 带尺寸的图片: 首先把以下代码放到想要更新弹出的页面 //template部分<uni-popup ref"popup" background-color"#fff"><versionUp handleCloseVersion"closeVersion"></versionUp></uni-popup>//script…

支付宝开放平台竟出现一张神秘人脸!

前言 ​ 我因一个单子来到支付宝开放平台来。在将其加入书签的时候&#xff0c;我发现出现了个神秘的人脸 一张笑容明媚的脸&#xff0c;就是出现的时候不太对 正常的收藏网址 应该是显示对应log 就不继续找相关例子了 ​ 添加书签的页面&#xff0c;本该出现log的地方缺出现了…

SQL注入实例(sqli-labs/less-23)

0、初始网页 1、闭合方式判断 闭合符号为单引号&#xff0c;通过测试发现过滤了注释&#xff0c;所以直接闭合 2、确定查询表的列数 确定查询表的列数为3列 ?id1 order by 3 3、确定回显位置 回显位置为第二列和第三列 ?id-1 union select 1,2,3 4、查看当前登录和数据…

【统信UOS】桌面系统通过自定义内网补丁仓库升级内网系统

原文链接&#xff1a;【统信UOS】桌面系统通过自定义内网补丁仓库升级内网系统 Hello&#xff0c;大家好啊&#xff01;今天给大家带来一篇关于在统信桌面系统上通过自定义内网补丁仓库升级内网系统的文章。在企业或组织内部网络环境中&#xff0c;为了安全性和便捷性&#xff…

《Ubuntu22.04环境下的ROS2学习笔记1》

一、在ROS2环境下创建工作空间 ROS2相比ROS1来说工作空间的创建有较大的不同&#xff0c;同时工作空间中的四个目录被更换为src(存放源码) &#xff0c; build(存放编译的中间文件) &#xff0c; install(存放可执行文件) &#xff0c; log(日志)。同时命令行也有些许变化&…

【循环神经网络】案例:周杰伦歌词文本预测【训练+python代码】

文章目录 1、简介2、数据集3、构建词典4、构建数据集对象5、构建网络模型6、构建训练函数6.1、多分类交叉熵损失函数&#x1f53a;6.2、Adam&#x1f53a;6.3、代码 7、构建预测函数8、word_to_index和index_to_word8.1、word_to_index8.2、index_to_word8.3、使用场景 9、Data…

OpenHarmony编译

简介&#xff1a;本文将会介绍编译OpendHarmony环境的搭建、编译、和刷机&#xff08;rk3568&#xff09; 使用场景&#xff1a;修改系统源码&#xff0c;需要验证修改的功能是否正确、编译镜像、编译SDK 1、VS Code&#xff0c;下载链接&#xff0c;用于修改源码 2、linux环…

“低代码”平台的机遇与挑战

低代码平台的机遇 提高开发效率&#xff1a; 低代码平台通过提供可视化的开发工具和可重用的组件&#xff0c;显著提高了开发效率。开发者能够更快速地构建和部署应用&#xff0c;迅速响应市场需求。据普遍观点&#xff0c;低代码平台能够提升30%以上的开发效率&#xff0c;而无…

记一次用户认证代码重构中设计模式及设计原则的使用

目录 一、需求二、初始代码 - 上来就怼三、重构1 - 单一职责&#xff08;方法级&#xff09;四、重构2 - 单一职责&#xff08;类级、策略模式&#xff09;、简单工厂五、重构3 - 依赖注入&#xff08;避免重复创建对象&#xff09;六、重构4 - 使用Map替代if...else、享元模式…

AI浪潮下的程序员命运:消失还是进化?

随着人工智能技术的迅猛发展&#xff0c;程序员职业正面临着前所未有的挑战与机遇。在这个变革的时代&#xff0c;程序员们究竟该如何应对&#xff0c;才能在AI浪潮中乘风破浪&#xff0c;开创属于自己的朝阳之路呢&#xff1f; 程序员这一职业正迎来前所未有的变革&#xff0…

DC-9靶机渗透测试

DC-9靶机 文章目录 DC-9靶机信息收集web渗透后台渗透用户横向移动权限提升靶机总结 信息收集 扫描目标主机存在的端口信息 存在80和22端口 看来思路应该不会有太大变化了&#xff0c;但是ssh端口是处于过滤的状态 进行漏洞扫描也没扫描出有可以利用的 但知道了一些界面 web渗透…

沪深300股指期货如何操作套期保值?

沪深300股指期货的套期保值是一种重要的风险管理工具&#xff0c;用于对冲投资组合面临的市场风险。 以下是套期保值流程的详细步骤说明&#xff1a; 第一&#xff0c;评估套保需求&#xff1a;投资者首先需要基于对市场走势的深入分析和对投资组合的细致评估&#xff0c;确定…

python-flask-上传多个文件并存储

本地环境&#xff1a;win10 / centos6 &#xff0c; python3 flask入门看这里&#xff1a; ↓ python-flask结合bootstrap实现网页小工具实例-半小时速通版_bootstrap flask-CSDN博客 https://blog.csdn.net/pxy7896/article/details/137854455 动态添加和删除表格中的行&…

论文概览 |《Urban Analytics and City Science》2024.07 Vol.51 Issue.6

本次给大家整理的是《Environment and Planning B: Urban Analytics and City Science》杂志2024年7月第51卷第6期的论文的题目和摘要&#xff0c;一共包括16篇SCI论文&#xff01; 论文1 Digital twins on trial: Can they actually solve wicked societal problems and chan…

[开端]JAVA抽象类使用到redis观察着

一、绪论 当redis内容发生变化时需要通知一些观察者做一些动作怎么做&#xff1f; 二、JAVA抽象类 public abstract class AbstractRedisChangeListener {public abstract void change(String key, String value, String crudType); }使用abstract进行修饰一个类 其中抽象类…

数字信号处理2: 离散信号与系统的频谱分析

文章目录 前言一、实验目的二、实验设备三、实验内容四、实验原理五、实验步骤1.序列的离散傅里叶变换及分析2.利用共轭对称性&#xff0c;设计高效算法计算2个N点实序列的DFT。3.线性卷积及循环卷积的实现及二者关系分析4.比较DFT和FFT的运算时间5.利用FFT求信号频谱及分析采样…

【机器学习】(基础篇三) —— 损失函数和梯度下降

损失函数 损失函数&#xff08;Loss Function&#xff09;&#xff0c;也称为代价函数&#xff08;Cost Function&#xff09;或误差函数&#xff08;Error Function&#xff09;&#xff0c;是机器学习和深度学习中一个核心的概念。它用于量化模型预测与实际目标之间的差异&a…