CGAL выглядит так, как будто он может выполнять 3D-сканирование, используя 3D Minkowski Sums . (См. Раздел «Скольжение» далее вниз по странице.)
Единственное ограничение, которое я могу видеть до сих пор при использовании сумм Минковского, состоит в том, что, если вы проводите объект по трехмерной траектории, вы не можете поворачивать объект одновременно. (Я могу ошибаться в этом.) Вращение во время подметания было бы полезно, например, если вы пытаетесь смоделировать резку траектории, используя фрезерный станок или фрезерный наконечник на внешней поверхности вращающегося цилиндра, например, для 4-го или 5-го осевой поворотный стол на фрезерном станке. Но первоначальный вопрос был о прохождении 3D-объектов по 2D-траекториям, имитации разрезов на плоскости, такой как деревянный блок, поэтому это ограничение может быть важно для меня, но не для OP.
CGAL используется OpenSCAD . OpenSCAD имеет примитив minkowski (), который использует функцию CGAL 3D Minkowski. OpenSCAD может быть в состоянии обеспечить быстрый технико-экономический тест, а также, возможно, долгосрочное решение для визуализации траектории. (В последний раз, когда я смотрел на это, я так не думал, но, возможно, это была более старая версия OpenSCAD.)
CGAL - это C ++, с открытым исходным кодом, с двойной лицензией. До сих пор я нашел две привязки Python: