【发布时间】:2015-04-08 08:40:27
【问题描述】:
我有一个随机顺序的 3d 顶点列表。我需要用它们构造一个多边形。
我在二维中找到了一个解决方案,它使用极坐标:ordering shuffled points that can be joined to form a polygon (in python)
它计算形状的中心,然后通过极坐标排列顶点。问题是,如果我使用球坐标,在 3d 中会涉及 2 个角度。如果是球坐标,如何对顶点列表进行排序?
【问题讨论】:
我有一个随机顺序的 3d 顶点列表。我需要用它们构造一个多边形。
我在二维中找到了一个解决方案,它使用极坐标:ordering shuffled points that can be joined to form a polygon (in python)
它计算形状的中心,然后通过极坐标排列顶点。问题是,如果我使用球坐标,在 3d 中会涉及 2 个角度。如果是球坐标,如何对顶点列表进行排序?
【问题讨论】:
这些点是否位于平面上?首先找到中心,然后对几个随机选择的点的相对位置使用矢量叉积来找到平面的法线。将点相对于中心的坐标分析为沿法线和垂线的分量。垂直分量是一个二维问题,您已经找到了解决方案。
【讨论】: