CGAL的无限制的Delaunay图

        本章描述了构建L∞距离下线段Delaunay图的算法和几何特征。这些特征还包括绘制L∞距离下线段Delaunay图对偶(即L∞距离下线段Voronoi图)边缘的方法。L∞算法和特征依赖于欧几里得(或L2)距离下的线段Delaunay图算法和特征。L∞度量中的分段Voronoi图在VLSI设计中具有应用。

        在定义部分,我们给出了一些定义。在软件设计部分,我们解释了算法和特征的设计。

 

一组弱(左)和强(右)相交点的L∞分段Voronoi图。 

1、定义

        如果一对分段站点有一个公共点,并且这个公共点不在两个站点的任何内部,则称它们为弱相交。 如果一对分段站点相交,并且它们有一个以上的公共点,或者它们的公共点位于两个站点中的至少一个内部,则称它们为强相交。 如果一组分段站点中的所有对都是弱相交(强相交)或不相交,则称其为弱相交(强相交)。 见图。

        给定平面上的两点p=(px,py),q=(qx,qy),它们的L∞距离为

        d∞(p,q)=max(|px-qx|,|py-qy|)。

        不难看出,与定点c相距相等固定L∞距离r的点的几何轨迹是中心为c、边长为2r的轴平行正方形(L2中的类似物是中心为c、直径为2r的圆)。

        如果我们假设站点的一般位置,那么两点之间或一点与一段之间的 L∞ 等分线是多边形链;示例见图。这与 L2 沃罗诺伊图形成鲜明对比,其中一点与一段之间的等分线是抛物线弧。在 L∞ 沃罗诺伊图中,如果输入站点的坐标是有理数,则图中的顶点坐标也是有理数,而 L2 图则不是这样。有关 L∞ 等分线和图的更多详细信息,请参见。

L∞平分两点之间以及线段和点之间的距离。 

         与L2设置相比,L∞设置中的一个非常重要的区别是,在一些特殊的非一般位置情况下,两个站点之间的L∞平分线可以是二维的。由于这在绘制图表时会产生问题,我们通过将平分线二维区域的一部分分配给平分线的两个站点,对这些平分线进行一维化。此外,在采用L∞图表的VLSI应用中,这种图表的简化是可以接受的。

        如果两个不同的点p,q共享一个坐标,则它们的L∞平分线是二维的,如图52.3所示。在这种特殊情况下,我们通过取这两个点的欧几里得平分线来一维化平分线。

具有相同y坐标的两点之间的L∞平分线及其一维化。

         同样地,如图所示,轴平行线段内部与其端点之一之间的平分线也是二维的。我们通过取穿过端点并与线段垂直的线来一维化该平分线。

 垂直线段与其一个端点之间的L∞平分线及其一维化。

2、软件设计

        一般来说,L∞分段Delaunay图的算法和特征的软件设计依赖于L2分段Delaunay图的相应算法和特征。我们将L∞类实现为2D分段Delaunay图包中相应L2类的子类。与相应的L2类相比,L∞类的名称在图后包含额外的_Linf。

        L∞图构造的复杂度顺序与L2图相同,因此我们建议最终用户参考[2]进行复杂度分析。

2.1、线段Delaunay图

        Voronoi图适配器包中的Voronoi_diagram_2类可用于从L∞段Delaunay图(或层次结构)中获取L∞段Voronoi图。

2.2、线段Delaunay图特征

        与L2的情况一样,几何谓词非常复杂,我们不会为最终用户提供细节。我们的实现尽可能重复使用L2特性,但存在很大差异。我们支持几何和算术过滤,就像L2谓词一样。

        与L2设置类似,SegmentDelaunayGraphLinfTraits_2概念有四个模型,其中两个支持强相交位点(Segment_Dlaunay_graph_Linf_traits_2、Segment_DLaunay_graph_Linf_filtered_traits_2),并且其中两个不支持交叉位点(Sement_DlaunaY_graph_Linf_traits_without_interctions_2、Segment-Dlaunay_Grah_Linf_ffiltered_trats_without _interctionS_2)。请参阅Delaunay图形包手册的优化内存分配小节,该小节解释了何时使用这些特性中的每一个。

