3D Perl中的convexHull
我有一组三维点,有x,y,z坐标。我想计算这些点的凸包。我已经研究过可用的算法,但在Perl中无法做到。Perl Math:ConvextHull模块我也检查过,但我不知道如何将这些3D点作为输入。请帮帮我3D Perl中的convexHull,perl,3d,convex-hull,qhull,Perl,3d,Convex Hull,Qhull,我有一组三维点,有x,y,z坐标。我想计算这些点的凸包。我已经研究过可用的算法,但在Perl中无法做到。Perl Math:ConvextHull模块我也检查过,但我不知道如何将这些3D点作为输入。请帮帮我 X Y Z POINT 1 -15.037 7.344 14.621 POINT 2 -15.467 6.281 15.522 POINT 3 -15.147 6.738
X Y Z
POINT 1 -15.037 7.344 14.621
POINT 2 -15.467 6.281 15.522
POINT 3 -15.147 6.738 16.954
POINT 4 -13.998 7.141 17.197
POINT 5 -14.697 4.973 15.165
POINT 6 -15.115 4.480 13.780
POINT 7 -14.965 3.895 16.188
POINT 8 -16.607 4.347 13.471
POINT 9 -16.087 6.731 17.929
POINT 10 -15.826 6.999 19.343
POINT 11 -15.144 5.847 20.038
不会有帮助,因为它仅适用于二维数据(X和Y)
X Y Z
POINT 1 -15.037 7.344 14.621
POINT 2 -15.467 6.281 15.522
POINT 3 -15.147 6.738 16.954
POINT 4 -13.998 7.141 17.197
POINT 5 -14.697 4.973 15.165
POINT 6 -15.115 4.480 13.780
POINT 7 -14.965 3.895 16.188
POINT 8 -16.607 4.347 13.471
POINT 9 -16.087 6.731 17.929
POINT 10 -15.826 6.999 19.343
POINT 11 -15.144 5.847 20.038
不幸的是,它似乎也有同样的局限性。半个答案:也许您可以通过从Perl驱动库/附带的命令行程序来解决您的问题
X Y Z
POINT 1 -15.037 7.344 14.621
POINT 2 -15.467 6.281 15.522
POINT 3 -15.147 6.738 16.954
POINT 4 -13.998 7.141 17.197
POINT 5 -14.697 4.973 15.165
POINT 6 -15.115 4.480 13.780
POINT 7 -14.965 3.895 16.188
POINT 8 -16.607 4.347 13.471
POINT 9 -16.087 6.731 17.929
POINT 10 -15.826 6.999 19.343
POINT 11 -15.144 5.847 20.038
我没有考试,因为我不懂数学。。。。而Math::convxhull::MonotoneChain(Math::convxhull的继承者)也不能真正帮助3D。对于3D,我有限的理解是您可能想要实现Chan的算法。
X Y Z
POINT 1 -15.037 7.344 14.621
POINT 2 -15.467 6.281 15.522
POINT 3 -15.147 6.738 16.954
POINT 4 -13.998 7.141 17.197
POINT 5 -14.697 4.973 15.165
POINT 6 -15.115 4.480 13.780
POINT 7 -14.965 3.895 16.188
POINT 8 -16.607 4.347 13.471
POINT 9 -16.087 6.731 17.929
POINT 10 -15.826 6.999 19.343
POINT 11 -15.144 5.847 20.038