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

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

LeetCode刷题:876. 链表的中间结点

题目: 是否参考题解:否 做题思路:看到题目关于奇偶数的题,首先想到了用计数器把链表遍历一遍,然后将计算出的数据个数count/2的下标作为头结点便可以遍历出来结果 题解思路:在评论区学习到还有两种解题思…

书生-浦路大模型全链路开源体系

2023年,大模型成为热门关键词 论文链接 大模型已经成为发展通用人工智能的重要途经 模型评测过程:从模型到应用 全链条开源开发体系 | 数据: 多模态融合 万卷包含文本、图像和视频等多模态数据,涵盖科技、文学、媒体、教育和法…

【React】class组件生命周期函数的梳理和总结(第一篇)

1. 前言 本篇梳理和总结一下React的生命周期函数,方便使用class组件的同学查阅,先上生命周期图谱。 2. 生命周期函数 生命周期函数说明constructor(props) 功能:如果不需要初始化state或不进行方法绑定,class组件可以不用实现构造…

工业物联网上篇——什么是IIOT?

工业物联网背后的理念是使用工业设施中“哑巴设备”多年来产生的数据。装配线上的智能机器不仅可以更快地捕获和分析数据,且在交流重要信息方面也更快,这有助于更快、更准确地做出业务决策。 信息技术(IT)和运营技术(O…

1.3 力扣二叉树中等题

题目一: 669. 修剪二叉搜索树 给你二叉搜索树的根节点 root ,同时给定最小边界low 和最大边界 high。通过修剪二叉搜索树,使得所有节点的值在[low, high]中。修剪树 不应该 改变保留在树中的元素的相对结构 (即,如果没有被移除&…

图像清晰度评估指标

图像清晰度评估涉及多个指标,这些指标可用于定量测量图像的清晰度和质量。 以下是一些常见的图像清晰度评估指标: 均方根误差(Root Mean Square Error,RMSE): 通过计算原始图像和处理后图像之间的像素差异的…

【计算机视觉】常用图像数据集

图像数据集 模型需要好的数据才能训练出结果,本文总结了机器学习图像方面常用数据集。 MNIST 机器学习入门的标准数据集(Hello World!),10个类别,0-9 手写数字。包含了60,000 张 28x28 的二值训练图像,10…

滑动窗口最大值(力扣239题)

单调递减队列: 在解决题目之前,我们先来了解一下单调递减队列,它其实就是在队列的基础上多加了一些限制,如下图: 要求队列中的元素必须按从大到小的顺序排列。 如果向单调递减队列中加入数字 1,可以直接加入…

【Vue2+3入门到实战】(22)VUE3之组合式API - setup、reactive和ref函数、computed、watch、生命周期函数详细讲解

目录 一、组合式API - setup选项1. setup选项的写法和执行时机2. setup中写代码的特点3. <script setup>语法糖 二、组合式API - reactive和ref函数1. reactive2. ref3. reactive 对比 ref 三、组合式API - computed四、组合式API - watch1. 侦听单个数据2. 侦听多个数据…

SpringBoot: 通过MyBatis访问ClickHouse

一、ClickHouse中建表&#xff0c;添加数据 二、SpringBoot项目添加mybatis、clickhouse、druid相关依赖 <dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>1.2.6</version></dependency>…

MySQL第三战:CRUD,函数1以及unionunion all

前言 在当今的数字化时代&#xff0c;数据库已经成为信息管理的重要工具。其中&#xff0c;MySQL作为一种流行的关系型数据库管理系统&#xff0c;已经广泛应用于各种业务场景。在本文中&#xff0c;我们将深入探讨MySQL中的核心概念&#xff0c;包括创建&#xff08;Create&a…

航空业数字化展翅高飞,开源网安专业服务保驾护航

​某知名航空公司是中国首批民营航空公司之一&#xff0c;运营国内外航线200多条&#xff0c;也是国内民航最高客座率的航空公司之一。在数字化发展中&#xff0c;该航空公司以数据驱动决策&#xff0c;通过精细化管理、数字创新和模式优化等方式&#xff0c;实现了精准营销和个…

线性代数——(期末突击)矩阵(上)-概念篇(矩阵的定义、矩阵的运算、特殊矩阵、初等变换)

目录 矩阵的定义 矩阵的运算 相加 相乘 数乘 与单位阵相乘 矩阵的幂 转置 特殊矩阵 数量矩阵 对称矩阵 伴随矩阵 逆矩阵 初等变换 矩阵的定义 由个数排成的m行n列的数表&#xff0c;称为m行n列的矩阵&#xff0c;简称矩阵&#xff0c;记作&#xff1a; 简记为…

Harmony 开始支持 Flutter ,聊聊 Harmony 和 Flutter 之间的因果

原创作者&#xff1a;恋猫de小郭 相信大家都已经听说过&#xff0c;明年的 Harmony Next 版本将正式剥离 AOSP 支持 &#xff0c;基于这个话题我已经做过一期问题汇总 &#xff0c;当时在 现有 App 如何兼容 Harmony Next 问题上提到过&#xff1a; 华为内部也主导适配目前的主…

异常检测 | Matlab基于GNN图神经网络的异常数据检测

异常检测 | Matlab基于GNN图神经网络的异常数据检测 目录 异常检测 | Matlab基于GNN图神经网络的异常数据检测效果一览基本介绍模型描述程序设计参考资料 效果一览 基本介绍 Matlab基于GNN图神经网络的异常数据检测。其核心思想是学习一个函数映射。本次使用人类活动数据&#…

MySQL的基础架构之内部执行过程

MySQL的逻辑架构图 如上图所示&#xff0c;MySQL可以分为Server层和存储引擎层两部分&#xff1a; 1&#xff09;Server层涵盖了MySQL的大多数核心服务功能&#xff0c;以及所有的内置函数&#xff08;如日期、时间、数学和加密函数等&#xff09;&#xff0c;所有跨存储引擎…

金色麦芒的2023

2023年即将过去&#xff0c;回首这一年&#xff0c;我深感自己在技术和职业生涯中取得了巨大的进步。这一年里&#xff0c;我不仅在技术层面有了更深入的掌握&#xff0c;也在个人成长和职业规划上有了更明确的方向。 首先&#xff0c;在技术层面&#xff0c;我今年最大的收获是…

2024.1.2 Redis 数据类型 Stream、Geospatial、HyperLogLog、Bitmaps、Bitfields 简介

目录 引言 Stream 类型 Geospatial 类型 HyperLogLog 类型 Bitmaps 类型 Bitfields 类型 引言 Redis 最关键&#xff08;应用广泛、频繁使用&#xff09;的五个数据类型 StringListHashSetZSet 下文介绍的数据类型一般适合在特定的场景中使用&#xff01; Stream 类型 St…

109-Gradle构建工具的学习

Gradle构建工具的学习 Gradle 简介&#xff1a; Gradle 是一款Google 推出的基于 JVM、通用灵活的项目构建工具&#xff0c;支持 Maven&#xff0c;JCenter 多种第三方仓库&#xff0c;支持传递性依赖管理、废弃了繁杂的xml 文件&#xff0c;转而使用简洁的、支持多种语言&am…

docker 搭建gitlab 恢复和备份

最近一直在折腾gitlab 代码管理系统 采用docker搭建 镜像网址 https://hub.docker.com/ 技术交流 http://idea.coderyj.com/ 1.因为我要恢复的版本是12.0.9的所有我就下载了docker-ce的12.0.9的镜像 1.下载镜像 docker pull gitlab/gitlab-ce:12.0.9-ce.02.安装 docker run …