比质心更好的“中心点”

2024-03-13

我正在使用多边形的质心在地图应用程序中附加标记。这对于凸多边形来说绝对有效,对于许多凹多边形来说也非常好。

但是,某些多边形(香蕉、甜甜圈)显然不会产生所需的结果:在这些情况下,质心位于outside多边形区域。

有谁知道更好的方法来找到合适的点within任何多边形区域(可能包含孔!)来附加标记?


一种方法是生成并完善skeleton https://en.wikipedia.org/wiki/Straight_skeleton多边形的中点,然后使用骨架的中点放置标记(如果是文本,则正确定向文本)。这适用于大多数形状,包括带孔的形状、香蕉形或蝌蚪形的新月形。

CGAL 库有一个2D 直骨架和多边形偏移 https://doc.cgal.org/latest/Straight_skeleton_2/index.html模块,或者你可以使用PostGIS https://gwmap.s3.amazonaws.com/www/presentations/WyGEO-Casper-2015.pdf, 例如。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

比质心更好的“中心点” 的相关文章

  • 每个术语出现的次数

    我得到了一个数组a n 2 where n can be 10 5最大时有n个科目和n个学生 全部编号为 1 2 n a i 0 and a i 1 1 lt i lt n 表示在第 i 个科目中 所有来自a i 0 to a i 1 通过
  • 高效列出目录中的所有子目录

    请参阅迄今为止所采取的建议的编辑 我正在尝试使用 WinAPI 和 C 列出给定目录中的所有目录 文件夹 现在我的算法又慢又低效 使用 FindFirstFileEx 打开我正在搜索的文件夹 然后我查看目录中的每个文件 使用 FindNex
  • 数量重新分配逻辑 - 具有外部数据集的 MapGroups

    我正在研究一种复杂的逻辑 需要将数量从一个数据集重新分配到另一个数据集 在例子中我们有Owner and Invoice 我们需要从数量中减去Invoice准确地Owner匹配 在给定汽车的给定邮政编码处 减去的数量需要重新分配回同一辆车出
  • 我正在尝试寻找“调酒师算法”

    我正在解决旧编程竞赛中的一些示例问题 在这个问题中 我们输入了我们有多少调酒师以及他们知道哪种配方 每杯鸡尾酒的制作时间为 1 分钟 我们需要计算是否可以在 5 分钟内使用所有调酒师完成订单 解决这个问题的关键是尽可能高效地分配鸡尾酒 这就
  • 从 1 到 20 亿,像 (23,29) 这样相差 6 的连续素数对的数量

    如何在考虑时间复杂度的情况下从 1 到 20 亿 使用任何编程语言且不使用任何外部库 找到像 23 29 这样相差 6 的连续素数对的数量 尝试过埃拉托色尼筛 但获得连续素数是一个挑战 使用了生成器 但时间复杂度非常高 代码是 def ge
  • WPF - 路径几何...有没有办法绑定数据属性?

    我有一个ControlTemplate作为 气泡 弹出窗口AdornerLayer给定的控制 它工作正常 但我需要能够计算它应该显示的位置 中间 底部 代替
  • 如何优化分割重叠范围?

    我编写的这个 Python 脚本用于将重叠范围拆分为唯一范围 最后一次迭代 https codereview stackexchange com questions 285932 python script to split overlap
  • 如何让JComboBox中的内容居中显示?

    目前我有这个JComboBox 我怎样才能将其中的内容居中 String strs new String 15158133110 15158133124 15158133458 JComboBox com new JComboBox str
  • 如何从矩形点计算旋转角度?

    我有4分1 2 3 4闭合一个矩形 这些点按以下方式排列在数组中 x1 y1 x2 y2 x3 y3 x4 y4 我遇到的问题是矩形可以旋转一定角度 如何计算原始点 灰色轮廓 和角度 我试图在 javascript css3 transfo
  • 通过排列四个给定数字找到最大可能时间 HH:MM

    我最近为了工作晋升而参加了编码测试 这是我真正遇到的任务之一 我想知道什么是最好的方法来做到这一点 我使用了大量的 if 和 if else 这不是最干净的解决方案 但完成了工作 我被问到的问题是 将 4 个数字格式化为 24 小时时间 0
  • 融合元组以查找等价类

    假设我们有一个包含 k 个元素的有限域 D d1 dk 我们认为 S 是 D n 的子集 即一组 形式的元组 其中 ai 在 D 中 我们希望使用 S 2 D n 的子集 即一组 形式的元组 其中 Ai 是 D 的子集 来 紧凑地 表示它
  • 关于逻辑/算法的想法以及如何防止线程写入 Sql Server 中的竞争

    我有以下逻辑 public void InQueueTable DataTable Table int incomingRows Table Rows Count if incomingRows gt RowsThreshold async
  • 寻找簇的中心

    我有以下问题 进行抽象以找出关键问题 我有 10 个点 每个点与其他点有一定距离 我想要 能够找到簇的中心 即与其他点的成对距离最小的点 令 p j p k 表示点 j 和 k 之间的成对距离p i 是簇的中心点 iff p i s t m
  • TextView位于屏幕中央[重复]

    这个问题在这里已经有答案了 可能的重复 如何在 Android 中的 TextView 中水平和垂直居中文本 https stackoverflow com questions 432037 how do i center text hor
  • Diamond-Square 算法的平滑问题

    我正在使用菱形方形算法来生成随机地形 它工作得很好 除了我让这些大圆锥形状要么伸出或伸入地形 问题似乎在于 时不时会有一个点被设置得太高或太低 Here is a picture of the problem And it can be b
  • 在Python中确定句子中2个单词之间的邻近度

    我需要确定 Python 句子中两个单词之间的接近度 例如 在下面的句子中 the foo and the bar is foo bar 我想确定单词之间的距离foo and bar 确定之间出现的单词数foo and bar 请注意 该词
  • 快速计算三角形与单位正方形的交面积

    在我当前的项目中 我需要计算无限网格中三角形和单位正方形的交集面积 对于每个三角形 由三对浮点数给出 我需要知道面积 在区间内 0 1 它与它相交的每个正方形都有共同点 现在我将两者 三角形和正方形 转换为多边形并使用Sutherland
  • 为什么我们需要检测链表中的循环

    我看到很多关于如何检测链表中的循环的问答 但我想了解的是我们为什么要这样做 换句话说 检测链表中的循环的实际用例是什么 在现实生活中 您可能永远不需要检测链表中的循环 但是执行此操作的算法很重要 我在现实生活中多次使用它们 例如 我经常会递
  • 在哪里可以找到有关双三次插值和 Lanczos 重采样的好读物?

    我想用 C 实现上述两种图像重采样算法 双三次和 Lanczos 我知道现有的实现有几十种 但我仍然想制作自己的实现 我之所以这么做 部分原因是我想了解它们是如何工作的 部分原因是我想为它们提供一些主流实现中没有的功能 例如可配置的多 CP
  • 比较两棵树的伪代码

    这是我遇到过几次的问题 并且不确信我使用了最有效的逻辑 例如 假设我有两棵树 一棵是文件夹结构 另一棵是该文件夹结构的内存 模型 我希望比较两棵树 并生成一棵树中存在的节点列表 而不是另一棵树中存在的节点列表 反之亦然 是否有公认的算法来处

