From 5199d8fb48b391b4cf268e74d78beba8db8e15e0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20=C5=A0ach?= Date: Mon, 11 Nov 2024 13:21:57 +0100 Subject: [PATCH] Arrange: Move arrange into separate cmake targets - Create a slicer specific arrange target - Create a general arrange target from the arrange core --- src/CMakeLists.txt | 4 +- src/PrusaSlicer.cpp | 2 +- .../Arrange/Core/NFP/NFPConcave_CGAL.cpp | 121 ------------------ .../Arrange/Core/NFP/NFPConcave_CGAL.hpp | 20 --- src/libslic3r/CMakeLists.txt | 50 -------- src/libslic3r/Model.cpp | 1 - src/slic3r-arrange-wrapper/CMakeLists.txt | 35 +++++ .../include/arrange-wrapper}/Arrange.hpp | 6 +- .../ArrangeSettingsDb_AppCfg.hpp | 0 .../arrange-wrapper}/ArrangeSettingsView.hpp | 0 .../Items/ArbitraryDataStore.hpp | 2 +- .../arrange-wrapper}/Items/ArrangeItem.hpp | 39 +++--- .../Items/MutableItemTraits.hpp | 6 +- .../Items/SimpleArrangeItem.hpp | 32 ++--- .../Items/TrafoOnlyArrangeItem.hpp | 6 +- .../include/arrange-wrapper}/ModelArrange.hpp | 4 +- .../include/arrange-wrapper}/Scene.hpp | 22 ++-- .../include/arrange-wrapper}/SceneBuilder.hpp | 22 ++-- .../SegmentedRectangleBed.hpp | 2 +- .../arrange-wrapper}/Tasks/ArrangeTask.hpp | 4 +- .../arrange-wrapper}/Tasks/FillBedTask.hpp | 4 +- .../Tasks/MultiplySelectionTask.hpp | 4 +- .../src}/ArrangeImpl.hpp | 27 ++-- .../src}/ArrangeSettingsDb_AppCfg.cpp | 9 +- .../src}/Items/ArrangeItem.cpp | 15 ++- .../src}/Items/SimpleArrangeItem.cpp | 10 +- .../src}/ModelArrange.cpp | 13 +- .../src}/Scene.cpp | 10 +- .../src}/SceneBuilder.cpp | 33 ++--- .../src}/Tasks/ArrangeTaskImpl.hpp | 7 +- .../src}/Tasks/FillBedTaskImpl.hpp | 8 +- .../src}/Tasks/MultiplySelectionTaskImpl.hpp | 2 +- src/slic3r-arrange/CMakeLists.txt | 34 +++++ .../include/arrange}/ArrangeBase.hpp | 6 +- .../include/arrange}/ArrangeFirstFit.hpp | 2 +- .../include/arrange}/ArrangeItemTraits.hpp | 0 .../include/arrange}/Beds.hpp | 0 .../include/arrange}/DataStoreTraits.hpp | 0 .../include/arrange}/NFP/EdgeCache.hpp | 0 .../arrange}/NFP/Kernels/CompactifyKernel.hpp | 0 .../arrange}/NFP/Kernels/GravityKernel.hpp | 4 +- .../arrange}/NFP/Kernels/KernelTraits.hpp | 2 +- .../arrange}/NFP/Kernels/KernelUtils.hpp | 6 +- .../Kernels/RectangleOverfitKernelWrapper.hpp | 4 +- .../Kernels/SVGDebugOutputKernelWrapper.hpp | 0 .../arrange}/NFP/Kernels/TMArrangeKernel.hpp | 7 +- .../include/arrange}/NFP/NFP.hpp | 9 +- .../arrange}/NFP/NFPArrangeItemTraits.hpp | 7 +- .../arrange}/NFP/NFPConcave_Tesselate.hpp | 0 .../include/arrange}/NFP/PackStrategyNFP.hpp | 9 +- .../NFP/RectangleOverfitPackingStrategy.hpp | 6 +- .../include/arrange}/PackingContext.hpp | 0 .../Core => slic3r-arrange/src}/Beds.cpp | 3 +- .../src}/NFP/CircularEdgeIterator.hpp | 0 .../src}/NFP/EdgeCache.cpp | 2 +- .../Core => slic3r-arrange/src}/NFP/NFP.cpp | 15 ++- .../src}/NFP/NFPConcave_Tesselate.cpp | 5 +- src/slic3r/CMakeLists.txt | 1 + src/slic3r/GUI/ArrangeSettingsDialogImgui.hpp | 2 +- src/slic3r/GUI/GLCanvas3D.hpp | 2 +- src/slic3r/GUI/Jobs/ArrangeJob2.hpp | 8 +- tests/arrange/CMakeLists.txt | 2 +- tests/arrange/test_arrange.cpp | 24 ++-- tests/arrange/test_arrange_integration.cpp | 11 +- tests/fff_print/CMakeLists.txt | 2 +- tests/fff_print/test_data.cpp | 3 +- tests/fff_print/test_gcode.cpp | 1 - tests/fff_print/test_model.cpp | 2 +- 68 files changed, 294 insertions(+), 405 deletions(-) delete mode 100644 src/libslic3r/Arrange/Core/NFP/NFPConcave_CGAL.cpp delete mode 100644 src/libslic3r/Arrange/Core/NFP/NFPConcave_CGAL.hpp create mode 100644 src/slic3r-arrange-wrapper/CMakeLists.txt rename src/{libslic3r/Arrange => slic3r-arrange-wrapper/include/arrange-wrapper}/Arrange.hpp (98%) rename src/{libslic3r/Arrange => slic3r-arrange-wrapper/include/arrange-wrapper}/ArrangeSettingsDb_AppCfg.hpp (100%) rename src/{libslic3r/Arrange => slic3r-arrange-wrapper/include/arrange-wrapper}/ArrangeSettingsView.hpp (100%) rename src/{libslic3r/Arrange => slic3r-arrange-wrapper/include/arrange-wrapper}/Items/ArbitraryDataStore.hpp (97%) rename src/{libslic3r/Arrange => slic3r-arrange-wrapper/include/arrange-wrapper}/Items/ArrangeItem.hpp (94%) rename src/{libslic3r/Arrange => slic3r-arrange-wrapper/include/arrange-wrapper}/Items/MutableItemTraits.hpp (96%) rename src/{libslic3r/Arrange => slic3r-arrange-wrapper/include/arrange-wrapper}/Items/SimpleArrangeItem.hpp (90%) rename src/{libslic3r/Arrange => slic3r-arrange-wrapper/include/arrange-wrapper}/Items/TrafoOnlyArrangeItem.hpp (93%) rename src/{libslic3r => slic3r-arrange-wrapper/include/arrange-wrapper}/ModelArrange.hpp (94%) rename src/{libslic3r/Arrange => slic3r-arrange-wrapper/include/arrange-wrapper}/Scene.hpp (97%) rename src/{libslic3r/Arrange => slic3r-arrange-wrapper/include/arrange-wrapper}/SceneBuilder.hpp (98%) rename src/{libslic3r/Arrange => slic3r-arrange-wrapper/include/arrange-wrapper}/SegmentedRectangleBed.hpp (98%) rename src/{libslic3r/Arrange => slic3r-arrange-wrapper/include/arrange-wrapper}/Tasks/ArrangeTask.hpp (95%) rename src/{libslic3r/Arrange => slic3r-arrange-wrapper/include/arrange-wrapper}/Tasks/FillBedTask.hpp (97%) rename src/{libslic3r/Arrange => slic3r-arrange-wrapper/include/arrange-wrapper}/Tasks/MultiplySelectionTask.hpp (96%) rename src/{libslic3r/Arrange => slic3r-arrange-wrapper/src}/ArrangeImpl.hpp (96%) rename src/{libslic3r/Arrange => slic3r-arrange-wrapper/src}/ArrangeSettingsDb_AppCfg.cpp (97%) rename src/{libslic3r/Arrange => slic3r-arrange-wrapper/src}/Items/ArrangeItem.cpp (92%) rename src/{libslic3r/Arrange => slic3r-arrange-wrapper/src}/Items/SimpleArrangeItem.cpp (65%) rename src/{libslic3r => slic3r-arrange-wrapper/src}/ModelArrange.cpp (88%) rename src/{libslic3r/Arrange => slic3r-arrange-wrapper/src}/Scene.cpp (89%) rename src/{libslic3r/Arrange => slic3r-arrange-wrapper/src}/SceneBuilder.cpp (97%) rename src/{libslic3r/Arrange => slic3r-arrange-wrapper/src}/Tasks/ArrangeTaskImpl.hpp (97%) rename src/{libslic3r/Arrange => slic3r-arrange-wrapper/src}/Tasks/FillBedTaskImpl.hpp (98%) rename src/{libslic3r/Arrange => slic3r-arrange-wrapper/src}/Tasks/MultiplySelectionTaskImpl.hpp (98%) create mode 100644 src/slic3r-arrange/CMakeLists.txt rename src/{libslic3r/Arrange/Core => slic3r-arrange/include/arrange}/ArrangeBase.hpp (98%) rename src/{libslic3r/Arrange/Core => slic3r-arrange/include/arrange}/ArrangeFirstFit.hpp (99%) rename src/{libslic3r/Arrange/Core => slic3r-arrange/include/arrange}/ArrangeItemTraits.hpp (100%) rename src/{libslic3r/Arrange/Core => slic3r-arrange/include/arrange}/Beds.hpp (100%) rename src/{libslic3r/Arrange/Core => slic3r-arrange/include/arrange}/DataStoreTraits.hpp (100%) rename src/{libslic3r/Arrange/Core => slic3r-arrange/include/arrange}/NFP/EdgeCache.hpp (100%) rename src/{libslic3r/Arrange/Core => slic3r-arrange/include/arrange}/NFP/Kernels/CompactifyKernel.hpp (100%) rename src/{libslic3r/Arrange/Core => slic3r-arrange/include/arrange}/NFP/Kernels/GravityKernel.hpp (93%) rename src/{libslic3r/Arrange/Core => slic3r-arrange/include/arrange}/NFP/Kernels/KernelTraits.hpp (97%) rename src/{libslic3r/Arrange/Core => slic3r-arrange/include/arrange}/NFP/Kernels/KernelUtils.hpp (92%) rename src/{libslic3r/Arrange/Core => slic3r-arrange/include/arrange}/NFP/Kernels/RectangleOverfitKernelWrapper.hpp (96%) rename src/{libslic3r/Arrange/Core => slic3r-arrange/include/arrange}/NFP/Kernels/SVGDebugOutputKernelWrapper.hpp (100%) rename src/{libslic3r/Arrange/Core => slic3r-arrange/include/arrange}/NFP/Kernels/TMArrangeKernel.hpp (98%) rename src/{libslic3r/Arrange/Core => slic3r-arrange/include/arrange}/NFP/NFP.hpp (94%) rename src/{libslic3r/Arrange/Core => slic3r-arrange/include/arrange}/NFP/NFPArrangeItemTraits.hpp (97%) rename src/{libslic3r/Arrange/Core => slic3r-arrange/include/arrange}/NFP/NFPConcave_Tesselate.hpp (100%) rename src/{libslic3r/Arrange/Core => slic3r-arrange/include/arrange}/NFP/PackStrategyNFP.hpp (98%) rename src/{libslic3r/Arrange/Core => slic3r-arrange/include/arrange}/NFP/RectangleOverfitPackingStrategy.hpp (97%) rename src/{libslic3r/Arrange/Core => slic3r-arrange/include/arrange}/PackingContext.hpp (100%) rename src/{libslic3r/Arrange/Core => slic3r-arrange/src}/Beds.cpp (99%) rename src/{libslic3r/Arrange/Core => slic3r-arrange/src}/NFP/CircularEdgeIterator.hpp (100%) rename src/{libslic3r/Arrange/Core => slic3r-arrange/src}/NFP/EdgeCache.cpp (98%) rename src/{libslic3r/Arrange/Core => slic3r-arrange/src}/NFP/NFP.cpp (98%) rename src/{libslic3r/Arrange/Core => slic3r-arrange/src}/NFP/NFPConcave_Tesselate.cpp (96%) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 28746cadb7..b2d78e5b2d 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -20,6 +20,8 @@ endif () if (SLIC3R_GUI) add_subdirectory(libvgcode) + add_subdirectory(slic3r-arrange) + add_subdirectory(slic3r-arrange-wrapper) if(WIN32) message(STATUS "WXWIN environment set to: $ENV{WXWIN}") @@ -109,7 +111,7 @@ if (NOT WIN32 AND NOT APPLE) set_target_properties(PrusaSlicer PROPERTIES OUTPUT_NAME "prusa-slicer") endif () -target_link_libraries(PrusaSlicer libslic3r libcereal) +target_link_libraries(PrusaSlicer libslic3r libcereal slic3r-arrange-wrapper) if (APPLE) # add_compile_options(-stdlib=libc++) diff --git a/src/PrusaSlicer.cpp b/src/PrusaSlicer.cpp index 3324b0edfb..6de4b9c1cb 100644 --- a/src/PrusaSlicer.cpp +++ b/src/PrusaSlicer.cpp @@ -48,7 +48,7 @@ #include "libslic3r/GCode/PostProcessor.hpp" #include "libslic3r/Model.hpp" #include "libslic3r/CutUtils.hpp" -#include "libslic3r/ModelArrange.hpp" +#include #include "libslic3r/Platform.hpp" #include "libslic3r/Print.hpp" #include "libslic3r/SLAPrint.hpp" diff --git a/src/libslic3r/Arrange/Core/NFP/NFPConcave_CGAL.cpp b/src/libslic3r/Arrange/Core/NFP/NFPConcave_CGAL.cpp deleted file mode 100644 index b0fc7d3e16..0000000000 --- a/src/libslic3r/Arrange/Core/NFP/NFPConcave_CGAL.cpp +++ /dev/null @@ -1,121 +0,0 @@ -///|/ Copyright (c) Prusa Research 2023 Tomáš Mészáros @tamasmeszaros -///|/ -///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher -///|/ -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include "NFP.hpp" -#include "NFPConcave_CGAL.hpp" -#include "libslic3r/ClipperUtils.hpp" -#include "libslic3r/ExPolygon.hpp" -#include "libslic3r/Point.hpp" -#include "libslic3r/libslic3r.h" - -namespace Slic3r { - -using K = CGAL::Exact_predicates_inexact_constructions_kernel; -using Partition_traits_2 = CGAL::Partition_traits_2::type >; -using Point_2 = Partition_traits_2::Point_2; -using Polygon_2 = Partition_traits_2::Polygon_2; // a polygon of indices - -ExPolygons nfp_concave_concave_cgal(const ExPolygon &fixed, const ExPolygon &movable) -{ - Polygons fixed_decomp = convex_decomposition_cgal(fixed); - Polygons movable_decomp = convex_decomposition_cgal(movable); - - auto refs_mv = reserve_vector(movable_decomp.size()); - - for (const Polygon &p : movable_decomp) - refs_mv.emplace_back(reference_vertex(p)); - - auto nfps = reserve_polygons(fixed_decomp.size() *movable_decomp.size()); - - Vec2crd ref_whole = reference_vertex(movable); - for (const Polygon &fixed_part : fixed_decomp) { - size_t mvi = 0; - for (const Polygon &movable_part : movable_decomp) { - Polygon subnfp = nfp_convex_convex(fixed_part, movable_part); - const Vec2crd &ref_mp = refs_mv[mvi]; - auto d = ref_whole - ref_mp; - subnfp.translate(d); - nfps.emplace_back(subnfp); - mvi++; - } - } - - return union_ex(nfps); -} - -// TODO: holes -Polygons convex_decomposition_cgal(const ExPolygon &expoly) -{ - CGAL::Polygon_vertical_decomposition_2 decomp; - - CGAL::Polygon_2 contour; - for (auto &p : expoly.contour.points) - contour.push_back({unscaled(p.x()), unscaled(p.y())}); - - CGAL::Polygon_with_holes_2 cgalpoly{contour}; - for (const Polygon &h : expoly.holes) { - CGAL::Polygon_2 hole; - for (auto &p : h.points) - hole.push_back({unscaled(p.x()), unscaled(p.y())}); - - cgalpoly.add_hole(hole); - } - - std::vector> out; - decomp(cgalpoly, std::back_inserter(out)); - - Polygons ret; - for (auto &pwh : out) { - Polygon poly; - for (auto &p : pwh) - poly.points.emplace_back(scaled(p.x()), scaled(p.y())); - ret.emplace_back(std::move(poly)); - } - - return ret; //convex_decomposition_cgal(expoly.contour); -} - -Polygons convex_decomposition_cgal(const Polygon &poly) -{ - auto pts = reserve_vector(poly.size()); - - for (const Point &p : poly.points) - pts.emplace_back(unscaled(p.x()), unscaled(p.y())); - - Partition_traits_2 traits(CGAL::make_property_map(pts)); - - Polygon_2 polyidx; - for (size_t i = 0; i < pts.size(); ++i) - polyidx.push_back(i); - - std::vector outp; - - CGAL::optimal_convex_partition_2(polyidx.vertices_begin(), - polyidx.vertices_end(), - std::back_inserter(outp), - traits); - - Polygons ret; - for (const Polygon_2& poly : outp){ - Polygon r; - for(Point_2 p : poly.container()) - r.points.emplace_back(scaled(pts[p].x()), scaled(pts[p].y())); - - ret.emplace_back(std::move(r)); - } - - return ret; -} - -} // namespace Slic3r diff --git a/src/libslic3r/Arrange/Core/NFP/NFPConcave_CGAL.hpp b/src/libslic3r/Arrange/Core/NFP/NFPConcave_CGAL.hpp deleted file mode 100644 index caf9f9a7b1..0000000000 --- a/src/libslic3r/Arrange/Core/NFP/NFPConcave_CGAL.hpp +++ /dev/null @@ -1,20 +0,0 @@ -///|/ Copyright (c) Prusa Research 2023 Tomáš Mészáros @tamasmeszaros -///|/ -///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher -///|/ -#ifndef NFPCONCAVE_CGAL_HPP -#define NFPCONCAVE_CGAL_HPP - -#include - -#include "libslic3r/Polygon.hpp" - -namespace Slic3r { - -Polygons convex_decomposition_cgal(const Polygon &expoly); -Polygons convex_decomposition_cgal(const ExPolygon &expoly); -ExPolygons nfp_concave_concave_cgal(const ExPolygon &fixed, const ExPolygon &movable); - -} // namespace Slic3r - -#endif // NFPCONCAVE_CGAL_HPP diff --git a/src/libslic3r/CMakeLists.txt b/src/libslic3r/CMakeLists.txt index 8beb3cd6dd..ea669ee30c 100644 --- a/src/libslic3r/CMakeLists.txt +++ b/src/libslic3r/CMakeLists.txt @@ -262,8 +262,6 @@ set(SLIC3R_SOURCES CutUtils.hpp Model.cpp Model.hpp - ModelArrange.hpp - ModelArrange.cpp MultiMaterialSegmentation.cpp MultiMaterialSegmentation.hpp MeshNormals.hpp @@ -273,54 +271,6 @@ set(SLIC3R_SOURCES MeasureUtils.hpp CustomGCode.cpp CustomGCode.hpp - Arrange/ArrangeImpl.hpp - Arrange/Items/ArrangeItem.hpp - Arrange/Items/ArrangeItem.cpp - Arrange/Items/SimpleArrangeItem.hpp - Arrange/Items/SimpleArrangeItem.cpp - Arrange/Items/TrafoOnlyArrangeItem.hpp - Arrange/Items/MutableItemTraits.hpp - Arrange/Items/ArbitraryDataStore.hpp - Arrange/ArrangeSettingsView.hpp - Arrange/ArrangeSettingsDb_AppCfg.hpp - Arrange/ArrangeSettingsDb_AppCfg.cpp - Arrange/Scene.hpp - Arrange/Scene.cpp - Arrange/SceneBuilder.hpp - Arrange/SceneBuilder.cpp - Arrange/Tasks/ArrangeTask.hpp - Arrange/Tasks/ArrangeTaskImpl.hpp - Arrange/Tasks/FillBedTask.hpp - Arrange/Tasks/FillBedTaskImpl.hpp - Arrange/Tasks/MultiplySelectionTask.hpp - Arrange/Tasks/MultiplySelectionTaskImpl.hpp - Arrange/SegmentedRectangleBed.hpp - Arrange/Core/ArrangeItemTraits.hpp - Arrange/Core/DataStoreTraits.hpp - Arrange/Core/ArrangeBase.hpp - Arrange/Core/PackingContext.hpp - Arrange/Core/ArrangeFirstFit.hpp - Arrange/Core/Beds.hpp - Arrange/Core/Beds.cpp - Arrange/Core/NFP/NFP.hpp - Arrange/Core/NFP/NFP.cpp - Arrange/Core/NFP/NFPConcave_CGAL.hpp - Arrange/Core/NFP/NFPConcave_CGAL.cpp - Arrange/Core/NFP/NFPConcave_Tesselate.hpp - Arrange/Core/NFP/NFPConcave_Tesselate.cpp - Arrange/Core/NFP/EdgeCache.hpp - Arrange/Core/NFP/EdgeCache.cpp - Arrange/Core/NFP/CircularEdgeIterator.hpp - Arrange/Core/NFP/NFPArrangeItemTraits.hpp - Arrange/Core/NFP/PackStrategyNFP.hpp - Arrange/Core/NFP/RectangleOverfitPackingStrategy.hpp - Arrange/Core/NFP/Kernels/KernelTraits.hpp - Arrange/Core/NFP/Kernels/GravityKernel.hpp - Arrange/Core/NFP/Kernels/TMArrangeKernel.hpp - Arrange/Core/NFP/Kernels/CompactifyKernel.hpp - Arrange/Core/NFP/Kernels/RectangleOverfitKernelWrapper.hpp - Arrange/Core/NFP/Kernels/SVGDebugOutputKernelWrapper.hpp - Arrange/Core/NFP/Kernels/KernelUtils.hpp MultiPoint.cpp MultiPoint.hpp MutablePriorityQueue.hpp diff --git a/src/libslic3r/Model.cpp b/src/libslic3r/Model.cpp index 6719adb054..52694e12da 100644 --- a/src/libslic3r/Model.cpp +++ b/src/libslic3r/Model.cpp @@ -16,7 +16,6 @@ #include "BuildVolume.hpp" #include "Exception.hpp" #include "Model.hpp" -#include "ModelArrange.hpp" #include "Geometry/ConvexHull.hpp" #include "MTUtils.hpp" #include "TriangleMeshSlicer.hpp" diff --git a/src/slic3r-arrange-wrapper/CMakeLists.txt b/src/slic3r-arrange-wrapper/CMakeLists.txt new file mode 100644 index 0000000000..3f723e5aed --- /dev/null +++ b/src/slic3r-arrange-wrapper/CMakeLists.txt @@ -0,0 +1,35 @@ +project(slic3r-arrange-wrapper) +cmake_minimum_required(VERSION 3.13) + +add_library(slic3r-arrange-wrapper + include/arrange-wrapper/Arrange.hpp + include/arrange-wrapper/ArrangeSettingsDb_AppCfg.hpp + include/arrange-wrapper/ArrangeSettingsView.hpp + include/arrange-wrapper/Items/ArbitraryDataStore.hpp + include/arrange-wrapper/Items/ArrangeItem.hpp + include/arrange-wrapper/Items/MutableItemTraits.hpp + include/arrange-wrapper/Items/SimpleArrangeItem.hpp + include/arrange-wrapper/Items/TrafoOnlyArrangeItem.hpp + include/arrange-wrapper/Scene.hpp + include/arrange-wrapper/SceneBuilder.hpp + include/arrange-wrapper/SegmentedRectangleBed.hpp + include/arrange-wrapper/Tasks/ArrangeTask.hpp + include/arrange-wrapper/Tasks/FillBedTask.hpp + include/arrange-wrapper/Tasks/MultiplySelectionTask.hpp + include/arrange-wrapper/ModelArrange.hpp + + src/ArrangeImpl.hpp + src/ArrangeSettingsDb_AppCfg.cpp + src/Items/SimpleArrangeItem.cpp + src/SceneBuilder.cpp + src/Scene.cpp + src/Items/ArrangeItem.cpp + src/ModelArrange.cpp + src/Tasks/ArrangeTaskImpl.hpp + src/Tasks/FillBedTaskImpl.hpp + src/Tasks/MultiplySelectionTaskImpl.hpp +) + +target_include_directories(slic3r-arrange-wrapper PRIVATE src) +target_include_directories(slic3r-arrange-wrapper PUBLIC include) +target_link_libraries(slic3r-arrange-wrapper PUBLIC slic3r-arrange) diff --git a/src/libslic3r/Arrange/Arrange.hpp b/src/slic3r-arrange-wrapper/include/arrange-wrapper/Arrange.hpp similarity index 98% rename from src/libslic3r/Arrange/Arrange.hpp rename to src/slic3r-arrange-wrapper/include/arrange-wrapper/Arrange.hpp index 6bf1321e44..ad9e318559 100644 --- a/src/libslic3r/Arrange/Arrange.hpp +++ b/src/slic3r-arrange-wrapper/include/arrange-wrapper/Arrange.hpp @@ -5,11 +5,11 @@ #ifndef ARRANGE2_HPP #define ARRANGE2_HPP +#include +#include + #include "Scene.hpp" #include "Items/MutableItemTraits.hpp" -#include "Core/NFP/NFPArrangeItemTraits.hpp" - -#include "libslic3r/MinAreaBoundingBox.hpp" namespace Slic3r { namespace arr2 { diff --git a/src/libslic3r/Arrange/ArrangeSettingsDb_AppCfg.hpp b/src/slic3r-arrange-wrapper/include/arrange-wrapper/ArrangeSettingsDb_AppCfg.hpp similarity index 100% rename from src/libslic3r/Arrange/ArrangeSettingsDb_AppCfg.hpp rename to src/slic3r-arrange-wrapper/include/arrange-wrapper/ArrangeSettingsDb_AppCfg.hpp diff --git a/src/libslic3r/Arrange/ArrangeSettingsView.hpp b/src/slic3r-arrange-wrapper/include/arrange-wrapper/ArrangeSettingsView.hpp similarity index 100% rename from src/libslic3r/Arrange/ArrangeSettingsView.hpp rename to src/slic3r-arrange-wrapper/include/arrange-wrapper/ArrangeSettingsView.hpp diff --git a/src/libslic3r/Arrange/Items/ArbitraryDataStore.hpp b/src/slic3r-arrange-wrapper/include/arrange-wrapper/Items/ArbitraryDataStore.hpp similarity index 97% rename from src/libslic3r/Arrange/Items/ArbitraryDataStore.hpp rename to src/slic3r-arrange-wrapper/include/arrange-wrapper/Items/ArbitraryDataStore.hpp index 73d18b46b8..495dd0bf02 100644 --- a/src/libslic3r/Arrange/Items/ArbitraryDataStore.hpp +++ b/src/slic3r-arrange-wrapper/include/arrange-wrapper/Items/ArbitraryDataStore.hpp @@ -9,7 +9,7 @@ #include #include -#include "libslic3r/Arrange/Core/DataStoreTraits.hpp" +#include namespace Slic3r { namespace arr2 { diff --git a/src/libslic3r/Arrange/Items/ArrangeItem.hpp b/src/slic3r-arrange-wrapper/include/arrange-wrapper/Items/ArrangeItem.hpp similarity index 94% rename from src/libslic3r/Arrange/Items/ArrangeItem.hpp rename to src/slic3r-arrange-wrapper/include/arrange-wrapper/Items/ArrangeItem.hpp index bc30450057..96780f2cf1 100644 --- a/src/libslic3r/Arrange/Items/ArrangeItem.hpp +++ b/src/slic3r-arrange-wrapper/include/arrange-wrapper/Items/ArrangeItem.hpp @@ -20,24 +20,27 @@ #include #include -#include "libslic3r/ExPolygon.hpp" -#include "libslic3r/BoundingBox.hpp" -#include "libslic3r/AnyPtr.hpp" -#include "libslic3r/Arrange/Core/PackingContext.hpp" -#include "libslic3r/Arrange/Core/NFP/NFPArrangeItemTraits.hpp" -#include "libslic3r/Arrange/Core/NFP/NFP.hpp" -#include "libslic3r/Arrange/Items/MutableItemTraits.hpp" -#include "libslic3r/Arrange/Arrange.hpp" -#include "libslic3r/Arrange/Tasks/ArrangeTask.hpp" -#include "libslic3r/Arrange/Tasks/FillBedTask.hpp" -#include "libslic3r/Arrange/Tasks/MultiplySelectionTask.hpp" -#include "libslic3r/Arrange/Items/ArbitraryDataStore.hpp" -#include "libslic3r/Arrange/Core/ArrangeBase.hpp" -#include "libslic3r/Arrange/Core/ArrangeItemTraits.hpp" -#include "libslic3r/Arrange/Core/DataStoreTraits.hpp" -#include "libslic3r/Point.hpp" -#include "libslic3r/Polygon.hpp" -#include "libslic3r/libslic3r.h" +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include + + +#include +#include +#include +#include +#include +#include namespace Slic3r { namespace arr2 { struct InfiniteBed; diff --git a/src/libslic3r/Arrange/Items/MutableItemTraits.hpp b/src/slic3r-arrange-wrapper/include/arrange-wrapper/Items/MutableItemTraits.hpp similarity index 96% rename from src/libslic3r/Arrange/Items/MutableItemTraits.hpp rename to src/slic3r-arrange-wrapper/include/arrange-wrapper/Items/MutableItemTraits.hpp index c3d0f47b71..e4c22f417c 100644 --- a/src/libslic3r/Arrange/Items/MutableItemTraits.hpp +++ b/src/slic3r-arrange-wrapper/include/arrange-wrapper/Items/MutableItemTraits.hpp @@ -5,10 +5,10 @@ #ifndef MutableItemTraits_HPP #define MutableItemTraits_HPP -#include "libslic3r/Arrange/Core/ArrangeItemTraits.hpp" -#include "libslic3r/Arrange/Core/DataStoreTraits.hpp" +#include -#include "libslic3r/ExPolygon.hpp" +#include +#include namespace Slic3r { namespace arr2 { diff --git a/src/libslic3r/Arrange/Items/SimpleArrangeItem.hpp b/src/slic3r-arrange-wrapper/include/arrange-wrapper/Items/SimpleArrangeItem.hpp similarity index 90% rename from src/libslic3r/Arrange/Items/SimpleArrangeItem.hpp rename to src/slic3r-arrange-wrapper/include/arrange-wrapper/Items/SimpleArrangeItem.hpp index 9964a72f78..8c58b383e9 100644 --- a/src/libslic3r/Arrange/Items/SimpleArrangeItem.hpp +++ b/src/slic3r-arrange-wrapper/include/arrange-wrapper/Items/SimpleArrangeItem.hpp @@ -11,21 +11,23 @@ #include #include -#include "libslic3r/Arrange/Core/PackingContext.hpp" -#include "libslic3r/Arrange/Core/NFP/NFPArrangeItemTraits.hpp" -#include "libslic3r/Arrange/Core/NFP/NFP.hpp" -#include "libslic3r/Arrange/Arrange.hpp" -#include "libslic3r/Arrange/Tasks/ArrangeTask.hpp" -#include "libslic3r/Arrange/Tasks/FillBedTask.hpp" -#include "libslic3r/Arrange/Tasks/MultiplySelectionTask.hpp" -#include "libslic3r/Polygon.hpp" -#include "libslic3r/Geometry/ConvexHull.hpp" -#include "MutableItemTraits.hpp" -#include "libslic3r/Arrange/Core/ArrangeItemTraits.hpp" -#include "libslic3r/BoundingBox.hpp" -#include "libslic3r/ClipperUtils.hpp" -#include "libslic3r/ObjectID.hpp" -#include "libslic3r/Point.hpp" +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include + +#include +#include +#include +#include + namespace Slic3r { namespace arr2 { struct InfiniteBed; diff --git a/src/libslic3r/Arrange/Items/TrafoOnlyArrangeItem.hpp b/src/slic3r-arrange-wrapper/include/arrange-wrapper/Items/TrafoOnlyArrangeItem.hpp similarity index 93% rename from src/libslic3r/Arrange/Items/TrafoOnlyArrangeItem.hpp rename to src/slic3r-arrange-wrapper/include/arrange-wrapper/Items/TrafoOnlyArrangeItem.hpp index 5c647104eb..0b4f98e96a 100644 --- a/src/libslic3r/Arrange/Items/TrafoOnlyArrangeItem.hpp +++ b/src/slic3r-arrange-wrapper/include/arrange-wrapper/Items/TrafoOnlyArrangeItem.hpp @@ -5,10 +5,10 @@ #ifndef TRAFOONLYARRANGEITEM_HPP #define TRAFOONLYARRANGEITEM_HPP -#include "libslic3r/Arrange/Core/ArrangeItemTraits.hpp" +#include -#include "libslic3r/Arrange/Items/ArbitraryDataStore.hpp" -#include "libslic3r/Arrange/Items/MutableItemTraits.hpp" +#include "ArbitraryDataStore.hpp" +#include "MutableItemTraits.hpp" namespace Slic3r { namespace arr2 { diff --git a/src/libslic3r/ModelArrange.hpp b/src/slic3r-arrange-wrapper/include/arrange-wrapper/ModelArrange.hpp similarity index 94% rename from src/libslic3r/ModelArrange.hpp rename to src/slic3r-arrange-wrapper/include/arrange-wrapper/ModelArrange.hpp index 3044a2e156..a802fd18be 100644 --- a/src/libslic3r/ModelArrange.hpp +++ b/src/slic3r-arrange-wrapper/include/arrange-wrapper/ModelArrange.hpp @@ -5,12 +5,12 @@ #ifndef MODELARRANGE_HPP #define MODELARRANGE_HPP -#include #include #include #include -#include "libslic3r/Arrange/Core/Beds.hpp" +#include +#include "Scene.hpp" namespace Slic3r { diff --git a/src/libslic3r/Arrange/Scene.hpp b/src/slic3r-arrange-wrapper/include/arrange-wrapper/Scene.hpp similarity index 97% rename from src/libslic3r/Arrange/Scene.hpp rename to src/slic3r-arrange-wrapper/include/arrange-wrapper/Scene.hpp index 571d3dc0b4..a3aa94f498 100644 --- a/src/libslic3r/Arrange/Scene.hpp +++ b/src/slic3r-arrange-wrapper/include/arrange-wrapper/Scene.hpp @@ -19,16 +19,18 @@ #include #include -#include "libslic3r/ObjectID.hpp" -#include "libslic3r/AnyPtr.hpp" -#include "libslic3r/Arrange/ArrangeSettingsView.hpp" -#include "libslic3r/Arrange/SegmentedRectangleBed.hpp" -#include "libslic3r/Arrange/Core/Beds.hpp" -#include "libslic3r/BoundingBox.hpp" -#include "libslic3r/ExPolygon.hpp" -#include "libslic3r/Point.hpp" -#include "libslic3r/Polygon.hpp" -#include "libslic3r/libslic3r.h" +#include +#include +#include +#include +#include +#include +#include + +#include + +#include "ArrangeSettingsView.hpp" +#include "SegmentedRectangleBed.hpp" namespace Slic3r { namespace arr2 { diff --git a/src/libslic3r/Arrange/SceneBuilder.hpp b/src/slic3r-arrange-wrapper/include/arrange-wrapper/SceneBuilder.hpp similarity index 98% rename from src/libslic3r/Arrange/SceneBuilder.hpp rename to src/slic3r-arrange-wrapper/include/arrange-wrapper/SceneBuilder.hpp index e98c64ca6c..0e962b62b6 100644 --- a/src/libslic3r/Arrange/SceneBuilder.hpp +++ b/src/slic3r-arrange-wrapper/include/arrange-wrapper/SceneBuilder.hpp @@ -17,17 +17,19 @@ #include #include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include + #include "Scene.hpp" -#include "Core/ArrangeItemTraits.hpp" -#include "libslic3r/AnyPtr.hpp" -#include "libslic3r/Arrange/Core/Beds.hpp" -#include "libslic3r/BoundingBox.hpp" -#include "libslic3r/ExPolygon.hpp" -#include "libslic3r/Model.hpp" -#include "libslic3r/ObjectID.hpp" -#include "libslic3r/Point.hpp" -#include "libslic3r/Polygon.hpp" -#include "libslic3r/libslic3r.h" namespace Slic3r { diff --git a/src/libslic3r/Arrange/SegmentedRectangleBed.hpp b/src/slic3r-arrange-wrapper/include/arrange-wrapper/SegmentedRectangleBed.hpp similarity index 98% rename from src/libslic3r/Arrange/SegmentedRectangleBed.hpp rename to src/slic3r-arrange-wrapper/include/arrange-wrapper/SegmentedRectangleBed.hpp index 33a1ca60c9..bdb9e297e6 100644 --- a/src/libslic3r/Arrange/SegmentedRectangleBed.hpp +++ b/src/slic3r-arrange-wrapper/include/arrange-wrapper/SegmentedRectangleBed.hpp @@ -5,7 +5,7 @@ #ifndef SEGMENTEDRECTANGLEBED_HPP #define SEGMENTEDRECTANGLEBED_HPP -#include "libslic3r/Arrange/Core/Beds.hpp" +#include namespace Slic3r { namespace arr2 { diff --git a/src/libslic3r/Arrange/Tasks/ArrangeTask.hpp b/src/slic3r-arrange-wrapper/include/arrange-wrapper/Tasks/ArrangeTask.hpp similarity index 95% rename from src/libslic3r/Arrange/Tasks/ArrangeTask.hpp rename to src/slic3r-arrange-wrapper/include/arrange-wrapper/Tasks/ArrangeTask.hpp index 0674079c54..295430653e 100644 --- a/src/libslic3r/Arrange/Tasks/ArrangeTask.hpp +++ b/src/slic3r-arrange-wrapper/include/arrange-wrapper/Tasks/ArrangeTask.hpp @@ -5,8 +5,8 @@ #ifndef ARRANGETASK_HPP #define ARRANGETASK_HPP -#include "libslic3r/Arrange/Arrange.hpp" -#include "libslic3r/Arrange/Items/TrafoOnlyArrangeItem.hpp" +#include +#include namespace Slic3r { namespace arr2 { diff --git a/src/libslic3r/Arrange/Tasks/FillBedTask.hpp b/src/slic3r-arrange-wrapper/include/arrange-wrapper/Tasks/FillBedTask.hpp similarity index 97% rename from src/libslic3r/Arrange/Tasks/FillBedTask.hpp rename to src/slic3r-arrange-wrapper/include/arrange-wrapper/Tasks/FillBedTask.hpp index f59381f565..5a293c6ad7 100644 --- a/src/libslic3r/Arrange/Tasks/FillBedTask.hpp +++ b/src/slic3r-arrange-wrapper/include/arrange-wrapper/Tasks/FillBedTask.hpp @@ -5,9 +5,9 @@ #ifndef FILLBEDTASK_HPP #define FILLBEDTASK_HPP -#include "MultiplySelectionTask.hpp" +#include -#include "libslic3r/Arrange/Arrange.hpp" +#include "MultiplySelectionTask.hpp" namespace Slic3r { namespace arr2 { diff --git a/src/libslic3r/Arrange/Tasks/MultiplySelectionTask.hpp b/src/slic3r-arrange-wrapper/include/arrange-wrapper/Tasks/MultiplySelectionTask.hpp similarity index 96% rename from src/libslic3r/Arrange/Tasks/MultiplySelectionTask.hpp rename to src/slic3r-arrange-wrapper/include/arrange-wrapper/Tasks/MultiplySelectionTask.hpp index 0c50e84274..3034d5e1f4 100644 --- a/src/libslic3r/Arrange/Tasks/MultiplySelectionTask.hpp +++ b/src/slic3r-arrange-wrapper/include/arrange-wrapper/Tasks/MultiplySelectionTask.hpp @@ -5,8 +5,8 @@ #ifndef MULTIPLYSELECTIONTASK_HPP #define MULTIPLYSELECTIONTASK_HPP -#include "libslic3r/Arrange/Arrange.hpp" -#include "libslic3r/Arrange/Items/TrafoOnlyArrangeItem.hpp" +#include +#include namespace Slic3r { namespace arr2 { diff --git a/src/libslic3r/Arrange/ArrangeImpl.hpp b/src/slic3r-arrange-wrapper/src/ArrangeImpl.hpp similarity index 96% rename from src/libslic3r/Arrange/ArrangeImpl.hpp rename to src/slic3r-arrange-wrapper/src/ArrangeImpl.hpp index 5b989ccabf..693dfa7be9 100644 --- a/src/libslic3r/Arrange/ArrangeImpl.hpp +++ b/src/slic3r-arrange-wrapper/src/ArrangeImpl.hpp @@ -8,25 +8,24 @@ #include #include -#include "Arrange.hpp" +#include +#include -#include "Core/ArrangeBase.hpp" -#include "Core/ArrangeFirstFit.hpp" -#include "Core/NFP/PackStrategyNFP.hpp" -#include "Core/NFP/Kernels/TMArrangeKernel.hpp" -#include "Core/NFP/Kernels/GravityKernel.hpp" -#include "Core/NFP/RectangleOverfitPackingStrategy.hpp" -#include "Core/Beds.hpp" +#include +#include +#include +#include +#include +#include +#include -#include "Items/MutableItemTraits.hpp" +#include +#include +#include -#include "SegmentedRectangleBed.hpp" - -#include "libslic3r/Execution/ExecutionTBB.hpp" -#include "libslic3r/Geometry/ConvexHull.hpp" #ifndef NDEBUG -#include "Core/NFP/Kernels/SVGDebugOutputKernelWrapper.hpp" +#include #endif namespace Slic3r { namespace arr2 { diff --git a/src/libslic3r/Arrange/ArrangeSettingsDb_AppCfg.cpp b/src/slic3r-arrange-wrapper/src/ArrangeSettingsDb_AppCfg.cpp similarity index 97% rename from src/libslic3r/Arrange/ArrangeSettingsDb_AppCfg.cpp rename to src/slic3r-arrange-wrapper/src/ArrangeSettingsDb_AppCfg.cpp index 0eacb70f9d..947a3fd523 100644 --- a/src/libslic3r/Arrange/ArrangeSettingsDb_AppCfg.cpp +++ b/src/slic3r-arrange-wrapper/src/ArrangeSettingsDb_AppCfg.cpp @@ -2,11 +2,12 @@ ///|/ ///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher ///|/ -#include "ArrangeSettingsDb_AppCfg.hpp" +#include -#include "LocalesUtils.hpp" -#include "libslic3r/AppConfig.hpp" -#include "libslic3r/Arrange/ArrangeSettingsView.hpp" +#include +#include + +#include namespace Slic3r { diff --git a/src/libslic3r/Arrange/Items/ArrangeItem.cpp b/src/slic3r-arrange-wrapper/src/Items/ArrangeItem.cpp similarity index 92% rename from src/libslic3r/Arrange/Items/ArrangeItem.cpp rename to src/slic3r-arrange-wrapper/src/Items/ArrangeItem.cpp index 9f57807b35..69ae6bf966 100644 --- a/src/libslic3r/Arrange/Items/ArrangeItem.cpp +++ b/src/slic3r-arrange-wrapper/src/Items/ArrangeItem.cpp @@ -2,16 +2,17 @@ ///|/ ///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher ///|/ -#include "ArrangeItem.hpp" #include -#include "libslic3r/Arrange/Core/NFP/NFPConcave_Tesselate.hpp" -#include "libslic3r/Arrange/ArrangeImpl.hpp" // IWYU pragma: keep -#include "libslic3r/Arrange/Tasks/ArrangeTaskImpl.hpp" // IWYU pragma: keep -#include "libslic3r/Arrange/Tasks/FillBedTaskImpl.hpp" // IWYU pragma: keep -#include "libslic3r/Arrange/Tasks/MultiplySelectionTaskImpl.hpp" // IWYU pragma: keep -#include "libslic3r/Geometry/ConvexHull.hpp" +#include +#include + +#include +#include "ArrangeImpl.hpp" // IWYU pragma: keep +#include "Tasks/ArrangeTaskImpl.hpp" // IWYU pragma: keep +#include "Tasks/FillBedTaskImpl.hpp" // IWYU pragma: keep +#include "Tasks/MultiplySelectionTaskImpl.hpp" // IWYU pragma: keep namespace Slic3r { namespace arr2 { diff --git a/src/libslic3r/Arrange/Items/SimpleArrangeItem.cpp b/src/slic3r-arrange-wrapper/src/Items/SimpleArrangeItem.cpp similarity index 65% rename from src/libslic3r/Arrange/Items/SimpleArrangeItem.cpp rename to src/slic3r-arrange-wrapper/src/Items/SimpleArrangeItem.cpp index b1055eab91..1bd2614b94 100644 --- a/src/libslic3r/Arrange/Items/SimpleArrangeItem.cpp +++ b/src/slic3r-arrange-wrapper/src/Items/SimpleArrangeItem.cpp @@ -2,11 +2,11 @@ ///|/ ///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher ///|/ -#include "SimpleArrangeItem.hpp" -#include "libslic3r/Arrange/ArrangeImpl.hpp" // IWYU pragma: keep -#include "libslic3r/Arrange/Tasks/ArrangeTaskImpl.hpp" // IWYU pragma: keep -#include "libslic3r/Arrange/Tasks/FillBedTaskImpl.hpp" // IWYU pragma: keep -#include "libslic3r/Arrange/Tasks/MultiplySelectionTaskImpl.hpp" // IWYU pragma: keep +#include +#include "ArrangeImpl.hpp" // IWYU pragma: keep +#include "Tasks/ArrangeTaskImpl.hpp" // IWYU pragma: keep +#include "Tasks/FillBedTaskImpl.hpp" // IWYU pragma: keep +#include "Tasks/MultiplySelectionTaskImpl.hpp" // IWYU pragma: keep namespace Slic3r { namespace arr2 { diff --git a/src/libslic3r/ModelArrange.cpp b/src/slic3r-arrange-wrapper/src/ModelArrange.cpp similarity index 88% rename from src/libslic3r/ModelArrange.cpp rename to src/slic3r-arrange-wrapper/src/ModelArrange.cpp index 3da5a0b3fc..8bae72d4d1 100644 --- a/src/libslic3r/ModelArrange.cpp +++ b/src/slic3r-arrange-wrapper/src/ModelArrange.cpp @@ -2,16 +2,17 @@ ///|/ ///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher ///|/ -#include "ModelArrange.hpp" -#include -#include -#include #include #include -#include "libslic3r/Arrange/ArrangeSettingsView.hpp" -#include "libslic3r/Arrange/Scene.hpp" +#include + +#include +#include +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/Arrange/Scene.cpp b/src/slic3r-arrange-wrapper/src/Scene.cpp similarity index 89% rename from src/libslic3r/Arrange/Scene.cpp rename to src/slic3r-arrange-wrapper/src/Scene.cpp index bb65a3491a..2c87a3b207 100644 --- a/src/libslic3r/Arrange/Scene.cpp +++ b/src/slic3r-arrange-wrapper/src/Scene.cpp @@ -2,12 +2,10 @@ ///|/ ///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher ///|/ -#include "Scene.hpp" - -#include "Items/ArrangeItem.hpp" - -#include "Tasks/ArrangeTask.hpp" -#include "Tasks/FillBedTask.hpp" +#include +#include +#include +#include namespace Slic3r { namespace arr2 { diff --git a/src/libslic3r/Arrange/SceneBuilder.cpp b/src/slic3r-arrange-wrapper/src/SceneBuilder.cpp similarity index 97% rename from src/libslic3r/Arrange/SceneBuilder.cpp rename to src/slic3r-arrange-wrapper/src/SceneBuilder.cpp index c1c8456cff..2d25cf6a68 100644 --- a/src/libslic3r/Arrange/SceneBuilder.cpp +++ b/src/slic3r-arrange-wrapper/src/SceneBuilder.cpp @@ -5,28 +5,29 @@ #ifndef SCENEBUILDER_CPP #define SCENEBUILDER_CPP -#include "SceneBuilder.hpp" - #include #include #include #include #include -#include "libslic3r/Model.hpp" -#include "libslic3r/MultipleBeds.hpp" -#include "libslic3r/Print.hpp" -#include "libslic3r/SLAPrint.hpp" -#include "libslic3r/Arrange/Core/ArrangeItemTraits.hpp" -#include "libslic3r/Geometry/ConvexHull.hpp" -#include "libslic3r/Arrange/Scene.hpp" -#include "libslic3r/ClipperUtils.hpp" -#include "libslic3r/Geometry.hpp" -#include "libslic3r/PrintConfig.hpp" -#include "libslic3r/SLA/Pad.hpp" -#include "libslic3r/TriangleMesh.hpp" -#include "libslic3r/TriangleMeshSlicer.hpp" -#include "libslic3r/Arrange/Core/Beds.hpp" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include + +#include +#include namespace Slic3r { namespace arr2 { diff --git a/src/libslic3r/Arrange/Tasks/ArrangeTaskImpl.hpp b/src/slic3r-arrange-wrapper/src/Tasks/ArrangeTaskImpl.hpp similarity index 97% rename from src/libslic3r/Arrange/Tasks/ArrangeTaskImpl.hpp rename to src/slic3r-arrange-wrapper/src/Tasks/ArrangeTaskImpl.hpp index 17a4da3125..d42e7324da 100644 --- a/src/libslic3r/Arrange/Tasks/ArrangeTaskImpl.hpp +++ b/src/slic3r-arrange-wrapper/src/Tasks/ArrangeTaskImpl.hpp @@ -9,9 +9,10 @@ #include -#include "ArrangeTask.hpp" -#include "libslic3r/Arrange/Items/ArrangeItem.hpp" -#include "libslic3r/SVG.hpp" +#include + +#include +#include namespace Slic3r { namespace arr2 { diff --git a/src/libslic3r/Arrange/Tasks/FillBedTaskImpl.hpp b/src/slic3r-arrange-wrapper/src/Tasks/FillBedTaskImpl.hpp similarity index 98% rename from src/libslic3r/Arrange/Tasks/FillBedTaskImpl.hpp rename to src/slic3r-arrange-wrapper/src/Tasks/FillBedTaskImpl.hpp index 666210f5cf..76d7b00354 100644 --- a/src/libslic3r/Arrange/Tasks/FillBedTaskImpl.hpp +++ b/src/slic3r-arrange-wrapper/src/Tasks/FillBedTaskImpl.hpp @@ -5,12 +5,12 @@ #ifndef FILLBEDTASKIMPL_HPP #define FILLBEDTASKIMPL_HPP -#include "FillBedTask.hpp" - -#include "libslic3r/Arrange/Core/NFP/NFPArrangeItemTraits.hpp" - #include +#include + +#include + namespace Slic3r { namespace arr2 { template diff --git a/src/libslic3r/Arrange/Tasks/MultiplySelectionTaskImpl.hpp b/src/slic3r-arrange-wrapper/src/Tasks/MultiplySelectionTaskImpl.hpp similarity index 98% rename from src/libslic3r/Arrange/Tasks/MultiplySelectionTaskImpl.hpp rename to src/slic3r-arrange-wrapper/src/Tasks/MultiplySelectionTaskImpl.hpp index 77c86c18ff..b11da411b6 100644 --- a/src/libslic3r/Arrange/Tasks/MultiplySelectionTaskImpl.hpp +++ b/src/slic3r-arrange-wrapper/src/Tasks/MultiplySelectionTaskImpl.hpp @@ -5,7 +5,7 @@ #ifndef MULTIPLYSELECTIONTASKIMPL_HPP #define MULTIPLYSELECTIONTASKIMPL_HPP -#include "MultiplySelectionTask.hpp" +#include #include diff --git a/src/slic3r-arrange/CMakeLists.txt b/src/slic3r-arrange/CMakeLists.txt new file mode 100644 index 0000000000..98ab247053 --- /dev/null +++ b/src/slic3r-arrange/CMakeLists.txt @@ -0,0 +1,34 @@ +project(slic3r-arrange) +cmake_minimum_required(VERSION 3.13) + +add_library(slic3r-arrange + include/arrange/Beds.hpp + include/arrange/ArrangeItemTraits.hpp + include/arrange/PackingContext.hpp + include/arrange/NFP/NFPArrangeItemTraits.hpp + include/arrange/NFP/NFP.hpp + include/arrange/ArrangeBase.hpp + include/arrange/DataStoreTraits.hpp + include/arrange/ArrangeFirstFit.hpp + include/arrange/NFP/PackStrategyNFP.hpp + include/arrange/NFP/Kernels/TMArrangeKernel.hpp + include/arrange/NFP/Kernels/GravityKernel.hpp + include/arrange/NFP/RectangleOverfitPackingStrategy.hpp + include/arrange/NFP/EdgeCache.hpp + include/arrange/NFP/Kernels/KernelTraits.hpp + include/arrange/NFP/NFPConcave_Tesselate.hpp + include/arrange/NFP/Kernels/KernelUtils.hpp + include/arrange/NFP/Kernels/CompactifyKernel.hpp + include/arrange/NFP/Kernels/RectangleOverfitKernelWrapper.hpp + include/arrange/NFP/Kernels/SVGDebugOutputKernelWrapper.hpp + + src/Beds.cpp + src/NFP/NFP.cpp + src/NFP/NFPConcave_Tesselate.cpp + src/NFP/EdgeCache.cpp + src/NFP/CircularEdgeIterator.hpp +) + +target_include_directories(slic3r-arrange PRIVATE src) +target_include_directories(slic3r-arrange PUBLIC include) +target_link_libraries(slic3r-arrange PUBLIC libslic3r) diff --git a/src/libslic3r/Arrange/Core/ArrangeBase.hpp b/src/slic3r-arrange/include/arrange/ArrangeBase.hpp similarity index 98% rename from src/libslic3r/Arrange/Core/ArrangeBase.hpp rename to src/slic3r-arrange/include/arrange/ArrangeBase.hpp index 6cb2f62065..712c389254 100644 --- a/src/libslic3r/Arrange/Core/ArrangeBase.hpp +++ b/src/slic3r-arrange/include/arrange/ArrangeBase.hpp @@ -8,10 +8,10 @@ #include #include -#include "ArrangeItemTraits.hpp" -#include "PackingContext.hpp" +#include -#include "libslic3r/Point.hpp" +#include +#include namespace Slic3r { namespace arr2 { diff --git a/src/libslic3r/Arrange/Core/ArrangeFirstFit.hpp b/src/slic3r-arrange/include/arrange/ArrangeFirstFit.hpp similarity index 99% rename from src/libslic3r/Arrange/Core/ArrangeFirstFit.hpp rename to src/slic3r-arrange/include/arrange/ArrangeFirstFit.hpp index 14cc3acbb5..53cd8ce20e 100644 --- a/src/libslic3r/Arrange/Core/ArrangeFirstFit.hpp +++ b/src/slic3r-arrange/include/arrange/ArrangeFirstFit.hpp @@ -8,7 +8,7 @@ #include #include -#include +#include namespace Slic3r { namespace arr2 { namespace firstfit { diff --git a/src/libslic3r/Arrange/Core/ArrangeItemTraits.hpp b/src/slic3r-arrange/include/arrange/ArrangeItemTraits.hpp similarity index 100% rename from src/libslic3r/Arrange/Core/ArrangeItemTraits.hpp rename to src/slic3r-arrange/include/arrange/ArrangeItemTraits.hpp diff --git a/src/libslic3r/Arrange/Core/Beds.hpp b/src/slic3r-arrange/include/arrange/Beds.hpp similarity index 100% rename from src/libslic3r/Arrange/Core/Beds.hpp rename to src/slic3r-arrange/include/arrange/Beds.hpp diff --git a/src/libslic3r/Arrange/Core/DataStoreTraits.hpp b/src/slic3r-arrange/include/arrange/DataStoreTraits.hpp similarity index 100% rename from src/libslic3r/Arrange/Core/DataStoreTraits.hpp rename to src/slic3r-arrange/include/arrange/DataStoreTraits.hpp diff --git a/src/libslic3r/Arrange/Core/NFP/EdgeCache.hpp b/src/slic3r-arrange/include/arrange/NFP/EdgeCache.hpp similarity index 100% rename from src/libslic3r/Arrange/Core/NFP/EdgeCache.hpp rename to src/slic3r-arrange/include/arrange/NFP/EdgeCache.hpp diff --git a/src/libslic3r/Arrange/Core/NFP/Kernels/CompactifyKernel.hpp b/src/slic3r-arrange/include/arrange/NFP/Kernels/CompactifyKernel.hpp similarity index 100% rename from src/libslic3r/Arrange/Core/NFP/Kernels/CompactifyKernel.hpp rename to src/slic3r-arrange/include/arrange/NFP/Kernels/CompactifyKernel.hpp diff --git a/src/libslic3r/Arrange/Core/NFP/Kernels/GravityKernel.hpp b/src/slic3r-arrange/include/arrange/NFP/Kernels/GravityKernel.hpp similarity index 93% rename from src/libslic3r/Arrange/Core/NFP/Kernels/GravityKernel.hpp rename to src/slic3r-arrange/include/arrange/NFP/Kernels/GravityKernel.hpp index 3bb1cad0ea..c22251ba03 100644 --- a/src/libslic3r/Arrange/Core/NFP/Kernels/GravityKernel.hpp +++ b/src/slic3r-arrange/include/arrange/NFP/Kernels/GravityKernel.hpp @@ -5,8 +5,8 @@ #ifndef GRAVITYKERNEL_HPP #define GRAVITYKERNEL_HPP -#include "libslic3r/Arrange/Core/NFP/NFPArrangeItemTraits.hpp" -#include "libslic3r/Arrange/Core/Beds.hpp" +#include +#include #include "KernelUtils.hpp" diff --git a/src/libslic3r/Arrange/Core/NFP/Kernels/KernelTraits.hpp b/src/slic3r-arrange/include/arrange/NFP/Kernels/KernelTraits.hpp similarity index 97% rename from src/libslic3r/Arrange/Core/NFP/Kernels/KernelTraits.hpp rename to src/slic3r-arrange/include/arrange/NFP/Kernels/KernelTraits.hpp index dcb792fe03..47b7c3a2db 100644 --- a/src/libslic3r/Arrange/Core/NFP/Kernels/KernelTraits.hpp +++ b/src/slic3r-arrange/include/arrange/NFP/Kernels/KernelTraits.hpp @@ -5,7 +5,7 @@ #ifndef KERNELTRAITS_HPP #define KERNELTRAITS_HPP -#include "libslic3r/Arrange/Core/ArrangeItemTraits.hpp" +#include namespace Slic3r { namespace arr2 { diff --git a/src/libslic3r/Arrange/Core/NFP/Kernels/KernelUtils.hpp b/src/slic3r-arrange/include/arrange/NFP/Kernels/KernelUtils.hpp similarity index 92% rename from src/libslic3r/Arrange/Core/NFP/Kernels/KernelUtils.hpp rename to src/slic3r-arrange/include/arrange/NFP/Kernels/KernelUtils.hpp index 8dd292d496..e10560d4a7 100644 --- a/src/libslic3r/Arrange/Core/NFP/Kernels/KernelUtils.hpp +++ b/src/slic3r-arrange/include/arrange/NFP/Kernels/KernelUtils.hpp @@ -7,9 +7,9 @@ #include -#include "libslic3r/Arrange/Core/NFP/NFPArrangeItemTraits.hpp" -#include "libslic3r/Arrange/Core/Beds.hpp" -#include "libslic3r/Arrange/Core/DataStoreTraits.hpp" +#include +#include +#include namespace Slic3r { namespace arr2 { diff --git a/src/libslic3r/Arrange/Core/NFP/Kernels/RectangleOverfitKernelWrapper.hpp b/src/slic3r-arrange/include/arrange/NFP/Kernels/RectangleOverfitKernelWrapper.hpp similarity index 96% rename from src/libslic3r/Arrange/Core/NFP/Kernels/RectangleOverfitKernelWrapper.hpp rename to src/slic3r-arrange/include/arrange/NFP/Kernels/RectangleOverfitKernelWrapper.hpp index 1a9fc8295b..0bcca8bb2a 100644 --- a/src/libslic3r/Arrange/Core/NFP/Kernels/RectangleOverfitKernelWrapper.hpp +++ b/src/slic3r-arrange/include/arrange/NFP/Kernels/RectangleOverfitKernelWrapper.hpp @@ -7,8 +7,8 @@ #include "KernelTraits.hpp" -#include "libslic3r/Arrange/Core/NFP/NFPArrangeItemTraits.hpp" -#include "libslic3r/Arrange/Core/Beds.hpp" +#include +#include namespace Slic3r { namespace arr2 { diff --git a/src/libslic3r/Arrange/Core/NFP/Kernels/SVGDebugOutputKernelWrapper.hpp b/src/slic3r-arrange/include/arrange/NFP/Kernels/SVGDebugOutputKernelWrapper.hpp similarity index 100% rename from src/libslic3r/Arrange/Core/NFP/Kernels/SVGDebugOutputKernelWrapper.hpp rename to src/slic3r-arrange/include/arrange/NFP/Kernels/SVGDebugOutputKernelWrapper.hpp diff --git a/src/libslic3r/Arrange/Core/NFP/Kernels/TMArrangeKernel.hpp b/src/slic3r-arrange/include/arrange/NFP/Kernels/TMArrangeKernel.hpp similarity index 98% rename from src/libslic3r/Arrange/Core/NFP/Kernels/TMArrangeKernel.hpp rename to src/slic3r-arrange/include/arrange/NFP/Kernels/TMArrangeKernel.hpp index 9cab9d5936..46d54f7f23 100644 --- a/src/libslic3r/Arrange/Core/NFP/Kernels/TMArrangeKernel.hpp +++ b/src/slic3r-arrange/include/arrange/NFP/Kernels/TMArrangeKernel.hpp @@ -5,10 +5,9 @@ #ifndef TMARRANGEKERNEL_HPP #define TMARRANGEKERNEL_HPP -#include "libslic3r/Arrange/Core/NFP/NFPArrangeItemTraits.hpp" -#include "libslic3r/Arrange/Core/Beds.hpp" - -#include "KernelUtils.hpp" +#include +#include +#include #include #include diff --git a/src/libslic3r/Arrange/Core/NFP/NFP.hpp b/src/slic3r-arrange/include/arrange/NFP/NFP.hpp similarity index 94% rename from src/libslic3r/Arrange/Core/NFP/NFP.hpp rename to src/slic3r-arrange/include/arrange/NFP/NFP.hpp index ae4139280d..bd3bf70096 100644 --- a/src/libslic3r/Arrange/Core/NFP/NFP.hpp +++ b/src/slic3r-arrange/include/arrange/NFP/NFP.hpp @@ -5,14 +5,15 @@ #ifndef NFP_HPP #define NFP_HPP -#include -#include #include #include #include -#include "libslic3r/Point.hpp" -#include "libslic3r/Polygon.hpp" +#include +#include +#include + +#include namespace Slic3r { diff --git a/src/libslic3r/Arrange/Core/NFP/NFPArrangeItemTraits.hpp b/src/slic3r-arrange/include/arrange/NFP/NFPArrangeItemTraits.hpp similarity index 97% rename from src/libslic3r/Arrange/Core/NFP/NFPArrangeItemTraits.hpp rename to src/slic3r-arrange/include/arrange/NFP/NFPArrangeItemTraits.hpp index f844f99679..0a16a4cecf 100644 --- a/src/libslic3r/Arrange/Core/NFP/NFPArrangeItemTraits.hpp +++ b/src/slic3r-arrange/include/arrange/NFP/NFPArrangeItemTraits.hpp @@ -7,10 +7,11 @@ #include -#include "libslic3r/Arrange/Core/ArrangeBase.hpp" +#include +#include + +#include -#include "libslic3r/ExPolygon.hpp" -#include "libslic3r/BoundingBox.hpp" namespace Slic3r { namespace arr2 { diff --git a/src/libslic3r/Arrange/Core/NFP/NFPConcave_Tesselate.hpp b/src/slic3r-arrange/include/arrange/NFP/NFPConcave_Tesselate.hpp similarity index 100% rename from src/libslic3r/Arrange/Core/NFP/NFPConcave_Tesselate.hpp rename to src/slic3r-arrange/include/arrange/NFP/NFPConcave_Tesselate.hpp diff --git a/src/libslic3r/Arrange/Core/NFP/PackStrategyNFP.hpp b/src/slic3r-arrange/include/arrange/NFP/PackStrategyNFP.hpp similarity index 98% rename from src/libslic3r/Arrange/Core/NFP/PackStrategyNFP.hpp rename to src/slic3r-arrange/include/arrange/NFP/PackStrategyNFP.hpp index bdf19d4a5e..280802a60b 100644 --- a/src/libslic3r/Arrange/Core/NFP/PackStrategyNFP.hpp +++ b/src/slic3r-arrange/include/arrange/NFP/PackStrategyNFP.hpp @@ -5,12 +5,11 @@ #ifndef PACKSTRATEGYNFP_HPP #define PACKSTRATEGYNFP_HPP -#include "libslic3r/Arrange/Core/ArrangeBase.hpp" +#include -#include "EdgeCache.hpp" -#include "Kernels/KernelTraits.hpp" - -#include "NFPArrangeItemTraits.hpp" +#include +#include +#include #include "libslic3r/Optimize/NLoptOptimizer.hpp" #include "libslic3r/Execution/ExecutionSeq.hpp" diff --git a/src/libslic3r/Arrange/Core/NFP/RectangleOverfitPackingStrategy.hpp b/src/slic3r-arrange/include/arrange/NFP/RectangleOverfitPackingStrategy.hpp similarity index 97% rename from src/libslic3r/Arrange/Core/NFP/RectangleOverfitPackingStrategy.hpp rename to src/slic3r-arrange/include/arrange/NFP/RectangleOverfitPackingStrategy.hpp index 65de341cfb..62283fc2c9 100644 --- a/src/libslic3r/Arrange/Core/NFP/RectangleOverfitPackingStrategy.hpp +++ b/src/slic3r-arrange/include/arrange/NFP/RectangleOverfitPackingStrategy.hpp @@ -5,10 +5,10 @@ #ifndef RECTANGLEOVERFITPACKINGSTRATEGY_HPP #define RECTANGLEOVERFITPACKINGSTRATEGY_HPP -#include "Kernels/RectangleOverfitKernelWrapper.hpp" +#include -#include "libslic3r/Arrange/Core/NFP/PackStrategyNFP.hpp" -#include "libslic3r/Arrange/Core/Beds.hpp" +#include "Kernels/RectangleOverfitKernelWrapper.hpp" +#include "PackStrategyNFP.hpp" namespace Slic3r { namespace arr2 { diff --git a/src/libslic3r/Arrange/Core/PackingContext.hpp b/src/slic3r-arrange/include/arrange/PackingContext.hpp similarity index 100% rename from src/libslic3r/Arrange/Core/PackingContext.hpp rename to src/slic3r-arrange/include/arrange/PackingContext.hpp diff --git a/src/libslic3r/Arrange/Core/Beds.cpp b/src/slic3r-arrange/src/Beds.cpp similarity index 99% rename from src/libslic3r/Arrange/Core/Beds.cpp rename to src/slic3r-arrange/src/Beds.cpp index 60c0b86692..7e29dd570e 100644 --- a/src/libslic3r/Arrange/Core/Beds.cpp +++ b/src/slic3r-arrange/src/Beds.cpp @@ -2,10 +2,11 @@ ///|/ ///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher ///|/ -#include "Beds.hpp" #include +#include + #include "libslic3r/BoundingBox.hpp" #include "libslic3r/ExPolygon.hpp" #include "libslic3r/Point.hpp" diff --git a/src/libslic3r/Arrange/Core/NFP/CircularEdgeIterator.hpp b/src/slic3r-arrange/src/NFP/CircularEdgeIterator.hpp similarity index 100% rename from src/libslic3r/Arrange/Core/NFP/CircularEdgeIterator.hpp rename to src/slic3r-arrange/src/NFP/CircularEdgeIterator.hpp diff --git a/src/libslic3r/Arrange/Core/NFP/EdgeCache.cpp b/src/slic3r-arrange/src/NFP/EdgeCache.cpp similarity index 98% rename from src/libslic3r/Arrange/Core/NFP/EdgeCache.cpp rename to src/slic3r-arrange/src/NFP/EdgeCache.cpp index 85760e5125..72cab28565 100644 --- a/src/libslic3r/Arrange/Core/NFP/EdgeCache.cpp +++ b/src/slic3r-arrange/src/NFP/EdgeCache.cpp @@ -2,7 +2,7 @@ ///|/ ///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher ///|/ -#include "EdgeCache.hpp" +#include #include diff --git a/src/libslic3r/Arrange/Core/NFP/NFP.cpp b/src/slic3r-arrange/src/NFP/NFP.cpp similarity index 98% rename from src/libslic3r/Arrange/Core/NFP/NFP.cpp rename to src/slic3r-arrange/src/NFP/NFP.cpp index c3174b38d9..8a3c3ad932 100644 --- a/src/libslic3r/Arrange/Core/NFP/NFP.cpp +++ b/src/slic3r-arrange/src/NFP/NFP.cpp @@ -5,15 +5,16 @@ #ifndef NFP_CPP #define NFP_CPP -#include "NFP.hpp" +#include +#include #include "CircularEdgeIterator.hpp" -#include "NFPConcave_Tesselate.hpp" -#include "libslic3r/Arrange/Core/Beds.hpp" -#include "libslic3r/ClipperUtils.hpp" -#include "libslic3r/ExPolygon.hpp" -#include "libslic3r/Line.hpp" -#include "libslic3r/libslic3r.h" +#include +#include +#include +#include + +#include #if !defined(_MSC_VER) && defined(__SIZEOF_INT128__) && !defined(__APPLE__) namespace Slic3r { using LargeInt = __int128; } diff --git a/src/libslic3r/Arrange/Core/NFP/NFPConcave_Tesselate.cpp b/src/slic3r-arrange/src/NFP/NFPConcave_Tesselate.cpp similarity index 96% rename from src/libslic3r/Arrange/Core/NFP/NFPConcave_Tesselate.cpp rename to src/slic3r-arrange/src/NFP/NFPConcave_Tesselate.cpp index f47145b5ae..76416ed60e 100644 --- a/src/libslic3r/Arrange/Core/NFP/NFPConcave_Tesselate.cpp +++ b/src/slic3r-arrange/src/NFP/NFPConcave_Tesselate.cpp @@ -2,7 +2,6 @@ ///|/ ///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher ///|/ -#include "NFPConcave_Tesselate.hpp" #include #include @@ -11,7 +10,9 @@ #include #include -#include "NFP.hpp" +#include +#include + #include "libslic3r/ExPolygon.hpp" #include "libslic3r/Point.hpp" #include "libslic3r/libslic3r.h" diff --git a/src/slic3r/CMakeLists.txt b/src/slic3r/CMakeLists.txt index a8c3d915f4..82e91bb10b 100644 --- a/src/slic3r/CMakeLists.txt +++ b/src/slic3r/CMakeLists.txt @@ -433,6 +433,7 @@ target_link_libraries( libslic3r_gui PUBLIC libslic3r + slic3r-arrange-wrapper avrdude libcereal imgui diff --git a/src/slic3r/GUI/ArrangeSettingsDialogImgui.hpp b/src/slic3r/GUI/ArrangeSettingsDialogImgui.hpp index 107b700802..065825f512 100644 --- a/src/slic3r/GUI/ArrangeSettingsDialogImgui.hpp +++ b/src/slic3r/GUI/ArrangeSettingsDialogImgui.hpp @@ -5,7 +5,7 @@ #ifndef ARRANGESETTINGSDIALOGIMGUI_HPP #define ARRANGESETTINGSDIALOGIMGUI_HPP -#include "libslic3r/Arrange/ArrangeSettingsView.hpp" +#include #include "ImGuiWrapper.hpp" #include "libslic3r/AnyPtr.hpp" diff --git a/src/slic3r/GUI/GLCanvas3D.hpp b/src/slic3r/GUI/GLCanvas3D.hpp index db8067ff93..d6bd675173 100644 --- a/src/slic3r/GUI/GLCanvas3D.hpp +++ b/src/slic3r/GUI/GLCanvas3D.hpp @@ -24,7 +24,7 @@ #include "SceneRaycaster.hpp" #include "GUI_Utils.hpp" -#include "libslic3r/Arrange/ArrangeSettingsDb_AppCfg.hpp" +#include #include "ArrangeSettingsDialogImgui.hpp" #include "libslic3r/Slicing.hpp" diff --git a/src/slic3r/GUI/Jobs/ArrangeJob2.hpp b/src/slic3r/GUI/Jobs/ArrangeJob2.hpp index 0634382768..2430404006 100644 --- a/src/slic3r/GUI/Jobs/ArrangeJob2.hpp +++ b/src/slic3r/GUI/Jobs/ArrangeJob2.hpp @@ -9,10 +9,10 @@ #include "Job.hpp" -#include "libslic3r/Arrange/Tasks/ArrangeTask.hpp" -#include "libslic3r/Arrange/Tasks/FillBedTask.hpp" -#include "libslic3r/Arrange/Items/ArrangeItem.hpp" -#include "libslic3r/Arrange/SceneBuilder.hpp" +#include +#include +#include +#include namespace Slic3r { diff --git a/tests/arrange/CMakeLists.txt b/tests/arrange/CMakeLists.txt index 7efbbbd325..64dd7853f9 100644 --- a/tests/arrange/CMakeLists.txt +++ b/tests/arrange/CMakeLists.txt @@ -5,7 +5,7 @@ add_executable(${_TEST_NAME}_tests ${_TEST_NAME}_tests_main.cpp ../data/prusaparts.cpp ) -target_link_libraries(${_TEST_NAME}_tests test_common libslic3r) +target_link_libraries(${_TEST_NAME}_tests test_common slic3r-arrange-wrapper) set_property(TARGET ${_TEST_NAME}_tests PROPERTY FOLDER "tests") if (WIN32) diff --git a/tests/arrange/test_arrange.cpp b/tests/arrange/test_arrange.cpp index 86d1131a69..c5790d6910 100644 --- a/tests/arrange/test_arrange.cpp +++ b/tests/arrange/test_arrange.cpp @@ -3,21 +3,17 @@ #include -#include -#include -#include -#include +#include +#include +#include +#include +#include +#include +#include -#include -#include - -#include -#include -#include - -#include -#include -#include +#include +#include +#include #include diff --git a/tests/arrange/test_arrange_integration.cpp b/tests/arrange/test_arrange_integration.cpp index 129176d602..0f919693d3 100644 --- a/tests/arrange/test_arrange_integration.cpp +++ b/tests/arrange/test_arrange_integration.cpp @@ -1,16 +1,15 @@ #include #include "test_utils.hpp" -#include -#include -#include - -#include +#include +#include +#include +#include +#include #include "libslic3r/Model.hpp" #include "libslic3r/Geometry/ConvexHull.hpp" #include "libslic3r/Format/3mf.hpp" -#include "libslic3r/ModelArrange.hpp" static Slic3r::Model get_example_model_with_20mm_cube() { diff --git a/tests/fff_print/CMakeLists.txt b/tests/fff_print/CMakeLists.txt index 0be4a60452..ce04286a64 100644 --- a/tests/fff_print/CMakeLists.txt +++ b/tests/fff_print/CMakeLists.txt @@ -39,7 +39,7 @@ add_executable(${_TEST_NAME}_tests test_thin_walls.cpp test_trianglemesh.cpp ) -target_link_libraries(${_TEST_NAME}_tests test_common libslic3r) +target_link_libraries(${_TEST_NAME}_tests test_common slic3r-arrange-wrapper) set_property(TARGET ${_TEST_NAME}_tests PROPERTY FOLDER "tests") target_compile_definitions(${_TEST_NAME}_tests PUBLIC CATCH_CONFIG_ENABLE_BENCHMARKING) diff --git a/tests/fff_print/test_data.cpp b/tests/fff_print/test_data.cpp index b6ecaa4281..742458dfe5 100644 --- a/tests/fff_print/test_data.cpp +++ b/tests/fff_print/test_data.cpp @@ -7,6 +7,8 @@ #include "libslic3r/Format/OBJ.hpp" #include "libslic3r/Format/STL.hpp" +#include + #include #include @@ -14,7 +16,6 @@ #include #include #include -#include using namespace std; diff --git a/tests/fff_print/test_gcode.cpp b/tests/fff_print/test_gcode.cpp index 78e44c5861..65564ae516 100644 --- a/tests/fff_print/test_gcode.cpp +++ b/tests/fff_print/test_gcode.cpp @@ -10,7 +10,6 @@ #include "libslic3r/GCode.hpp" #include "libslic3r/Geometry/ConvexHull.hpp" -#include "libslic3r/ModelArrange.hpp" #include "test_data.hpp" using namespace Slic3r; diff --git a/tests/fff_print/test_model.cpp b/tests/fff_print/test_model.cpp index 29e3cd9d98..2f61425c20 100644 --- a/tests/fff_print/test_model.cpp +++ b/tests/fff_print/test_model.cpp @@ -2,7 +2,7 @@ #include "libslic3r/libslic3r.h" #include "libslic3r/Model.hpp" -#include "libslic3r/ModelArrange.hpp" +#include #include #include