Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/supermerill/SuperSlicer.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/xs
diff options
context:
space:
mode:
authorAlessandro Ranellucci <aar@cpan.org>2014-08-03 21:42:29 +0400
committerAlessandro Ranellucci <aar@cpan.org>2014-08-03 21:42:29 +0400
commit6adc3477c9d08d2cfa0e6902b3d241a9193e50d4 (patch)
tree98e1a403cec185a06501056d1811b4d39d731bf5 /xs
parentb8676241e0c9f91eb9db5b6757e73edfe7f85598 (diff)
Moved C++ code into new libslic3r directory
Diffstat (limited to 'xs')
-rw-r--r--xs/MANIFEST117
-rw-r--r--xs/src/libslic3r/BoundingBox.cpp (renamed from xs/src/BoundingBox.cpp)0
-rw-r--r--xs/src/libslic3r/BoundingBox.hpp (renamed from xs/src/BoundingBox.hpp)0
-rw-r--r--xs/src/libslic3r/ClipperUtils.cpp (renamed from xs/src/ClipperUtils.cpp)0
-rw-r--r--xs/src/libslic3r/ClipperUtils.hpp (renamed from xs/src/ClipperUtils.hpp)0
-rw-r--r--xs/src/libslic3r/Config.cpp (renamed from xs/src/Config.cpp)0
-rw-r--r--xs/src/libslic3r/Config.hpp (renamed from xs/src/Config.hpp)0
-rw-r--r--xs/src/libslic3r/ExPolygon.cpp (renamed from xs/src/ExPolygon.cpp)0
-rw-r--r--xs/src/libslic3r/ExPolygon.hpp (renamed from xs/src/ExPolygon.hpp)0
-rw-r--r--xs/src/libslic3r/ExPolygonCollection.cpp (renamed from xs/src/ExPolygonCollection.cpp)0
-rw-r--r--xs/src/libslic3r/ExPolygonCollection.hpp (renamed from xs/src/ExPolygonCollection.hpp)0
-rw-r--r--xs/src/libslic3r/Extruder.cpp (renamed from xs/src/Extruder.cpp)0
-rw-r--r--xs/src/libslic3r/Extruder.hpp (renamed from xs/src/Extruder.hpp)0
-rw-r--r--xs/src/libslic3r/ExtrusionEntity.cpp (renamed from xs/src/ExtrusionEntity.cpp)0
-rw-r--r--xs/src/libslic3r/ExtrusionEntity.hpp (renamed from xs/src/ExtrusionEntity.hpp)0
-rw-r--r--xs/src/libslic3r/ExtrusionEntityCollection.cpp (renamed from xs/src/ExtrusionEntityCollection.cpp)0
-rw-r--r--xs/src/libslic3r/ExtrusionEntityCollection.hpp (renamed from xs/src/ExtrusionEntityCollection.hpp)0
-rw-r--r--xs/src/libslic3r/Flow.cpp (renamed from xs/src/Flow.cpp)0
-rw-r--r--xs/src/libslic3r/Flow.hpp (renamed from xs/src/Flow.hpp)0
-rw-r--r--xs/src/libslic3r/GCode.hpp (renamed from xs/src/GCode.hpp)0
-rw-r--r--xs/src/libslic3r/Geometry.cpp (renamed from xs/src/Geometry.cpp)0
-rw-r--r--xs/src/libslic3r/Geometry.hpp (renamed from xs/src/Geometry.hpp)0
-rw-r--r--xs/src/libslic3r/Layer.cpp (renamed from xs/src/Layer.cpp)0
-rw-r--r--xs/src/libslic3r/Layer.hpp (renamed from xs/src/Layer.hpp)0
-rw-r--r--xs/src/libslic3r/LayerRegion.cpp (renamed from xs/src/LayerRegion.cpp)0
-rw-r--r--xs/src/libslic3r/Line.cpp (renamed from xs/src/Line.cpp)0
-rw-r--r--xs/src/libslic3r/Line.hpp (renamed from xs/src/Line.hpp)0
-rw-r--r--xs/src/libslic3r/Model.cpp (renamed from xs/src/Model.cpp)0
-rw-r--r--xs/src/libslic3r/Model.hpp (renamed from xs/src/Model.hpp)0
-rw-r--r--xs/src/libslic3r/MotionPlanner.cpp (renamed from xs/src/MotionPlanner.cpp)0
-rw-r--r--xs/src/libslic3r/MotionPlanner.hpp (renamed from xs/src/MotionPlanner.hpp)0
-rw-r--r--xs/src/libslic3r/MultiPoint.cpp (renamed from xs/src/MultiPoint.cpp)0
-rw-r--r--xs/src/libslic3r/MultiPoint.hpp (renamed from xs/src/MultiPoint.hpp)0
-rw-r--r--xs/src/libslic3r/PlaceholderParser.cpp (renamed from xs/src/PlaceholderParser.cpp)0
-rw-r--r--xs/src/libslic3r/PlaceholderParser.hpp (renamed from xs/src/PlaceholderParser.hpp)0
-rw-r--r--xs/src/libslic3r/Point.cpp (renamed from xs/src/Point.cpp)0
-rw-r--r--xs/src/libslic3r/Point.hpp (renamed from xs/src/Point.hpp)0
-rw-r--r--xs/src/libslic3r/Polygon.cpp (renamed from xs/src/Polygon.cpp)0
-rw-r--r--xs/src/libslic3r/Polygon.hpp (renamed from xs/src/Polygon.hpp)0
-rw-r--r--xs/src/libslic3r/Polyline.cpp (renamed from xs/src/Polyline.cpp)0
-rw-r--r--xs/src/libslic3r/Polyline.hpp (renamed from xs/src/Polyline.hpp)0
-rw-r--r--xs/src/libslic3r/PolylineCollection.cpp (renamed from xs/src/PolylineCollection.cpp)0
-rw-r--r--xs/src/libslic3r/PolylineCollection.hpp (renamed from xs/src/PolylineCollection.hpp)0
-rw-r--r--xs/src/libslic3r/Print.cpp (renamed from xs/src/Print.cpp)0
-rw-r--r--xs/src/libslic3r/Print.hpp (renamed from xs/src/Print.hpp)0
-rw-r--r--xs/src/libslic3r/PrintConfig.cpp (renamed from xs/src/PrintConfig.cpp)0
-rw-r--r--xs/src/libslic3r/PrintConfig.hpp (renamed from xs/src/PrintConfig.hpp)0
-rw-r--r--xs/src/libslic3r/PrintObject.cpp (renamed from xs/src/PrintObject.cpp)0
-rw-r--r--xs/src/libslic3r/PrintRegion.cpp (renamed from xs/src/PrintRegion.cpp)0
-rw-r--r--xs/src/libslic3r/SVG.cpp (renamed from xs/src/SVG.cpp)0
-rw-r--r--xs/src/libslic3r/SVG.hpp (renamed from xs/src/SVG.hpp)0
-rw-r--r--xs/src/libslic3r/Surface.cpp (renamed from xs/src/Surface.cpp)0
-rw-r--r--xs/src/libslic3r/Surface.hpp (renamed from xs/src/Surface.hpp)0
-rw-r--r--xs/src/libslic3r/SurfaceCollection.cpp (renamed from xs/src/SurfaceCollection.cpp)0
-rw-r--r--xs/src/libslic3r/SurfaceCollection.hpp (renamed from xs/src/SurfaceCollection.hpp)0
-rw-r--r--xs/src/libslic3r/TriangleMesh.cpp (renamed from xs/src/TriangleMesh.cpp)0
-rw-r--r--xs/src/libslic3r/TriangleMesh.hpp (renamed from xs/src/TriangleMesh.hpp)0
-rw-r--r--xs/src/libslic3r/libslic3r.h26
-rw-r--r--xs/src/libslic3r/utils.cpp (renamed from xs/src/utils.cpp)0
-rw-r--r--xs/src/myinit.h17
-rw-r--r--xs/xsp/BoundingBox.xsp4
-rw-r--r--xs/xsp/Clipper.xsp2
-rw-r--r--xs/xsp/Config.xsp2
-rw-r--r--xs/xsp/ExPolygon.xsp2
-rw-r--r--xs/xsp/ExPolygonCollection.xsp2
-rw-r--r--xs/xsp/Extruder.xsp2
-rw-r--r--xs/xsp/ExtrusionEntityCollection.xsp2
-rw-r--r--xs/xsp/ExtrusionLoop.xsp2
-rw-r--r--xs/xsp/ExtrusionPath.xsp4
-rw-r--r--xs/xsp/Flow.xsp2
-rw-r--r--xs/xsp/Geometry.xsp2
-rw-r--r--xs/xsp/Layer.xsp3
-rw-r--r--xs/xsp/Line.xsp4
-rw-r--r--xs/xsp/Model.xsp4
-rw-r--r--xs/xsp/MotionPlanner.xsp2
-rw-r--r--xs/xsp/PlaceholderParser.xsp2
-rw-r--r--xs/xsp/Point.xsp6
-rw-r--r--xs/xsp/Polygon.xsp6
-rw-r--r--xs/xsp/Polyline.xsp6
-rw-r--r--xs/xsp/PolylineCollection.xsp2
-rw-r--r--xs/xsp/Print.xsp4
-rw-r--r--xs/xsp/Surface.xsp4
-rw-r--r--xs/xsp/SurfaceCollection.xsp2
-rw-r--r--xs/xsp/TriangleMesh.xsp2
84 files changed, 122 insertions, 111 deletions
diff --git a/xs/MANIFEST b/xs/MANIFEST
index c38096709..6a44597da 100644
--- a/xs/MANIFEST
+++ b/xs/MANIFEST
@@ -1,6 +1,6 @@
Build.PL
lib/Slic3r/XS.pm
-MANIFEST This list of files
+MANIFEST
src/admesh/connect.c
src/admesh/normals.c
src/admesh/shared.c
@@ -1648,46 +1648,68 @@ src/boost/utility/swap.hpp
src/boost/utility/value_init.hpp
src/boost/version.hpp
src/boost/visit_each.hpp
-src/BoundingBox.cpp
-src/BoundingBox.hpp
src/clipper.cpp
src/clipper.hpp
-src/ClipperUtils.cpp
-src/ClipperUtils.hpp
-src/Config.cpp
-src/Config.hpp
-src/ExPolygon.cpp
-src/ExPolygon.hpp
-src/ExPolygonCollection.cpp
-src/ExPolygonCollection.hpp
-src/Extruder.cpp
-src/Extruder.hpp
-src/ExtrusionEntity.cpp
-src/ExtrusionEntity.hpp
-src/ExtrusionEntityCollection.cpp
-src/ExtrusionEntityCollection.hpp
-src/Flow.cpp
-src/Flow.hpp
-src/GCode.hpp
-src/Geometry.cpp
-src/Geometry.hpp
-src/Layer.cpp
-src/Layer.hpp
-src/LayerRegion.cpp
-src/Line.cpp
-src/Line.hpp
-src/Model.cpp
-src/Model.hpp
-src/MotionPlanner.cpp
-src/MotionPlanner.hpp
-src/MultiPoint.cpp
-src/MultiPoint.hpp
+src/libslic3r/BoundingBox.cpp
+src/libslic3r/BoundingBox.hpp
+src/libslic3r/ClipperUtils.cpp
+src/libslic3r/ClipperUtils.hpp
+src/libslic3r/Config.cpp
+src/libslic3r/Config.hpp
+src/libslic3r/ExPolygon.cpp
+src/libslic3r/ExPolygon.hpp
+src/libslic3r/ExPolygonCollection.cpp
+src/libslic3r/ExPolygonCollection.hpp
+src/libslic3r/Extruder.cpp
+src/libslic3r/Extruder.hpp
+src/libslic3r/ExtrusionEntity.cpp
+src/libslic3r/ExtrusionEntity.hpp
+src/libslic3r/ExtrusionEntityCollection.cpp
+src/libslic3r/ExtrusionEntityCollection.hpp
+src/libslic3r/Flow.cpp
+src/libslic3r/Flow.hpp
+src/libslic3r/GCode.hpp
+src/libslic3r/Geometry.cpp
+src/libslic3r/Geometry.hpp
+src/libslic3r/Layer.cpp
+src/libslic3r/Layer.hpp
+src/libslic3r/LayerRegion.cpp
+src/libslic3r/libslic3r.h
+src/libslic3r/Line.cpp
+src/libslic3r/Line.hpp
+src/libslic3r/Model.cpp
+src/libslic3r/Model.hpp
+src/libslic3r/MotionPlanner.cpp
+src/libslic3r/MotionPlanner.hpp
+src/libslic3r/MultiPoint.cpp
+src/libslic3r/MultiPoint.hpp
+src/libslic3r/PlaceholderParser.cpp
+src/libslic3r/PlaceholderParser.hpp
+src/libslic3r/Point.cpp
+src/libslic3r/Point.hpp
+src/libslic3r/Polygon.cpp
+src/libslic3r/Polygon.hpp
+src/libslic3r/Polyline.cpp
+src/libslic3r/Polyline.hpp
+src/libslic3r/PolylineCollection.cpp
+src/libslic3r/PolylineCollection.hpp
+src/libslic3r/Print.cpp
+src/libslic3r/Print.hpp
+src/libslic3r/PrintConfig.cpp
+src/libslic3r/PrintConfig.hpp
+src/libslic3r/PrintObject.cpp
+src/libslic3r/PrintRegion.cpp
+src/libslic3r/Surface.cpp
+src/libslic3r/Surface.hpp
+src/libslic3r/SurfaceCollection.cpp
+src/libslic3r/SurfaceCollection.hpp
+src/libslic3r/SVG.cpp
+src/libslic3r/SVG.hpp
+src/libslic3r/TriangleMesh.cpp
+src/libslic3r/TriangleMesh.hpp
+src/libslic3r/utils.cpp
src/myinit.h
src/perlglue.hpp
-src/PlaceholderParser.cpp
-src/PlaceholderParser.hpp
-src/Point.cpp
-src/Point.hpp
src/poly2tri/common/shapes.cc
src/poly2tri/common/shapes.h
src/poly2tri/common/utils.h
@@ -1700,30 +1722,9 @@ src/poly2tri/sweep/sweep.cc
src/poly2tri/sweep/sweep.h
src/poly2tri/sweep/sweep_context.cc
src/poly2tri/sweep/sweep_context.h
-src/Polygon.cpp
-src/Polygon.hpp
-src/Polyline.cpp
-src/Polyline.hpp
-src/PolylineCollection.cpp
-src/PolylineCollection.hpp
src/polypartition.cpp
src/polypartition.h
src/ppport.h
-src/Print.cpp
-src/Print.hpp
-src/PrintConfig.cpp
-src/PrintConfig.hpp
-src/PrintObject.cpp
-src/PrintRegion.cpp
-src/Surface.cpp
-src/Surface.hpp
-src/SurfaceCollection.cpp
-src/SurfaceCollection.hpp
-src/SVG.cpp
-src/SVG.hpp
-src/TriangleMesh.cpp
-src/TriangleMesh.hpp
-src/utils.cpp
t/01_trianglemesh.t
t/03_point.t
t/04_expolygon.t
diff --git a/xs/src/BoundingBox.cpp b/xs/src/libslic3r/BoundingBox.cpp
index 55c6abbe0..55c6abbe0 100644
--- a/xs/src/BoundingBox.cpp
+++ b/xs/src/libslic3r/BoundingBox.cpp
diff --git a/xs/src/BoundingBox.hpp b/xs/src/libslic3r/BoundingBox.hpp
index 0ea81b831..0ea81b831 100644
--- a/xs/src/BoundingBox.hpp
+++ b/xs/src/libslic3r/BoundingBox.hpp
diff --git a/xs/src/ClipperUtils.cpp b/xs/src/libslic3r/ClipperUtils.cpp
index 240cf3b68..240cf3b68 100644
--- a/xs/src/ClipperUtils.cpp
+++ b/xs/src/libslic3r/ClipperUtils.cpp
diff --git a/xs/src/ClipperUtils.hpp b/xs/src/libslic3r/ClipperUtils.hpp
index 2ab3ff775..2ab3ff775 100644
--- a/xs/src/ClipperUtils.hpp
+++ b/xs/src/libslic3r/ClipperUtils.hpp
diff --git a/xs/src/Config.cpp b/xs/src/libslic3r/Config.cpp
index 4d03b36a0..4d03b36a0 100644
--- a/xs/src/Config.cpp
+++ b/xs/src/libslic3r/Config.cpp
diff --git a/xs/src/Config.hpp b/xs/src/libslic3r/Config.hpp
index 42d19c830..42d19c830 100644
--- a/xs/src/Config.hpp
+++ b/xs/src/libslic3r/Config.hpp
diff --git a/xs/src/ExPolygon.cpp b/xs/src/libslic3r/ExPolygon.cpp
index a51e55a2d..a51e55a2d 100644
--- a/xs/src/ExPolygon.cpp
+++ b/xs/src/libslic3r/ExPolygon.cpp
diff --git a/xs/src/ExPolygon.hpp b/xs/src/libslic3r/ExPolygon.hpp
index be6065914..be6065914 100644
--- a/xs/src/ExPolygon.hpp
+++ b/xs/src/libslic3r/ExPolygon.hpp
diff --git a/xs/src/ExPolygonCollection.cpp b/xs/src/libslic3r/ExPolygonCollection.cpp
index 3de86e7c6..3de86e7c6 100644
--- a/xs/src/ExPolygonCollection.cpp
+++ b/xs/src/libslic3r/ExPolygonCollection.cpp
diff --git a/xs/src/ExPolygonCollection.hpp b/xs/src/libslic3r/ExPolygonCollection.hpp
index f6a27284f..f6a27284f 100644
--- a/xs/src/ExPolygonCollection.hpp
+++ b/xs/src/libslic3r/ExPolygonCollection.hpp
diff --git a/xs/src/Extruder.cpp b/xs/src/libslic3r/Extruder.cpp
index d327276f8..d327276f8 100644
--- a/xs/src/Extruder.cpp
+++ b/xs/src/libslic3r/Extruder.cpp
diff --git a/xs/src/Extruder.hpp b/xs/src/libslic3r/Extruder.hpp
index 9caa38c89..9caa38c89 100644
--- a/xs/src/Extruder.hpp
+++ b/xs/src/libslic3r/Extruder.hpp
diff --git a/xs/src/ExtrusionEntity.cpp b/xs/src/libslic3r/ExtrusionEntity.cpp
index fd39fdc9f..fd39fdc9f 100644
--- a/xs/src/ExtrusionEntity.cpp
+++ b/xs/src/libslic3r/ExtrusionEntity.cpp
diff --git a/xs/src/ExtrusionEntity.hpp b/xs/src/libslic3r/ExtrusionEntity.hpp
index ccd85a689..ccd85a689 100644
--- a/xs/src/ExtrusionEntity.hpp
+++ b/xs/src/libslic3r/ExtrusionEntity.hpp
diff --git a/xs/src/ExtrusionEntityCollection.cpp b/xs/src/libslic3r/ExtrusionEntityCollection.cpp
index a958e53cf..a958e53cf 100644
--- a/xs/src/ExtrusionEntityCollection.cpp
+++ b/xs/src/libslic3r/ExtrusionEntityCollection.cpp
diff --git a/xs/src/ExtrusionEntityCollection.hpp b/xs/src/libslic3r/ExtrusionEntityCollection.hpp
index bc660611b..bc660611b 100644
--- a/xs/src/ExtrusionEntityCollection.hpp
+++ b/xs/src/libslic3r/ExtrusionEntityCollection.hpp
diff --git a/xs/src/Flow.cpp b/xs/src/libslic3r/Flow.cpp
index 1592e0c35..1592e0c35 100644
--- a/xs/src/Flow.cpp
+++ b/xs/src/libslic3r/Flow.cpp
diff --git a/xs/src/Flow.hpp b/xs/src/libslic3r/Flow.hpp
index 88cae2477..88cae2477 100644
--- a/xs/src/Flow.hpp
+++ b/xs/src/libslic3r/Flow.hpp
diff --git a/xs/src/GCode.hpp b/xs/src/libslic3r/GCode.hpp
index a889532ea..a889532ea 100644
--- a/xs/src/GCode.hpp
+++ b/xs/src/libslic3r/GCode.hpp
diff --git a/xs/src/Geometry.cpp b/xs/src/libslic3r/Geometry.cpp
index 8e083360b..8e083360b 100644
--- a/xs/src/Geometry.cpp
+++ b/xs/src/libslic3r/Geometry.cpp
diff --git a/xs/src/Geometry.hpp b/xs/src/libslic3r/Geometry.hpp
index 2dc183f82..2dc183f82 100644
--- a/xs/src/Geometry.hpp
+++ b/xs/src/libslic3r/Geometry.hpp
diff --git a/xs/src/Layer.cpp b/xs/src/libslic3r/Layer.cpp
index 689077d46..689077d46 100644
--- a/xs/src/Layer.cpp
+++ b/xs/src/libslic3r/Layer.cpp
diff --git a/xs/src/Layer.hpp b/xs/src/libslic3r/Layer.hpp
index cea1535b0..cea1535b0 100644
--- a/xs/src/Layer.hpp
+++ b/xs/src/libslic3r/Layer.hpp
diff --git a/xs/src/LayerRegion.cpp b/xs/src/libslic3r/LayerRegion.cpp
index cb92c4ee3..cb92c4ee3 100644
--- a/xs/src/LayerRegion.cpp
+++ b/xs/src/libslic3r/LayerRegion.cpp
diff --git a/xs/src/Line.cpp b/xs/src/libslic3r/Line.cpp
index 86efceddf..86efceddf 100644
--- a/xs/src/Line.cpp
+++ b/xs/src/libslic3r/Line.cpp
diff --git a/xs/src/Line.hpp b/xs/src/libslic3r/Line.hpp
index 3f86ed4a7..3f86ed4a7 100644
--- a/xs/src/Line.hpp
+++ b/xs/src/libslic3r/Line.hpp
diff --git a/xs/src/Model.cpp b/xs/src/libslic3r/Model.cpp
index ee8dc1057..ee8dc1057 100644
--- a/xs/src/Model.cpp
+++ b/xs/src/libslic3r/Model.cpp
diff --git a/xs/src/Model.hpp b/xs/src/libslic3r/Model.hpp
index dfcd75b4c..dfcd75b4c 100644
--- a/xs/src/Model.hpp
+++ b/xs/src/libslic3r/Model.hpp
diff --git a/xs/src/MotionPlanner.cpp b/xs/src/libslic3r/MotionPlanner.cpp
index 82108afd9..82108afd9 100644
--- a/xs/src/MotionPlanner.cpp
+++ b/xs/src/libslic3r/MotionPlanner.cpp
diff --git a/xs/src/MotionPlanner.hpp b/xs/src/libslic3r/MotionPlanner.hpp
index 78fd5c72b..78fd5c72b 100644
--- a/xs/src/MotionPlanner.hpp
+++ b/xs/src/libslic3r/MotionPlanner.hpp
diff --git a/xs/src/MultiPoint.cpp b/xs/src/libslic3r/MultiPoint.cpp
index 5da3cb499..5da3cb499 100644
--- a/xs/src/MultiPoint.cpp
+++ b/xs/src/libslic3r/MultiPoint.cpp
diff --git a/xs/src/MultiPoint.hpp b/xs/src/libslic3r/MultiPoint.hpp
index 075b0dbdb..075b0dbdb 100644
--- a/xs/src/MultiPoint.hpp
+++ b/xs/src/libslic3r/MultiPoint.hpp
diff --git a/xs/src/PlaceholderParser.cpp b/xs/src/libslic3r/PlaceholderParser.cpp
index c384afa32..c384afa32 100644
--- a/xs/src/PlaceholderParser.cpp
+++ b/xs/src/libslic3r/PlaceholderParser.cpp
diff --git a/xs/src/PlaceholderParser.hpp b/xs/src/libslic3r/PlaceholderParser.hpp
index e69d6ed93..e69d6ed93 100644
--- a/xs/src/PlaceholderParser.hpp
+++ b/xs/src/libslic3r/PlaceholderParser.hpp
diff --git a/xs/src/Point.cpp b/xs/src/libslic3r/Point.cpp
index 2515d41a6..2515d41a6 100644
--- a/xs/src/Point.cpp
+++ b/xs/src/libslic3r/Point.cpp
diff --git a/xs/src/Point.hpp b/xs/src/libslic3r/Point.hpp
index 28d216df2..28d216df2 100644
--- a/xs/src/Point.hpp
+++ b/xs/src/libslic3r/Point.hpp
diff --git a/xs/src/Polygon.cpp b/xs/src/libslic3r/Polygon.cpp
index 3fe16bc70..3fe16bc70 100644
--- a/xs/src/Polygon.cpp
+++ b/xs/src/libslic3r/Polygon.cpp
diff --git a/xs/src/Polygon.hpp b/xs/src/libslic3r/Polygon.hpp
index 816b6be18..816b6be18 100644
--- a/xs/src/Polygon.hpp
+++ b/xs/src/libslic3r/Polygon.hpp
diff --git a/xs/src/Polyline.cpp b/xs/src/libslic3r/Polyline.cpp
index 724ae4740..724ae4740 100644
--- a/xs/src/Polyline.cpp
+++ b/xs/src/libslic3r/Polyline.cpp
diff --git a/xs/src/Polyline.hpp b/xs/src/libslic3r/Polyline.hpp
index 5462425cf..5462425cf 100644
--- a/xs/src/Polyline.hpp
+++ b/xs/src/libslic3r/Polyline.hpp
diff --git a/xs/src/PolylineCollection.cpp b/xs/src/libslic3r/PolylineCollection.cpp
index c2a142cf3..c2a142cf3 100644
--- a/xs/src/PolylineCollection.cpp
+++ b/xs/src/libslic3r/PolylineCollection.cpp
diff --git a/xs/src/PolylineCollection.hpp b/xs/src/libslic3r/PolylineCollection.hpp
index ace03ad37..ace03ad37 100644
--- a/xs/src/PolylineCollection.hpp
+++ b/xs/src/libslic3r/PolylineCollection.hpp
diff --git a/xs/src/Print.cpp b/xs/src/libslic3r/Print.cpp
index d71cb4349..d71cb4349 100644
--- a/xs/src/Print.cpp
+++ b/xs/src/libslic3r/Print.cpp
diff --git a/xs/src/Print.hpp b/xs/src/libslic3r/Print.hpp
index 8b2a45044..8b2a45044 100644
--- a/xs/src/Print.hpp
+++ b/xs/src/libslic3r/Print.hpp
diff --git a/xs/src/PrintConfig.cpp b/xs/src/libslic3r/PrintConfig.cpp
index 2e9d8a6bf..2e9d8a6bf 100644
--- a/xs/src/PrintConfig.cpp
+++ b/xs/src/libslic3r/PrintConfig.cpp
diff --git a/xs/src/PrintConfig.hpp b/xs/src/libslic3r/PrintConfig.hpp
index cdc3d7173..cdc3d7173 100644
--- a/xs/src/PrintConfig.hpp
+++ b/xs/src/libslic3r/PrintConfig.hpp
diff --git a/xs/src/PrintObject.cpp b/xs/src/libslic3r/PrintObject.cpp
index 4dac94cf6..4dac94cf6 100644
--- a/xs/src/PrintObject.cpp
+++ b/xs/src/libslic3r/PrintObject.cpp
diff --git a/xs/src/PrintRegion.cpp b/xs/src/libslic3r/PrintRegion.cpp
index d651b57ab..d651b57ab 100644
--- a/xs/src/PrintRegion.cpp
+++ b/xs/src/libslic3r/PrintRegion.cpp
diff --git a/xs/src/SVG.cpp b/xs/src/libslic3r/SVG.cpp
index db5ec7293..db5ec7293 100644
--- a/xs/src/SVG.cpp
+++ b/xs/src/libslic3r/SVG.cpp
diff --git a/xs/src/SVG.hpp b/xs/src/libslic3r/SVG.hpp
index 5d4cfd56e..5d4cfd56e 100644
--- a/xs/src/SVG.hpp
+++ b/xs/src/libslic3r/SVG.hpp
diff --git a/xs/src/Surface.cpp b/xs/src/libslic3r/Surface.cpp
index a53cb2513..a53cb2513 100644
--- a/xs/src/Surface.cpp
+++ b/xs/src/libslic3r/Surface.cpp
diff --git a/xs/src/Surface.hpp b/xs/src/libslic3r/Surface.hpp
index ce0f02477..ce0f02477 100644
--- a/xs/src/Surface.hpp
+++ b/xs/src/libslic3r/Surface.hpp
diff --git a/xs/src/SurfaceCollection.cpp b/xs/src/libslic3r/SurfaceCollection.cpp
index 1590e7a21..1590e7a21 100644
--- a/xs/src/SurfaceCollection.cpp
+++ b/xs/src/libslic3r/SurfaceCollection.cpp
diff --git a/xs/src/SurfaceCollection.hpp b/xs/src/libslic3r/SurfaceCollection.hpp
index fe3fae8c6..fe3fae8c6 100644
--- a/xs/src/SurfaceCollection.hpp
+++ b/xs/src/libslic3r/SurfaceCollection.hpp
diff --git a/xs/src/TriangleMesh.cpp b/xs/src/libslic3r/TriangleMesh.cpp
index 77b11c5f8..77b11c5f8 100644
--- a/xs/src/TriangleMesh.cpp
+++ b/xs/src/libslic3r/TriangleMesh.cpp
diff --git a/xs/src/TriangleMesh.hpp b/xs/src/libslic3r/TriangleMesh.hpp
index b16f867eb..b16f867eb 100644
--- a/xs/src/TriangleMesh.hpp
+++ b/xs/src/libslic3r/TriangleMesh.hpp
diff --git a/xs/src/libslic3r/libslic3r.h b/xs/src/libslic3r/libslic3r.h
new file mode 100644
index 000000000..072e97ffb
--- /dev/null
+++ b/xs/src/libslic3r/libslic3r.h
@@ -0,0 +1,26 @@
+#ifndef _libslic3r_h_
+#define _libslic3r_h_
+
+// this needs to be included early for MSVC (listing it in Build.PL is not enough)
+#include <ostream>
+#include <iostream>
+#include <sstream>
+
+#define EPSILON 1e-4
+#define SCALING_FACTOR 0.000001
+#define PI 3.141592653589793238
+#define scale_(val) (val / SCALING_FACTOR)
+#define unscale(val) (val * SCALING_FACTOR)
+#define SCALED_EPSILON scale_(EPSILON)
+typedef long coord_t;
+typedef double coordf_t;
+
+namespace Slic3r {}
+using namespace Slic3r;
+
+/* Implementation of CONFESS("foo"): */
+#define CONFESS(...) confess_at(__FILE__, __LINE__, __func__, __VA_ARGS__)
+void confess_at(const char *file, int line, const char *func, const char *pat, ...);
+/* End implementation of CONFESS("foo"): */
+
+#endif
diff --git a/xs/src/utils.cpp b/xs/src/libslic3r/utils.cpp
index d0b1e879b..d0b1e879b 100644
--- a/xs/src/utils.cpp
+++ b/xs/src/libslic3r/utils.cpp
diff --git a/xs/src/myinit.h b/xs/src/myinit.h
index c3c8c6ff3..f98d94020 100644
--- a/xs/src/myinit.h
+++ b/xs/src/myinit.h
@@ -20,21 +20,6 @@ extern "C" {
#include "perlglue.hpp"
#endif
-#define EPSILON 1e-4
-#define SCALING_FACTOR 0.000001
-#define PI 3.141592653589793238
-#define scale_(val) (val / SCALING_FACTOR)
-#define unscale(val) (val * SCALING_FACTOR)
-#define SCALED_EPSILON scale_(EPSILON)
-typedef long coord_t;
-typedef double coordf_t;
-
-namespace Slic3r {}
-using namespace Slic3r;
-
-/* Implementation of CONFESS("foo"): */
-#define CONFESS(...) confess_at(__FILE__, __LINE__, __func__, __VA_ARGS__)
-void confess_at(const char *file, int line, const char *func, const char *pat, ...);
-/* End implementation of CONFESS("foo"): */
+#include "libslic3r/libslic3r.h"
#endif
diff --git a/xs/xsp/BoundingBox.xsp b/xs/xsp/BoundingBox.xsp
index 5a4368b88..c368c0c18 100644
--- a/xs/xsp/BoundingBox.xsp
+++ b/xs/xsp/BoundingBox.xsp
@@ -2,8 +2,8 @@
%{
#include <myinit.h>
-#include "BoundingBox.hpp"
-#include "Point.hpp"
+#include "libslic3r/BoundingBox.hpp"
+#include "libslic3r/Point.hpp"
%}
%name{Slic3r::Geometry::BoundingBox} class BoundingBox {
diff --git a/xs/xsp/Clipper.xsp b/xs/xsp/Clipper.xsp
index 43a30a406..fc82ed88a 100644
--- a/xs/xsp/Clipper.xsp
+++ b/xs/xsp/Clipper.xsp
@@ -3,7 +3,7 @@
%{
#include <myinit.h>
#include "clipper.hpp"
-#include "ClipperUtils.hpp"
+#include "libslic3r/ClipperUtils.hpp"
%}
%package{Slic3r::Geometry::Clipper};
diff --git a/xs/xsp/Config.xsp b/xs/xsp/Config.xsp
index f96f45b8a..4c56e10c8 100644
--- a/xs/xsp/Config.xsp
+++ b/xs/xsp/Config.xsp
@@ -2,7 +2,7 @@
%{
#include <myinit.h>
-#include "PrintConfig.hpp"
+#include "libslic3r/PrintConfig.hpp"
%}
%name{Slic3r::Config} class DynamicPrintConfig {
diff --git a/xs/xsp/ExPolygon.xsp b/xs/xsp/ExPolygon.xsp
index aefbd1aed..ef43e3514 100644
--- a/xs/xsp/ExPolygon.xsp
+++ b/xs/xsp/ExPolygon.xsp
@@ -2,7 +2,7 @@
%{
#include <myinit.h>
-#include "ExPolygon.hpp"
+#include "libslic3r/ExPolygon.hpp"
%}
%name{Slic3r::ExPolygon} class ExPolygon {
diff --git a/xs/xsp/ExPolygonCollection.xsp b/xs/xsp/ExPolygonCollection.xsp
index c718c7ebc..a93b27dda 100644
--- a/xs/xsp/ExPolygonCollection.xsp
+++ b/xs/xsp/ExPolygonCollection.xsp
@@ -2,7 +2,7 @@
%{
#include <myinit.h>
-#include "ExPolygonCollection.hpp"
+#include "libslic3r/ExPolygonCollection.hpp"
%}
%name{Slic3r::ExPolygon::Collection} class ExPolygonCollection {
diff --git a/xs/xsp/Extruder.xsp b/xs/xsp/Extruder.xsp
index d80b34d62..582b39b99 100644
--- a/xs/xsp/Extruder.xsp
+++ b/xs/xsp/Extruder.xsp
@@ -2,7 +2,7 @@
%{
#include <myinit.h>
-#include "Extruder.hpp"
+#include "libslic3r/Extruder.hpp"
%}
%name{Slic3r::Extruder} class Extruder {
diff --git a/xs/xsp/ExtrusionEntityCollection.xsp b/xs/xsp/ExtrusionEntityCollection.xsp
index b8c65c87f..fa1d26eed 100644
--- a/xs/xsp/ExtrusionEntityCollection.xsp
+++ b/xs/xsp/ExtrusionEntityCollection.xsp
@@ -2,7 +2,7 @@
%{
#include <myinit.h>
-#include "ExtrusionEntityCollection.hpp"
+#include "libslic3r/ExtrusionEntityCollection.hpp"
%}
%name{Slic3r::ExtrusionPath::Collection} class ExtrusionEntityCollection {
diff --git a/xs/xsp/ExtrusionLoop.xsp b/xs/xsp/ExtrusionLoop.xsp
index 489bca03a..1256d7593 100644
--- a/xs/xsp/ExtrusionLoop.xsp
+++ b/xs/xsp/ExtrusionLoop.xsp
@@ -2,7 +2,7 @@
%{
#include <myinit.h>
-#include "ExtrusionEntity.hpp"
+#include "libslic3r/ExtrusionEntity.hpp"
%}
%name{Slic3r::ExtrusionLoop} class ExtrusionLoop {
diff --git a/xs/xsp/ExtrusionPath.xsp b/xs/xsp/ExtrusionPath.xsp
index df3813d51..d3a48ac24 100644
--- a/xs/xsp/ExtrusionPath.xsp
+++ b/xs/xsp/ExtrusionPath.xsp
@@ -2,8 +2,8 @@
%{
#include <myinit.h>
-#include "ExtrusionEntity.hpp"
-#include "ExtrusionEntityCollection.hpp"
+#include "libslic3r/ExtrusionEntity.hpp"
+#include "libslic3r/ExtrusionEntityCollection.hpp"
%}
%name{Slic3r::ExtrusionPath} class ExtrusionPath {
diff --git a/xs/xsp/Flow.xsp b/xs/xsp/Flow.xsp
index 09c6fd576..805c1a7a1 100644
--- a/xs/xsp/Flow.xsp
+++ b/xs/xsp/Flow.xsp
@@ -2,7 +2,7 @@
%{
#include <myinit.h>
-#include "Flow.hpp"
+#include "libslic3r/Flow.hpp"
%}
%name{Slic3r::Flow} class Flow {
diff --git a/xs/xsp/Geometry.xsp b/xs/xsp/Geometry.xsp
index acbfb0875..ddfa0a369 100644
--- a/xs/xsp/Geometry.xsp
+++ b/xs/xsp/Geometry.xsp
@@ -2,7 +2,7 @@
%{
#include <myinit.h>
-#include "Geometry.hpp"
+#include "libslic3r/Geometry.hpp"
%}
diff --git a/xs/xsp/Layer.xsp b/xs/xsp/Layer.xsp
index 8bdbef54f..b758989e6 100644
--- a/xs/xsp/Layer.xsp
+++ b/xs/xsp/Layer.xsp
@@ -2,8 +2,7 @@
%{
#include <myinit.h>
-#include "Layer.hpp"
-#include "perlglue.hpp"
+#include "libslic3r/Layer.hpp"
%}
%name{Slic3r::Layer::Region} class LayerRegion {
diff --git a/xs/xsp/Line.xsp b/xs/xsp/Line.xsp
index 22bd8e9e9..d0552315f 100644
--- a/xs/xsp/Line.xsp
+++ b/xs/xsp/Line.xsp
@@ -2,8 +2,8 @@
%{
#include <myinit.h>
-#include "Line.hpp"
-#include "Polyline.hpp"
+#include "libslic3r/Line.hpp"
+#include "libslic3r/Polyline.hpp"
%}
%name{Slic3r::Line} class Line {
diff --git a/xs/xsp/Model.xsp b/xs/xsp/Model.xsp
index aaf5c1e75..8947558eb 100644
--- a/xs/xsp/Model.xsp
+++ b/xs/xsp/Model.xsp
@@ -2,8 +2,8 @@
%{
#include <myinit.h>
-#include "Model.hpp"
-#include "PrintConfig.hpp"
+#include "libslic3r/Model.hpp"
+#include "libslic3r/PrintConfig.hpp"
%}
%name{Slic3r::Model} class Model {
diff --git a/xs/xsp/MotionPlanner.xsp b/xs/xsp/MotionPlanner.xsp
index 57abef937..ad29bc0f7 100644
--- a/xs/xsp/MotionPlanner.xsp
+++ b/xs/xsp/MotionPlanner.xsp
@@ -2,7 +2,7 @@
%{
#include <myinit.h>
-#include "MotionPlanner.hpp"
+#include "libslic3r/MotionPlanner.hpp"
%}
%name{Slic3r::MotionPlanner} class MotionPlanner {
diff --git a/xs/xsp/PlaceholderParser.xsp b/xs/xsp/PlaceholderParser.xsp
index 1f027a0d7..4b508f77a 100644
--- a/xs/xsp/PlaceholderParser.xsp
+++ b/xs/xsp/PlaceholderParser.xsp
@@ -3,7 +3,7 @@
%{
#include <myinit.h>
#include <vector>
-#include "PlaceholderParser.hpp"
+#include "libslic3r/PlaceholderParser.hpp"
%}
%name{Slic3r::GCode::PlaceholderParser} class PlaceholderParser {
diff --git a/xs/xsp/Point.xsp b/xs/xsp/Point.xsp
index 21c8d9ab1..774b2fc1a 100644
--- a/xs/xsp/Point.xsp
+++ b/xs/xsp/Point.xsp
@@ -2,9 +2,9 @@
%{
#include <myinit.h>
-#include "Point.hpp"
-#include "Polygon.hpp"
-#include "Polyline.hpp"
+#include "libslic3r/Point.hpp"
+#include "libslic3r/Polygon.hpp"
+#include "libslic3r/Polyline.hpp"
%}
%name{Slic3r::Point} class Point {
diff --git a/xs/xsp/Polygon.xsp b/xs/xsp/Polygon.xsp
index cabf62adc..653691e49 100644
--- a/xs/xsp/Polygon.xsp
+++ b/xs/xsp/Polygon.xsp
@@ -2,9 +2,9 @@
%{
#include <myinit.h>
-#include "BoundingBox.hpp"
-#include "Polygon.hpp"
-#include "BoundingBox.hpp"
+#include "libslic3r/BoundingBox.hpp"
+#include "libslic3r/Polygon.hpp"
+#include "libslic3r/BoundingBox.hpp"
%}
%name{Slic3r::Polygon} class Polygon {
diff --git a/xs/xsp/Polyline.xsp b/xs/xsp/Polyline.xsp
index e43405df5..e97897719 100644
--- a/xs/xsp/Polyline.xsp
+++ b/xs/xsp/Polyline.xsp
@@ -2,9 +2,9 @@
%{
#include <myinit.h>
-#include "BoundingBox.hpp"
-#include "ClipperUtils.hpp"
-#include "Polyline.hpp"
+#include "libslic3r/BoundingBox.hpp"
+#include "libslic3r/ClipperUtils.hpp"
+#include "libslic3r/Polyline.hpp"
%}
%name{Slic3r::Polyline} class Polyline {
diff --git a/xs/xsp/PolylineCollection.xsp b/xs/xsp/PolylineCollection.xsp
index d5ad4f77f..f512bbb63 100644
--- a/xs/xsp/PolylineCollection.xsp
+++ b/xs/xsp/PolylineCollection.xsp
@@ -2,7 +2,7 @@
%{
#include <myinit.h>
-#include "PolylineCollection.hpp"
+#include "libslic3r/PolylineCollection.hpp"
%}
%name{Slic3r::Polyline::Collection} class PolylineCollection {
diff --git a/xs/xsp/Print.xsp b/xs/xsp/Print.xsp
index 39a094e55..330bc6b9a 100644
--- a/xs/xsp/Print.xsp
+++ b/xs/xsp/Print.xsp
@@ -2,8 +2,8 @@
%{
#include <myinit.h>
-#include "Print.hpp"
-#include "PlaceholderParser.hpp"
+#include "libslic3r/Print.hpp"
+#include "libslic3r/PlaceholderParser.hpp"
%}
%package{Slic3r::Print::State};
diff --git a/xs/xsp/Surface.xsp b/xs/xsp/Surface.xsp
index 9aaa8a2fb..11c7ec744 100644
--- a/xs/xsp/Surface.xsp
+++ b/xs/xsp/Surface.xsp
@@ -2,8 +2,8 @@
%{
#include <myinit.h>
-#include "Surface.hpp"
-#include "ClipperUtils.hpp"
+#include "libslic3r/Surface.hpp"
+#include "libslic3r/ClipperUtils.hpp"
%}
%name{Slic3r::Surface} class Surface {
diff --git a/xs/xsp/SurfaceCollection.xsp b/xs/xsp/SurfaceCollection.xsp
index 77295e881..ea6a6b7bf 100644
--- a/xs/xsp/SurfaceCollection.xsp
+++ b/xs/xsp/SurfaceCollection.xsp
@@ -2,7 +2,7 @@
%{
#include <myinit.h>
-#include "SurfaceCollection.hpp"
+#include "libslic3r/SurfaceCollection.hpp"
%}
%name{Slic3r::Surface::Collection} class SurfaceCollection {
diff --git a/xs/xsp/TriangleMesh.xsp b/xs/xsp/TriangleMesh.xsp
index 7baa50644..c6f7f7d04 100644
--- a/xs/xsp/TriangleMesh.xsp
+++ b/xs/xsp/TriangleMesh.xsp
@@ -2,7 +2,7 @@
%{
#include <myinit.h>
-#include "TriangleMesh.hpp"
+#include "libslic3r/TriangleMesh.hpp"
%}
%name{Slic3r::TriangleMesh} class TriangleMesh {