随机推荐

  • 从命令行在 Hadoop 中检测压缩编解码器

    有没有简单的方法可以找出 Hadoop 中用于压缩文件的编解码器 我是否需要编写 Java 程序 或者将文件添加到 Hive 以便我可以使用describe formatted table 一种方法是在本地下载文件 使用hdfs dfs g
  • 具有接口的枚举类成员无法在内部找到方法

    我遇到了一个奇怪的问题 我不确定这是编译器问题还是我对接口枚举的理解 我正在使用 IntelliJ IDEA 12 构建一个 Android 项目 并且我有一个这样的类 public class ClassWithEnum private
  • Azure 服务总线序列化类型

    随着我们转向面向服务的体系结构 我们已开始研究使用 Windows Azure 服务总线来替代当前的队列 大部分文档都很清楚 但是我很难确定哪种类型的序列化BrokeredMessage当提供主体时使用 例如 假设我实例化了一个Broker
  • React:formik 表单,如何在回调函数内提交后使用状态

    我在用formik插件reactjs我想要useState表单提交后的变量 Both this and setState未定义 我无法实现它 有人可以帮我完成这件事吗 See screenshot below In JavaScript 默
  • android 延迟加载未在手机上显示图像或显示速度很慢

    我正在使用 JSON 来解析在线 xml 文档以及两种延迟图像加载的方法 以下是我的源代码 解释和我的问题 解释 方法一 使用AsyncTask和线imageLoader DisplayImage String jsonImageText
  • 安装chatterBot时出错

    每当我尝试使用命令安装 ChatterBot 时pip install ChatterBot它给出了这个错误 Retrying Retry total 0 connect None read None redirect None after
  • 扩展点或从 Liquid 模板访问 OpenApiDocument

    We have 规范扩展 https github com OAI OpenAPI Specification blob master versions 3 0 2 md specification extensions i e x isP
  • Git 子模块工作流程建议

    所以几天前我开始使用 Git 聚会已经很晚了 别骂 真正开始熟悉基本命令 想法和工作流程 然而 子模块确实让我大吃一惊 我正在尝试贡献代码FuelPHP http fuelphp com s GitHub https github com
  • Symfony2 中数据库测试的实践?如何隔离?

    目前测试与 Symfony2 数据库交互的最佳实践是什么 我有一个简单的 CRUD 设置 我想确保我的测试没问题 现在 我有 4 个测试 每一个测试都确保创建 更新 删除和列出操作正常发生 我的测试用例有两个神奇的方法 construct
  • 错误代码:1093。您无法在 FROM 子句中指定更新的目标表

    假设我有一个产品表 并且只有 2 个字段 id 和购买日期 我想删除 2019 年购买的最后一件产品 我尝试使用以下查询来做到这一点 DELETE FROM products WHERE id SELECT id FROM products
  • 加快 WMA(加权移动平均线)计算速度

    我正在尝试计算 15 天柱的指数移动平均线 但希望查看每个 结束 日 柱的 15 天柱 EMA 的 演变 所以 这意味着我有 15 天的柱线 当每天出现新数据时 我想使用新信息重新计算 EMA 实际上 我有 15 天的柱形图 然后 每天之后
  • 如何将图像复制到SD卡上的现有目录?

    我正在尝试使用以下代码复制图像文件 InputStream fileInputStream null OutputStream fileOutputStream null String inPath storage emulated 0 P
  • MFMessageComposeViewController 不显示相机图标

    当我手动调出 新消息 时 我会在文本编辑区域左侧看到一个相机图标 当我使用 MFMessageComposeViewController 时 它不会显示此图标 这意味着您无法插入图像 我知道这是可以做到的 因为那些创造了txtAgif ht
  • 动态尿路感染稳定吗?

    我的文件格式没有声明的 UTI 因此 Launch Services 已为其分配了动态 UTI dyn ah62d4rv4ge81g23wsmw1a5dbte 我无法控制这些文档的 UTI 我也想为该格式开发一个快速查看生成器 并且快速查看
  • SAML 2.0:如何配置断言消费者服务 URL

    我正在实现一个 SAML 2 0 服务提供商 它使用 Okta 作为身份提供商 我想配置断言消费者服务 ACS URL 以便我的服务提供商应用程序中的 SAML 2 0 反映回断言中 但是 我注意到 Okta 身份提供程序改为发送在 Okt
  • Tensorflow unsorted_segment_sum 维度

    我正在使用tf unsorted segment sumTensorFlow 的方法 当我作为数据给出的张量只有一行时 它工作得很好 例如 tf unsorted segment sum tf constant 0 2 0 1 0 5 0
  • Bootstrap 3 导航栏折叠

    有什么方法可以增加 Bootstrap 3 导航栏折叠的点 即 使其在纵向平板电脑上折叠成下拉菜单 这两个适用于 bootstrap 2 但现在不行了 如何使用 Twitter bootstrap responsive 更改导航栏折叠阈值
  • Maven:带有 Groovy 2.3.5 的 Groovy-Eclipse 编译器插件

    Since GMaven http gmaven codehaus org 已经停产了 我一直在用Groovy Eclipse 编译器插件 http groovy codehaus org Groovy Eclipse compiler p
  • 程序员对Vista Windows任务管理器中内存的理解

    我对 XP 中的 Windows 任务管理器有一定的了解 但我想在 Vista 中更好地了解它 工作集 内存 和 内存 私有工作集 有什么区别 什么是Paged Pool 什么是NP Pool Non Paged 如何使用这些来确定内存使用
  • 比质心更好的“中心点”

    我正在使用多边形的质心在地图应用程序中附加标记 这对于凸多边形来说绝对有效 对于许多凹多边形来说也非常好 但是 某些多边形 香蕉 甜甜圈 显然不会产生所需的结果 在这些情况下 质心位于outside多边形区域 有谁知道更好的方法来找到合适的