Introduction of a greedy Traveling Salesman Problem algorithm,

producing better shortest path estimate than the "closest next neighbor"
heuristics. The new greedy algorithm utilizes KD tree for closest
end point search, and builds a graph to detect loops.

PerimeterGenerator newly uses the optimized TSP algorithm.

ExtrusionEntity has been refactored / simplified.
This commit is contained in:
bubnikv 2019-09-26 09:44:38 +02:00
parent 110d5b9d56
commit 41495a932a
8 changed files with 797 additions and 61 deletions

View file

@ -100,7 +100,7 @@ add_library(libslic3r STATIC
Geometry.cpp
Geometry.hpp
Int128.hpp
# KdTree.hpp
KdTreeIndirect.hpp
Layer.cpp
Layer.hpp
LayerRegion.cpp
@ -142,6 +142,8 @@ add_library(libslic3r STATIC
PrintObject.cpp
PrintRegion.cpp
Semver.cpp
ShortestPath.cpp
ShortestPath.hpp
SLAPrint.cpp
SLAPrint.hpp
SLA/SLAAutoSupports.hpp