【问题标题】:Create a convex Polygon from unordered vertices从无序顶点创建凸多边形
【发布时间】:2021-02-13 23:45:24
【问题描述】:

短版:
给定:凸 3d 多边形的顶点
寻找:连接顶点的边,s.t.多边形是凸的。

加长版:
我从一堆 3d 点开始,并使用 this function from the scipy.spatial package 计算了 voronoi tessalation。我实际上正在寻找正确的边缘来获得由它创建的多边形,但我不明白包是如何做到的。

目前我只是想出了如何获取顶点以及它们属于哪个多边形,但仅知道多边形的顶点不足以重新创建它,除非我得到边缘。那么我该如何获得它们呢?是否有一种简单的方法可以做到这一点,甚至更好:为我做的一个包?

因为我知道它必须是凸的,所以我对 2d 情况有一个想法(基本上只是围绕多边形的中心(均值)盘旋并连接彼此跟随的顶点),但我不知道这是否方法可以在 3d 中使用,或者甚至可以创建凸多边形。我还认为这种方法可能不可靠和/或需要大量时间来计算。

如果需要,我可以提供代码,但我认为这不会有帮助。

【问题讨论】:

  • 如果我正确理解了这个问题,也许这会有所帮助:scipy.spatial.ConvexHull
  • 谢谢,这看起来很有希望。

标签: python polygon voronoi


【解决方案1】:

感谢bb1 the answer :) scipy.spatial.ConvexHull 完成这项工作。 (从技术上讲,它不能 100% 工作,但我认为这可能是 3d 中发生的另一个问题。)

【讨论】:

    猜你喜欢
    • 2013-05-26
    • 2014-10-25
    • 1970-01-01
    • 2012-04-15
    • 1970-01-01
    • 2013-04-25
    • 2011-06-09
    • 2020-08-27
    • 2011-12-23
    相关资源
    最近更新 更多