我有 3d (x,y,z) 中的点列表
对于每个列表,我想将该列表分成两个列表,一个包含来自轮廓上半部分的点,第二个包含下半部分,就像这样:
我的问题是如何确定哪个点应该去上半部分,哪个点应该去下半部分仅仅通过这些点的坐标(x,y,z)。
最佳答案
由于点可以通过多种方式分成“两半”,因此最好有更多的标准来分割它们。
在这种情况下,您似乎正在寻找一条曲线,该曲线将点云分开,其形状与该点云相似。可以覆盖您的形状的拟合曲线会有所帮助。可能二阶或三阶多项式适合这些形状。
第二个想法是创造一些通过“几何中间”的东西。在 2D 情况下,您可以使用中轴方法。可以通过 Delaunay 三角剖分计算点云。如果点靠近某个平面,您可以将它们投影到平面上并使用这种方法。
关于algorithm - 如何将点分成两组 - 轮廓的上部和下部,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18642018/