Выпуклый корпус в 3D Perl

У меня есть набор точек в 3D с координатами XYZ. мне бы хотелось вычислить выпуклую оболочку этих точек. Я прошел через доступные алгоритмы, но я не мог сделать это в 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  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  

2 ответа

Math::ConvexHull не поможет, потому что он работает только с 2D данными (X и Y).

К сожалению похоже Math::Geometry::Planar имеет такое же ограничение.

Половина ответа: возможно, вы можете решить свою проблему, управляя библиотекой Qhull / сопутствующими программами командной строки из Perl.

Я не проверял, потому что я не знаю математику.

Другие вопросы по тегам