2.3、线段Delaunay图的层次

        Segment_Dlaunay_graph_Linf_hierarchy_2类等效于Segment_DLaunay_graph_hierarchy_2,但它在层次结构的每个级别中都使用Segment_Daunay_graph-Linf_2类,而不是Segment_Delanay_graph_2。

2.4、从Delaunay图求Voronoi图

        Voronoi图适配器包中的Voronoi_diagram_2类可用于获得L∞从L∞节段Delaunay图(或层次结构)中分割Voronoi图。

3、其他

        CGAL::Segment_Delaunay_graph_Linf_2 是CGAL库中的一个类,它表示一个L∞分段Delaunay图。

CGAL 5.6 - L Infinity Segment Delaunay Graphs: User Manual

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

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

相关文章

redis 面试问题 (更新中 ing)

reids 是做什么的 为什么那么快 有哪些使用场景 1.数据缓存 2.计数器 3.限时 4.限流 5.分布式锁 6.队列 7.发布 订阅 redis有哪些 数据结构 常用的 string 对字符串 、整数、浮点数list 链表 ,字符串set 不重复集合 ,交集、并集 差集hash 无序散列…

月报总结|Moonbeam 12月份大事一览

一转眼已经到年底啦。本月,Moonbeam基金会发布四个最新战略重点:跨链解决方案、游戏、真实世界资产(RWA)、新兴市场。其中在新兴市场方面,紧锣密鼓地推出与巴西公司Grupo RO的战略合作。 用户教育方面,为了…

大创项目推荐 深度学习人脸表情识别算法 - opencv python 机器视觉

文章目录 0 前言1 技术介绍1.1 技术概括1.2 目前表情识别实现技术 2 实现效果3 深度学习表情识别实现过程3.1 网络架构3.2 数据3.3 实现流程3.4 部分实现代码 4 最后 0 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 深度学习人脸表情识别系…

如何使用Python3 Boto3删除AWS CloudFormation的栈(Stacks)

文章目录 小结问题及解决有关Json文件的输入和输出使用Python3及正则表达式查找字符串包含某个子字符串使用Python3 Boto3删除AWS CloudFormation的栈(Stacks) 参考 小结 本文记录了使用Python3的Boto3包删除AWS CloudFormation的栈(Stacks&…

Git从远程仓库拉取指定的分支

一、git clone 命令获取 使用git管理代码版本的时候&#xff0c;本地分支默认与远程同名分支建立追踪关系。文章开始也提到git clone <url>命令默认将整个远程版本库克隆到本地&#xff0c;但是git clone -b <分支名称>命令可以将指定的某一个远程分支拉取到我们本…

优雅地展示20w单细胞热图|非Doheatmap 超大数据集 细胞数太多

单细胞超大数据集的热图怎么画&#xff1f;昨天刚做完展示20万单细胞的热图要这么画吗&#xff1f; 今天就有人发消息问我为啥他画出来的热图有问题。 问题起源 昨天分享完 20万单细胞的热图要这么画吗&#xff1f;&#xff0c;就有人问为啥他的数据会出错。我们先来看下他的…

imgaug库指南(一):从入门到精通的【图像增强】之旅

文章目录 引言imgaug简介安装和导入imgaug代码示例imgaug的强大之处和用途小结结尾 引言 在深度学习和计算机视觉的世界里&#xff0c;数据是模型训练的基石&#xff0c;其质量与数量直接影响着模型的性能。然而&#xff0c;获取大量高质量的标注数据往往需要耗费大量的时间和…

(JAVA)-反射

什么是反射&#xff1f; 反射允许对成员变量&#xff0c;成员方法和构造方法的信息进行编程访问。 说简单点就是反射能将类里面的构造方法&#xff0c;成员变量,修饰符,返回值&#xff0c;注解&#xff0c;类型&#xff0c;甚至异常等类里面的所有东西都能够获取出来。 关于C…

团子杂记:SAP PS or 项目管理软件(PMIS )? PPM/P6

众所周知SAP的PS模块在项目型企业的SAP应用中扮演着核心角色&#xff0c;整个项目端到端的业务执行、财务核算、控制及分析都是通过PS作为主线&#xff0c;依赖于PS中的项目对象&#xff08;如WBS元素、网络活动等&#xff09;实现的。 在实施SAP的过程中&#xff0c;可以看到…

Nest 框架:解锁企业级 Web 应用开发的秘密武器(上)

&#x1f90d; 前端开发工程师&#xff08;主业&#xff09;、技术博主&#xff08;副业&#xff09;、已过CET6 &#x1f368; 阿珊和她的猫_CSDN个人主页 &#x1f560; 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 &#x1f35a; 蓝桥云课签约作者、已在蓝桥云…

RKE安装k8s及部署高可用rancher之证书私有证书但是内置的ssl不放到外置的LB中 4层负载均衡

先决条件# Kubernetes 集群 参考RKE安装k8s及部署高可用rancher之证书在外面的LB&#xff08;nginx中&#xff09;-CSDN博客CLI 工具Ingress Controller&#xff08;仅适用于托管 Kubernetes&#xff09; 创建集群k8s [rootnginx locale]# cat rancher-cluster.yml nodes:- …

网络安全—模拟ARP欺骗

文章目录 网络拓扑安装使用编辑数据包客户机攻击机验证 仅做实验用途&#xff0c;禁止做违法犯罪的事情&#xff0c;后果自负。当然现在的计算机多无法被欺骗了&#xff0c;开了防火墙ARP欺骗根本无效。 网络拓扑 均使用Windows Server 2003系统 相关配置可以点击观看这篇文章…

【iOS安全】JS 调用Objective-C中WKWebview Handler的三种方式

有三种实现途径 1. WKScriptMessageHandler OC部分&#xff1a;注册并实现Handler 将OC中的方法"nativeMethod"注册为JavaScript Message Handler&#xff0c;从而WebView中的JavaScript代码可以调用该方法 // Register in Objective-C code - (void)setupWKWebVi…

算法通关村番外篇-数组实现队列

大家好我是苏麟 , 今天来用数组实现一下队列 . 数组实现队列 顺序存储结构存储的队列称为顺序队列&#xff0c;内部使用一个一维数组存储&#xff0c;用一个队头指针 front 指向队列头部节点(即使用int类型front来表示队头元素的下标)&#xff0c;用一个队尾指针rear(有的地方…

WiFi7: EMLSR 操作之三 – 运行时

non-AP 必须在EMLSR link(s)上侦听。侦听包括CCA和接收initial Control frame。 侦听时处于awake状态&#xff0c;但不限制active或者PS模式 group addressed 帧必须缓存initial control frame遵守以下规则&#xff1a; > 以non-HT(DUP)格式发送&#xff0c;6Mbps/12Mbp…

vue3中pdf打印问题处理

1 get请求参数问题 之前的请求是post得不到参数&#xff0c;今天发现的问题很奇怪&#xff0c;从前端进入网关&#xff0c;网关居然得不到参数。 前端代码 const print () > {let linkUrlStr proxy.$tool.getUrlStr(proxy.$api.invOrder.psiInvOrder.printSalOutstock,{a…

【Java】面向对象程序设计 期末复习总结

语法基础 数组自带长度属性 length&#xff0c;可以在遍历的时候使用&#xff1a; int []ages new int[10];for (int i 0; i < ages.length; i)System.out.println(ages[i]); 数组可以使用增强式for语句进行只读式遍历&#xff1a; int[] years new int[10];for (int ye…

Git(3):Git环境常用命令

1 获取本地仓库 要使用Git对我们的代码进行版本控制&#xff0c;首先需要获得本地仓库 &#xff08;1&#xff09;在电脑的任意位置创建一个空目录&#xff08;例如test&#xff09;作为我们的本地Git仓库 &#xff08;2&#xff09;进入这个目录中&#xff0c;点击右键打开…

Go 语言教程

发现一篇特别好的教程入门篇&#xff0c;记录下来&#xff1a; Go从入门到精通(持续更新) - 知乎 Go官网&#xff1a; iThe Go Programming Languageg gitee上面的一些开源项目 后台管理框架 - Go - 后台管理框架 - 开源软件 - Gitee.com

ElasticSearch数据同步

文章目录 ElasticSearch数据同步1. 同步调用2. 异步通知3. 监听binlog4. 工作中处理同步的问题 ElasticSearch数据同步 ElasticSearch中酒店数据来自于mysql数据库&#xff0c;因此MySQL数据发生改变时&#xff0c;ElasticSearch也必须跟着改变&#xff0c;这个就是ElasticSear…