From eb30ea1eb8d510175bfd3d97e489e5de458732a8 Mon Sep 17 00:00:00 2001 From: Kris Austin Date: Fri, 2 Oct 2026 17:34:47 -0500 Subject: [PATCH 1/7] perf: speed up G-code export by 3-9% via cached config lookups (#16028) --- src/libslic3r/GCode.cpp | 58 +++++++++-------- src/libslic3r/GCode.hpp | 20 ++++++ src/libslic3r/Print.cpp | 12 ++-- src/libslic3r/Print.hpp | 11 +++- src/libslic3r/PrintApply.cpp | 2 +- tests/fff_print/test_gcodewriter.cpp | 62 +++++++++++++++++++ .../test_toolordering_nozzle_group.cpp | 16 +++++ 7 files changed, 148 insertions(+), 33 deletions(-) diff --git a/src/libslic3r/GCode.cpp b/src/libslic3r/GCode.cpp index 4c02cae7b4..25addff79d 100644 --- a/src/libslic3r/GCode.cpp +++ b/src/libslic3r/GCode.cpp @@ -4334,9 +4334,9 @@ size_t GCode::get_extruder_id(unsigned int filament_id) const size_t GCode::get_filament_config_index(int filament_id) const { - if (m_print) { - return m_print->get_filament_config_indx(filament_id, m_cur_layer_idx); - } + if (m_print) + return m_filament_index_cache.get(filament_id, m_cur_layer_idx, m_print->config_index_generation(), + [&] { return m_print->get_filament_config_indx(filament_id, m_cur_layer_idx); }); // Orca: without a Print the filament-indexed arrays are unexpanded, so the // filament id itself is the only meaningful column. return filament_id; @@ -4350,9 +4350,9 @@ size_t GCode::get_filament_config_index(int filament_id, size_t layer_id) const size_t GCode::get_nozzle_config_index(int filament_id) const { - if (m_print) { - return m_print->get_nozzle_config_index(filament_id, m_cur_layer_idx); - } + if (m_print) + return m_nozzle_index_cache.get(filament_id, m_cur_layer_idx, m_print->config_index_generation(), + [&] { return m_print->get_nozzle_config_index(filament_id, m_cur_layer_idx); }); // Orca: same reasoning; degenerate to the filament's extruder column. return get_extruder_id(filament_id); } @@ -8059,28 +8059,36 @@ std::string GCode::_extrude(const ExtrusionPath &path, std::string description, unsigned int acceleration_i = 0; double jerk = 0; // adjust acceleration - if (NOZZLE_CONFIG(default_acceleration) > 0) { + const size_t nozzle = get_nozzle_config_index(m_writer.filament()->id()); + if (m_config.default_acceleration.get_at(nozzle) > 0) { + const ExtrusionRole role = path.role(); + const double bridge_acceleration = is_bridge(role) ? + m_config.bridge_acceleration.get_at(nozzle).get_abs_value(m_config.outer_wall_acceleration.get_at(nozzle)) : 0.; + const double sparse_infill_acceleration = role == erInternalInfill ? + m_config.sparse_infill_acceleration.get_at(nozzle).get_abs_value(m_config.default_acceleration.get_at(nozzle)) : 0.; + const double internal_solid_infill_acceleration = role == erSolidInfill ? + m_config.internal_solid_infill_acceleration.get_at(nozzle).get_abs_value(m_config.default_acceleration.get_at(nozzle)) : 0.; double acceleration; - if (this->on_first_layer() && NOZZLE_CONFIG(initial_layer_acceleration) > 0) { - acceleration = NOZZLE_CONFIG(initial_layer_acceleration); + if (this->on_first_layer() && m_config.initial_layer_acceleration.get_at(nozzle) > 0) { + acceleration = m_config.initial_layer_acceleration.get_at(nozzle); #if 0 } else if (this->object_layer_over_raft() && m_config.first_layer_acceleration_over_raft.value > 0) { acceleration = m_config.first_layer_acceleration_over_raft.value; #endif - } else if (m_config.get_abs_value_at("bridge_acceleration", get_nozzle_config_index(m_writer.filament()->id())) > 0 && is_bridge(path.role())) { - acceleration = m_config.get_abs_value_at("bridge_acceleration", get_nozzle_config_index(m_writer.filament()->id())); - } else if (m_config.get_abs_value_at("sparse_infill_acceleration", get_nozzle_config_index(m_writer.filament()->id())) > 0 && (path.role() == erInternalInfill)) { - acceleration = m_config.get_abs_value_at("sparse_infill_acceleration", get_nozzle_config_index(m_writer.filament()->id())); - } else if (m_config.get_abs_value_at("internal_solid_infill_acceleration", get_nozzle_config_index(m_writer.filament()->id())) > 0 && (path.role() == erSolidInfill)) { - acceleration = m_config.get_abs_value_at("internal_solid_infill_acceleration", get_nozzle_config_index(m_writer.filament()->id())); - } else if (NOZZLE_CONFIG(outer_wall_acceleration) > 0 && is_external_perimeter(path.role())) { - acceleration = NOZZLE_CONFIG(outer_wall_acceleration); - } else if (NOZZLE_CONFIG(inner_wall_acceleration) > 0 && is_internal_perimeter(path.role())) { - acceleration = NOZZLE_CONFIG(inner_wall_acceleration); - } else if (NOZZLE_CONFIG(top_surface_acceleration) > 0 && is_top_surface(path.role())) { - acceleration = NOZZLE_CONFIG(top_surface_acceleration); + } else if (bridge_acceleration > 0) { + acceleration = bridge_acceleration; + } else if (sparse_infill_acceleration > 0) { + acceleration = sparse_infill_acceleration; + } else if (internal_solid_infill_acceleration > 0) { + acceleration = internal_solid_infill_acceleration; + } else if (m_config.outer_wall_acceleration.get_at(nozzle) > 0 && is_external_perimeter(role)) { + acceleration = m_config.outer_wall_acceleration.get_at(nozzle); + } else if (m_config.inner_wall_acceleration.get_at(nozzle) > 0 && is_internal_perimeter(role)) { + acceleration = m_config.inner_wall_acceleration.get_at(nozzle); + } else if (m_config.top_surface_acceleration.get_at(nozzle) > 0 && is_top_surface(role)) { + acceleration = m_config.top_surface_acceleration.get_at(nozzle); } else { - acceleration = NOZZLE_CONFIG(default_acceleration); + acceleration = m_config.default_acceleration.get_at(nozzle); } acceleration_i = (unsigned int)floor(acceleration + 0.5); } @@ -8181,7 +8189,7 @@ std::string GCode::_extrude(const ExtrusionPath &path, std::string description, speed = std::min(speed, m_config.scarf_joint_speed.get_abs_value(speed)); } } else if(path.role() == erInternalBridgeInfill) { - speed = m_config.get_abs_value_at("internal_bridge_speed", get_nozzle_config_index(m_writer.filament()->id())); + speed = m_config.internal_bridge_speed.get_at(nozzle).get_abs_value(m_config.bridge_speed.get_at(nozzle)); } else if (path.role() == erOverhangPerimeter || path.role() == erSupportTransition || path.role() == erBridgeInfill) { speed = NOZZLE_CONFIG(bridge_speed); } else if (path.role() == erInternalInfill) { @@ -8193,7 +8201,7 @@ std::string GCode::_extrude(const ExtrusionPath &path, std::string description, } else if (path.role() == erIroning) { const size_t filament_idx = get_filament_config_index(m_writer.filament()->id()); speed = m_config.filament_ironing_speed.is_nil(filament_idx) - ? m_config.get_abs_value("ironing_speed") + ? m_config.ironing_speed.value : m_config.filament_ironing_speed.get_at(filament_idx); } else if (path.role() == erBottomSurface) { speed = NOZZLE_CONFIG(initial_layer_infill_speed); @@ -8254,7 +8262,7 @@ std::string GCode::_extrude(const ExtrusionPath &path, std::string description, } // Override skirt speed if set if (path.role() == erSkirt) { - const double skirt_speed = m_config.get_abs_value("skirt_speed"); + const double skirt_speed = m_config.skirt_speed.value; if (skirt_speed > 0.0) speed = skirt_speed; } diff --git a/src/libslic3r/GCode.hpp b/src/libslic3r/GCode.hpp index 29a8ae5a34..7567bc6e0d 100644 --- a/src/libslic3r/GCode.hpp +++ b/src/libslic3r/GCode.hpp @@ -301,6 +301,24 @@ public: size_t get_filament_config_index(int filament_id, size_t layer_id) const; size_t get_nozzle_config_index(int filament_id) const; + // Holds the last slot a resolver returned without locking, so only the G-code generator may + // call the resolvers. + struct ConfigIndexCache + { + bool valid{false}; + int filament_id{0}; + size_t layer_idx{0}; + size_t generation{0}; + size_t index{0}; + + template size_t get(int filament, size_t layer, size_t gen, Lookup &&lookup) + { + if (!valid || filament_id != filament || layer_idx != layer || generation != gen) + *this = {true, filament, layer, gen, size_t(lookup())}; + return index; + } + }; + // Object and support extrusions of the same PrintObject at the same print_z. // public, so that it could be accessed by free helper functions from GCode.cpp struct LayerToPrint @@ -784,6 +802,8 @@ private: // Object layer id of the layer being generated; keys the per-filament config-slot // resolvers. Distinct from m_layer_index (an export progress counter starting at -1). size_t m_cur_layer_idx{0}; + mutable ConfigIndexCache m_filament_index_cache; + mutable ConfigIndexCache m_nozzle_index_cache; std::set m_initial_layer_extruders; std::vector> m_sorted_layer_filaments; diff --git a/src/libslic3r/Print.cpp b/src/libslic3r/Print.cpp index 6d60874c18..c3d157e1e6 100644 --- a/src/libslic3r/Print.cpp +++ b/src/libslic3r/Print.cpp @@ -4298,10 +4298,11 @@ Polygons Print::get_extruder_shared_printable_polygon() const return shared_printable_polys; } -// Narrow the stored grouping result to the layer-aware type the slicing pipeline uses. -std::shared_ptr Print::get_layered_nozzle_group_result() const +void Print::set_nozzle_group_result(std::shared_ptr result) { - return std::dynamic_pointer_cast(m_nozzle_group_result); + m_nozzle_group_result = std::move(result); + m_layered_nozzle_group_result = std::dynamic_pointer_cast(m_nozzle_group_result); + ++m_config_index_generation; } // Dynamic (per-layer selector) regroup predicate. @@ -4337,6 +4338,7 @@ int Print::get_filament_config_indx(int filament_id, int layer_id, bool use_cach void Print::update_filament_self_index_cache() { m_missing_nozzle_group_logged.clear(); // reset the per-slice get_config_index log dedupe + ++m_config_index_generation; std::vector values; if (m_full_print_config.has("filament_self_index")) { @@ -4376,7 +4378,7 @@ int Print::get_nozzle_config_index(int filament_id, int layer_id) int Print::get_config_index(int filament_id, int layer_id, const std::vector &variant_list, const std::vector& self_index_list, FilamentIndexMap *index_map) { - auto group_result = get_layered_nozzle_group_result(); + const MultiNozzleUtils::LayeredNozzleGroupResult *group_result = m_layered_nozzle_group_result.get(); // Orca: defensive — when no grouping producer has published a result yet, fall back to the // static identity: one filament-variant column per filament. if (!group_result) @@ -4411,7 +4413,7 @@ int Print::get_config_index(int filament_id, int layer_id, const std::vector &variant_list, const std::vector& self_index_list, PrintIndexMap &index_map) { - auto group_result = get_layered_nozzle_group_result(); + const MultiNozzleUtils::LayeredNozzleGroupResult *group_result = m_layered_nozzle_group_result.get(); // Orca: same static fallback as the filament overload; the slot degenerates to the filament's // extruder column (filament_map is 1 based, get_extruder_id guards the filament id range). if (!group_result) diff --git a/src/libslic3r/Print.hpp b/src/libslic3r/Print.hpp index f185962b1e..13562b4355 100644 --- a/src/libslic3r/Print.hpp +++ b/src/libslic3r/Print.hpp @@ -1073,9 +1073,9 @@ public: // Logical (extruder, nozzle) grouping result produced by ToolOrdering during reorder. // Consumed by GCode via get_layered_nozzle_group_result()->get_nozzle_id(filament, layer) etc. - void set_nozzle_group_result(std::shared_ptr result) { m_nozzle_group_result = result; } + void set_nozzle_group_result(std::shared_ptr result); std::shared_ptr get_nozzle_group_result() const { return m_nozzle_group_result; } - std::shared_ptr get_layered_nozzle_group_result() const; + std::shared_ptr get_layered_nozzle_group_result() const { return m_layered_nozzle_group_result; } // True only when the project opts into the per-layer filament selector // (enable_filament_dynamic_map) in auto-for-flush mode on a multi-extruder machine. Gates the @@ -1226,6 +1226,9 @@ public: // pipeline's cooling stage, which runs concurrently with the generator stage filling it. int get_filament_config_indx(int filament_id, int layer_id, bool use_cache = true); int get_nozzle_config_index(int filament_id, int layer_id); + // Changes with the grouping result and the filament maps, so a caller may reuse a resolved slot + // until it changes. + size_t config_index_generation() const { return m_config_index_generation; } // Orca: Implement prusa's filament shrink compensation approach // Returns if all used filaments have same shrinkage compensations. @@ -1352,6 +1355,9 @@ private: // Logical (extruder, nozzle) grouping result, set by ToolOrdering during reorder. std::shared_ptr m_nozzle_group_result; + // m_nozzle_group_result narrowed to the layer-aware type; only set_nozzle_group_result() assigns + // either. + std::shared_ptr m_layered_nozzle_group_result; // Sequential (by-object) selector plans, keyed by object; see sequential_dynamic_orderings(). // Rebuilt (or cleared) on every process(). @@ -1361,6 +1367,7 @@ private: FilamentIndexMap m_filament_index_map; // Used to cache printer and process parameter information PrintIndexMap m_nozzle_index_map; + size_t m_config_index_generation{0}; // Orca: filament ids already reported as missing a nozzle-group entry this slice. get_config_index() // falls back per-filament/per-layer in the g-code hot path, so this dedupes its log to once per // filament instead of flooding thousands of identical error lines. Cleared with the caches each slice. diff --git a/src/libslic3r/PrintApply.cpp b/src/libslic3r/PrintApply.cpp index 21e2251b65..9b794d2787 100644 --- a/src/libslic3r/PrintApply.cpp +++ b/src/libslic3r/PrintApply.cpp @@ -1309,7 +1309,7 @@ Print::ApplyStatus Print::apply(const Model &model, DynamicPrintConfig new_full_ // Reproduce that exact expansion here so an unchanged config diffs empty — the expanded // keys invalidate the wipe tower / g-code export, and the placeholder parser aliases // the full config — instead of trimming back to one slot per filament. - auto group_result = std::dynamic_pointer_cast(this->get_nozzle_group_result()); + auto group_result = this->get_layered_nozzle_group_result(); std::unordered_map> filament_variant_uses; if (group_result && group_result->is_support_dynamic_nozzle_map() && collect_filament_variant_uses(*group_result, m_ori_full_print_config, filament_variant_uses)) diff --git a/tests/fff_print/test_gcodewriter.cpp b/tests/fff_print/test_gcodewriter.cpp index f371fcb7f4..d3a0722fc1 100644 --- a/tests/fff_print/test_gcodewriter.cpp +++ b/tests/fff_print/test_gcodewriter.cpp @@ -4,18 +4,21 @@ #include #include #include +#include #include #include #include #include "nlohmann/json.hpp" +#include "libslic3r/GCodeReader.hpp" #include "libslic3r/GCodeWriter.hpp" #include "libslic3r/GCode.hpp" #include "libslic3r/Model.hpp" #include "libslic3r/Print.hpp" #include "libslic3r/ModelArrange.hpp" +#include #include #include "test_helpers.hpp" @@ -97,6 +100,22 @@ SCENARIO("Origin manipulation", "[GCodeWriter]") { } } +TEST_CASE("A cached config slot is looked up again whenever its key changes", "[GCodeWriter]") +{ + GCode::ConfigIndexCache cache; + int lookups = 0; + auto slot = [&](int filament, size_t layer, size_t generation) { + return cache.get(filament, layer, generation, [&] { ++lookups; return filament * 100 + int(layer) * 10 + int(generation); }); + }; + REQUIRE(slot(1, 2, 3) == 123); + REQUIRE(slot(1, 2, 3) == 123); + REQUIRE(lookups == 1); + REQUIRE(slot(4, 2, 3) == 423); + REQUIRE(slot(4, 5, 3) == 453); + REQUIRE(slot(4, 5, 6) == 456); + REQUIRE(lookups == 4); +} + // Verify that emit_machine_limits_to_gcode emits the correct max value across // used extruders (regression for commit b4ee665: "Emit max value of machine // limit among used extruders"). @@ -872,3 +891,46 @@ TEST_CASE("Custom G-code motion limits are restored before generated moves", "[G REQUIRE(gcode.find("M204 S6000 ; adjust acceleration", custom_gcode_pos) != std::string::npos); REQUIRE(gcode.find("M205 X8 Y8 ; adjust jerk", custom_gcode_pos) != std::string::npos); } + +TEST_CASE("Percent accelerations resolve against the option they are a percentage of", "[GCodeWriter]") +{ + DynamicPrintConfig config = DynamicPrintConfig::full_print_config(); + config.set_deserialize_strict({ + { "gcode_flavor", "marlin" }, + { "machine_max_acceleration_extruding", "20000,20000" }, + { "default_acceleration", "4000" }, + { "initial_layer_acceleration", "0" }, + { "outer_wall_acceleration", "3000" }, + { "bridge_acceleration", "50%" }, + { "sparse_infill_acceleration", "25%" }, + { "internal_solid_infill_acceleration", "60%" }, + { "sparse_infill_density", "20%" }, + }); + // get_abs_value_at() resolves each percentage through the ratio_over in the config definitions. + const std::map expected = { + { "Bridge", int(config.get_abs_value_at("bridge_acceleration", 0)) }, + { "Sparse infill", int(config.get_abs_value_at("sparse_infill_acceleration", 0)) }, + { "Internal solid infill", int(config.get_abs_value_at("internal_solid_infill_acceleration", 0)) }, + }; + REQUIRE(expected.at("Bridge") == 1500); + REQUIRE(expected.at("Sparse infill") == 1000); + REQUIRE(expected.at("Internal solid infill") == 2400); + + std::map> accelerations_by_role; + std::string role; + int acceleration = 0; + GCodeReader reader; + reader.parse_buffer(Slic3r::Test::slice({ TestMesh::bridge }, config), [&](GCodeReader &self, const GCodeReader::GCodeLine &line) { + float value; + if (boost::starts_with(line.raw(), ";TYPE:")) + role = line.raw().substr(6); + else if (line.cmd_is("M204") && line.has_value('S', value)) + acceleration = int(value); + else if (line.extruding(self) && line.dist_XY(self) > 0) + accelerations_by_role[role].insert(acceleration); + }); + for (const auto &[role_name, value] : expected) { + INFO(role_name); + REQUIRE(accelerations_by_role[role_name] == std::set{ value }); + } +} diff --git a/tests/libslic3r/test_toolordering_nozzle_group.cpp b/tests/libslic3r/test_toolordering_nozzle_group.cpp index 4074a80995..837b66287a 100644 --- a/tests/libslic3r/test_toolordering_nozzle_group.cpp +++ b/tests/libslic3r/test_toolordering_nozzle_group.cpp @@ -510,6 +510,22 @@ TEST_CASE("Print config-index resolvers pick per-filament Hybrid slots", "[Print } } +TEST_CASE("Regrouping or rewriting the filament maps changes the config-index generation", "[Print][H2C]") +{ + Model model; + model.add_object("cube", "", make_cube(20, 20, 20))->add_instance(); + Print print; + print.apply(model, DynamicPrintConfig::full_print_config()); + + size_t generation = print.config_index_generation(); + print.set_nozzle_group_result(nullptr); + REQUIRE(print.config_index_generation() != generation); + + generation = print.config_index_generation(); + print.update_filament_maps_to_config({1}, {(int) nvtStandard}, {0}); + REQUIRE(print.config_index_generation() != generation); +} + TEST_CASE("Re-applying an unchanged config after slicing keeps the result valid", "[Print][H2C]") { // apply() rebuilds m_config.filament_map_2 to the real per-filament slot map, while the From 1241dd552189d90b12e749cc4b90fc623940ab05 Mon Sep 17 00:00:00 2001 From: Kiss Lorand <50251547+kisslorand@users.noreply.github.com> Date: Sat, 3 Oct 2026 03:02:36 +0300 Subject: [PATCH 2/7] Fix per-plate bed type handling (#15916) --- src/slic3r/GUI/GUI_App.cpp | 4 +- src/slic3r/GUI/MainFrame.cpp | 2 + src/slic3r/GUI/ParamsDialog.cpp | 23 ++++++++++- src/slic3r/GUI/ParamsDialog.hpp | 1 + src/slic3r/GUI/PlateSettingsDialog.cpp | 5 ++- src/slic3r/GUI/Plater.cpp | 54 ++++++++++++++++++++++++-- src/slic3r/GUI/Plater.hpp | 1 + src/slic3r/GUI/Tab.cpp | 15 +++++++ src/slic3r/GUI/WebGuideDialog.cpp | 3 ++ 9 files changed, 101 insertions(+), 7 deletions(-) diff --git a/src/slic3r/GUI/GUI_App.cpp b/src/slic3r/GUI/GUI_App.cpp index 6bd0797ac9..94ef20e9fd 100644 --- a/src/slic3r/GUI/GUI_App.cpp +++ b/src/slic3r/GUI/GUI_App.cpp @@ -6735,8 +6735,10 @@ void GUI_App::reload_settings() tab->reload_config(); tab->update_changed_ui(); } - if (plater_) + if (plater_) { plater_->sidebar().update_all_preset_comboboxes(); + plater_->normalize_bed_types(false); + } }; if (is_main_thread_active()) refresh_synced_ui(); diff --git a/src/slic3r/GUI/MainFrame.cpp b/src/slic3r/GUI/MainFrame.cpp index 53507edfb3..07d51f9f0c 100644 --- a/src/slic3r/GUI/MainFrame.cpp +++ b/src/slic3r/GUI/MainFrame.cpp @@ -3870,6 +3870,8 @@ bool MainFrame::load_config_file(const std::string &path) return false; } wxGetApp().load_current_presets(); + if (Plater *plater = wxGetApp().plater()) + plater->normalize_bed_types(false); return true; } diff --git a/src/slic3r/GUI/ParamsDialog.cpp b/src/slic3r/GUI/ParamsDialog.cpp index 87888848a6..008f71d6d1 100644 --- a/src/slic3r/GUI/ParamsDialog.cpp +++ b/src/slic3r/GUI/ParamsDialog.cpp @@ -3,6 +3,7 @@ #include "ParamsPanel.hpp" #include "GUI_App.hpp" #include "MainFrame.hpp" +#include "Plater.hpp" #include "Tab.hpp" #include "libslic3r/Utils.hpp" @@ -70,6 +71,18 @@ ParamsDialog::ParamsDialog(wxWindow * parent) } Hide(); + if (tab && tab->type() == Preset::TYPE_PRINTER) { + // Normalize only after the dialog closes, when the final capability is known. + auto &preset_bundle = *wxGetApp().preset_bundle; + const bool supports_multiple_bed_types = preset_bundle.is_bbl_vendor() || + preset_bundle.printers.get_edited_preset().config.opt_bool("support_multi_bed_types"); + if (m_initial_multi_bed_types != supports_multiple_bed_types) { + wxGetApp().plater()->normalize_bed_types(true); + if (auto *plate_tab = dynamic_cast(wxGetApp().get_plate_tab())) + plate_tab->update_model_config(); + } + } + if (!m_editing_filament_id.empty()) { Filamentinformation *filament_info = new Filamentinformation(); filament_info->filament_id = m_editing_filament_id; @@ -93,7 +106,15 @@ void ParamsDialog::Popup() if (m_panel && m_panel->get_current_tab()) { bool just_edit = false; if (!m_editing_filament_id.empty()) just_edit = true; - dynamic_cast(m_panel->get_current_tab())->set_just_edit(just_edit); + auto *tab = dynamic_cast(m_panel->get_current_tab()); + tab->set_just_edit(just_edit); + if (tab->type() == Preset::TYPE_PRINTER) { + // Remember the initial capability and compare it when the dialog closes. + // Bambu profiles support multiple bed types even when this option is unset. + auto &preset_bundle = *wxGetApp().preset_bundle; + m_initial_multi_bed_types = preset_bundle.is_bbl_vendor() || + preset_bundle.printers.get_edited_preset().config.opt_bool("support_multi_bed_types"); + } } Show(); } diff --git a/src/slic3r/GUI/ParamsDialog.hpp b/src/slic3r/GUI/ParamsDialog.hpp index 9ad34e165e..80c9c3d2fe 100644 --- a/src/slic3r/GUI/ParamsDialog.hpp +++ b/src/slic3r/GUI/ParamsDialog.hpp @@ -43,6 +43,7 @@ protected: private: std::string m_editing_filament_id; + bool m_initial_multi_bed_types = false; ParamsPanel * m_panel; wxWindowDisabler *m_winDisabler = nullptr; }; diff --git a/src/slic3r/GUI/PlateSettingsDialog.cpp b/src/slic3r/GUI/PlateSettingsDialog.cpp index b640b2cb84..31b8367774 100644 --- a/src/slic3r/GUI/PlateSettingsDialog.cpp +++ b/src/slic3r/GUI/PlateSettingsDialog.cpp @@ -431,8 +431,9 @@ PlateSettingsDialog::PlateSettingsDialog(wxWindow* parent, const wxString& title } } - if (!wxGetApp().preset_bundle->is_bbl_vendor()) - m_bed_type_choice->Disable(); + auto &preset_bundle = *wxGetApp().preset_bundle; + const auto &printer_config = preset_bundle.printers.get_edited_preset().config; + m_bed_type_choice->Enable(preset_bundle.is_bbl_vendor() || printer_config.opt_bool("support_multi_bed_types")); wxStaticText* m_bed_type_txt = new wxStaticText(this, wxID_ANY, _L("Bed type")); m_bed_type_txt->SetFont(Label::Body_14); diff --git a/src/slic3r/GUI/Plater.cpp b/src/slic3r/GUI/Plater.cpp index 89616345eb..43a8b9a6a1 100644 --- a/src/slic3r/GUI/Plater.cpp +++ b/src/slic3r/GUI/Plater.cpp @@ -7401,7 +7401,8 @@ struct Plater::priv std::vector load_files(const std::vector& input_files, LoadStrategy strategy, bool ask_multi = false, - bool* published_out = nullptr); + bool* published_out = nullptr, + bool* config_loaded_out = nullptr); std::vector load_model_objects(const ModelObjectPtrs& model_objects, bool allow_negative_z = false, bool split_object = false, bool auto_drop = true); // Texture-to-color import: a mesh loaded with UVs + a texture map gets its faces clustered @@ -8872,8 +8873,12 @@ void read_binary_stl(const std::string& filename, std::string& model_id, std::st std::vector Plater::priv::load_files(const std::vector& input_files, LoadStrategy strategy, bool ask_multi, - bool* published_out) + bool* published_out, + bool* config_loaded_out) { + if (config_loaded_out != nullptr) + *config_loaded_out = false; + std::vector empty_result; bool dlg_cont = true; bool is_user_cancel = false; @@ -9558,6 +9563,8 @@ std::vector Plater::priv::load_files(const std::vector& input_ id = agent->to_orca_filament_id(id); } preset_bundle->load_config_model(filename.string(), std::move(config), file_version, &published_config); + if (config_loaded_out != nullptr) + *config_loaded_out = true; // Mixed-filament definitions that collided with one of the // receiver's real slots were relocated during the preset load. @@ -12780,6 +12787,8 @@ void Plater::priv::on_select_bed_type(wxCommandEvent &evt) // update plater with new config q->on_config_change(wxGetApp().preset_bundle->full_config()); + if (auto *plate_tab = dynamic_cast(wxGetApp().get_plate_tab())) + plate_tab->update_model_config(); // update app_config AppConfig* app_config = wxGetApp().app_config; @@ -15479,6 +15488,38 @@ void Plater::reset_project_dirty_initial_presets() { p->reset_project_dirty_init void Plater::render_project_state_debug_window() const { p->render_project_state_debug_window(); } #endif // ENABLE_PROJECT_DIRTY_STATE_DEBUG_WINDOW +void Plater::normalize_bed_types(bool printer_setting_changed) +{ + if (only_gcode_mode() || is_gcode_3mf()) + return; + + auto &preset_bundle = *wxGetApp().preset_bundle; + // Keep FFF plate settings intact while an SLA printer is selected. + if (preset_bundle.printers.get_edited_preset().printer_technology() != ptFFF) + return; + + const auto &printer_config = preset_bundle.printers.get_edited_preset().config; + + const bool supports_multiple_bed_types = + preset_bundle.is_bbl_vendor() || printer_config.opt_bool("support_multi_bed_types"); + // Clear local overrides for single-bed printers. + const bool overrides_reset = !supports_multiple_bed_types && + !p->partplate_list.check_all_plate_local_bed_type({}); + + if (overrides_reset) { + set_plater_dirty(true); + show_info(this, + _L("The selected printer does not support multiple bed types.\nBed type overrides were reset to the global bed type."), + _L("Plate bed types reset")); + } + + // Refresh the controls after a capability change, even when no override was reset. + if (printer_setting_changed || overrides_reset) { + sidebar().update_all_preset_comboboxes(); + wxGetApp().obj_list()->update_and_show_object_settings_item(); + } +} + std::vector Plater::mixed_filament_config_indices() const { std::vector indices; @@ -16059,6 +16100,9 @@ void Plater::load_project(wxString const& filename2, p->dirty_state.update_from_undo_redo_stack(true); up_to_date(true, true); + // Clear plate overrides that are incompatible with the selected printer. + normalize_bed_types(false); + wxGetApp().params_panel()->switch_to_object_if_has_object_configs(); auto has_modify = is_flush_config_modified(); @@ -17691,7 +17735,11 @@ std::vector Plater::load_files(const std::vector& input_files, p->m_slice_all_only_has_gcode = false; //BBS: wish to reset all plates stats item selected state when load a new file p->preview->get_canvas3d()->reset_select_plate_toolbar_selection(); - return p->load_files(input_files, strategy, ask_multi, published_out); + bool config_loaded = false; + std::vector result = p->load_files(input_files, strategy, ask_multi, published_out, &config_loaded); + if (config_loaded && !is_loading_project()) + normalize_bed_types(false); + return result; } bool Plater::preview_zip_archive(const boost::filesystem::path& archive_path) diff --git a/src/slic3r/GUI/Plater.hpp b/src/slic3r/GUI/Plater.hpp index a887805f8a..17534ebf7d 100644 --- a/src/slic3r/GUI/Plater.hpp +++ b/src/slic3r/GUI/Plater.hpp @@ -343,6 +343,7 @@ public: bool is_presets_dirty() const; void set_plater_dirty(bool is_dirty); void update_project_dirty_from_presets(); + void normalize_bed_types(bool printer_setting_changed); int save_project_if_dirty(const wxString& reason); void reset_project_dirty_after_save(); void reset_project_dirty_initial_presets(); diff --git a/src/slic3r/GUI/Tab.cpp b/src/slic3r/GUI/Tab.cpp index c60566d5c7..3050830d56 100644 --- a/src/slic3r/GUI/Tab.cpp +++ b/src/slic3r/GUI/Tab.cpp @@ -87,6 +87,7 @@ #include "slic3r/plugin/PluginConfig.hpp" #include "slic3r/plugin/PluginManager.hpp" #include "Plater.hpp" +#include "ParamsDialog.hpp" #include "MainFrame.hpp" #include "format.hpp" #include "UnsavedChangesDialog.hpp" @@ -3302,6 +3303,11 @@ void TabPrint::toggle_options() m_config_manipulation.toggle_print_fff_options(m_config, int(intptr_t(m_extruder_switch->GetClientData())), m_type < Preset::TYPE_COUNT); + if (m_type == Preset::TYPE_PLATE) { + const auto &printer_config = m_preset_bundle->printers.get_edited_preset().config; + toggle_option("curr_bed_type", m_preset_bundle->is_bbl_vendor() || printer_config.opt_bool("support_multi_bed_types")); + } + Field *field = m_active_page->get_field("support_style"); auto support_type = m_config->opt_enum("support_type"); if (auto choice = dynamic_cast(field)) { @@ -7024,6 +7030,15 @@ bool Tab::select_preset( } load_current_preset(); + // Wait for the settings dialog to close; its edits are still provisional. + if (printer_tab && is_selected) { + Plater *plater = wxGetApp().plater(); + ParamsDialog *dialog = wxGetApp().params_dialog(); + if (plater && !plater->is_loading_project() && + (!dialog || !dialog->IsShown())) + plater->normalize_bed_types(false); + } + { Slic3r::LifecycleEventContext ctx; ctx.name = preset_name; diff --git a/src/slic3r/GUI/WebGuideDialog.cpp b/src/slic3r/GUI/WebGuideDialog.cpp index 4f1998ae94..350dd9d4be 100644 --- a/src/slic3r/GUI/WebGuideDialog.cpp +++ b/src/slic3r/GUI/WebGuideDialog.cpp @@ -71,6 +71,7 @@ #include #include "MainFrame.hpp" +#include "Plater.hpp" #include #include #include @@ -1161,6 +1162,8 @@ bool GuideFrame::run() app.app_config->set_legacy_datadir(false); app.update_mode(); + if (Plater *plater = app.plater()) + plater->normalize_bed_types(false); // BBS //app.obj_manipul()->update_ui_from_settings(); BOOST_LOG_TRIVIAL(info) << "GuideFrame applied"; From 00bb4202fe50ca625e59c6fcbec573a2887d22ed Mon Sep 17 00:00:00 2001 From: Kiss Lorand <50251547+kisslorand@users.noreply.github.com> Date: Sat, 3 Oct 2026 03:12:31 +0300 Subject: [PATCH 3/7] Fix gizmo checkbox contrast; align Texture Displacement styling and panel refresh behavior (#16076) * Fix gizmo checkbox styling and Texture Displacement resize Use shared BBL checkboxes in Texture Displacement and restore white toolbar checkmarks so other gizmos keep proper checkbox contrast. Also fix Texture Displacement resizing only after mouse movement by requesting additional frames while its layout is still changing. * Fix gizmo checkbox styling and Texture Displacement resize Use shared BBL checkboxes in Texture Displacement and restore white toolbar checkmarks so other gizmos keep proper checkbox contrast. Also fix Texture Displacement resizing only after mouse movement by requesting additional frames while its layout is still changing. * Update GLGizmoTextureDisplacement.cpp --------- Co-authored-by: yw4z --- .../GUI/Gizmos/GLGizmoTextureDisplacement.cpp | 80 ++++++++++--------- src/slic3r/GUI/ImGuiWrapper.cpp | 6 +- 2 files changed, 43 insertions(+), 43 deletions(-) diff --git a/src/slic3r/GUI/Gizmos/GLGizmoTextureDisplacement.cpp b/src/slic3r/GUI/Gizmos/GLGizmoTextureDisplacement.cpp index 4aed58d884..fe1368b69e 100644 --- a/src/slic3r/GUI/Gizmos/GLGizmoTextureDisplacement.cpp +++ b/src/slic3r/GUI/Gizmos/GLGizmoTextureDisplacement.cpp @@ -5151,7 +5151,7 @@ void GLGizmoTextureDisplacement::render_debug_stage_panel(ModelVolume *mv) m_imgui->scaled(20.f)); ImGui::SameLine(); - ImGui::Checkbox(_u8L("Check topology").c_str(), &m_debug_check_topology); + m_imgui->bbl_checkbox(_L("Check topology"), m_debug_check_topology); if (ImGui::IsItemHovered()) m_imgui->tooltip(_u8L("Count open and non-manifold edges after each stage, which is how a stage " "that tore the mesh is spotted. It scans every edge, so it adds noticeably " @@ -5341,6 +5341,8 @@ void GLGizmoTextureDisplacement::on_render_input_window(float x, float y, float GizmoImguiBegin(get_name(), flags); ensure_panel_icons(); process_uv_commands(); // clicks from the UV editor pane, run here where the GL context is current + const float previous_body_h = m_panel_body_h; + const float previous_footer_h = m_panel_footer_h; // Pinned every frame while Standard is active, so what Preview shows is always what Bake will do. if (!pro_mode() && apply_standard_mode_presets(mv)) @@ -5362,20 +5364,16 @@ void GLGizmoTextureDisplacement::on_render_input_window(float x, float y, float const float card_pad = std::round(m_imgui->scaled(0.55f)); const float wrap_w = m_imgui->scaled(20.f); const ImVec4 orca = ImGuiWrapper::COL_ORCA; - const ImVec4 col_link = dark ? ImVec4(0.30f, 0.71f, 0.67f, 1.f) : ImVec4(0.f, 0.47f, 0.42f, 1.f); - const ImVec4 col_frame = dark ? ImVec4(0.212f, 0.212f, 0.235f, 1.f) : ImVec4(0.808f, 0.808f, 0.808f, 1.f); - const ImU32 col_card = dark ? IM_COL32(255, 255, 255, 10) : IM_COL32(0, 0, 0, 12); - const ImU32 col_line = dark ? IM_COL32(255, 255, 255, 18) : IM_COL32(0, 0, 0, 23); + const ImVec4 col_link = ImGuiWrapper::COL_ORCA; + const ImVec4 col_frame = ImGui::GetStyleColorVec4(ImGuiCol_Separator); + const ImU32 col_card = ImGui::GetColorU32(ImGuiCol_Text, dark ? 0.045f : 0.047f); + const ImU32 col_line = ImGui::GetColorU32(ImGuiCol_Text, dark ? 0.08f : 0.09f); const ImU32 col_sep = ImGui::GetColorU32(ImGuiCol_Separator); - // Combo drop-downs otherwise inherit ImGui's near-black default popup background; under the light - // theme that leaves the dark item text unreadable ("the dropbox is black"). Pushed only around each - // Combo below (never around a tooltip, whose own near-black default is what makes it readable). - const ImVec4 combo_popup_bg = dark ? ImVec4(0.18f, 0.18f, 0.19f, 1.f) : ImVec4(0.93f, 0.93f, 0.93f, 1.f); const auto scoped_combo = [&](const char *id, int *v, const char *const items[], int n) { - ImGui::PushStyleColor(ImGuiCol_PopupBg, combo_popup_bg); + ImGuiWrapper::push_combo_style(m_parent.get_scale()); const bool changed = ImGui::Combo(id, v, items, n); - ImGui::PopStyleColor(); + ImGuiWrapper::pop_combo_style(); return changed; }; const auto hover_tip = [&](const auto &text) { @@ -5782,10 +5780,10 @@ void GLGizmoTextureDisplacement::on_render_input_window(float x, float y, float wf_toggle = true; const std::string auto_label = _u8L("Auto"); - const float auto_w = frame_h + style.ItemInnerSpacing.x + ImGui::CalcTextSize(auto_label.c_str()).x; + const float auto_w = frame_h * 0.78f /*ratio from BBLCheckbox*/ + style.ItemInnerSpacing.x + ImGui::CalcTextSize(auto_label.c_str()).x; ImGui::SameLine(); ImGui::SetCursorPosX(std::max(ImGui::GetCursorPosX(), ImGui::GetWindowContentRegionMax().x - auto_w)); - if (ImGui::Checkbox((auto_label + "##auto_update").c_str(), &m_auto_update) && m_auto_update) + if (m_imgui->bbl_checkbox(wxString::FromUTF8(auto_label) + "##auto_update", m_auto_update) && m_auto_update) rebuild_preview(); // catch up anything that changed while it was off hover_tip(_u8L("Rebuilds the preview as soon as anything changes. Turn it off on a heavy model if painting " "or dragging a slider starts to stutter - the preview then waits until you let go.")); @@ -6020,7 +6018,7 @@ void GLGizmoTextureDisplacement::on_render_input_window(float x, float y, float "costs fine detail.")); // Edge fade: the relief flattens toward the boundary of the painted area. - m_preview_params_dirty |= ImGui::Checkbox((_u8L("Edge fade") + "##edge_smoothing").c_str(), &layer.edge_smoothing); + m_preview_params_dirty |= m_imgui->bbl_checkbox(_L("Edge fade") + "##edge_smoothing", layer.edge_smoothing); hover_tip(_u8L("Flattens the relief as it approaches the edge of the painted area, so it " "blends into the bare surface instead of stopping at a step.")); ImGui::SameLine(); @@ -6035,7 +6033,7 @@ void GLGizmoTextureDisplacement::on_render_input_window(float x, float y, float // Invert and Colours share a row. { const float x0 = ImGui::GetCursorPosX(); - m_preview_params_dirty |= ImGui::Checkbox(_u8L("Invert").c_str(), &layer.invert); + m_preview_params_dirty |= m_imgui->bbl_checkbox(_L("Invert"), layer.invert); hover_tip(_u8L("Turns the relief inside out: what stood out is cut in, and the other way " "round. The same as using a negative of the image.")); ImGui::SameLine(); @@ -6047,7 +6045,7 @@ void GLGizmoTextureDisplacement::on_render_input_window(float x, float y, float const bool has_color = decode_height_texture(layer).has_color(); bool color_enabled = layer.color_enabled && has_color; m_imgui->disabled_begin(!has_color); - if (ImGui::Checkbox(_u8L("Colours").c_str(), &color_enabled)) { + if (m_imgui->bbl_checkbox(_L("Colours"), color_enabled)) { layer.color_enabled = color_enabled; m_preview_params_dirty = true; } @@ -6065,7 +6063,7 @@ void GLGizmoTextureDisplacement::on_render_input_window(float x, float y, float // under whichever layer turned colour on. if (color_enabled) { TextureDisplacementOptions &opts = mv->texture_displacement_options; - if (ImGui::Checkbox(_u8L("Mix filaments").c_str(), &opts.color_mix_enabled)) + if (m_imgui->bbl_checkbox(_L("Mix filaments"), opts.color_mix_enabled)) m_preview_params_dirty = true; hover_tip(_u8L("Interleaves two filaments to fake the colours in between, so a handful " "of filaments can cover a photo or a gradient. An image of flat colours " @@ -6184,7 +6182,7 @@ void GLGizmoTextureDisplacement::on_render_input_window(float x, float y, float "a slide projector. Faces turned away from you stretch, so line the view up with " "the surface you care about first.")); - if (ImGui::Checkbox(_u8L("Project only on visible").c_str(), &m_project_only_visible)) { + if (m_imgui->bbl_checkbox(_L("Project only on visible"), m_project_only_visible)) { if (m_project_only_visible && select_visible_faces() == 0) show_error(nullptr, _u8L("Nothing is visible from this angle - turn the model to face the " "part you want to project onto.")); @@ -6195,7 +6193,7 @@ void GLGizmoTextureDisplacement::on_render_input_window(float x, float y, float "behind anything - and projects onto those. Replaces what the layer had painted.")); bool projector_open = m_projector_frame != nullptr && m_projector_frame->IsShown(); - if (ImGui::Checkbox(_u8L("Projection frame").c_str(), &projector_open)) + if (m_imgui->bbl_checkbox(_L("Projection frame"), projector_open)) show_projector(projector_open); hover_tip(_u8L("Opens a window you drag over the model. Whatever you can see through it is what " "gets the texture, and its border becomes the edge of the projection.")); @@ -6236,7 +6234,7 @@ void GLGizmoTextureDisplacement::on_render_input_window(float x, float y, float // Tile, and how it repeats. { const float x0 = ImGui::GetCursorPosX(); - m_preview_params_dirty |= ImGui::Checkbox((_u8L("Tile") + "##tile_enabled").c_str(), &layer.tile_enabled); + m_preview_params_dirty |= m_imgui->bbl_checkbox(_L("Tile") + "##tile_enabled", layer.tile_enabled); hover_tip(_u8L("Repeats the texture across the painted area. Off places one copy, like a decal, " "at the size set by Tile size.")); ImGui::SameLine(); @@ -6424,7 +6422,7 @@ void GLGizmoTextureDisplacement::on_render_input_window(float x, float y, float const ImVec2 mn(mouse.x - inner - 0.5f * grip_w, mouse.y - 0.5f * row_h); const ImVec2 mx(mn.x + (content_rx - list_x), mn.y + row_h); fg->AddRectFilled(ImVec2(mn.x + 2.f, mn.y + 4.f), ImVec2(mx.x + 2.f, mx.y + 4.f), IM_COL32(0, 0, 0, 70), rounding); - fg->AddRectFilled(mn, mx, dark ? IM_COL32(0x3a, 0x3a, 0x40, 245) : IM_COL32(255, 255, 255, 245), rounding); + fg->AddRectFilled(mn, mx, ImGui::GetColorU32(ImGuiCol_WindowBg, 245.f / 255.f), rounding); fg->AddRect(mn, mx, ImGui::GetColorU32(orca), rounding, 0, 1.5f); float x = mn.x + inner; @@ -6463,7 +6461,7 @@ void GLGizmoTextureDisplacement::on_render_input_window(float x, float y, float ImGui::Separator(); heading(_L("Subdivision")); - if (ImGui::Checkbox(_u8L("Only painted area (adaptive)").c_str(), &m_subdivide_adaptive)) { + if (m_imgui->bbl_checkbox(_L("Only painted area (adaptive)"), m_subdivide_adaptive)) { if (m_subdivide_editing) rebuild_subdivide_preview(); // switch the wireframe between the uniform and adaptive result m_parent.set_as_dirty(); @@ -6494,7 +6492,7 @@ void GLGizmoTextureDisplacement::on_render_input_window(float x, float y, float m_parent.set_as_dirty(); }; - if (ImGui::Checkbox(_u8L("Follow texture detail").c_str(), &m_subdivide_feature)) + if (m_imgui->bbl_checkbox(_L("Follow texture detail"), m_subdivide_feature)) preview_live(); hover_tip(_u8L("Spends the triangles where the texture actually bends - packed along ridges and edges, " "sparse over flat ground - instead of spreading them evenly. The same detail for fewer " @@ -6621,7 +6619,7 @@ void GLGizmoTextureDisplacement::on_render_input_window(float x, float y, float hover_tip(_u8L("Triangle size the whole model is rebuilt with, in millimetres. Displacement works best on an " "even mesh; this is what makes one out of an uneven import.")); - ImGui::Checkbox((_u8L("Keep sharp edges") + "##remesh_sharp").c_str(), &m_remesh_keep_sharp_edges); + m_imgui->bbl_checkbox(_L("Keep sharp edges") + "##remesh_sharp", m_remesh_keep_sharp_edges); hover_tip(_u8L("Holds hard edges and open borders in place while the rest is remeshed. Without it " "the remesher slides vertices along the surface and rounds every crisp edge off - " "a cube comes back with wobbly edges.")); @@ -6648,12 +6646,12 @@ void GLGizmoTextureDisplacement::on_render_input_window(float x, float y, float ImGui::Separator(); heading(_L("Result")); - m_preview_params_dirty |= ImGui::Checkbox(_u8L("Displace up to the border").c_str(), &opts.displace_border); + m_preview_params_dirty |= m_imgui->bbl_checkbox(_L("Displace up to the border"), opts.displace_border); hover_tip(_u8L("Lets the relief run right to the edge of the painted area. Turn it off to hold that " "outer ring flat, which keeps the displacement strictly inside your paint but flattens " "the pattern at the border.")); - m_preview_params_dirty |= ImGui::Checkbox(_u8L("Smooth result").c_str(), &opts.smooth_enabled); + m_preview_params_dirty |= m_imgui->bbl_checkbox(_L("Smooth result"), opts.smooth_enabled); hover_tip(_u8L("Smooths the geometry after the texture has been applied, to take the hard steps out of a " "low-resolution image. Only what the displacement moved is touched. The Smoothing slider " "on a layer is a different thing: it blurs the image before it is used.")); @@ -6670,7 +6668,7 @@ void GLGizmoTextureDisplacement::on_render_input_window(float x, float y, float hover_tip(_u8L("How many smoothing passes to run. More passes spread the smoothing further across " "the surface; Strength decides how much each one moves.")); - m_preview_params_dirty |= ImGui::Checkbox(_u8L("Ignore outer ring").c_str(), &opts.smooth_skip_border); + m_preview_params_dirty |= m_imgui->bbl_checkbox(_L("Ignore outer ring"), opts.smooth_skip_border); hover_tip(_u8L("Keeps the outer ring of the painted area out of the smoothing. Its neighbours " "outside the paint never move, so smoothing it drags the relief down and leaves the " "pattern half-melted at the border.")); @@ -6695,7 +6693,7 @@ void GLGizmoTextureDisplacement::on_render_input_window(float x, float y, float // The classic path is the opt-in: the one-run pipeline is the default, and its resolution // control lives in the footer next to Bake (see below). bool classic = !opts.pipeline_v2; - if (ImGui::Checkbox(_u8L("Experimental: classic bake pipeline").c_str(), &classic)) { + if (m_imgui->bbl_checkbox(_L("Experimental: classic bake pipeline"), classic)) { opts.pipeline_v2 = !classic; m_preview_params_dirty = true; } @@ -6724,13 +6722,13 @@ void GLGizmoTextureDisplacement::on_render_input_window(float x, float y, float if (SHOW_PIPELINE_DEV_CONTROLS && opts.pipeline_v2) { // Keeping the relief above the plate is not a checkbox: it is unconditional, in both pipelines // (see build_texture_displacement()). - m_preview_params_dirty |= ImGui::Checkbox(_u8L("Align mesh to texture edges").c_str(), &opts.v2_relocate); + m_preview_params_dirty |= m_imgui->bbl_checkbox(_L("Align mesh to texture edges"), opts.v2_relocate); hover_tip(_u8L("Slide vertices sideways onto the edges in the texture before displacing them. " "Displacement can only move vertices up and down, so without this a sharp step " "in the image lands wherever the triangles happen to be and comes out as a " "staircase. Moving the vertices onto the step first gives a straight wall at the " "same triangle count.")); - m_preview_params_dirty |= ImGui::Checkbox(_u8L("Clean up slivers").c_str(), &opts.v2_regularize); + m_preview_params_dirty |= m_imgui->bbl_checkbox(_L("Clean up slivers"), opts.v2_regularize); hover_tip(_u8L("Collapse the thin triangles refinement inherits from the model's own " "tessellation, before displacement samples them. A sliver's three corners " "land on three unrelated parts of the texture, which is what makes the " @@ -6810,7 +6808,7 @@ void GLGizmoTextureDisplacement::on_render_input_window(float x, float y, float // a fixed value, seeded with the recommendation so it starts from something sensible. bool auto_res = opts.v2_refine_mm <= 0.f; m_imgui->disabled_begin(busy); - if (ImGui::Checkbox("##v2auto", &auto_res)) { + if (m_imgui->bbl_checkbox(wxString::FromUTF8("##v2auto"), auto_res)) { if (auto_res) { opts.v2_refine_mm = 0.f; opts.v2_max_triangles_k = -1; @@ -6908,11 +6906,7 @@ void GLGizmoTextureDisplacement::on_render_input_window(float x, float y, float const std::string bake_label = m_prepare_in_progress ? _u8L("Preparing...") : m_bake_in_progress ? _u8L("Baking...") : into_u8(m_desc.at("bake")); - ImGui::PushStyleColor(ImGuiCol_Button, orca); - ImGui::PushStyleColor(ImGuiCol_ButtonHovered, ImGuiWrapper::COL_ORCA_HOVER); - ImGui::PushStyleColor(ImGuiCol_ButtonActive, orca); - ImGui::PushStyleColor(ImGuiCol_Border, orca); - ImGui::PushStyleColor(ImGuiCol_Text, ImVec4(1.f, 1.f, 1.f, 1.f)); + GLGizmoUtils::push_orca_button_style(); m_imgui->push_bold_font(); m_imgui->disabled_begin(!can_bake); if (ImGui::Button((bake_label + "##bake").c_str(), ImVec2(x0 + panel_w - ImGui::GetCursorPosX(), button_h))) { @@ -6925,7 +6919,7 @@ void GLGizmoTextureDisplacement::on_render_input_window(float x, float y, float } m_imgui->disabled_end(); m_imgui->pop_bold_font(); - ImGui::PopStyleColor(5); + GLGizmoUtils::pop_orca_button_style(); if (ImGui::IsItemHovered(ImGuiHoveredFlags_AllowWhenDisabled)) m_imgui->tooltip(mv != nullptr && !mv->is_texture_displacement_painted() ? (m_seam_edit_mode ? _u8L("Nothing is painted yet. The UV editor's seam tool is on, so " @@ -6964,7 +6958,17 @@ void GLGizmoTextureDisplacement::on_render_input_window(float x, float y, float } } m_panel_footer_h = ImGui::GetCursorScreenPos().y - footer_top; - + constexpr float resize_epsilon = 0.5f; + const float content_bottom = ImGui::GetCursorPosY() - style.ItemSpacing.y; + const float window_bottom = ImGui::GetWindowContentRegionMax().y; + const bool outer_window_needs_fit = content_bottom < window_bottom - resize_epsilon || + (content_bottom > window_bottom + resize_epsilon && + ImGui::GetWindowHeight() < ImGui::GetMainViewport()->Size.y - + 2.f * style.DisplaySafeAreaPadding.y - resize_epsilon); + if (std::abs(m_panel_body_h - previous_body_h) > resize_epsilon || + std::abs(m_panel_footer_h - previous_footer_h) > resize_epsilon || outer_window_needs_fit) { + m_parent.request_extra_frame(); + } GizmoImguiEnd(); ImGuiWrapper::pop_toolbar_style(); diff --git a/src/slic3r/GUI/ImGuiWrapper.cpp b/src/slic3r/GUI/ImGuiWrapper.cpp index 64bb5e11ca..41663d147e 100644 --- a/src/slic3r/GUI/ImGuiWrapper.cpp +++ b/src/slic3r/GUI/ImGuiWrapper.cpp @@ -2656,11 +2656,7 @@ void ImGuiWrapper::push_toolbar_style(const float scale) ImGui::PushStyleColor(ImGuiCol_FrameBgActive, ImVec4(238 / 255.0f, 238 / 255.0f, 238 / 255.0f, 1.00f)); // 10 ImGui::PushStyleColor(ImGuiCol_FrameBg, ImVec4(238 / 255.0f, 238 / 255.0f, 238 / 255.0f, 0.00f)); // 11 ImGui::PushStyleColor(ImGuiCol_TextSelectedBg, COL_GREEN_LIGHT); // 12 - // The checkbox/radio frame behind this is drawn fully transparent (see FrameBg above, - // alpha 0), showing the light window background through it - a white check mark there is - // invisible. Dark mode doesn't have this problem (its window background is dark), so only - // this branch needs a check mark color with real contrast against a light background. - ImGui::PushStyleColor(ImGuiCol_CheckMark, ImVec4(0.f, 156 / 255.f, 136 / 255.f, 1.00f));//13 + ImGui::PushStyleColor(ImGuiCol_CheckMark, ImVec4(1.00f, 1.00f, 1.00f, 1.00f));//13 ImGui::PushStyleColor(ImGuiCol_ScrollbarGrab, ImVec4(0.42f, 0.42f, 0.42f, 1.00f)); ImGui::PushStyleColor(ImGuiCol_ScrollbarGrabHovered, ImVec4(0.93f, 0.93f, 0.93f, 1.00f)); ImGui::PushStyleColor(ImGuiCol_ScrollbarGrabActive, ImVec4(0.93f, 0.93f, 0.93f, 1.00f)); From 84657ff11ea231ef717b76eb0a941ba64aa3ec4e Mon Sep 17 00:00:00 2001 From: HanifKoh <76276251+HanifKoh@users.noreply.github.com> Date: Sat, 3 Oct 2026 13:45:21 +0800 Subject: [PATCH 4/7] Add Missing Includes Across the Remaining Sources and Tests (#16071) * Ignore Clipper, libpng, mcut and Boost.Polygon Internals in clang-tidy Each only works through a wrapper or umbrella header: libslic3r/clipper.hpp or clipper_z.hpp configure Clipper before including it, png.h pulls in libpng's config headers, and Boost.Polygon's headers only compile through polygon.hpp or voronoi.hpp. * Ignore minilzo's Config Headers in clang-tidy lzoconf.h and lzodefs.h are internal to minilzo.h, which is what the code includes. * Add Missing Includes Across the Remaining Sources and Tests Covers src/slic3r/Utils, src/slic3r/plugin, src/slic3r/Config, src/libvgcode, src/dev-utils, src/OrcaSlicer.cpp and tests/, the directories left after src/slic3r/GUI and src/libslic3r. Generated with clang-tidy misc-include-cleaner. libvgcode's own headers are included by relative path as in the rest of that library, and Catch2 and pybind11 with angle brackets as elsewhere in the repo. * Make the GUI and Test Headers Compile on Their Own Each now includes, or forward-declares, what it uses instead of relying on what its includers happened to include first. Headers that only compile on one platform, or that nothing built includes, are left alone. * Keep Windows and nanosvg Setup Ahead of the Added Includes OrcaSlicer.cpp and several tests set _WIN32_WINNT, WIN32_LEAN_AND_MEAN or NOMINMAX before including Windows.h, and the profile validator defines NANOSVG_IMPLEMENTATION before any libslic3r header. The added includes had landed above those blocks, which broke the Windows build. * Add the GUI Includes the First Pass Missed Covers headers that only became editable once they compiled on their own, and wx symbols whose suggested header changed as the clang-tidy ignore list grew after the src/slic3r/GUI pass. * Keep the Added Test Includes Below the NOMINMAX Guard test_marchingsquares.cpp and test_texture_displacement.cpp had includes inside #ifndef NOMINMAX, which the tests inherit as defined on Windows from libslic3r, so those were skipped there. .clang-tidy also ignores the MSVC STL and UCRT internals, Boost.Multiprecision's fwd.hpp and CPython's Windows include directory, as in #16068. --- .clang-tidy | 21 +++++++-- src/OrcaSlicer.cpp | 43 +++++++++++++++++++ src/OrcaSlicer.hpp | 7 +++ .../OrcaSlicer_profile_validator.cpp | 22 ++++++++++ src/dev-utils/encoding-check.cpp | 1 + src/dev-utils/generate_system_cache.cpp | 10 +++++ src/dev-utils/profile_include_dump.cpp | 6 +++ src/libvgcode/include/ColorPrint.hpp | 2 + src/libvgcode/include/ColorRange.hpp | 3 ++ src/libvgcode/include/GCodeInputData.hpp | 2 + src/libvgcode/include/PathVertex.hpp | 2 + src/libvgcode/include/Types.hpp | 1 + src/libvgcode/include/Viewer.hpp | 3 ++ src/libvgcode/src/Bitset.hpp | 3 ++ src/libvgcode/src/ColorRange.cpp | 5 +++ src/libvgcode/src/ExtrusionRoles.cpp | 5 +++ src/libvgcode/src/ExtrusionRoles.hpp | 3 ++ src/libvgcode/src/Layers.cpp | 5 +++ src/libvgcode/src/Layers.hpp | 5 +++ src/libvgcode/src/OpenGLUtils.cpp | 1 + src/libvgcode/src/OptionTemplate.cpp | 3 ++ src/libvgcode/src/PathVertex.cpp | 1 + src/libvgcode/src/Range.cpp | 1 + src/libvgcode/src/SegmentTemplate.cpp | 1 + src/libvgcode/src/Settings.hpp | 2 + src/libvgcode/src/ToolMarker.cpp | 1 + src/libvgcode/src/Types.cpp | 1 + src/libvgcode/src/Utils.cpp | 3 ++ src/libvgcode/src/Utils.hpp | 2 + src/libvgcode/src/ViewRange.cpp | 1 + src/libvgcode/src/ViewRange.hpp | 1 + src/libvgcode/src/Viewer.cpp | 6 +++ src/libvgcode/src/ViewerImpl.cpp | 12 ++++++ src/libvgcode/src/ViewerImpl.hpp | 6 +++ src/slic3r/Config/Snapshot.cpp | 19 ++++++++ src/slic3r/Config/Snapshot.hpp | 2 + src/slic3r/Config/Version.cpp | 12 ++++++ src/slic3r/Config/Version.hpp | 1 + src/slic3r/GUI/2DBed.cpp | 1 + src/slic3r/GUI/AMSMaterialsSetting.cpp | 1 + src/slic3r/GUI/AMSMaterialsSetting.hpp | 1 + src/slic3r/GUI/AMSSetting.cpp | 1 + src/slic3r/GUI/AMSSetting.hpp | 1 + src/slic3r/GUI/CAD/DesignCanvas.cpp | 1 + src/slic3r/GUI/CAD/DesignPanel.cpp | 1 + src/slic3r/GUI/CalibrationPanel.hpp | 18 ++++++++ src/slic3r/GUI/CapsuleButton.hpp | 1 + src/slic3r/GUI/ConfigExceptions.hpp | 4 ++ src/slic3r/GUI/ConfigManipulation.cpp | 1 + .../GUI/DeviceTab/uiAMSBestPositionPopup.cpp | 1 + .../GUI/DeviceTab/uiAMSBestPositionPopup.hpp | 1 + .../GUI/DeviceTab/uiAmsHumidityPopup.cpp | 1 + .../GUI/DeviceTab/wgtDeviceNozzleRack.h | 7 +++ src/slic3r/GUI/ExtrusionCalibration.cpp | 1 + src/slic3r/GUI/ExtrusionCalibration.hpp | 1 + src/slic3r/GUI/GUI_AuxiliaryList.hpp | 4 ++ src/slic3r/GUI/GUI_ObjectList.cpp | 1 + src/slic3r/GUI/GUI_ObjectTableSettings.cpp | 1 + src/slic3r/GUI/GUI_ObjectTableSettings.hpp | 6 +++ src/slic3r/GUI/Gizmos/GLGizmoCut.cpp | 1 + src/slic3r/GUI/Gizmos/GLGizmoEmboss.cpp | 1 + src/slic3r/GUI/Gizmos/GLGizmoMove.cpp | 1 + src/slic3r/GUI/Gizmos/GLGizmoScale.cpp | 1 + .../GUI/Gizmos/GizmoObjectManipulation.hpp | 6 +++ src/slic3r/GUI/Jobs/PlaterWorker.hpp | 13 ++++++ src/slic3r/GUI/Jobs/SLAImportDialog.hpp | 7 +++ src/slic3r/GUI/KBShortcutsDialog.cpp | 1 + src/slic3r/GUI/MarkdownTip.cpp | 1 + src/slic3r/GUI/MultiChoiceDialog.cpp | 1 + src/slic3r/GUI/PartSkipCommon.hpp | 2 + src/slic3r/GUI/Plater.cpp | 1 + src/slic3r/GUI/SavePresetDialog.cpp | 1 + src/slic3r/GUI/SavePresetDialog.hpp | 1 + src/slic3r/GUI/SendToPrinter.cpp | 1 + src/slic3r/GUI/TabButton.cpp | 1 + src/slic3r/GUI/UpgradePanel.cpp | 1 + src/slic3r/GUI/UpgradePanel.hpp | 1 + src/slic3r/GUI/Widgets/AMSControl.cpp | 1 + src/slic3r/GUI/Widgets/AMSControl.hpp | 1 + src/slic3r/GUI/Widgets/AMSItem.cpp | 1 + src/slic3r/GUI/Widgets/AMSItem.hpp | 1 + src/slic3r/GUI/Widgets/AnimaController.cpp | 1 + src/slic3r/GUI/Widgets/AnimaController.hpp | 1 + src/slic3r/GUI/Widgets/Button.cpp | 1 + src/slic3r/GUI/Widgets/Button.hpp | 1 + src/slic3r/GUI/Widgets/CheckBox.cpp | 1 + src/slic3r/GUI/Widgets/CheckBox.hpp | 1 + src/slic3r/GUI/Widgets/CheckList.cpp | 1 + src/slic3r/GUI/Widgets/CheckList.hpp | 1 + src/slic3r/GUI/Widgets/ComboBox.cpp | 1 + src/slic3r/GUI/Widgets/ComboBox.hpp | 1 + src/slic3r/GUI/Widgets/FanControl.cpp | 1 + src/slic3r/GUI/Widgets/FanControl.hpp | 1 + src/slic3r/GUI/Widgets/FilamentLoad.cpp | 1 + src/slic3r/GUI/Widgets/FilamentLoad.hpp | 1 + src/slic3r/GUI/Widgets/ImageSwitchButton.cpp | 1 + src/slic3r/GUI/Widgets/RadioBox.cpp | 1 + src/slic3r/GUI/Widgets/RadioGroup.hpp | 1 + src/slic3r/GUI/Widgets/RoundedRectangle.cpp | 1 + src/slic3r/GUI/Widgets/ScrolledWindow.hpp | 1 + src/slic3r/GUI/Widgets/SideButton.cpp | 1 + src/slic3r/GUI/Widgets/SideTools.hpp | 1 + src/slic3r/GUI/Widgets/SpinInput.cpp | 1 + src/slic3r/GUI/Widgets/StaticBox.cpp | 1 + src/slic3r/GUI/Widgets/StaticBox.hpp | 1 + src/slic3r/GUI/Widgets/StaticLine.cpp | 1 + src/slic3r/GUI/Widgets/StepCtrl.cpp | 1 + src/slic3r/GUI/Widgets/StepCtrl.hpp | 1 + src/slic3r/GUI/Widgets/SwitchButton.hpp | 1 + src/slic3r/GUI/Widgets/TabCtrl.cpp | 1 + src/slic3r/GUI/Widgets/TabCtrl.hpp | 1 + src/slic3r/GUI/Widgets/TempInput.cpp | 1 + src/slic3r/GUI/Widgets/TempInput.hpp | 1 + src/slic3r/GUI/Widgets/TextCtrl.h | 2 + src/slic3r/GUI/Widgets/TextInput.cpp | 1 + src/slic3r/GUI/WipeTowerDialog.hpp | 8 ++++ src/slic3r/GUI/calib_dlg.cpp | 1 + src/slic3r/GUI/calib_dlg.hpp | 1 + src/slic3r/Utils/3DPrinterOS.cpp | 11 +++++ src/slic3r/Utils/3DPrinterOS.hpp | 1 + src/slic3r/Utils/ASCIIFolding.cpp | 3 ++ src/slic3r/Utils/AstroBox.cpp | 4 ++ src/slic3r/Utils/AstroBox.hpp | 1 + src/slic3r/Utils/BBLCloudServiceAgent.cpp | 9 ++++ src/slic3r/Utils/BBLCloudServiceAgent.hpp | 5 +++ src/slic3r/Utils/BBLNetworkPlugin.cpp | 11 +++++ src/slic3r/Utils/BBLNetworkPlugin.hpp | 1 + src/slic3r/Utils/BBLPrinterAgent.cpp | 6 +++ src/slic3r/Utils/BBLPrinterAgent.hpp | 3 ++ src/slic3r/Utils/Bonjour.cpp | 21 +++++++++ src/slic3r/Utils/Bonjour.hpp | 10 +++++ src/slic3r/Utils/CalibUtils.cpp | 36 ++++++++++++++++ src/slic3r/Utils/CalibUtils.hpp | 5 +++ src/slic3r/Utils/ColorSpaceConvert.cpp | 6 +++ src/slic3r/Utils/CrealityHostDiscovery.cpp | 4 ++ src/slic3r/Utils/CrealityPrint.cpp | 18 ++++++++ src/slic3r/Utils/CrealityPrintAgent.cpp | 7 +++ src/slic3r/Utils/CrealityPrintAgent.hpp | 1 + src/slic3r/Utils/Duet.cpp | 4 ++ src/slic3r/Utils/ESP3D.cpp | 3 ++ src/slic3r/Utils/ElegooLink.cpp | 18 ++++++++ src/slic3r/Utils/ElegooLink.hpp | 3 ++ src/slic3r/Utils/EmbossStyleManager.cpp | 22 ++++++++++ src/slic3r/Utils/EmbossStyleManager.hpp | 4 ++ src/slic3r/Utils/FileHelp.cpp | 5 +++ src/slic3r/Utils/FileTransferUtils.cpp | 6 +++ src/slic3r/Utils/FixModelByCgal.cpp | 12 ++++++ src/slic3r/Utils/FixModelByCgal.hpp | 1 + src/slic3r/Utils/FlashAir.cpp | 3 ++ src/slic3r/Utils/Flashforge.cpp | 18 ++++++++ src/slic3r/Utils/FontConfigHelp.cpp | 7 +++ src/slic3r/Utils/FontConfigHelp.hpp | 1 + src/slic3r/Utils/HexFile.cpp | 6 +++ src/slic3r/Utils/Http.cpp | 16 +++++++ src/slic3r/Utils/Http.hpp | 2 + src/slic3r/Utils/InstanceID.cpp | 3 ++ src/slic3r/Utils/MKS.cpp | 4 ++ src/slic3r/Utils/MeshInspect.cpp | 6 +++ src/slic3r/Utils/MeshInspect.hpp | 1 + src/slic3r/Utils/Moonraker.cpp | 5 +++ src/slic3r/Utils/MoonrakerPrinterAgent.cpp | 27 ++++++++++++ src/slic3r/Utils/MoonrakerPrinterAgent.hpp | 5 +++ src/slic3r/Utils/NetworkAgent.cpp | 13 ++++++ src/slic3r/Utils/NetworkAgent.hpp | 3 ++ src/slic3r/Utils/NetworkAgentFactory.cpp | 6 +++ src/slic3r/Utils/NetworkAgentFactory.hpp | 2 + src/slic3r/Utils/Obico.cpp | 6 +++ src/slic3r/Utils/OctoPrint.cpp | 10 +++++ src/slic3r/Utils/OctoPrint.hpp | 1 + src/slic3r/Utils/OrcaCloudServiceAgent.cpp | 20 +++++++++ src/slic3r/Utils/OrcaCloudServiceAgent.hpp | 4 ++ src/slic3r/Utils/OrcaPrinterAgent.cpp | 5 +++ src/slic3r/Utils/OrcaPrinterAgent.hpp | 1 + src/slic3r/Utils/PaintCLI.cpp | 4 ++ src/slic3r/Utils/PresetUpdater.cpp | 13 ++++++ src/slic3r/Utils/PresetUpdater.hpp | 1 + src/slic3r/Utils/PrintHost.cpp | 13 ++++++ src/slic3r/Utils/PrintHost.hpp | 2 + src/slic3r/Utils/Process.cpp | 6 +++ src/slic3r/Utils/QidiPrinterAgent.cpp | 9 ++++ src/slic3r/Utils/QidiPrinterAgent.hpp | 1 + src/slic3r/Utils/RaycastManager.cpp | 12 ++++++ src/slic3r/Utils/RaycastManager.hpp | 5 +++ src/slic3r/Utils/Repetier.cpp | 7 +++ src/slic3r/Utils/Serial.cpp | 12 ++++++ src/slic3r/Utils/Serial.hpp | 3 ++ src/slic3r/Utils/SimplyPrint.cpp | 26 +++++++++++ src/slic3r/Utils/SimplyPrint.hpp | 5 +++ src/slic3r/Utils/SnapmakerPrinterAgent.cpp | 7 +++ src/slic3r/Utils/SnapmakerPrinterAgent.hpp | 1 + src/slic3r/Utils/TCPConsole.cpp | 7 +++ src/slic3r/Utils/TCPConsole.hpp | 4 ++ src/slic3r/Utils/UltiMaker.cpp | 10 +++++ src/slic3r/Utils/UndoRedo.cpp | 11 +++++ src/slic3r/Utils/UndoRedo.hpp | 3 ++ src/slic3r/Utils/WebSocketClient.hpp | 9 ++++ src/slic3r/Utils/WxFontUtils.cpp | 9 ++++ src/slic3r/Utils/WxFontUtils.hpp | 2 + src/slic3r/Utils/bambu_networking.hpp | 1 + src/slic3r/Utils/minilzo_extension.cpp | 1 + .../CustomWidgetsPlugin.cpp | 8 ++++ .../CustomWidgetsPlugin.hpp | 4 ++ .../wxInspectorPlugins/DPIAwarePlugin.cpp | 7 +++ .../wxInspectorPlugins/DPIAwarePlugin.hpp | 4 ++ src/slic3r/plugin/CloudPluginService.cpp | 4 ++ src/slic3r/plugin/PluginAuditManager.cpp | 9 ++++ src/slic3r/plugin/PluginAuditManager.hpp | 1 + src/slic3r/plugin/PluginBindingUtils.hpp | 3 ++ src/slic3r/plugin/PluginConfig.cpp | 14 ++++++ src/slic3r/plugin/PluginConfig.hpp | 1 + src/slic3r/plugin/PluginDescriptor.hpp | 1 + src/slic3r/plugin/PluginFsUtils.cpp | 8 ++++ src/slic3r/plugin/PluginFsUtils.hpp | 2 + src/slic3r/plugin/PluginHooks.cpp | 3 ++ src/slic3r/plugin/PluginLoader.cpp | 17 ++++++++ src/slic3r/plugin/PluginManager.cpp | 11 +++++ src/slic3r/plugin/PluginManager.hpp | 4 ++ src/slic3r/plugin/PluginResolver.cpp | 6 +++ src/slic3r/plugin/PyPluginTrampoline.hpp | 5 +++ src/slic3r/plugin/PythonInterpreter.cpp | 9 ++++ src/slic3r/plugin/PythonInterpreter.hpp | 1 + src/slic3r/plugin/PythonPluginBridge.cpp | 6 +++ src/slic3r/plugin/host/PluginHost.cpp | 2 + src/slic3r/plugin/host/PluginHostApp.cpp | 3 ++ src/slic3r/plugin/host/PluginHostGeometry.cpp | 8 ++++ src/slic3r/plugin/host/PluginHostMesh.cpp | 7 +++ src/slic3r/plugin/host/PluginHostModel.cpp | 4 ++ src/slic3r/plugin/host/PluginHostPresets.cpp | 5 +++ src/slic3r/plugin/host/PluginHostSlicing.cpp | 7 +++ src/slic3r/plugin/host/PluginHostUi.cpp | 11 +++++ src/slic3r/plugin/host/PluginPages.cpp | 14 ++++++ src/slic3r/plugin/host/PluginPages.hpp | 1 + .../pages/PagesPluginCapability.cpp | 7 +++ .../pages/PagesPluginCapabilityTrampoline.hpp | 6 +++ .../PrinterAgentPluginCapability.cpp | 5 +++ .../PrinterAgentPluginCapability.hpp | 2 + ...PrinterAgentPluginCapabilityTrampoline.hpp | 7 +++ .../script/ScriptPluginCapability.cpp | 2 + .../script/ScriptPluginCapability.hpp | 1 + .../ScriptPluginCapabilityTrampoline.hpp | 2 + .../SlicingPipelinePluginCapability.cpp | 7 +++ .../SlicingPipelinePluginCapability.hpp | 1 + ...cingPipelinePluginCapabilityTrampoline.hpp | 2 + tests/fff_print/test_cooling.cpp | 6 +++ tests/fff_print/test_extrusion_entity.cpp | 5 +++ tests/fff_print/test_extrusion_processor.cpp | 14 ++++++ tests/fff_print/test_fill.cpp | 22 ++++++++++ tests/fff_print/test_flow.cpp | 3 ++ tests/fff_print/test_gcode_timing.cpp | 8 ++++ tests/fff_print/test_gcodeprocessor.cpp | 2 + tests/fff_print/test_gcodewriter.cpp | 14 ++++++ tests/fff_print/test_helpers.cpp | 13 ++++++ tests/fff_print/test_helpers.hpp | 4 ++ tests/fff_print/test_mixed_filament.cpp | 11 +++++ tests/fff_print/test_model.cpp | 7 +++ tests/fff_print/test_multifilament.cpp | 8 ++++ tests/fff_print/test_perimeters.cpp | 12 ++++++ tests/fff_print/test_precise_seam.cpp | 15 +++++++ tests/fff_print/test_print.cpp | 14 ++++++ tests/fff_print/test_printobject.cpp | 19 ++++++++ tests/fff_print/test_seam_placer.cpp | 15 +++++++ tests/fff_print/test_skirt_brim.cpp | 16 +++++++ .../fff_print/test_slicing_pipeline_hook.cpp | 10 +++++ tests/fff_print/test_support_material.cpp | 16 +++++++ tests/fff_print/test_texture_displacement.cpp | 12 ++++++ tests/fff_print/test_tree_support.cpp | 8 ++++ tests/fff_print/test_trianglemesh.cpp | 7 +++ tests/fff_print/test_wipe.cpp | 16 +++++++ tests/fff_print/test_wipe_tower.cpp | 15 +++++++ tests/filament_group/fg_test_evaluator.hpp | 5 +++ .../filament_group/fg_test_serialization.hpp | 2 + tests/filament_group/fg_test_utils.hpp | 7 +++ .../filament_group_regression_main.cpp | 6 +++ tests/libnest2d/libnest2d_test_utils.hpp | 3 ++ tests/libnest2d/libnest2d_tests.cpp | 5 +++ tests/libnest2d/printer_parts.hpp | 1 + tests/libnest2d/test_geometry.cpp | 19 ++++++++ tests/libnest2d/test_nfp.cpp | 12 ++++++ tests/libnest2d/test_nfp_placer.cpp | 8 ++++ tests/libslic3r/libslic3r_tests.cpp | 5 +++ tests/libslic3r/test_3mf.cpp | 18 ++++++++ tests/libslic3r/test_aabbindirect.cpp | 5 +++ tests/libslic3r/test_appconfig.cpp | 1 + tests/libslic3r/test_arachne_walls.cpp | 11 +++++ tests/libslic3r/test_arrange.cpp | 14 ++++++ tests/libslic3r/test_bambu_networking.cpp | 1 + tests/libslic3r/test_buildvolume.cpp | 5 +++ tests/libslic3r/test_caddocument.cpp | 19 ++++++++ tests/libslic3r/test_calib.cpp | 4 ++ tests/libslic3r/test_clipper_offset.cpp | 7 +++ tests/libslic3r/test_clipper_utils.cpp | 8 ++++ tests/libslic3r/test_config.cpp | 12 ++++++ .../test_config_variant_expansion.cpp | 10 +++++ tests/libslic3r/test_drc.cpp | 9 ++++ .../test_elephant_foot_compensation.cpp | 4 ++ tests/libslic3r/test_filament_mixer.cpp | 8 ++++ .../libslic3r/test_fill_corner_smoothing.cpp | 4 ++ tests/libslic3r/test_fill_plane_path.cpp | 9 ++++ tests/libslic3r/test_geometry.cpp | 10 +++++ tests/libslic3r/test_hollowing.cpp | 3 ++ tests/libslic3r/test_indexed_triangle_set.cpp | 9 ++++ tests/libslic3r/test_instance_lock.cpp | 2 + tests/libslic3r/test_lay_on_face.cpp | 10 +++++ tests/libslic3r/test_locales_utils.cpp | 2 + tests/libslic3r/test_marchingsquares.cpp | 22 ++++++++++ tests/libslic3r/test_meshboolean.cpp | 2 + .../libslic3r/test_minimum_spanning_tree.cpp | 4 ++ tests/libslic3r/test_miniz_extension.cpp | 10 +++++ tests/libslic3r/test_model.cpp | 5 +++ .../test_multimaterial_segmentation.cpp | 6 +++ tests/libslic3r/test_mutable_polygon.cpp | 4 ++ .../libslic3r/test_mutable_priority_queue.cpp | 7 +++ tests/libslic3r/test_nozzle_volume_type.cpp | 4 ++ tests/libslic3r/test_obj.cpp | 7 +++ tests/libslic3r/test_optimizers.cpp | 4 ++ tests/libslic3r/test_ordering_strategies.cpp | 8 ++++ tests/libslic3r/test_parallel_resolve.cpp | 2 + tests/libslic3r/test_placeholder_parser.cpp | 7 +++ tests/libslic3r/test_polygon.cpp | 4 ++ tests/libslic3r/test_precise_seam_3mf.cpp | 11 +++++ .../libslic3r/test_preset_bundle_loading.cpp | 23 ++++++++++ tests/libslic3r/test_preset_diff.cpp | 6 +++ tests/libslic3r/test_preset_options.cpp | 4 ++ tests/libslic3r/test_preset_setting_id.cpp | 3 ++ tests/libslic3r/test_sketchconstraints.cpp | 7 +++ tests/libslic3r/test_sketchedit.cpp | 7 +++ tests/libslic3r/test_sketchimport.cpp | 6 +++ tests/libslic3r/test_sketchinference.cpp | 5 +++ tests/libslic3r/test_sketchprofile.cpp | 8 ++++ tests/libslic3r/test_slvs_constraints.cpp | 5 +++ tests/libslic3r/test_step.cpp | 4 ++ tests/libslic3r/test_stl.cpp | 3 ++ tests/libslic3r/test_texture_displacement.cpp | 23 ++++++++++ tests/libslic3r/test_timeutils.cpp | 3 ++ .../test_toolordering_nozzle_group.cpp | 8 ++++ tests/libslic3r/test_triangle_selector.cpp | 7 +++ tests/libslic3r/test_utils.cpp | 13 ++++++ tests/libslic3r/test_vendor_cache.cpp | 15 +++++++ tests/libslic3r/test_voronoi.cpp | 11 +++++ tests/libslic3r/test_wipe_path.cpp | 10 +++++ tests/libslic3r/test_wipe_tower.cpp | 10 +++++ tests/libslic3r/test_wipe_tower_estimate.cpp | 11 +++++ tests/sla_print/sla_print_tests.cpp | 20 +++++++++ tests/sla_print/sla_raycast_tests.cpp | 7 +++ tests/sla_print/sla_supptgen_tests.cpp | 13 ++++++ tests/sla_print/sla_test_utils.cpp | 31 +++++++++++++ tests/sla_print/sla_test_utils.hpp | 15 +++++++ tests/slic3rutils/plugin_test_utils.hpp | 1 + tests/slic3rutils/python_test_support.hpp | 2 + tests/slic3rutils/slic3rutils_tests_main.cpp | 1 + tests/slic3rutils/test_action_source.cpp | 4 ++ tests/slic3rutils/test_bambu_filament_ids.cpp | 2 + tests/slic3rutils/test_creality_cfs_match.cpp | 2 + tests/slic3rutils/test_dev_mapping.cpp | 6 +++ .../test_device_manager_integration.cpp | 3 ++ tests/slic3rutils/test_device_progress.cpp | 3 ++ .../test_filament_bitmap_utils.cpp | 6 +++ tests/slic3rutils/test_file_url.cpp | 3 ++ tests/slic3rutils/test_lazy.cpp | 3 ++ tests/slic3rutils/test_network_versions.cpp | 5 +++ tests/slic3rutils/test_orca_cloud_agent.cpp | 3 ++ tests/slic3rutils/test_plugin_audit.cpp | 4 ++ .../test_plugin_capabilities_in_use.cpp | 2 + .../test_plugin_capability_config.cpp | 5 +++ .../test_plugin_cloud_metadata.cpp | 5 +++ tests/slic3rutils/test_plugin_config.cpp | 5 +++ tests/slic3rutils/test_plugin_host_api.cpp | 8 ++++ tests/slic3rutils/test_plugin_install.cpp | 6 +++ tests/slic3rutils/test_plugin_lifecycle.cpp | 8 ++++ .../slic3rutils/test_plugin_printer_agent.cpp | 5 +++ tests/slic3rutils/test_plugin_sort.cpp | 3 ++ tests/slic3rutils/test_plugin_status.cpp | 1 + tests/slic3rutils/test_prebuild_queue.cpp | 2 + .../slic3rutils/test_precise_seam_plugin.cpp | 4 ++ tests/slic3rutils/test_printer_agent.cpp | 6 +++ tests/slic3rutils/test_printhost.cpp | 8 ++++ tests/slic3rutils/test_scene_raycaster.cpp | 10 +++++ tests/slic3rutils/test_shortcuts.cpp | 6 +++ .../test_slicing_pipeline_bindings.cpp | 14 ++++++ .../test_slicing_pipeline_config.cpp | 13 ++++++ tests/slic3rutils/test_staged_build.cpp | 1 + tests/slic3rutils/test_user_manager.cpp | 2 + .../slic3rutils/test_web_media_controller.cpp | 8 ++++ tests/test_utils.hpp | 3 ++ 384 files changed, 2308 insertions(+), 3 deletions(-) mode change 100755 => 100644 src/slic3r/Utils/3DPrinterOS.cpp mode change 100755 => 100644 src/slic3r/Utils/3DPrinterOS.hpp diff --git a/.clang-tidy b/.clang-tidy index a670e9e1b1..f45561badb 100644 --- a/.clang-tidy +++ b/.clang-tidy @@ -7,9 +7,15 @@ CheckOptions: misc-include-cleaner.UnusedIncludes: false # Headers that declare a symbol but are not the one to include: per-platform # implementations of wxWidgets and Boost.Thread (a Linux run would suggest the - # GTK or pthread one), library internals and forward declarations, CPython's - # headers behind Python.h, curl's behind curl.h, oneTBB's behind tbb/, and + # GTK or pthread one), library internals and forward declarations (MSVC's STL + # __msvc_* and the Windows UCRT's corecrt_* included), CPython's headers behind + # Python.h (python3.x/ on Linux and macOS, libpython/include/ on Windows), + # curl's behind curl.h, oneTBB's behind tbb/, and # admesh's stl.h, which the include path also exposes without its directory. + # Clipper's own clipper.hpp is only included through libslic3r/clipper.hpp or + # clipper_z.hpp, which configure it first, and Boost.Polygon's headers only + # work through boost/polygon/polygon.hpp or voronoi.hpp. minilzo's config + # headers are internal to minilzo.h. # FFmpeg's C headers are left alone because they are only included inside # extern "C", which an inserted include would miss. OS-specific headers (GLib, # GTK, D-Bus, POSIX, the Windows SDK) are only used inside platform #if blocks, @@ -23,7 +29,11 @@ CheckOptions: .*[/\\]impl[/\\].*; .*_fwd\.hpp; python3\.[0-9]+[/\\].*; + libpython[/\\]include[/\\].*; bits[/\\].*; + corecrt_.*\.h; + __msvc_.*\.hpp; + boost[/\\]multiprecision[/\\]fwd\.hpp; imconfig\.h; expat_external\.h; admesh[/\\]stl\.h; @@ -44,4 +54,9 @@ CheckOptions: fcntl\.h; termios\.h; [/\\](um|shared)[/\\].*; - sal\.h + sal\.h; + clipper[/\\]clipper\.hpp; + png(lib)?conf\.h; + mcut[/\\]platform\.h; + boost[/\\]polygon[/\\].*; + lzo(conf|defs)\.h diff --git a/src/OrcaSlicer.cpp b/src/OrcaSlicer.cpp index 87352f505e..992a9c9bc2 100644 --- a/src/OrcaSlicer.cpp +++ b/src/OrcaSlicer.cpp @@ -20,6 +20,49 @@ #endif /* SLIC3R_GUI */ #endif /* WIN32 */ +#include +#include +#include "libslic3r/PrintBase.hpp" +#include "slic3r/Utils/json_diff.hpp" +#include +#include +#include +#include +#include +#include "libslic3r/LocalesUtils.hpp" +#include +#include +#include +#include "libslic3r/Color.hpp" +#include "libslic3r/TriangleSelector.hpp" +#include +#include "libslic3r/Format/bbs_3mf.hpp" +#include +#include +#include +#include "libslic3r/Point.hpp" +#include "libslic3r_version.h" +#include "libslic3r/Semver.hpp" +#include "libslic3r/PrintConfig.hpp" +#include "libslic3r/BoundingBox.hpp" +#include "libslic3r/CustomGCode.hpp" +#include +#include +#include +#include +#include "libslic3r/ClipperUtils.hpp" +#include "libslic3r/GCode/WipeTowerEstimate.hpp" +#include "slic3r/GUI/Gizmos/GLGizmoBase.hpp" +#include +#include "libslic3r/Arrange.hpp" +#include "libslic3r/Polygon.hpp" +#include "libslic3r/GCode/ThumbnailData.hpp" +#include "slic3r/GUI/3DScene.hpp" +#include "slic3r/GUI/GLShader.hpp" +#include +#include +#include + #include #include #include diff --git a/src/OrcaSlicer.hpp b/src/OrcaSlicer.hpp index 380607e95f..9aceee4a20 100644 --- a/src/OrcaSlicer.hpp +++ b/src/OrcaSlicer.hpp @@ -1,7 +1,14 @@ #ifndef SLIC3R_HPP #define SLIC3R_HPP +#include +#include "libslic3r/BoundingBox.hpp" +#include "libslic3r/PrintConfig.hpp" +#include "libslic3r/Format/bbs_3mf.hpp" +#include "libslic3r/GCode/ThumbnailData.hpp" #include +#include +#include #include "libslic3r/Config.hpp" #include "libslic3r/Model.hpp" diff --git a/src/dev-utils/OrcaSlicer_profile_validator.cpp b/src/dev-utils/OrcaSlicer_profile_validator.cpp index c328c565c8..bbfa53c262 100644 --- a/src/dev-utils/OrcaSlicer_profile_validator.cpp +++ b/src/dev-utils/OrcaSlicer_profile_validator.cpp @@ -8,6 +8,28 @@ #define NANOSVGRAST_IMPLEMENTATION #include "nanosvg/nanosvgrast.h" +#include +#include +#include +#include "libslic3r/Point.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/Polygon.hpp" +#include "libslic3r/PrintConfig.hpp" +#include +#include "libslic3r/CustomGCode.hpp" +#include +#include +#include +#include +#include +#include +#include +#include "libslic3r/PlaceholderParser.hpp" +#include +#include +#include +#include + #include "libslic3r/BoundingBox.hpp" #include "libslic3r/GCode.hpp" #include "libslic3r/GCode/WipeTower.hpp" diff --git a/src/dev-utils/encoding-check.cpp b/src/dev-utils/encoding-check.cpp index 2a645e2ab2..0eb390f161 100644 --- a/src/dev-utils/encoding-check.cpp +++ b/src/dev-utils/encoding-check.cpp @@ -1,3 +1,4 @@ +#include #include #include #include diff --git a/src/dev-utils/generate_system_cache.cpp b/src/dev-utils/generate_system_cache.cpp index 017db79836..7baa11a8a0 100644 --- a/src/dev-utils/generate_system_cache.cpp +++ b/src/dev-utils/generate_system_cache.cpp @@ -4,9 +4,19 @@ #include #include +#include +#include #include #include +#include +#include +#include +#include +#include +#include #include +#include +#include "libslic3r/Config.hpp" using namespace Slic3r; namespace fs = boost::filesystem; diff --git a/src/dev-utils/profile_include_dump.cpp b/src/dev-utils/profile_include_dump.cpp index f2486dedfc..6561027f70 100644 --- a/src/dev-utils/profile_include_dump.cpp +++ b/src/dev-utils/profile_include_dump.cpp @@ -11,13 +11,19 @@ #include "libslic3r/Utils.hpp" #include +#include +#include #include #include "nlohmann/json.hpp" #include +#include +#include #include +#include "libslic3r/Config.hpp" #include #include +#include #include #include diff --git a/src/libvgcode/include/ColorPrint.hpp b/src/libvgcode/include/ColorPrint.hpp index 071b93a708..bbae9284a5 100644 --- a/src/libvgcode/include/ColorPrint.hpp +++ b/src/libvgcode/include/ColorPrint.hpp @@ -6,6 +6,8 @@ #define VGCODE_COLORPRINT_HPP #include "../include/Types.hpp" +#include +#include namespace libvgcode { diff --git a/src/libvgcode/include/ColorRange.hpp b/src/libvgcode/include/ColorRange.hpp index e6c83cb21d..ce34c3de7b 100644 --- a/src/libvgcode/include/ColorRange.hpp +++ b/src/libvgcode/include/ColorRange.hpp @@ -7,7 +7,10 @@ #include "../include/Types.hpp" +#include #include +#include +#include namespace libvgcode { diff --git a/src/libvgcode/include/GCodeInputData.hpp b/src/libvgcode/include/GCodeInputData.hpp index 5085322e37..a0057230e7 100644 --- a/src/libvgcode/include/GCodeInputData.hpp +++ b/src/libvgcode/include/GCodeInputData.hpp @@ -6,6 +6,8 @@ #define VGCODE_GCODEINPUTDATA_HPP #include "PathVertex.hpp" +#include +#include "Types.hpp" namespace libvgcode { diff --git a/src/libvgcode/include/PathVertex.hpp b/src/libvgcode/include/PathVertex.hpp index f5704d5376..8f24d6a440 100644 --- a/src/libvgcode/include/PathVertex.hpp +++ b/src/libvgcode/include/PathVertex.hpp @@ -7,7 +7,9 @@ #include "Types.hpp" +#include #include +#include namespace libvgcode { diff --git a/src/libvgcode/include/Types.hpp b/src/libvgcode/include/Types.hpp index 099f622dc3..1c3b50208a 100644 --- a/src/libvgcode/include/Types.hpp +++ b/src/libvgcode/include/Types.hpp @@ -5,6 +5,7 @@ #ifndef VGCODE_TYPES_HPP #define VGCODE_TYPES_HPP +#include #define VGCODE_ENABLE_COG_AND_TOOL_MARKERS 0 #include diff --git a/src/libvgcode/include/Viewer.hpp b/src/libvgcode/include/Viewer.hpp index 458bc4b69f..a714bf1756 100644 --- a/src/libvgcode/include/Viewer.hpp +++ b/src/libvgcode/include/Viewer.hpp @@ -7,7 +7,10 @@ #include "Types.hpp" +#include +#include #include +#include namespace libvgcode { diff --git a/src/libvgcode/src/Bitset.hpp b/src/libvgcode/src/Bitset.hpp index eebe297262..75dbe5580b 100644 --- a/src/libvgcode/src/Bitset.hpp +++ b/src/libvgcode/src/Bitset.hpp @@ -6,6 +6,9 @@ #define VGCODE_BITSET_HPP #include +#include +#include +#include #include namespace libvgcode { diff --git a/src/libvgcode/src/ColorRange.cpp b/src/libvgcode/src/ColorRange.cpp index 1ba0dfc526..86a034fffe 100644 --- a/src/libvgcode/src/ColorRange.cpp +++ b/src/libvgcode/src/ColorRange.cpp @@ -7,8 +7,13 @@ #include "Utils.hpp" #include +#include #include +#include #include +#include "../include/Types.hpp" +#include +#include namespace libvgcode { diff --git a/src/libvgcode/src/ExtrusionRoles.cpp b/src/libvgcode/src/ExtrusionRoles.cpp index e38886c57b..bac4eac60e 100644 --- a/src/libvgcode/src/ExtrusionRoles.cpp +++ b/src/libvgcode/src/ExtrusionRoles.cpp @@ -3,6 +3,11 @@ ///|/ libvgcode is released under the terms of the AGPLv3 or higher ///|/ #include "ExtrusionRoles.hpp" +#include "../include/Types.hpp" +#include +#include +#include +#include namespace libvgcode { diff --git a/src/libvgcode/src/ExtrusionRoles.hpp b/src/libvgcode/src/ExtrusionRoles.hpp index ee949fbf0d..5ab06cef94 100644 --- a/src/libvgcode/src/ExtrusionRoles.hpp +++ b/src/libvgcode/src/ExtrusionRoles.hpp @@ -7,7 +7,10 @@ #include "../include/Types.hpp" +#include +#include #include +#include namespace libvgcode { diff --git a/src/libvgcode/src/Layers.cpp b/src/libvgcode/src/Layers.cpp index 16a2e38fcd..5e52bc7aa9 100644 --- a/src/libvgcode/src/Layers.cpp +++ b/src/libvgcode/src/Layers.cpp @@ -9,6 +9,11 @@ #include #include +#include "../include/Types.hpp" +#include +#include +#include +#include namespace libvgcode { diff --git a/src/libvgcode/src/Layers.hpp b/src/libvgcode/src/Layers.hpp index bf3386016c..e55d1f04af 100644 --- a/src/libvgcode/src/Layers.hpp +++ b/src/libvgcode/src/Layers.hpp @@ -6,6 +6,11 @@ #define VGCODE_LAYERS_HPP #include "Range.hpp" +#include +#include +#include "../include/Types.hpp" +#include +#include namespace libvgcode { diff --git a/src/libvgcode/src/OpenGLUtils.cpp b/src/libvgcode/src/OpenGLUtils.cpp index bc39b29a4d..c6617af506 100644 --- a/src/libvgcode/src/OpenGLUtils.cpp +++ b/src/libvgcode/src/OpenGLUtils.cpp @@ -10,6 +10,7 @@ #include #include #include +#include namespace libvgcode { diff --git a/src/libvgcode/src/OptionTemplate.cpp b/src/libvgcode/src/OptionTemplate.cpp index 316897ad3b..cc2b39a5ec 100644 --- a/src/libvgcode/src/OptionTemplate.cpp +++ b/src/libvgcode/src/OptionTemplate.cpp @@ -6,6 +6,9 @@ #include "OpenGLUtils.hpp" #include "Utils.hpp" +#include +#include "../include/Types.hpp" +#include #include #include #include diff --git a/src/libvgcode/src/PathVertex.cpp b/src/libvgcode/src/PathVertex.cpp index ed1569bc36..e157f20ff7 100644 --- a/src/libvgcode/src/PathVertex.cpp +++ b/src/libvgcode/src/PathVertex.cpp @@ -3,6 +3,7 @@ ///|/ libvgcode is released under the terms of the AGPLv3 or higher ///|/ #include "../include/PathVertex.hpp" +#include "../include/Types.hpp" namespace libvgcode { diff --git a/src/libvgcode/src/Range.cpp b/src/libvgcode/src/Range.cpp index 4d8df12f3d..5ef4570d1f 100644 --- a/src/libvgcode/src/Range.cpp +++ b/src/libvgcode/src/Range.cpp @@ -5,6 +5,7 @@ #include "Range.hpp" #include +#include "../include/Types.hpp" namespace libvgcode { diff --git a/src/libvgcode/src/SegmentTemplate.cpp b/src/libvgcode/src/SegmentTemplate.cpp index 9d9872aa3b..f925e0a860 100644 --- a/src/libvgcode/src/SegmentTemplate.cpp +++ b/src/libvgcode/src/SegmentTemplate.cpp @@ -5,6 +5,7 @@ #include "SegmentTemplate.hpp" #include "OpenGLUtils.hpp" +#include #include #include diff --git a/src/libvgcode/src/Settings.hpp b/src/libvgcode/src/Settings.hpp index b3aa371c4a..fe205531f2 100644 --- a/src/libvgcode/src/Settings.hpp +++ b/src/libvgcode/src/Settings.hpp @@ -7,6 +7,8 @@ #include "../include/Types.hpp" +#include +#include #include namespace libvgcode { diff --git a/src/libvgcode/src/ToolMarker.cpp b/src/libvgcode/src/ToolMarker.cpp index 3e595faec0..f4447fe9ad 100644 --- a/src/libvgcode/src/ToolMarker.cpp +++ b/src/libvgcode/src/ToolMarker.cpp @@ -7,6 +7,7 @@ #include "Utils.hpp" #include +#include "../include/Types.hpp" #if VGCODE_ENABLE_COG_AND_TOOL_MARKERS diff --git a/src/libvgcode/src/Types.cpp b/src/libvgcode/src/Types.cpp index 2aa8a40e9d..1badfae81b 100644 --- a/src/libvgcode/src/Types.cpp +++ b/src/libvgcode/src/Types.cpp @@ -5,6 +5,7 @@ #include "../include/Types.hpp" #include +#include namespace libvgcode { diff --git a/src/libvgcode/src/Utils.cpp b/src/libvgcode/src/Utils.cpp index aee2cd4875..46ed6a336c 100644 --- a/src/libvgcode/src/Utils.cpp +++ b/src/libvgcode/src/Utils.cpp @@ -6,6 +6,9 @@ #include #include +#include "../include/Types.hpp" +#include +#include namespace libvgcode { diff --git a/src/libvgcode/src/Utils.hpp b/src/libvgcode/src/Utils.hpp index 84c3deb3c5..4db67e426f 100644 --- a/src/libvgcode/src/Utils.hpp +++ b/src/libvgcode/src/Utils.hpp @@ -6,6 +6,8 @@ #define VGCODE_UTILS_HPP #include "../include/Types.hpp" +#include +#include #ifdef _WIN32 #define STDVEC_MEMSIZE(NAME, TYPE) NAME.capacity() * ((sizeof(TYPE) + __alignof(TYPE) - 1) / __alignof(TYPE)) * __alignof(TYPE) diff --git a/src/libvgcode/src/ViewRange.cpp b/src/libvgcode/src/ViewRange.cpp index ea2f1e916e..b5657da1b7 100644 --- a/src/libvgcode/src/ViewRange.cpp +++ b/src/libvgcode/src/ViewRange.cpp @@ -3,6 +3,7 @@ ///|/ libvgcode is released under the terms of the AGPLv3 or higher ///|/ #include "ViewRange.hpp" +#include "../include/Types.hpp" namespace libvgcode { diff --git a/src/libvgcode/src/ViewRange.hpp b/src/libvgcode/src/ViewRange.hpp index b9356fc760..7d5f9eb32e 100644 --- a/src/libvgcode/src/ViewRange.hpp +++ b/src/libvgcode/src/ViewRange.hpp @@ -6,6 +6,7 @@ #define VGCODE_VIEWRANGE_HPP #include "Range.hpp" +#include "../include/Types.hpp" namespace libvgcode { diff --git a/src/libvgcode/src/Viewer.cpp b/src/libvgcode/src/Viewer.cpp index 089f1f7e7b..b082a6e29d 100644 --- a/src/libvgcode/src/Viewer.cpp +++ b/src/libvgcode/src/Viewer.cpp @@ -4,6 +4,12 @@ ///|/ #include "../include/Viewer.hpp" #include "ViewerImpl.hpp" +#include +#include +#include "../include/Types.hpp" +#include +#include +#include namespace libvgcode { diff --git a/src/libvgcode/src/ViewerImpl.cpp b/src/libvgcode/src/ViewerImpl.cpp index ee38594817..8dc908d6d8 100644 --- a/src/libvgcode/src/ViewerImpl.cpp +++ b/src/libvgcode/src/ViewerImpl.cpp @@ -9,14 +9,26 @@ #include "OpenGLUtils.hpp" #include "Utils.hpp" +#include +#include "../include/Types.hpp" +#include +#include "../include/PathVertex.hpp" +#include "Bitset.hpp" +#include "../include/ColorPrint.hpp" +#include +#include #include #include +#include #include #include #include #include #include #include +#include +#include +#include namespace libvgcode { diff --git a/src/libvgcode/src/ViewerImpl.hpp b/src/libvgcode/src/ViewerImpl.hpp index 335fb5ef52..0877e6265b 100644 --- a/src/libvgcode/src/ViewerImpl.hpp +++ b/src/libvgcode/src/ViewerImpl.hpp @@ -8,6 +8,12 @@ #include "Settings.hpp" #include "SegmentTemplate.hpp" #include "OptionTemplate.hpp" +#include "../include/Types.hpp" +#include +#include +#include +#include +#include #if VGCODE_ENABLE_COG_AND_TOOL_MARKERS #include "CogMarker.hpp" #include "ToolMarker.hpp" diff --git a/src/slic3r/Config/Snapshot.cpp b/src/slic3r/Config/Snapshot.cpp index a7135eac6f..cf568432dc 100644 --- a/src/slic3r/Config/Snapshot.cpp +++ b/src/slic3r/Config/Snapshot.cpp @@ -1,5 +1,21 @@ #include "Snapshot.hpp" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "libslic3r/Exception.hpp" +#include "slic3r/Config/Version.hpp" +#include #include #include @@ -26,7 +42,10 @@ #include "../GUI/MainFrame.hpp" #include "../GUI/MsgDialog.hpp" +#include +#include #include +#include #define SLIC3R_SNAPSHOTS_DIR "snapshots" #define SLIC3R_SNAPSHOT_FILE "snapshot.ini" diff --git a/src/slic3r/Config/Snapshot.hpp b/src/slic3r/Config/Snapshot.hpp index f453006338..96a0c33771 100644 --- a/src/slic3r/Config/Snapshot.hpp +++ b/src/slic3r/Config/Snapshot.hpp @@ -1,6 +1,8 @@ #ifndef slic3r_GUI_Snapshot_ #define slic3r_GUI_Snapshot_ +#include +#include #include #include #include diff --git a/src/slic3r/Config/Version.cpp b/src/slic3r/Config/Version.cpp index 092594ce51..f25577c9dc 100644 --- a/src/slic3r/Config/Version.cpp +++ b/src/slic3r/Config/Version.cpp @@ -1,9 +1,21 @@ #include "Version.hpp" +#include +#include +#include +#include #include #include #include +#include "libslic3r/Semver.hpp" +#include +#include +#include +#include +#include +#include +#include "libslic3r/Exception.hpp" #include "libslic3r/libslic3r.h" #include "libslic3r/Config.hpp" diff --git a/src/slic3r/Config/Version.hpp b/src/slic3r/Config/Version.hpp index 8249573dec..5e10e9ab95 100644 --- a/src/slic3r/Config/Version.hpp +++ b/src/slic3r/Config/Version.hpp @@ -1,6 +1,7 @@ #ifndef slic3r_GUI_ConfigIndex_ #define slic3r_GUI_ConfigIndex_ +#include #include #include diff --git a/src/slic3r/GUI/2DBed.cpp b/src/slic3r/GUI/2DBed.cpp index 3257d05adc..4bf71c2d50 100644 --- a/src/slic3r/GUI/2DBed.cpp +++ b/src/slic3r/GUI/2DBed.cpp @@ -18,6 +18,7 @@ #include "slic3r/GUI/Gizmos/GLGizmoBase.hpp" #include "slic3r/GUI/Widgets/StateColor.hpp" #include +#include #include #include #include diff --git a/src/slic3r/GUI/AMSMaterialsSetting.cpp b/src/slic3r/GUI/AMSMaterialsSetting.cpp index 08e7d7a056..66e87ac3af 100644 --- a/src/slic3r/GUI/AMSMaterialsSetting.cpp +++ b/src/slic3r/GUI/AMSMaterialsSetting.cpp @@ -12,6 +12,7 @@ #include #include #include +#include #include #include "slic3r/GUI/GUI_Utils.hpp" #include "slic3r/GUI/Widgets/Button.hpp" diff --git a/src/slic3r/GUI/AMSMaterialsSetting.hpp b/src/slic3r/GUI/AMSMaterialsSetting.hpp index 79880a6ec5..0ecc8809be 100644 --- a/src/slic3r/GUI/AMSMaterialsSetting.hpp +++ b/src/slic3r/GUI/AMSMaterialsSetting.hpp @@ -16,6 +16,7 @@ #include "Widgets/TextInput.hpp" #include "Widgets/HyperLink.hpp" #include "slic3r/Utils/CalibUtils.hpp" +#include #include #include #include diff --git a/src/slic3r/GUI/AMSSetting.cpp b/src/slic3r/GUI/AMSSetting.cpp index d967fa37ab..f953dd115a 100644 --- a/src/slic3r/GUI/AMSSetting.cpp +++ b/src/slic3r/GUI/AMSSetting.cpp @@ -12,6 +12,7 @@ #include "slic3r/GUI/Widgets/AnimaController.hpp" #include "slic3r/GUI/Widgets/Label.hpp" #include "slic3r/GUI/Widgets/ComboBox.hpp" +#include #include #include #include "slic3r/GUI/GUI_Utils.hpp" diff --git a/src/slic3r/GUI/AMSSetting.hpp b/src/slic3r/GUI/AMSSetting.hpp index 24467f8d13..1d6b559981 100644 --- a/src/slic3r/GUI/AMSSetting.hpp +++ b/src/slic3r/GUI/AMSSetting.hpp @@ -12,6 +12,7 @@ #include "Widgets/CheckBox.hpp" #include "slic3r/GUI/DeviceCore/DevFilaAmsSetting.h" +#include #include #include #include diff --git a/src/slic3r/GUI/CAD/DesignCanvas.cpp b/src/slic3r/GUI/CAD/DesignCanvas.cpp index 517fbcee63..1abfd81feb 100644 --- a/src/slic3r/GUI/CAD/DesignCanvas.cpp +++ b/src/slic3r/GUI/CAD/DesignCanvas.cpp @@ -18,6 +18,7 @@ #include #include +#include #include #include #include "libslic3r/CAD/SketchEngine.hpp" diff --git a/src/slic3r/GUI/CAD/DesignPanel.cpp b/src/slic3r/GUI/CAD/DesignPanel.cpp index 59e3aaac8e..d61d0aa11f 100644 --- a/src/slic3r/GUI/CAD/DesignPanel.cpp +++ b/src/slic3r/GUI/CAD/DesignPanel.cpp @@ -34,6 +34,7 @@ #include #include #include +#include #include #include #include diff --git a/src/slic3r/GUI/CalibrationPanel.hpp b/src/slic3r/GUI/CalibrationPanel.hpp index f427b37871..adf03e4be9 100644 --- a/src/slic3r/GUI/CalibrationPanel.hpp +++ b/src/slic3r/GUI/CalibrationPanel.hpp @@ -6,6 +6,24 @@ #include "Lazy.hpp" #include "SelectMachinePop.hpp" #include "Widgets/SideTools.hpp" +#include +#include "libslic3r/calib.hpp" +#include +#include "slic3r/GUI/wxExtensions.hpp" +#include "slic3r/GUI/DeviceManager.hpp" +#include +#include +#include +#include "slic3r/GUI/Widgets/PopupWindow.hpp" +#include +#include +#include +#include +#include +#include +#include +#include +#include "slic3r/GUI/StagedBuild.hpp" namespace Slic3r { namespace GUI { diff --git a/src/slic3r/GUI/CapsuleButton.hpp b/src/slic3r/GUI/CapsuleButton.hpp index ac23f174e8..f8afdddabb 100644 --- a/src/slic3r/GUI/CapsuleButton.hpp +++ b/src/slic3r/GUI/CapsuleButton.hpp @@ -3,6 +3,7 @@ #include "wxExtensions.hpp" #include "Widgets/Label.hpp" +#include #include #include #include diff --git a/src/slic3r/GUI/ConfigExceptions.hpp b/src/slic3r/GUI/ConfigExceptions.hpp index 181442d4e3..e3c5b08cea 100644 --- a/src/slic3r/GUI/ConfigExceptions.hpp +++ b/src/slic3r/GUI/ConfigExceptions.hpp @@ -1,4 +1,8 @@ #include +#include + +#include "libslic3r/Exception.hpp" + namespace Slic3r { class ConfigError : public Slic3r::RuntimeError { diff --git a/src/slic3r/GUI/ConfigManipulation.cpp b/src/slic3r/GUI/ConfigManipulation.cpp index 91c5f211e1..48c0cd0d5f 100644 --- a/src/slic3r/GUI/ConfigManipulation.cpp +++ b/src/slic3r/GUI/ConfigManipulation.cpp @@ -24,6 +24,7 @@ #include #include #include +#include namespace Slic3r { namespace GUI { diff --git a/src/slic3r/GUI/DeviceTab/uiAMSBestPositionPopup.cpp b/src/slic3r/GUI/DeviceTab/uiAMSBestPositionPopup.cpp index f02007593a..151d53810b 100644 --- a/src/slic3r/GUI/DeviceTab/uiAMSBestPositionPopup.cpp +++ b/src/slic3r/GUI/DeviceTab/uiAMSBestPositionPopup.cpp @@ -13,6 +13,7 @@ #include "slic3r/GUI/Widgets/StateColor.hpp" +#include #include #include #include diff --git a/src/slic3r/GUI/DeviceTab/uiAMSBestPositionPopup.hpp b/src/slic3r/GUI/DeviceTab/uiAMSBestPositionPopup.hpp index 34cd85e692..dcc7654b41 100644 --- a/src/slic3r/GUI/DeviceTab/uiAMSBestPositionPopup.hpp +++ b/src/slic3r/GUI/DeviceTab/uiAMSBestPositionPopup.hpp @@ -18,6 +18,7 @@ #include "libslic3r/ProjectTask.hpp" #include #include +#include #include #include #include diff --git a/src/slic3r/GUI/DeviceTab/uiAmsHumidityPopup.cpp b/src/slic3r/GUI/DeviceTab/uiAmsHumidityPopup.cpp index 5014743f2d..462fcf892e 100644 --- a/src/slic3r/GUI/DeviceTab/uiAmsHumidityPopup.cpp +++ b/src/slic3r/GUI/DeviceTab/uiAmsHumidityPopup.cpp @@ -14,6 +14,7 @@ #include "slic3r/GUI/Widgets/StateColor.hpp" +#include #include #include "slic3r/GUI/Widgets/Label.hpp" #include diff --git a/src/slic3r/GUI/DeviceTab/wgtDeviceNozzleRack.h b/src/slic3r/GUI/DeviceTab/wgtDeviceNozzleRack.h index 16cd311120..c433973e44 100644 --- a/src/slic3r/GUI/DeviceTab/wgtDeviceNozzleRack.h +++ b/src/slic3r/GUI/DeviceTab/wgtDeviceNozzleRack.h @@ -14,9 +14,16 @@ #include "slic3r/GUI/Widgets/StaticBox.hpp" #include "slic3r/GUI/Widgets/AnimaController.hpp" +#include +#include +#include +#include +#include #include #include #include +#include +#include // Previous definitions class Button; diff --git a/src/slic3r/GUI/ExtrusionCalibration.cpp b/src/slic3r/GUI/ExtrusionCalibration.cpp index e15470e462..a2d14fa370 100644 --- a/src/slic3r/GUI/ExtrusionCalibration.cpp +++ b/src/slic3r/GUI/ExtrusionCalibration.cpp @@ -6,6 +6,7 @@ #include #include "I18N.hpp" #include +#include #include #include "slic3r/GUI/GUI_Utils.hpp" #include "slic3r/GUI/wxExtensions.hpp" diff --git a/src/slic3r/GUI/ExtrusionCalibration.hpp b/src/slic3r/GUI/ExtrusionCalibration.hpp index cbee1b56b1..3b500373da 100644 --- a/src/slic3r/GUI/ExtrusionCalibration.hpp +++ b/src/slic3r/GUI/ExtrusionCalibration.hpp @@ -16,6 +16,7 @@ #include "ParamsDialog.hpp" #include "GUI_App.hpp" #include "wx/hyperlink.h" +#include #include #include #include diff --git a/src/slic3r/GUI/GUI_AuxiliaryList.hpp b/src/slic3r/GUI/GUI_AuxiliaryList.hpp index 8604259371..88bab94a3d 100644 --- a/src/slic3r/GUI/GUI_AuxiliaryList.hpp +++ b/src/slic3r/GUI/GUI_AuxiliaryList.hpp @@ -6,10 +6,14 @@ #include #include +#include #include +#include #include #include #include +#include +#include #include "AuxiliaryDataViewModel.hpp" diff --git a/src/slic3r/GUI/GUI_ObjectList.cpp b/src/slic3r/GUI/GUI_ObjectList.cpp index e2226b3d3e..38633dc86a 100644 --- a/src/slic3r/GUI/GUI_ObjectList.cpp +++ b/src/slic3r/GUI/GUI_ObjectList.cpp @@ -67,6 +67,7 @@ #include #include #include +#include #include #include #include diff --git a/src/slic3r/GUI/GUI_ObjectTableSettings.cpp b/src/slic3r/GUI/GUI_ObjectTableSettings.cpp index fbca655a24..949abfcb13 100644 --- a/src/slic3r/GUI/GUI_ObjectTableSettings.cpp +++ b/src/slic3r/GUI/GUI_ObjectTableSettings.cpp @@ -15,6 +15,7 @@ #include "I18N.hpp" #include "ConfigManipulation.hpp" +#include #include #include #include diff --git a/src/slic3r/GUI/GUI_ObjectTableSettings.hpp b/src/slic3r/GUI/GUI_ObjectTableSettings.hpp index 24e3d427a9..490df76a75 100644 --- a/src/slic3r/GUI/GUI_ObjectTableSettings.hpp +++ b/src/slic3r/GUI/GUI_ObjectTableSettings.hpp @@ -1,15 +1,21 @@ #ifndef slic3r_GUI_ObjectTableSettings_hpp_ #define slic3r_GUI_ObjectTableSettings_hpp_ +#include #include +#include #include +#include #include +#include #include "wxExtensions.hpp" +#include "libslic3r/PrintConfig.hpp" class wxBoxSizer; namespace Slic3r { class DynamicPrintConfig; +class ModelObject; class ModelConfig; namespace GUI { class ConfigOptionsGroup; diff --git a/src/slic3r/GUI/Gizmos/GLGizmoCut.cpp b/src/slic3r/GUI/Gizmos/GLGizmoCut.cpp index ebd0821ded..69999155af 100644 --- a/src/slic3r/GUI/Gizmos/GLGizmoCut.cpp +++ b/src/slic3r/GUI/Gizmos/GLGizmoCut.cpp @@ -32,6 +32,7 @@ #include "slic3r/GUI/3DScene.hpp" #include "libslic3r/Config.hpp" #include "libslic3r/Line.hpp" +#include #include #include "libslic3r/TriangleMesh.hpp" #include "slic3r/GUI/MeshUtils.hpp" diff --git a/src/slic3r/GUI/Gizmos/GLGizmoEmboss.cpp b/src/slic3r/GUI/Gizmos/GLGizmoEmboss.cpp index 5bf94c7d77..38aeb26bdf 100644 --- a/src/slic3r/GUI/Gizmos/GLGizmoEmboss.cpp +++ b/src/slic3r/GUI/Gizmos/GLGizmoEmboss.cpp @@ -75,6 +75,7 @@ #include #include "slic3r/GUI/Jobs/Worker.hpp" #include +#include #ifndef IMGUI_DEFINE_MATH_OPERATORS #define IMGUI_DEFINE_MATH_OPERATORS #endif diff --git a/src/slic3r/GUI/Gizmos/GLGizmoMove.cpp b/src/slic3r/GUI/Gizmos/GLGizmoMove.cpp index bed2c42267..87ffbb762f 100644 --- a/src/slic3r/GUI/Gizmos/GLGizmoMove.cpp +++ b/src/slic3r/GUI/Gizmos/GLGizmoMove.cpp @@ -25,6 +25,7 @@ #include "libslic3r/Geometry.hpp" #include #include "libslic3r/Model.hpp" +#include #include namespace Slic3r { diff --git a/src/slic3r/GUI/Gizmos/GLGizmoScale.cpp b/src/slic3r/GUI/Gizmos/GLGizmoScale.cpp index a223749b6c..56c0944da9 100644 --- a/src/slic3r/GUI/Gizmos/GLGizmoScale.cpp +++ b/src/slic3r/GUI/Gizmos/GLGizmoScale.cpp @@ -24,6 +24,7 @@ #include "slic3r/GUI/GLShader.hpp" #include #include "libslic3r/Geometry.hpp" +#include #include namespace Slic3r { diff --git a/src/slic3r/GUI/Gizmos/GizmoObjectManipulation.hpp b/src/slic3r/GUI/Gizmos/GizmoObjectManipulation.hpp index 84ff8ebe62..e43a129734 100644 --- a/src/slic3r/GUI/Gizmos/GizmoObjectManipulation.hpp +++ b/src/slic3r/GUI/Gizmos/GizmoObjectManipulation.hpp @@ -1,11 +1,16 @@ #ifndef slic3r_GizmoObjectManipulation_hpp_ #define slic3r_GizmoObjectManipulation_hpp_ +#include #include #include "libslic3r/Point.hpp" #include "libslic3r/Geometry.hpp" #include +#include +#include +#include +#include #include "slic3r/GUI/GUI_Geometry.hpp" @@ -14,6 +19,7 @@ namespace Slic3r { namespace GUI { +class ImGuiWrapper; class Selection; class GLCanvas3D; diff --git a/src/slic3r/GUI/Jobs/PlaterWorker.hpp b/src/slic3r/GUI/Jobs/PlaterWorker.hpp index f22bd6d511..9b149ab91b 100644 --- a/src/slic3r/GUI/Jobs/PlaterWorker.hpp +++ b/src/slic3r/GUI/Jobs/PlaterWorker.hpp @@ -1,13 +1,26 @@ #ifndef PLATERWORKER_HPP #define PLATERWORKER_HPP +#include +#include +#include +#include +#include #include #include #include "Worker.hpp" #include "BusyCursorJob.hpp" +#include "slic3r/GUI/Jobs/Job.hpp" +#include +#include +#include +#include +#include + #include "slic3r/GUI/GUI.hpp" +#include "slic3r/GUI/GUI_Utils.hpp" #include "slic3r/GUI/I18N.hpp" namespace Slic3r { namespace GUI { diff --git a/src/slic3r/GUI/Jobs/SLAImportDialog.hpp b/src/slic3r/GUI/Jobs/SLAImportDialog.hpp index 5bb101b74a..68ad749726 100644 --- a/src/slic3r/GUI/Jobs/SLAImportDialog.hpp +++ b/src/slic3r/GUI/Jobs/SLAImportDialog.hpp @@ -3,7 +3,14 @@ #include "SLAImportJob.hpp" +#include +#include +#include "libslic3r/Point.hpp" +#include #include +#include +#include +#include #include #include #include diff --git a/src/slic3r/GUI/KBShortcutsDialog.cpp b/src/slic3r/GUI/KBShortcutsDialog.cpp index 92051d116e..903ce4c43a 100644 --- a/src/slic3r/GUI/KBShortcutsDialog.cpp +++ b/src/slic3r/GUI/KBShortcutsDialog.cpp @@ -34,6 +34,7 @@ #include "Widgets/StaticLine.hpp" #include "Widgets/TabCtrl.hpp" #include +#include #include #include #include diff --git a/src/slic3r/GUI/MarkdownTip.cpp b/src/slic3r/GUI/MarkdownTip.cpp index 70422a4232..9a80870fe0 100644 --- a/src/slic3r/GUI/MarkdownTip.cpp +++ b/src/slic3r/GUI/MarkdownTip.cpp @@ -16,6 +16,7 @@ #include #include #include +#include #include #include #include diff --git a/src/slic3r/GUI/MultiChoiceDialog.cpp b/src/slic3r/GUI/MultiChoiceDialog.cpp index e106d7869f..e78f5d1856 100644 --- a/src/slic3r/GUI/MultiChoiceDialog.cpp +++ b/src/slic3r/GUI/MultiChoiceDialog.cpp @@ -2,6 +2,7 @@ #include "GUI_App.hpp" #include "MainFrame.hpp" +#include #include #include #include "slic3r/GUI/GUI_Utils.hpp" diff --git a/src/slic3r/GUI/PartSkipCommon.hpp b/src/slic3r/GUI/PartSkipCommon.hpp index bd158edbf8..ae7ad6f6a5 100644 --- a/src/slic3r/GUI/PartSkipCommon.hpp +++ b/src/slic3r/GUI/PartSkipCommon.hpp @@ -1,6 +1,8 @@ #ifndef PARTSKIPCOMMON_H #define PARTSKIPCOMMON_H +#include +#include namespace Slic3r { namespace GUI { diff --git a/src/slic3r/GUI/Plater.cpp b/src/slic3r/GUI/Plater.cpp index 43a8b9a6a1..158991a92f 100644 --- a/src/slic3r/GUI/Plater.cpp +++ b/src/slic3r/GUI/Plater.cpp @@ -6,6 +6,7 @@ #include "libslic3r/Config.hpp" #include "libslic3r_version.h" +#include #include #include #include diff --git a/src/slic3r/GUI/SavePresetDialog.cpp b/src/slic3r/GUI/SavePresetDialog.cpp index 7aff669668..7f280debf5 100644 --- a/src/slic3r/GUI/SavePresetDialog.cpp +++ b/src/slic3r/GUI/SavePresetDialog.cpp @@ -21,6 +21,7 @@ #include #include +#include #include #include #include diff --git a/src/slic3r/GUI/SavePresetDialog.hpp b/src/slic3r/GUI/SavePresetDialog.hpp index 10cf25883b..3bbeeb0cde 100644 --- a/src/slic3r/GUI/SavePresetDialog.hpp +++ b/src/slic3r/GUI/SavePresetDialog.hpp @@ -12,6 +12,7 @@ #include "Widgets/Label.hpp" #include "Widgets/TextInput.hpp" #include +#include #include #include #include diff --git a/src/slic3r/GUI/SendToPrinter.cpp b/src/slic3r/GUI/SendToPrinter.cpp index 7a44305e4e..3ab630b404 100644 --- a/src/slic3r/GUI/SendToPrinter.cpp +++ b/src/slic3r/GUI/SendToPrinter.cpp @@ -16,6 +16,7 @@ #include "Jobs/BoostThreadWorker.hpp" #include "Jobs/PlaterWorker.hpp" +#include #include #include #include diff --git a/src/slic3r/GUI/TabButton.cpp b/src/slic3r/GUI/TabButton.cpp index 3469c9c980..f7c1a55d7c 100644 --- a/src/slic3r/GUI/TabButton.cpp +++ b/src/slic3r/GUI/TabButton.cpp @@ -2,6 +2,7 @@ #include "Widgets/Label.hpp" #include "slic3r/GUI/Widgets/StaticBox.hpp" +#include #include #include #include "slic3r/GUI/wxExtensions.hpp" diff --git a/src/slic3r/GUI/UpgradePanel.cpp b/src/slic3r/GUI/UpgradePanel.cpp index 485ac48b99..ca20f4edb1 100644 --- a/src/slic3r/GUI/UpgradePanel.cpp +++ b/src/slic3r/GUI/UpgradePanel.cpp @@ -11,6 +11,7 @@ #include #include #include +#include #include #include #include diff --git a/src/slic3r/GUI/UpgradePanel.hpp b/src/slic3r/GUI/UpgradePanel.hpp index 2e0245e40e..c67ec0bbc3 100644 --- a/src/slic3r/GUI/UpgradePanel.hpp +++ b/src/slic3r/GUI/UpgradePanel.hpp @@ -2,6 +2,7 @@ #define slic3r_UpgradePanel_hpp_ #include "slic3r/GUI/wxExtensions.hpp" +#include #include #include #include diff --git a/src/slic3r/GUI/Widgets/AMSControl.cpp b/src/slic3r/GUI/Widgets/AMSControl.cpp index 8a5f03b7ad..1abe045942 100644 --- a/src/slic3r/GUI/Widgets/AMSControl.cpp +++ b/src/slic3r/GUI/Widgets/AMSControl.cpp @@ -11,6 +11,7 @@ #include "slic3r/GUI/DeviceCore/DevFilaSystem.h" #include "slic3r/GUI/DeviceCore/DevFilaSwitch.h" +#include #include #include #include "slic3r/GUI/AmsMappingPopup.hpp" diff --git a/src/slic3r/GUI/Widgets/AMSControl.hpp b/src/slic3r/GUI/Widgets/AMSControl.hpp index 4f44d7a1e7..f4c83667c2 100644 --- a/src/slic3r/GUI/Widgets/AMSControl.hpp +++ b/src/slic3r/GUI/Widgets/AMSControl.hpp @@ -9,6 +9,7 @@ #include "../DeviceManager.hpp" #include "slic3r/GUI/Event.hpp" #include "slic3r/GUI/AmsMappingPopup.hpp" +#include #include #include #include diff --git a/src/slic3r/GUI/Widgets/AMSItem.cpp b/src/slic3r/GUI/Widgets/AMSItem.cpp index 96ca92494d..303b4221bb 100644 --- a/src/slic3r/GUI/Widgets/AMSItem.cpp +++ b/src/slic3r/GUI/Widgets/AMSItem.cpp @@ -12,6 +12,7 @@ #include "slic3r/GUI/DeviceCore/DevConfig.h" #include "slic3r/GUI/DeviceCore/DevManager.h" +#include #include #include #include "slic3r/GUI/Event.hpp" diff --git a/src/slic3r/GUI/Widgets/AMSItem.hpp b/src/slic3r/GUI/Widgets/AMSItem.hpp index e84ba64d98..55c0a3ca8d 100644 --- a/src/slic3r/GUI/Widgets/AMSItem.hpp +++ b/src/slic3r/GUI/Widgets/AMSItem.hpp @@ -9,6 +9,7 @@ #include "slic3r/GUI/Event.hpp" #include "slic3r/GUI/AmsMappingPopup.hpp" #include +#include #include #include #include "slic3r/GUI/DeviceCore/DevDefs.h" diff --git a/src/slic3r/GUI/Widgets/AnimaController.cpp b/src/slic3r/GUI/Widgets/AnimaController.cpp index a73c6d8e50..0267650e1d 100644 --- a/src/slic3r/GUI/Widgets/AnimaController.cpp +++ b/src/slic3r/GUI/Widgets/AnimaController.cpp @@ -1,5 +1,6 @@ #include "AnimaController.hpp" +#include #include #include #include diff --git a/src/slic3r/GUI/Widgets/AnimaController.hpp b/src/slic3r/GUI/Widgets/AnimaController.hpp index e32eae6fb7..a1ddb7bc74 100644 --- a/src/slic3r/GUI/Widgets/AnimaController.hpp +++ b/src/slic3r/GUI/Widgets/AnimaController.hpp @@ -3,6 +3,7 @@ #include "../wxExtensions.hpp" #include "Label.hpp" +#include #include #include #include diff --git a/src/slic3r/GUI/Widgets/Button.cpp b/src/slic3r/GUI/Widgets/Button.cpp index 7010dbd91c..54e720feb4 100644 --- a/src/slic3r/GUI/Widgets/Button.cpp +++ b/src/slic3r/GUI/Widgets/Button.cpp @@ -3,6 +3,7 @@ #include "slic3r/GUI/Widgets/StaticBox.hpp" #include +#include #include #include #include diff --git a/src/slic3r/GUI/Widgets/Button.hpp b/src/slic3r/GUI/Widgets/Button.hpp index cee2eb15b6..b4b1e24bb2 100644 --- a/src/slic3r/GUI/Widgets/Button.hpp +++ b/src/slic3r/GUI/Widgets/Button.hpp @@ -3,6 +3,7 @@ #include "../wxExtensions.hpp" #include "StaticBox.hpp" +#include #include #include "slic3r/GUI/Widgets/StateColor.hpp" #include diff --git a/src/slic3r/GUI/Widgets/CheckBox.cpp b/src/slic3r/GUI/Widgets/CheckBox.cpp index f019f18784..c36a53d8af 100644 --- a/src/slic3r/GUI/Widgets/CheckBox.cpp +++ b/src/slic3r/GUI/Widgets/CheckBox.cpp @@ -1,6 +1,7 @@ #include "CheckBox.hpp" #include "../wxExtensions.hpp" +#include #include #include #include diff --git a/src/slic3r/GUI/Widgets/CheckBox.hpp b/src/slic3r/GUI/Widgets/CheckBox.hpp index 3ad3dac2c4..bab691eb53 100644 --- a/src/slic3r/GUI/Widgets/CheckBox.hpp +++ b/src/slic3r/GUI/Widgets/CheckBox.hpp @@ -3,6 +3,7 @@ #include "../wxExtensions.hpp" +#include #include #include diff --git a/src/slic3r/GUI/Widgets/CheckList.cpp b/src/slic3r/GUI/Widgets/CheckList.cpp index 2b8dcac75e..a9c5c15be4 100644 --- a/src/slic3r/GUI/Widgets/CheckList.cpp +++ b/src/slic3r/GUI/Widgets/CheckList.cpp @@ -2,6 +2,7 @@ #include "slic3r/GUI/GUI_App.hpp" #include "slic3r/GUI/I18N.hpp" +#include #include #include #include diff --git a/src/slic3r/GUI/Widgets/CheckList.hpp b/src/slic3r/GUI/Widgets/CheckList.hpp index 9e5ae4c9e1..5518b10fd0 100644 --- a/src/slic3r/GUI/Widgets/CheckList.hpp +++ b/src/slic3r/GUI/Widgets/CheckList.hpp @@ -6,6 +6,7 @@ #include "Label.hpp" #include "TextInput.hpp" +#include #include #include #include diff --git a/src/slic3r/GUI/Widgets/ComboBox.cpp b/src/slic3r/GUI/Widgets/ComboBox.cpp index 7d507789f5..20998eda0a 100644 --- a/src/slic3r/GUI/Widgets/ComboBox.cpp +++ b/src/slic3r/GUI/Widgets/ComboBox.cpp @@ -8,6 +8,7 @@ #include #include #include +#include #include #include #include diff --git a/src/slic3r/GUI/Widgets/ComboBox.hpp b/src/slic3r/GUI/Widgets/ComboBox.hpp index f13bc876c4..1dae23b85d 100644 --- a/src/slic3r/GUI/Widgets/ComboBox.hpp +++ b/src/slic3r/GUI/Widgets/ComboBox.hpp @@ -3,6 +3,7 @@ #include "TextInput.hpp" #include "DropDown.hpp" +#include #include #include #include diff --git a/src/slic3r/GUI/Widgets/FanControl.cpp b/src/slic3r/GUI/Widgets/FanControl.cpp index 3ffaf59141..e4f039307b 100644 --- a/src/slic3r/GUI/Widgets/FanControl.cpp +++ b/src/slic3r/GUI/Widgets/FanControl.cpp @@ -6,6 +6,7 @@ #include "../MsgDialog.hpp" #include "json_diff.hpp" +#include #include #include #include diff --git a/src/slic3r/GUI/Widgets/FanControl.hpp b/src/slic3r/GUI/Widgets/FanControl.hpp index b97c9a4d27..e5eb49ed45 100644 --- a/src/slic3r/GUI/Widgets/FanControl.hpp +++ b/src/slic3r/GUI/Widgets/FanControl.hpp @@ -9,6 +9,7 @@ #include "../SelectMachine.hpp" #include "../DeviceManager.hpp" #include "slic3r/GUI/Event.hpp" +#include #include #include #include diff --git a/src/slic3r/GUI/Widgets/FilamentLoad.cpp b/src/slic3r/GUI/Widgets/FilamentLoad.cpp index 712c103826..11541a95a3 100644 --- a/src/slic3r/GUI/Widgets/FilamentLoad.cpp +++ b/src/slic3r/GUI/Widgets/FilamentLoad.cpp @@ -5,6 +5,7 @@ #include "../GUI_App.hpp" #include "../DeviceCore/DevFilaSystem.h" +#include #include #include #include "slic3r/GUI/Widgets/StepCtrl.hpp" diff --git a/src/slic3r/GUI/Widgets/FilamentLoad.hpp b/src/slic3r/GUI/Widgets/FilamentLoad.hpp index 257e92d21c..2c516987fc 100644 --- a/src/slic3r/GUI/Widgets/FilamentLoad.hpp +++ b/src/slic3r/GUI/Widgets/FilamentLoad.hpp @@ -8,6 +8,7 @@ #include "../DeviceManager.hpp" #include "slic3r/GUI/Event.hpp" #include "slic3r/GUI/AmsMappingPopup.hpp" +#include #include #include #include diff --git a/src/slic3r/GUI/Widgets/ImageSwitchButton.cpp b/src/slic3r/GUI/Widgets/ImageSwitchButton.cpp index 9915795af5..80e7e85c66 100644 --- a/src/slic3r/GUI/Widgets/ImageSwitchButton.cpp +++ b/src/slic3r/GUI/Widgets/ImageSwitchButton.cpp @@ -4,6 +4,7 @@ #include "../wxExtensions.hpp" #include "slic3r/GUI/I18N.hpp" +#include #include #include #include diff --git a/src/slic3r/GUI/Widgets/RadioBox.cpp b/src/slic3r/GUI/Widgets/RadioBox.cpp index 93e8f63b91..5b4af4e7b5 100644 --- a/src/slic3r/GUI/Widgets/RadioBox.cpp +++ b/src/slic3r/GUI/Widgets/RadioBox.cpp @@ -1,6 +1,7 @@ #include "RadioBox.hpp" #include "../wxExtensions.hpp" +#include #include #include diff --git a/src/slic3r/GUI/Widgets/RadioGroup.hpp b/src/slic3r/GUI/Widgets/RadioGroup.hpp index 6f25190431..ce6499c727 100644 --- a/src/slic3r/GUI/Widgets/RadioGroup.hpp +++ b/src/slic3r/GUI/Widgets/RadioGroup.hpp @@ -3,6 +3,7 @@ #include "../wxExtensions.hpp" +#include #include #include #include diff --git a/src/slic3r/GUI/Widgets/RoundedRectangle.cpp b/src/slic3r/GUI/Widgets/RoundedRectangle.cpp index 5b5cd98076..d53f176ac3 100644 --- a/src/slic3r/GUI/Widgets/RoundedRectangle.cpp +++ b/src/slic3r/GUI/Widgets/RoundedRectangle.cpp @@ -1,5 +1,6 @@ #include "RoundedRectangle.hpp" #include "../wxExtensions.hpp" +#include #include #include #include diff --git a/src/slic3r/GUI/Widgets/ScrolledWindow.hpp b/src/slic3r/GUI/Widgets/ScrolledWindow.hpp index a430dec423..cb497d1015 100644 --- a/src/slic3r/GUI/Widgets/ScrolledWindow.hpp +++ b/src/slic3r/GUI/Widgets/ScrolledWindow.hpp @@ -1,4 +1,5 @@ #pragma once +#include #include #include #include diff --git a/src/slic3r/GUI/Widgets/SideButton.cpp b/src/slic3r/GUI/Widgets/SideButton.cpp index e9fe493621..54b75f1e14 100644 --- a/src/slic3r/GUI/Widgets/SideButton.cpp +++ b/src/slic3r/GUI/Widgets/SideButton.cpp @@ -3,6 +3,7 @@ #include #include "slic3r/GUI/Widgets/StateHandler.hpp" +#include #include #include #include diff --git a/src/slic3r/GUI/Widgets/SideTools.hpp b/src/slic3r/GUI/Widgets/SideTools.hpp index 81c42ecef0..94af1e64c9 100644 --- a/src/slic3r/GUI/Widgets/SideTools.hpp +++ b/src/slic3r/GUI/Widgets/SideTools.hpp @@ -8,6 +8,7 @@ #include #include #include +#include #include #include "Button.hpp" #include "Label.hpp" diff --git a/src/slic3r/GUI/Widgets/SpinInput.cpp b/src/slic3r/GUI/Widgets/SpinInput.cpp index 3077304947..80c000fe46 100644 --- a/src/slic3r/GUI/Widgets/SpinInput.cpp +++ b/src/slic3r/GUI/Widgets/SpinInput.cpp @@ -6,6 +6,7 @@ #include "slic3r/GUI/Widgets/StaticBox.hpp" #include #include "slic3r/GUI/Widgets/StateHandler.hpp" +#include #include #include #include diff --git a/src/slic3r/GUI/Widgets/StaticBox.cpp b/src/slic3r/GUI/Widgets/StaticBox.cpp index 87a1d26827..5b18f733c9 100644 --- a/src/slic3r/GUI/Widgets/StaticBox.cpp +++ b/src/slic3r/GUI/Widgets/StaticBox.cpp @@ -1,6 +1,7 @@ #include "StaticBox.hpp" #include "../GUI.hpp" #include +#include #include #include #include diff --git a/src/slic3r/GUI/Widgets/StaticBox.hpp b/src/slic3r/GUI/Widgets/StaticBox.hpp index b7662ff670..7c8d7c50ee 100644 --- a/src/slic3r/GUI/Widgets/StaticBox.hpp +++ b/src/slic3r/GUI/Widgets/StaticBox.hpp @@ -4,6 +4,7 @@ #include "../wxExtensions.hpp" #include "StateHandler.hpp" +#include #include #include #include "slic3r/GUI/Widgets/StateColor.hpp" diff --git a/src/slic3r/GUI/Widgets/StaticLine.cpp b/src/slic3r/GUI/Widgets/StaticLine.cpp index f574a5b739..61602d520d 100644 --- a/src/slic3r/GUI/Widgets/StaticLine.cpp +++ b/src/slic3r/GUI/Widgets/StaticLine.cpp @@ -2,6 +2,7 @@ #include "Label.hpp" #include "StateColor.hpp" +#include #include #include #include diff --git a/src/slic3r/GUI/Widgets/StepCtrl.cpp b/src/slic3r/GUI/Widgets/StepCtrl.cpp index 34ce8506de..e50db7c821 100644 --- a/src/slic3r/GUI/Widgets/StepCtrl.cpp +++ b/src/slic3r/GUI/Widgets/StepCtrl.cpp @@ -1,6 +1,7 @@ #include "StepCtrl.hpp" #include "Label.hpp" +#include #include #include "slic3r/GUI/Widgets/StaticBox.hpp" #include diff --git a/src/slic3r/GUI/Widgets/StepCtrl.hpp b/src/slic3r/GUI/Widgets/StepCtrl.hpp index d568443eaa..3b5abdab57 100644 --- a/src/slic3r/GUI/Widgets/StepCtrl.hpp +++ b/src/slic3r/GUI/Widgets/StepCtrl.hpp @@ -2,6 +2,7 @@ #define slic3r_GUI_StepCtrlBase_hpp_ #include "StaticBox.hpp" +#include #include #include "slic3r/GUI/Widgets/StateColor.hpp" #include diff --git a/src/slic3r/GUI/Widgets/SwitchButton.hpp b/src/slic3r/GUI/Widgets/SwitchButton.hpp index e4ef0005ad..24fcf59981 100644 --- a/src/slic3r/GUI/Widgets/SwitchButton.hpp +++ b/src/slic3r/GUI/Widgets/SwitchButton.hpp @@ -7,6 +7,7 @@ #include #include +#include #include #include #include diff --git a/src/slic3r/GUI/Widgets/TabCtrl.cpp b/src/slic3r/GUI/Widgets/TabCtrl.cpp index 66ff926d25..7c39cdd3f4 100644 --- a/src/slic3r/GUI/Widgets/TabCtrl.cpp +++ b/src/slic3r/GUI/Widgets/TabCtrl.cpp @@ -1,6 +1,7 @@ #include "TabCtrl.hpp" #include "slic3r/GUI/Widgets/StaticBox.hpp" +#include #include #include #include diff --git a/src/slic3r/GUI/Widgets/TabCtrl.hpp b/src/slic3r/GUI/Widgets/TabCtrl.hpp index 80ac49da0a..f80a1aa08c 100644 --- a/src/slic3r/GUI/Widgets/TabCtrl.hpp +++ b/src/slic3r/GUI/Widgets/TabCtrl.hpp @@ -2,6 +2,7 @@ #define slic3r_GUI_TabCtrl_hpp_ #include "Button.hpp" +#include #include #include "slic3r/GUI/Widgets/StaticBox.hpp" #include diff --git a/src/slic3r/GUI/Widgets/TempInput.cpp b/src/slic3r/GUI/Widgets/TempInput.cpp index 99f50269ed..5890c702ac 100644 --- a/src/slic3r/GUI/Widgets/TempInput.cpp +++ b/src/slic3r/GUI/Widgets/TempInput.cpp @@ -5,6 +5,7 @@ #include "slic3r/GUI/Widgets/StaticBox.hpp" #include #include +#include #include #include "slic3r/GUI/Widgets/StateHandler.hpp" #include diff --git a/src/slic3r/GUI/Widgets/TempInput.hpp b/src/slic3r/GUI/Widgets/TempInput.hpp index 8560576b96..3ca55e558c 100644 --- a/src/slic3r/GUI/Widgets/TempInput.hpp +++ b/src/slic3r/GUI/Widgets/TempInput.hpp @@ -2,6 +2,7 @@ #define slic3r_GUI_TempInput_hpp_ #include "../wxExtensions.hpp" +#include #include #include #include diff --git a/src/slic3r/GUI/Widgets/TextCtrl.h b/src/slic3r/GUI/Widgets/TextCtrl.h index 3f3ab2b4de..2d57c38146 100644 --- a/src/slic3r/GUI/Widgets/TextCtrl.h +++ b/src/slic3r/GUI/Widgets/TextCtrl.h @@ -1,3 +1,5 @@ +#include + #ifdef __WXMSW__ class TextCtrl : public wxTextCtrl { diff --git a/src/slic3r/GUI/Widgets/TextInput.cpp b/src/slic3r/GUI/Widgets/TextInput.cpp index 0ed38ff8de..e3670cbaed 100644 --- a/src/slic3r/GUI/Widgets/TextInput.cpp +++ b/src/slic3r/GUI/Widgets/TextInput.cpp @@ -7,6 +7,7 @@ #include #include #include "slic3r/GUI/Widgets/StateHandler.hpp" +#include #include #include #include diff --git a/src/slic3r/GUI/WipeTowerDialog.hpp b/src/slic3r/GUI/WipeTowerDialog.hpp index 91944cfc78..6f6af5f59d 100644 --- a/src/slic3r/GUI/WipeTowerDialog.hpp +++ b/src/slic3r/GUI/WipeTowerDialog.hpp @@ -1,8 +1,16 @@ #ifndef _WIPE_TOWER_DIALOG_H_ #define _WIPE_TOWER_DIALOG_H_ +#include +#include +#include +#include #include +#include +#include +#include #include +#include "libslic3r/FlushVolCalc.hpp" #include "libslic3r/PrintConfig.hpp" #include "Widgets/SpinInput.hpp" diff --git a/src/slic3r/GUI/calib_dlg.cpp b/src/slic3r/GUI/calib_dlg.cpp index 48ea425cf0..24abe219bc 100644 --- a/src/slic3r/GUI/calib_dlg.cpp +++ b/src/slic3r/GUI/calib_dlg.cpp @@ -6,6 +6,7 @@ #include #include #include "slic3r/GUI/Widgets/CheckBox.hpp" +#include #include #include "libslic3r/Config.hpp" #include diff --git a/src/slic3r/GUI/calib_dlg.hpp b/src/slic3r/GUI/calib_dlg.hpp index da6e9ee7c5..81d6b15200 100644 --- a/src/slic3r/GUI/calib_dlg.hpp +++ b/src/slic3r/GUI/calib_dlg.hpp @@ -13,6 +13,7 @@ #include "Widgets/RadioGroup.hpp" #include "GUI_App.hpp" #include "wx/hyperlink.h" +#include #include #include #include diff --git a/src/slic3r/Utils/3DPrinterOS.cpp b/src/slic3r/Utils/3DPrinterOS.cpp old mode 100755 new mode 100644 index 081afb667c..29b6bd63f8 --- a/src/slic3r/Utils/3DPrinterOS.cpp +++ b/src/slic3r/Utils/3DPrinterOS.cpp @@ -1,7 +1,12 @@ #include "3DPrinterOS.hpp" #include +#include "slic3r/GUI/Widgets/DropDown.hpp" +#include +#include +#include #include +#include #include #include #include @@ -11,12 +16,16 @@ #include #include +#include +#include +#include #include #include #include #include #include +#include "PrintHost.hpp" #include "libslic3r/PrintConfig.hpp" #include "libslic3r/Utils.hpp" #include "slic3r/GUI/I18N.hpp" @@ -30,6 +39,8 @@ #include "Http.hpp" #include +#include +#include using json = nlohmann::json; diff --git a/src/slic3r/Utils/3DPrinterOS.hpp b/src/slic3r/Utils/3DPrinterOS.hpp old mode 100755 new mode 100644 index 8c8e4ca6dc..02cc81ee6f --- a/src/slic3r/Utils/3DPrinterOS.hpp +++ b/src/slic3r/Utils/3DPrinterOS.hpp @@ -1,6 +1,7 @@ #ifndef slic3r_3DPrinterOS_hpp_ #define slic3r_3DPrinterOS_hpp_ +#include #include #include #include diff --git a/src/slic3r/Utils/ASCIIFolding.cpp b/src/slic3r/Utils/ASCIIFolding.cpp index 016c30fcde..acf6f96fc9 100644 --- a/src/slic3r/Utils/ASCIIFolding.cpp +++ b/src/slic3r/Utils/ASCIIFolding.cpp @@ -1,10 +1,13 @@ #include "ASCIIFolding.hpp" +#include +#include #include #include #include #include #include +#include namespace Slic3r { diff --git a/src/slic3r/Utils/AstroBox.cpp b/src/slic3r/Utils/AstroBox.cpp index 61f9f96c33..6904b56920 100644 --- a/src/slic3r/Utils/AstroBox.cpp +++ b/src/slic3r/Utils/AstroBox.cpp @@ -1,6 +1,7 @@ #include "AstroBox.hpp" #include +#include #include #include #include @@ -9,8 +10,11 @@ #include #include +#include #include +#include +#include "PrintHost.hpp" #include "libslic3r/PrintConfig.hpp" #include "slic3r/GUI/I18N.hpp" #include "slic3r/GUI/GUI.hpp" diff --git a/src/slic3r/Utils/AstroBox.hpp b/src/slic3r/Utils/AstroBox.hpp index 72ab273228..04bbb00b67 100644 --- a/src/slic3r/Utils/AstroBox.hpp +++ b/src/slic3r/Utils/AstroBox.hpp @@ -1,6 +1,7 @@ #ifndef slic3r_AstroBox_hpp_ #define slic3r_AstroBox_hpp_ +#include #include #include #include diff --git a/src/slic3r/Utils/BBLCloudServiceAgent.cpp b/src/slic3r/Utils/BBLCloudServiceAgent.cpp index 801ad1cf57..8943a01914 100644 --- a/src/slic3r/Utils/BBLCloudServiceAgent.cpp +++ b/src/slic3r/Utils/BBLCloudServiceAgent.cpp @@ -2,12 +2,21 @@ #include "BBLNetworkPlugin.hpp" #include +#include "CloudProvider.hpp" #include "Http.hpp" +#include "bambu_networking.hpp" +#include "ICloudServiceAgent.hpp" #include "slic3r/GUI/GUI_App.hpp" +#include +#include +#include "libslic3r/ProjectTask.hpp" #include #include #include +#include +#include +#include using json = nlohmann::json; diff --git a/src/slic3r/Utils/BBLCloudServiceAgent.hpp b/src/slic3r/Utils/BBLCloudServiceAgent.hpp index 9f03f0b839..8ca07377ee 100644 --- a/src/slic3r/Utils/BBLCloudServiceAgent.hpp +++ b/src/slic3r/Utils/BBLCloudServiceAgent.hpp @@ -1,9 +1,14 @@ #ifndef __BBL_CLOUD_SERVICE_AGENT_HPP__ #define __BBL_CLOUD_SERVICE_AGENT_HPP__ +#include "CloudProvider.hpp" #include "ICloudServiceAgent.hpp" +#include "bambu_networking.hpp" +#include +#include "libslic3r/ProjectTask.hpp" #include #include +#include namespace Slic3r { diff --git a/src/slic3r/Utils/BBLNetworkPlugin.cpp b/src/slic3r/Utils/BBLNetworkPlugin.cpp index d795abf354..94ac57aaf0 100644 --- a/src/slic3r/Utils/BBLNetworkPlugin.cpp +++ b/src/slic3r/Utils/BBLNetworkPlugin.cpp @@ -1,11 +1,22 @@ #include "BBLNetworkPlugin.hpp" #include "NetworkAgent.hpp" +#include +#include +#include +#include +#include +#include +#include #include #include #include #include #include +#include "bambu_networking.hpp" +#include +#include +#include #include "libslic3r/Utils.hpp" #include "slic3r/Utils/FileTransferUtils.hpp" diff --git a/src/slic3r/Utils/BBLNetworkPlugin.hpp b/src/slic3r/Utils/BBLNetworkPlugin.hpp index 3788568e37..8541f90bce 100644 --- a/src/slic3r/Utils/BBLNetworkPlugin.hpp +++ b/src/slic3r/Utils/BBLNetworkPlugin.hpp @@ -3,6 +3,7 @@ #include "bambu_networking.hpp" #include "libslic3r/ProjectTask.hpp" +#include "libslic3r/AppConfig.hpp" #include #include #include diff --git a/src/slic3r/Utils/BBLPrinterAgent.cpp b/src/slic3r/Utils/BBLPrinterAgent.cpp index 4e2015d5d7..0e468b642b 100644 --- a/src/slic3r/Utils/BBLPrinterAgent.cpp +++ b/src/slic3r/Utils/BBLPrinterAgent.cpp @@ -3,6 +3,7 @@ #include "IPrinterAgent.hpp" #include "NetworkAgentFactory.hpp" #include "NetworkAgent.hpp" +#include "bambu_networking.hpp" #include "libslic3r/Utils.hpp" #include "slic3r/GUI/GUI_App.hpp" #include "slic3r/GUI/DeviceCore/DevManager.h" @@ -10,9 +11,14 @@ #include #include #include +#include +#include #include #include #include +#include +#include +#include using json = nlohmann::json; #include diff --git a/src/slic3r/Utils/BBLPrinterAgent.hpp b/src/slic3r/Utils/BBLPrinterAgent.hpp index 4398602976..89315219c0 100644 --- a/src/slic3r/Utils/BBLPrinterAgent.hpp +++ b/src/slic3r/Utils/BBLPrinterAgent.hpp @@ -3,9 +3,12 @@ #include "IPrinterAgent.hpp" #include "ICloudServiceAgent.hpp" +#include "bambu_networking.hpp" +#include #include #include #include +#include namespace Slic3r { diff --git a/src/slic3r/Utils/Bonjour.cpp b/src/slic3r/Utils/Bonjour.cpp index 0bff5b526c..e67d3f0240 100644 --- a/src/slic3r/Utils/Bonjour.cpp +++ b/src/slic3r/Utils/Bonjour.cpp @@ -1,8 +1,29 @@ #include "Bonjour.hpp" +#include +#include +#include +#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/src/slic3r/Utils/Bonjour.hpp b/src/slic3r/Utils/Bonjour.hpp index 3ef8f0e1a2..e267575f74 100644 --- a/src/slic3r/Utils/Bonjour.hpp +++ b/src/slic3r/Utils/Bonjour.hpp @@ -1,8 +1,16 @@ #ifndef slic3r_Bonjour_hpp_ #define slic3r_Bonjour_hpp_ +#include +#include +#include +#include +#include +#include +#include #include #include +#include #include #include #include @@ -13,6 +21,8 @@ #include #include #include +#include +#include namespace Slic3r { diff --git a/src/slic3r/Utils/CalibUtils.cpp b/src/slic3r/Utils/CalibUtils.cpp index 462f8c2712..82686cb7c7 100644 --- a/src/slic3r/Utils/CalibUtils.cpp +++ b/src/slic3r/Utils/CalibUtils.cpp @@ -6,6 +6,7 @@ #include "NetworkAgent.hpp" #include "../GUI/Jobs/ProgressIndicator.hpp" #include "../GUI/PartPlate.hpp" +#include "json_diff.hpp" #include "libslic3r/CutUtils.hpp" #include "libslic3r/ClipperUtils.hpp" #include "libslic3r/Utils.hpp" @@ -22,6 +23,41 @@ #include "../GUI/DeviceCore/DevStorage.h" #include "libslic3r/FlushVolCalc.hpp" #include "../GUI/Plater.hpp" +#include +#include "slic3r/GUI/Jobs/Worker.hpp" +#include +#include +#include "libslic3r/PrintConfig.hpp" +#include "libslic3r/Config.hpp" +#include "libslic3r/Flow.hpp" +#include +#include "libslic3r/ParameterUtils.hpp" +#include +#include +#include +#include "libslic3r/calib.hpp" +#include +#include "libslic3r/CommonDefs.hpp" +#include +#include +#include "libslic3r/Point.hpp" +#include "libslic3r/Geometry.hpp" +#include "libslic3r/Format/bbs_3mf.hpp" +#include "libslic3r/Semver.hpp" +#include +#include "libslic3r/BoundingBox.hpp" +#include +#include "libslic3r/libslic3r.h" +#include "slic3r/GUI/DeviceCore/DevDefs.h" +#include "libslic3r/PrintBase.hpp" +#include "libslic3r/GCode/ThumbnailData.hpp" +#include "libslic3r/ProjectTask.hpp" +#include "slic3r/GUI/3DScene.hpp" +#include "libslic3r/Color.hpp" +#include "slic3r/GUI/GLShader.hpp" +#include "slic3r/GUI/OpenGLManager.hpp" +#include +#include "slic3r/GUI/Jobs/PrintJob.hpp" namespace Slic3r { namespace GUI { diff --git a/src/slic3r/Utils/CalibUtils.hpp b/src/slic3r/Utils/CalibUtils.hpp index 1060a7d3d9..00b9e0020c 100644 --- a/src/slic3r/Utils/CalibUtils.hpp +++ b/src/slic3r/Utils/CalibUtils.hpp @@ -3,6 +3,11 @@ #include "../GUI/DeviceManager.hpp" #include "../GUI/Jobs/PrintJob.hpp" #include "slic3r/GUI/Jobs/Worker.hpp" +#include "libslic3r/PrintConfig.hpp" +#include +#include +#include +#include namespace Slic3r { diff --git a/src/slic3r/Utils/ColorSpaceConvert.cpp b/src/slic3r/Utils/ColorSpaceConvert.cpp index 176bd29304..63ebc6b7b8 100644 --- a/src/slic3r/Utils/ColorSpaceConvert.cpp +++ b/src/slic3r/Utils/ColorSpaceConvert.cpp @@ -2,6 +2,12 @@ #include #include +#include +#include +#include +#include +#include +#include #include #include diff --git a/src/slic3r/Utils/CrealityHostDiscovery.cpp b/src/slic3r/Utils/CrealityHostDiscovery.cpp index a3256794e2..556309ef30 100644 --- a/src/slic3r/Utils/CrealityHostDiscovery.cpp +++ b/src/slic3r/Utils/CrealityHostDiscovery.cpp @@ -4,9 +4,13 @@ #include "Http.hpp" #include +#include #include #include +#include +#include +#include namespace Slic3r { diff --git a/src/slic3r/Utils/CrealityPrint.cpp b/src/slic3r/Utils/CrealityPrint.cpp index 323db56ff6..20e702ba54 100644 --- a/src/slic3r/Utils/CrealityPrint.cpp +++ b/src/slic3r/Utils/CrealityPrint.cpp @@ -1,6 +1,20 @@ #include "CrealityPrint.hpp" #include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include #include #include #include @@ -16,8 +30,11 @@ #include #include +#include +#include #include +#include "PrintHost.hpp" #include "slic3r/GUI/GUI.hpp" #include "slic3r/GUI/I18N.hpp" #include "slic3r/GUI/GUI_App.hpp" @@ -37,6 +54,7 @@ #include #include +#include using json = nlohmann::json; using std::to_string; diff --git a/src/slic3r/Utils/CrealityPrintAgent.cpp b/src/slic3r/Utils/CrealityPrintAgent.cpp index 4730903c59..10f6a51c5d 100644 --- a/src/slic3r/Utils/CrealityPrintAgent.cpp +++ b/src/slic3r/Utils/CrealityPrintAgent.cpp @@ -1,16 +1,23 @@ #include "CrealityPrintAgent.hpp" #include "CrealityPrint.hpp" +#include "MoonrakerPrinterAgent.hpp" +#include "IPrinterAgent.hpp" #include "libslic3r/PresetBundle.hpp" #include "libslic3r/PrintConfig.hpp" #include "slic3r/GUI/GUI_App.hpp" #include +#include "libslic3r/Config.hpp" +#include #include #include #include #include #include +#include +#include +#include using json = nlohmann::json; diff --git a/src/slic3r/Utils/CrealityPrintAgent.hpp b/src/slic3r/Utils/CrealityPrintAgent.hpp index cf22d104ec..3b925c5d21 100644 --- a/src/slic3r/Utils/CrealityPrintAgent.hpp +++ b/src/slic3r/Utils/CrealityPrintAgent.hpp @@ -1,6 +1,7 @@ #ifndef __CREALITY_PRINT_AGENT_HPP__ #define __CREALITY_PRINT_AGENT_HPP__ +#include "IPrinterAgent.hpp" #include "MoonrakerPrinterAgent.hpp" #include diff --git a/src/slic3r/Utils/Duet.cpp b/src/slic3r/Utils/Duet.cpp index e26a493131..592e198808 100644 --- a/src/slic3r/Utils/Duet.cpp +++ b/src/slic3r/Utils/Duet.cpp @@ -1,6 +1,7 @@ #include "Duet.hpp" #include +#include #include #include #include @@ -8,14 +9,17 @@ #include #include +#include #include #include #include #include #include +#include #include #include +#include "PrintHost.hpp" #include "libslic3r/PrintConfig.hpp" #include "slic3r/GUI/GUI.hpp" #include "slic3r/GUI/I18N.hpp" diff --git a/src/slic3r/Utils/ESP3D.cpp b/src/slic3r/Utils/ESP3D.cpp index 5c10862118..0fc28cfcaf 100644 --- a/src/slic3r/Utils/ESP3D.cpp +++ b/src/slic3r/Utils/ESP3D.cpp @@ -12,14 +12,17 @@ #include #include +#include #include #include #include #include #include +#include #include #include +#include "PrintHost.hpp" #include "libslic3r/PrintConfig.hpp" #include "slic3r/GUI/GUI.hpp" #include "slic3r/GUI/I18N.hpp" diff --git a/src/slic3r/Utils/ElegooLink.cpp b/src/slic3r/Utils/ElegooLink.cpp index 64ff4a9455..fb74a384d1 100644 --- a/src/slic3r/Utils/ElegooLink.cpp +++ b/src/slic3r/Utils/ElegooLink.cpp @@ -1,8 +1,19 @@ #include "ElegooLink.hpp" #include +#include "libslic3r/Utils.hpp" +#include +#include +#include +#include +#include +#include +#include "libslic3r/PrintConfig.hpp" +#include #include #include +#include +#include #include #include #include @@ -20,8 +31,15 @@ #include +#include +#include +#include +#include #include +#include "OctoPrint.hpp" +#include "PrintHost.hpp" +#include "WebSocketClient.hpp" #include "slic3r/GUI/GUI.hpp" #include "slic3r/GUI/I18N.hpp" #include "slic3r/GUI/GUI_App.hpp" diff --git a/src/slic3r/Utils/ElegooLink.hpp b/src/slic3r/Utils/ElegooLink.hpp index a60d2de1b3..9072fd5c78 100644 --- a/src/slic3r/Utils/ElegooLink.hpp +++ b/src/slic3r/Utils/ElegooLink.hpp @@ -1,6 +1,9 @@ #ifndef slic3r_ElegooLink_hpp_ #define slic3r_ElegooLink_hpp_ +#include +#include +#include #include #include #include diff --git a/src/slic3r/Utils/EmbossStyleManager.cpp b/src/slic3r/Utils/EmbossStyleManager.cpp index 5e777e2f29..5f03bd5df3 100644 --- a/src/slic3r/Utils/EmbossStyleManager.cpp +++ b/src/slic3r/Utils/EmbossStyleManager.cpp @@ -1,4 +1,19 @@ #include "EmbossStyleManager.hpp" +#include +#include +#include "libslic3r/TextConfiguration.hpp" +#include +#include +#include +#include +#include +#include "libslic3r/Emboss.hpp" +#include "libslic3r/Point.hpp" +#include +#include +#include +#include +#include "libslic3r/EmbossShape.hpp" #include #include // Imgui texture #include // ImTextCharFromUtf8 @@ -12,6 +27,13 @@ #include #include +#include +#include +#include +#include "slic3r/GUI/GUI_Utils.hpp" +#include "slic3r/GUI/Jobs/Worker.hpp" +#include +#include "slic3r/GUI/OpenGLManager.hpp" using namespace Slic3r; using namespace Slic3r::Emboss; diff --git a/src/slic3r/Utils/EmbossStyleManager.hpp b/src/slic3r/Utils/EmbossStyleManager.hpp index 171f6fb1aa..76be39ac04 100644 --- a/src/slic3r/Utils/EmbossStyleManager.hpp +++ b/src/slic3r/Utils/EmbossStyleManager.hpp @@ -1,11 +1,15 @@ #ifndef slic3r_EmbossStyleManager_hpp_ #define slic3r_EmbossStyleManager_hpp_ +#include +#include +#include "libslic3r/Point.hpp" #include #include #include #include #include +#include #include #include #include diff --git a/src/slic3r/Utils/FileHelp.cpp b/src/slic3r/Utils/FileHelp.cpp index bd67dab46f..12c1d5728f 100644 --- a/src/slic3r/Utils/FileHelp.cpp +++ b/src/slic3r/Utils/FileHelp.cpp @@ -1,6 +1,11 @@ #include "FileHelp.hpp" +#include #include +#include +#include #include +#include +#include namespace Slic3r { namespace Utils { diff --git a/src/slic3r/Utils/FileTransferUtils.cpp b/src/slic3r/Utils/FileTransferUtils.cpp index 822ccdf09d..e56cdc1551 100644 --- a/src/slic3r/Utils/FileTransferUtils.cpp +++ b/src/slic3r/Utils/FileTransferUtils.cpp @@ -1,3 +1,9 @@ +#include +#include +#include +#include +#include +#include #include #include #include "FileTransferUtils.hpp" diff --git a/src/slic3r/Utils/FixModelByCgal.cpp b/src/slic3r/Utils/FixModelByCgal.cpp index 9d973844bb..237a4b9dc6 100644 --- a/src/slic3r/Utils/FixModelByCgal.cpp +++ b/src/slic3r/Utils/FixModelByCgal.cpp @@ -1,14 +1,26 @@ #include "FixModelByCgal.hpp" +#include #include #include #include #include +#include "libslic3r/TriangleMesh.hpp" +#include "libslic3r/BoundingBox.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/libslic3r.h" +#include +#include +#include "libslic3r/Exception.hpp" #include #include +#include "slic3r/GUI/Widgets/ProgressDialog.hpp" +#include #include #include +#include #include +#include #include "libslic3r/MeshBoolean.hpp" #include "libslic3r/Model.hpp" diff --git a/src/slic3r/Utils/FixModelByCgal.hpp b/src/slic3r/Utils/FixModelByCgal.hpp index 61c8c91087..03bec43f47 100644 --- a/src/slic3r/Utils/FixModelByCgal.hpp +++ b/src/slic3r/Utils/FixModelByCgal.hpp @@ -2,6 +2,7 @@ #define slic3r_GUI_Utils_FixModelByCgal_hpp_ #include +#include #include "../GUI/Widgets/ProgressDialog.hpp" namespace Slic3r { diff --git a/src/slic3r/Utils/FlashAir.cpp b/src/slic3r/Utils/FlashAir.cpp index f2d66fd012..557604cffc 100644 --- a/src/slic3r/Utils/FlashAir.cpp +++ b/src/slic3r/Utils/FlashAir.cpp @@ -7,14 +7,17 @@ #include #include +#include #include #include #include #include #include +#include #include #include +#include "PrintHost.hpp" #include "libslic3r/PrintConfig.hpp" #include "slic3r/GUI/GUI.hpp" #include "slic3r/GUI/I18N.hpp" diff --git a/src/slic3r/Utils/Flashforge.cpp b/src/slic3r/Utils/Flashforge.cpp index a042a889ae..5f639c3e5f 100644 --- a/src/slic3r/Utils/Flashforge.cpp +++ b/src/slic3r/Utils/Flashforge.cpp @@ -1,8 +1,22 @@ #include "Flashforge.hpp" #include #include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include #include #include +#include +#include "libslic3r/Config.hpp" +#include +#include #include #include #include @@ -16,11 +30,14 @@ #include #include +#include +#include #include #include #include #include #include +#include #include #include @@ -28,6 +45,7 @@ #include #include +#include "PrintHost.hpp" #include "libslic3r/PrintConfig.hpp" #include "slic3r/GUI/GUI.hpp" #include "slic3r/GUI/I18N.hpp" diff --git a/src/slic3r/Utils/FontConfigHelp.cpp b/src/slic3r/Utils/FontConfigHelp.cpp index 15beca07ba..f3280ad83d 100644 --- a/src/slic3r/Utils/FontConfigHelp.cpp +++ b/src/slic3r/Utils/FontConfigHelp.cpp @@ -1,4 +1,11 @@ #include "FontConfigHelp.hpp" +#include +#include +#include +#include +#include +#include +#include #ifdef EXIST_FONT_CONFIG_INCLUDE diff --git a/src/slic3r/Utils/FontConfigHelp.hpp b/src/slic3r/Utils/FontConfigHelp.hpp index d2d7738767..ca69b7719e 100644 --- a/src/slic3r/Utils/FontConfigHelp.hpp +++ b/src/slic3r/Utils/FontConfigHelp.hpp @@ -1,6 +1,7 @@ #ifndef slic3r_FontConfigHelp_hpp_ #define slic3r_FontConfigHelp_hpp_ +#include #ifdef __linux__ #define EXIST_FONT_CONFIG_INCLUDE #endif diff --git a/src/slic3r/Utils/HexFile.cpp b/src/slic3r/Utils/HexFile.cpp index a13fcab02b..76e1f998bf 100644 --- a/src/slic3r/Utils/HexFile.cpp +++ b/src/slic3r/Utils/HexFile.cpp @@ -1,9 +1,15 @@ #include "HexFile.hpp" +#include +#include +#include +#include #include #include #include #include +#include +#include namespace fs = boost::filesystem; namespace pt = boost::property_tree; diff --git a/src/slic3r/Utils/Http.cpp b/src/slic3r/Utils/Http.cpp index 363ca0ecf6..552c0b6a39 100644 --- a/src/slic3r/Utils/Http.cpp +++ b/src/slic3r/Utils/Http.cpp @@ -1,8 +1,23 @@ #include "Http.hpp" +#include "libslic3r_version.h" +#include #include +#include +#include #include +#include +#include #include +#include +#include +#include +#include +#include +#include +#include "libslic3r/Exception.hpp" +#include +#include #include #include #include @@ -14,6 +29,7 @@ #include #include +#include #ifdef OPENSSL_CERT_OVERRIDE #include diff --git a/src/slic3r/Utils/Http.hpp b/src/slic3r/Utils/Http.hpp index a44a95e605..d8fa012124 100644 --- a/src/slic3r/Utils/Http.hpp +++ b/src/slic3r/Utils/Http.hpp @@ -1,8 +1,10 @@ #ifndef __Http_hpp__ #define __Http_hpp__ +#include #include #include +#include #include #include #include diff --git a/src/slic3r/Utils/InstanceID.cpp b/src/slic3r/Utils/InstanceID.cpp index d4a903e276..d683138e2e 100644 --- a/src/slic3r/Utils/InstanceID.cpp +++ b/src/slic3r/Utils/InstanceID.cpp @@ -1,7 +1,10 @@ #include "InstanceID.hpp" #include +#include +#include #include +#include #include #include #include diff --git a/src/slic3r/Utils/MKS.cpp b/src/slic3r/Utils/MKS.cpp index ced7af9c9f..6a27c7c7ce 100644 --- a/src/slic3r/Utils/MKS.cpp +++ b/src/slic3r/Utils/MKS.cpp @@ -12,14 +12,18 @@ #include #include +#include #include #include #include #include #include +#include #include #include +#include "TCPConsole.hpp" +#include "PrintHost.hpp" #include "libslic3r/PrintConfig.hpp" #include "slic3r/GUI/GUI.hpp" #include "slic3r/GUI/I18N.hpp" diff --git a/src/slic3r/Utils/MeshInspect.cpp b/src/slic3r/Utils/MeshInspect.cpp index 0a60358278..dd8e5c88a0 100644 --- a/src/slic3r/Utils/MeshInspect.cpp +++ b/src/slic3r/Utils/MeshInspect.cpp @@ -3,11 +3,17 @@ #include "libslic3r/LayOnFace.hpp" #include "libslic3r/Model.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/BoundingBox.hpp" +#include #include #include #include #include +#include +#include +#include namespace Slic3r { namespace MeshInspect { diff --git a/src/slic3r/Utils/MeshInspect.hpp b/src/slic3r/Utils/MeshInspect.hpp index 0f53b41c4a..b908d568ba 100644 --- a/src/slic3r/Utils/MeshInspect.hpp +++ b/src/slic3r/Utils/MeshInspect.hpp @@ -1,5 +1,6 @@ #pragma once +#include #include #include #include diff --git a/src/slic3r/Utils/Moonraker.cpp b/src/slic3r/Utils/Moonraker.cpp index 73fdb8486a..f8692a8bb8 100644 --- a/src/slic3r/Utils/Moonraker.cpp +++ b/src/slic3r/Utils/Moonraker.cpp @@ -1,12 +1,17 @@ #include "Moonraker.hpp" +#include #include #include #include #include #include +#include +#include +#include +#include "PrintHost.hpp" #include "libslic3r/PrintConfig.hpp" #include "slic3r/GUI/I18N.hpp" #include "slic3r/GUI/GUI.hpp" diff --git a/src/slic3r/Utils/MoonrakerPrinterAgent.cpp b/src/slic3r/Utils/MoonrakerPrinterAgent.cpp index 5d75955a1e..96570b656b 100644 --- a/src/slic3r/Utils/MoonrakerPrinterAgent.cpp +++ b/src/slic3r/Utils/MoonrakerPrinterAgent.cpp @@ -1,6 +1,7 @@ #include "MoonrakerPrinterAgent.hpp" #include "Http.hpp" #include "IPrinterAgent.hpp" +#include "bambu_networking.hpp" #include "libslic3r/Preset.hpp" #include "libslic3r/PresetBundle.hpp" #include "slic3r/GUI/GUI_App.hpp" @@ -11,18 +12,44 @@ #include "../GUI/DeviceCore/DevFirmware.h" #include "nlohmann/json.hpp" #include +#include +#include +#include +#include #include +#include #include #include +#include +#include +#include +#include +#include #include +#include +#include +#include +#include #include +#include +#include #include #include #include #include #include +#include +#include +#include #include +#include +#include +#include +#include +#include #include +#include +#include namespace { diff --git a/src/slic3r/Utils/MoonrakerPrinterAgent.hpp b/src/slic3r/Utils/MoonrakerPrinterAgent.hpp index a25a088ada..a733d4dfb2 100644 --- a/src/slic3r/Utils/MoonrakerPrinterAgent.hpp +++ b/src/slic3r/Utils/MoonrakerPrinterAgent.hpp @@ -3,7 +3,11 @@ #include "IPrinterAgent.hpp" #include "ICloudServiceAgent.hpp" +#include "bambu_networking.hpp" +#include +#include +#include #include #include #include @@ -11,6 +15,7 @@ #include #include +#include namespace Slic3r { diff --git a/src/slic3r/Utils/NetworkAgent.cpp b/src/slic3r/Utils/NetworkAgent.cpp index 1f7705658e..4e5154fd42 100644 --- a/src/slic3r/Utils/NetworkAgent.cpp +++ b/src/slic3r/Utils/NetworkAgent.cpp @@ -1,11 +1,24 @@ #include "NetworkAgent.hpp" +#include +#include +#include +#include +#include +#include "libslic3r/ProjectTask.hpp" #include #include #include +#include +#include +#include +#include "CloudProvider.hpp" +#include "ICloudServiceAgent.hpp" +#include "ICameraSignalingChannel.hpp" #include "IPrinterAgent.hpp" #include "BBLNetworkPlugin.hpp" +#include "bambu_networking.hpp" namespace Slic3r { diff --git a/src/slic3r/Utils/NetworkAgent.hpp b/src/slic3r/Utils/NetworkAgent.hpp index f93178db8b..c7813f2bb7 100644 --- a/src/slic3r/Utils/NetworkAgent.hpp +++ b/src/slic3r/Utils/NetworkAgent.hpp @@ -1,12 +1,15 @@ #ifndef __NETWORK_Agent_HPP__ #define __NETWORK_Agent_HPP__ +#include "CloudProvider.hpp" +#include "ICameraSignalingChannel.hpp" #include "bambu_networking.hpp" #include "libslic3r/ProjectTask.hpp" #include "ICloudServiceAgent.hpp" #include "IPrinterAgent.hpp" +#include #include #include #include diff --git a/src/slic3r/Utils/NetworkAgentFactory.cpp b/src/slic3r/Utils/NetworkAgentFactory.cpp index e2e58b7510..3d87a3eec9 100644 --- a/src/slic3r/Utils/NetworkAgentFactory.cpp +++ b/src/slic3r/Utils/NetworkAgentFactory.cpp @@ -1,4 +1,5 @@ #include "NetworkAgentFactory.hpp" +#include "CloudProvider.hpp" #include "IPrinterAgent.hpp" #include "ICloudServiceAgent.hpp" #include "BBLPrinterAgent.hpp" @@ -13,13 +14,18 @@ #include #include #include +#include #include +#include #include #include #include #include #include +#include +#include #include +#include namespace Slic3r { namespace { diff --git a/src/slic3r/Utils/NetworkAgentFactory.hpp b/src/slic3r/Utils/NetworkAgentFactory.hpp index a055b19493..0053a42466 100644 --- a/src/slic3r/Utils/NetworkAgentFactory.hpp +++ b/src/slic3r/Utils/NetworkAgentFactory.hpp @@ -1,6 +1,7 @@ #ifndef __NETWORK_AGENT_FACTORY_HPP__ #define __NETWORK_AGENT_FACTORY_HPP__ +#include "CloudProvider.hpp" #include "ICloudServiceAgent.hpp" #include "IPrinterAgent.hpp" #include "NetworkAgent.hpp" @@ -11,6 +12,7 @@ #include #include #include +#include #include namespace Slic3r { diff --git a/src/slic3r/Utils/Obico.cpp b/src/slic3r/Utils/Obico.cpp index 92d748b496..9dabd91467 100644 --- a/src/slic3r/Utils/Obico.cpp +++ b/src/slic3r/Utils/Obico.cpp @@ -1,6 +1,8 @@ #include "Obico.hpp" #include +#include "libslic3r/Exception.hpp" +#include #include #include #include @@ -14,8 +16,12 @@ #include #include +#include +#include #include +#include +#include "PrintHost.hpp" #include "slic3r/GUI/GUI.hpp" #include "slic3r/GUI/I18N.hpp" #include "slic3r/GUI/GUI_App.hpp" diff --git a/src/slic3r/Utils/OctoPrint.cpp b/src/slic3r/Utils/OctoPrint.cpp index fa57b7b527..a39b300d79 100644 --- a/src/slic3r/Utils/OctoPrint.cpp +++ b/src/slic3r/Utils/OctoPrint.cpp @@ -1,6 +1,10 @@ #include "OctoPrint.hpp" #include +#include +#include "libslic3r/Config.hpp" +#include "libslic3r/PrintConfig.hpp" +#include "libslic3r/Exception.hpp" #include #include #include @@ -14,8 +18,14 @@ #include +#include +#include +#include +#include #include +#include +#include "PrintHost.hpp" #include "slic3r/GUI/GUI.hpp" #include "slic3r/GUI/I18N.hpp" #include "slic3r/GUI/GUI_App.hpp" diff --git a/src/slic3r/Utils/OctoPrint.hpp b/src/slic3r/Utils/OctoPrint.hpp index ad7e8c411e..b2dbe11cff 100644 --- a/src/slic3r/Utils/OctoPrint.hpp +++ b/src/slic3r/Utils/OctoPrint.hpp @@ -1,6 +1,7 @@ #ifndef slic3r_OctoPrint_hpp_ #define slic3r_OctoPrint_hpp_ +#include #include #include #include diff --git a/src/slic3r/Utils/OrcaCloudServiceAgent.cpp b/src/slic3r/Utils/OrcaCloudServiceAgent.cpp index 1618bff548..2cebdb8ab9 100644 --- a/src/slic3r/Utils/OrcaCloudServiceAgent.cpp +++ b/src/slic3r/Utils/OrcaCloudServiceAgent.cpp @@ -1,21 +1,37 @@ #include "OrcaCloudServiceAgent.hpp" +#include "CloudProvider.hpp" #include "Http.hpp" +#include "bambu_networking.hpp" +#include "ICloudServiceAgent.hpp" #include "libslic3r/Utils.hpp" #include "slic3r/GUI/GUI_App.hpp" #include "libslic3r/AppConfig.hpp" +#include #include +#include +#include #include #include +#include #include +#include #include #include #include +#include +#include #include +#include #include +#include #include +#include +#include "libslic3r/Preset.hpp" +#include "libslic3r/ProjectTask.hpp" #include +#include #include #include #include @@ -32,7 +48,11 @@ #include #include +#include +#include +#include #include +#include #include #include #include diff --git a/src/slic3r/Utils/OrcaCloudServiceAgent.hpp b/src/slic3r/Utils/OrcaCloudServiceAgent.hpp index 7e060da84a..458aa55fcd 100644 --- a/src/slic3r/Utils/OrcaCloudServiceAgent.hpp +++ b/src/slic3r/Utils/OrcaCloudServiceAgent.hpp @@ -1,9 +1,12 @@ #ifndef __ORCA_CLOUD_SERVICE_AGENT_HPP__ #define __ORCA_CLOUD_SERVICE_AGENT_HPP__ +#include "CloudProvider.hpp" #include "ICameraSignalingChannel.hpp" #include "ICloudServiceAgent.hpp" +#include "bambu_networking.hpp" #include +#include "libslic3r/ProjectTask.hpp" #include #include #include @@ -13,6 +16,7 @@ #include #include #include +#include #include #include diff --git a/src/slic3r/Utils/OrcaPrinterAgent.cpp b/src/slic3r/Utils/OrcaPrinterAgent.cpp index 987cc0efdb..cb8b38acc8 100644 --- a/src/slic3r/Utils/OrcaPrinterAgent.cpp +++ b/src/slic3r/Utils/OrcaPrinterAgent.cpp @@ -1,6 +1,11 @@ #include "OrcaPrinterAgent.hpp" #include "IPrinterAgent.hpp" #include "NetworkAgentFactory.hpp" +#include +#include +#include +#include +#include "bambu_networking.hpp" namespace Slic3r { diff --git a/src/slic3r/Utils/OrcaPrinterAgent.hpp b/src/slic3r/Utils/OrcaPrinterAgent.hpp index 7d2a75fe0f..a56b2c8dda 100644 --- a/src/slic3r/Utils/OrcaPrinterAgent.hpp +++ b/src/slic3r/Utils/OrcaPrinterAgent.hpp @@ -3,6 +3,7 @@ #include "IPrinterAgent.hpp" #include "ICloudServiceAgent.hpp" +#include "bambu_networking.hpp" #include #include #include diff --git a/src/slic3r/Utils/PaintCLI.cpp b/src/slic3r/Utils/PaintCLI.cpp index d99dc0b450..2bf2b9728a 100644 --- a/src/slic3r/Utils/PaintCLI.cpp +++ b/src/slic3r/Utils/PaintCLI.cpp @@ -5,9 +5,13 @@ #include "libslic3r/TriangleMesh.hpp" #include "libslic3r/TriangleSelector.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/BoundingBox.hpp" +#include #include #include +#include #include #include #include diff --git a/src/slic3r/Utils/PresetUpdater.cpp b/src/slic3r/Utils/PresetUpdater.cpp index 5bbe779970..1df0edf8fa 100644 --- a/src/slic3r/Utils/PresetUpdater.cpp +++ b/src/slic3r/Utils/PresetUpdater.cpp @@ -1,12 +1,23 @@ #include "PresetUpdater.hpp" #include +#include +#include +#include #include +#include #include #include #include +#include #include #include +#include "libslic3r/Exception.hpp" +#include +#include +#include "libslic3r/AppConfig.hpp" +#include "libslic3r/Preset.hpp" +#include "libslic3r/Config.hpp" #include #include #include @@ -24,8 +35,10 @@ #include #include +#include #include +#include "json_diff.hpp" #include "libslic3r/libslic3r.h" #include "libslic3r/format.hpp" #include "libslic3r/Utils.hpp" diff --git a/src/slic3r/Utils/PresetUpdater.hpp b/src/slic3r/Utils/PresetUpdater.hpp index ccb0902fd5..22571e52d9 100644 --- a/src/slic3r/Utils/PresetUpdater.hpp +++ b/src/slic3r/Utils/PresetUpdater.hpp @@ -4,6 +4,7 @@ #include #include #include +#include #include #include diff --git a/src/slic3r/Utils/PrintHost.cpp b/src/slic3r/Utils/PrintHost.cpp index 2eeb78a975..2b3c4d181d 100644 --- a/src/slic3r/Utils/PrintHost.cpp +++ b/src/slic3r/Utils/PrintHost.cpp @@ -1,5 +1,17 @@ #include "PrintHost.hpp" +#include +#include "libslic3r/Config.hpp" +#include +#include +#include "slic3r/GUI/Gizmos/GLGizmoBase.hpp" +#include +#include +#include +#include +#include +#include "libslic3r/LifecycleEvents.hpp" +#include "slic3r/GUI/GUI_App.hpp" #include #include #include @@ -11,6 +23,7 @@ #include #include +#include #include #include #include diff --git a/src/slic3r/Utils/PrintHost.hpp b/src/slic3r/Utils/PrintHost.hpp index cf197ede07..771eb7732a 100644 --- a/src/slic3r/Utils/PrintHost.hpp +++ b/src/slic3r/Utils/PrintHost.hpp @@ -1,12 +1,14 @@ #ifndef slic3r_PrintHost_hpp_ #define slic3r_PrintHost_hpp_ +#include #include #include #include #include #include +#include #include #include diff --git a/src/slic3r/Utils/Process.cpp b/src/slic3r/Utils/Process.cpp index 96da521114..150e838489 100644 --- a/src/slic3r/Utils/Process.cpp +++ b/src/slic3r/Utils/Process.cpp @@ -1,5 +1,6 @@ #include "Process.hpp" +#include #include #include "../GUI/GUI.hpp" @@ -13,6 +14,11 @@ #include #include +#include +#include +#include +#include +#include // For starting another OrcaSlicer instance on OSX. // Fails to compile on Windows on the build server. diff --git a/src/slic3r/Utils/QidiPrinterAgent.cpp b/src/slic3r/Utils/QidiPrinterAgent.cpp index 4a90ec3771..06499e1092 100644 --- a/src/slic3r/Utils/QidiPrinterAgent.cpp +++ b/src/slic3r/Utils/QidiPrinterAgent.cpp @@ -1,13 +1,22 @@ #include "QidiPrinterAgent.hpp" #include "Http.hpp" +#include "MoonrakerPrinterAgent.hpp" +#include "IPrinterAgent.hpp" #include "libslic3r/PresetBundle.hpp" #include "slic3r/GUI/GUI_App.hpp" #include "nlohmann/json.hpp" #include +#include +#include #include #include +#include "libslic3r/Preset.hpp" +#include #include +#include +#include +#include using json = nlohmann::json; diff --git a/src/slic3r/Utils/QidiPrinterAgent.hpp b/src/slic3r/Utils/QidiPrinterAgent.hpp index ce7b4cda0d..5f4cfc3a7e 100644 --- a/src/slic3r/Utils/QidiPrinterAgent.hpp +++ b/src/slic3r/Utils/QidiPrinterAgent.hpp @@ -1,6 +1,7 @@ #ifndef __QIDI_PRINTER_AGENT_HPP__ #define __QIDI_PRINTER_AGENT_HPP__ +#include "IPrinterAgent.hpp" #include "MoonrakerPrinterAgent.hpp" #include diff --git a/src/slic3r/Utils/RaycastManager.cpp b/src/slic3r/Utils/RaycastManager.cpp index 62c7a922d7..dba5ae1a54 100644 --- a/src/slic3r/Utils/RaycastManager.cpp +++ b/src/slic3r/Utils/RaycastManager.cpp @@ -1,5 +1,17 @@ #include "RaycastManager.hpp" +#include "libslic3r/Model.hpp" +#include "libslic3r/AABBMesh.hpp" +#include +#include "libslic3r/Point.hpp" +#include +#include +#include +#include +#include +#include "slic3r/GUI/SceneRaycaster.hpp" +#include "slic3r/GUI/3DScene.hpp" #include +#include #include "slic3r/GUI/GLCanvas3D.hpp" #include "slic3r/GUI/Camera.hpp" diff --git a/src/slic3r/Utils/RaycastManager.hpp b/src/slic3r/Utils/RaycastManager.hpp index 4e143ba5dd..0c62ecaacc 100644 --- a/src/slic3r/Utils/RaycastManager.hpp +++ b/src/slic3r/Utils/RaycastManager.hpp @@ -1,8 +1,13 @@ #ifndef slic3r_RaycastManager_hpp_ #define slic3r_RaycastManager_hpp_ +#include +#include +#include #include // unique_ptr #include +#include +#include #include "libslic3r/AABBMesh.hpp" // Structure to cast rays #include "libslic3r/Point.hpp" // Transform3d #include "libslic3r/ObjectID.hpp" diff --git a/src/slic3r/Utils/Repetier.cpp b/src/slic3r/Utils/Repetier.cpp index a524f29b71..ae269cac4f 100644 --- a/src/slic3r/Utils/Repetier.cpp +++ b/src/slic3r/Utils/Repetier.cpp @@ -1,6 +1,9 @@ #include "Repetier.hpp" #include +#include +#include "libslic3r/Exception.hpp" +#include #include #include #include @@ -10,9 +13,13 @@ #include #include +#include +#include #include +#include +#include "PrintHost.hpp" #include "libslic3r/PrintConfig.hpp" #include "slic3r/GUI/I18N.hpp" #include "slic3r/GUI/GUI.hpp" diff --git a/src/slic3r/Utils/Serial.cpp b/src/slic3r/Utils/Serial.cpp index f8c03ceb26..2b64330826 100644 --- a/src/slic3r/Utils/Serial.cpp +++ b/src/slic3r/Utils/Serial.cpp @@ -3,7 +3,19 @@ #include "libslic3r/Exception.hpp" #include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include #include +#include #include #include #include diff --git a/src/slic3r/Utils/Serial.hpp b/src/slic3r/Utils/Serial.hpp index 8bad75b315..c5c4d19fc5 100644 --- a/src/slic3r/Utils/Serial.hpp +++ b/src/slic3r/Utils/Serial.hpp @@ -1,6 +1,9 @@ #ifndef slic3r_GUI_Utils_Serial_hpp_ #define slic3r_GUI_Utils_Serial_hpp_ +#include +#include +#include #include #include #include diff --git a/src/slic3r/Utils/SimplyPrint.cpp b/src/slic3r/Utils/SimplyPrint.cpp index a3edfd98ee..5c68878986 100644 --- a/src/slic3r/Utils/SimplyPrint.cpp +++ b/src/slic3r/Utils/SimplyPrint.cpp @@ -1,10 +1,36 @@ #include "SimplyPrint.hpp" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include #include #include #include #include +#include +#include +#include +#include +#include "slic3r/GUI/Jobs/OAuthJob.hpp" +#include +#include +#include +#include "PrintHost.hpp" #include "nlohmann/json.hpp" #include "libslic3r/Utils.hpp" #include "slic3r/GUI/I18N.hpp" diff --git a/src/slic3r/Utils/SimplyPrint.hpp b/src/slic3r/Utils/SimplyPrint.hpp index 3804324724..83ff64378e 100644 --- a/src/slic3r/Utils/SimplyPrint.hpp +++ b/src/slic3r/Utils/SimplyPrint.hpp @@ -3,6 +3,11 @@ #include "PrintHost.hpp" #include "slic3r/GUI/Jobs/OAuthJob.hpp" +#include +#include +#include +#include +#include namespace Slic3r { diff --git a/src/slic3r/Utils/SnapmakerPrinterAgent.cpp b/src/slic3r/Utils/SnapmakerPrinterAgent.cpp index 6039eb260f..a237d1b2b1 100644 --- a/src/slic3r/Utils/SnapmakerPrinterAgent.cpp +++ b/src/slic3r/Utils/SnapmakerPrinterAgent.cpp @@ -1,10 +1,17 @@ #include "SnapmakerPrinterAgent.hpp" #include "Http.hpp" +#include "MoonrakerPrinterAgent.hpp" +#include "IPrinterAgent.hpp" #include "libslic3r/PresetBundle.hpp" #include "slic3r/GUI/GUI_App.hpp" #include "nlohmann/json.hpp" #include +#include +#include +#include "libslic3r/Preset.hpp" +#include +#include using json = nlohmann::json; diff --git a/src/slic3r/Utils/SnapmakerPrinterAgent.hpp b/src/slic3r/Utils/SnapmakerPrinterAgent.hpp index d49fe21239..39b642081b 100644 --- a/src/slic3r/Utils/SnapmakerPrinterAgent.hpp +++ b/src/slic3r/Utils/SnapmakerPrinterAgent.hpp @@ -1,5 +1,6 @@ #pragma once +#include "IPrinterAgent.hpp" #include "MoonrakerPrinterAgent.hpp" #include diff --git a/src/slic3r/Utils/TCPConsole.cpp b/src/slic3r/Utils/TCPConsole.cpp index 25802e3908..78d4624abc 100644 --- a/src/slic3r/Utils/TCPConsole.cpp +++ b/src/slic3r/Utils/TCPConsole.cpp @@ -1,14 +1,21 @@ +#include +#include #include +#include #include #include #include #include #include #include +#include #include #include #include +#include +#include +#include #include #include #include diff --git a/src/slic3r/Utils/TCPConsole.hpp b/src/slic3r/Utils/TCPConsole.hpp index e94e130a9e..4ec766faa4 100644 --- a/src/slic3r/Utils/TCPConsole.hpp +++ b/src/slic3r/Utils/TCPConsole.hpp @@ -1,6 +1,9 @@ #ifndef slic3r_Utils_TCPConsole_hpp_ #define slic3r_Utils_TCPConsole_hpp_ +#include +#include +#include #include #include #include @@ -8,6 +11,7 @@ #include #include #include "SerialMessage.hpp" +#include "SerialMessageType.hpp" namespace Slic3r { namespace Utils { diff --git a/src/slic3r/Utils/UltiMaker.cpp b/src/slic3r/Utils/UltiMaker.cpp index badb69d209..fefd8ec786 100644 --- a/src/slic3r/Utils/UltiMaker.cpp +++ b/src/slic3r/Utils/UltiMaker.cpp @@ -1,6 +1,10 @@ #include "UltiMaker.hpp" #include +#include +#include +#include +#include #include #include #include @@ -8,14 +12,20 @@ #include #include +#include +#include +#include +#include #include #include #include #include #include +#include #include #include +#include "PrintHost.hpp" #include "libslic3r/PrintConfig.hpp" #include "slic3r/GUI/GUI.hpp" #include "slic3r/GUI/I18N.hpp" diff --git a/src/slic3r/Utils/UndoRedo.cpp b/src/slic3r/Utils/UndoRedo.cpp index 8e7bd703c3..2cdefefbb4 100644 --- a/src/slic3r/Utils/UndoRedo.cpp +++ b/src/slic3r/Utils/UndoRedo.cpp @@ -1,9 +1,18 @@ #include "UndoRedo.hpp" #include +#include +#include +#include +#include #include #include +#include +#include "libslic3r/Exception.hpp" #include +#include +#include +#include #include #include #include @@ -14,6 +23,8 @@ #include #include #include +#include +#include #define CEREAL_FUTURE_EXPERIMENTAL #include diff --git a/src/slic3r/Utils/UndoRedo.hpp b/src/slic3r/Utils/UndoRedo.hpp index 9042d60a4b..4a5aaca9c1 100644 --- a/src/slic3r/Utils/UndoRedo.hpp +++ b/src/slic3r/Utils/UndoRedo.hpp @@ -2,8 +2,11 @@ #define slic3r_Utils_UndoRedo_hpp_ #include +#include +#include #include #include +#include #include #include diff --git a/src/slic3r/Utils/WebSocketClient.hpp b/src/slic3r/Utils/WebSocketClient.hpp index 2660231794..f85c3e15fa 100644 --- a/src/slic3r/Utils/WebSocketClient.hpp +++ b/src/slic3r/Utils/WebSocketClient.hpp @@ -1,9 +1,18 @@ #ifndef _WEB_SOCKET_CLIENT_HPP_ #define _WEB_SOCKET_CLIENT_HPP_ +#include +#include #include +#include +#include +#include #include #include #include +#include +#include +#include +#include #include #include #include diff --git a/src/slic3r/Utils/WxFontUtils.cpp b/src/slic3r/Utils/WxFontUtils.cpp index a536e65912..4d28fa54c0 100644 --- a/src/slic3r/Utils/WxFontUtils.cpp +++ b/src/slic3r/Utils/WxFontUtils.cpp @@ -1,6 +1,15 @@ #include "WxFontUtils.hpp" #include +#include #include +#include +#include "libslic3r/Emboss.hpp" +#include +#include "libslic3r/TextConfiguration.hpp" +#include +#include +#include +#include #include "libslic3r/Utils.hpp" #if defined(__APPLE__) diff --git a/src/slic3r/Utils/WxFontUtils.hpp b/src/slic3r/Utils/WxFontUtils.hpp index 51c8605ff0..7a9448fbe9 100644 --- a/src/slic3r/Utils/WxFontUtils.hpp +++ b/src/slic3r/Utils/WxFontUtils.hpp @@ -1,8 +1,10 @@ #ifndef slic3r_WxFontUtils_hpp_ #define slic3r_WxFontUtils_hpp_ +#include "libslic3r/TextConfiguration.hpp" #include #include +#include #include #include #include diff --git a/src/slic3r/Utils/bambu_networking.hpp b/src/slic3r/Utils/bambu_networking.hpp index c514daffff..30c33c6c73 100644 --- a/src/slic3r/Utils/bambu_networking.hpp +++ b/src/slic3r/Utils/bambu_networking.hpp @@ -1,6 +1,7 @@ #ifndef __BAMBU_NETWORKING_HPP__ #define __BAMBU_NETWORKING_HPP__ +#include #include #include #include diff --git a/src/slic3r/Utils/minilzo_extension.cpp b/src/slic3r/Utils/minilzo_extension.cpp index 07031cd1af..eca2ee0a7f 100644 --- a/src/slic3r/Utils/minilzo_extension.cpp +++ b/src/slic3r/Utils/minilzo_extension.cpp @@ -1,3 +1,4 @@ +#include #include #include #include diff --git a/src/slic3r/Utils/wxInspectorPlugins/CustomWidgetsPlugin.cpp b/src/slic3r/Utils/wxInspectorPlugins/CustomWidgetsPlugin.cpp index df1b495bff..a35aceafeb 100644 --- a/src/slic3r/Utils/wxInspectorPlugins/CustomWidgetsPlugin.cpp +++ b/src/slic3r/Utils/wxInspectorPlugins/CustomWidgetsPlugin.cpp @@ -8,8 +8,16 @@ #include "slic3r/GUI/Widgets/Label.hpp" #include "slic3r/GUI/Widgets/LabeledStaticBox.hpp" +#include +#include +#include +#include +#include +#include +#include #include #include +#include wxString CustomWidgetsPlugin::GetName() const { diff --git a/src/slic3r/Utils/wxInspectorPlugins/CustomWidgetsPlugin.hpp b/src/slic3r/Utils/wxInspectorPlugins/CustomWidgetsPlugin.hpp index 083ed8a74c..1430677a7d 100644 --- a/src/slic3r/Utils/wxInspectorPlugins/CustomWidgetsPlugin.hpp +++ b/src/slic3r/Utils/wxInspectorPlugins/CustomWidgetsPlugin.hpp @@ -1,6 +1,10 @@ #pragma once +#include #include +#include +#include +#include class CustomWidgetsPlugin : public wxInspector::wxInspectorPlugin { diff --git a/src/slic3r/Utils/wxInspectorPlugins/DPIAwarePlugin.cpp b/src/slic3r/Utils/wxInspectorPlugins/DPIAwarePlugin.cpp index f52a5d4313..ee81e3e7fa 100644 --- a/src/slic3r/Utils/wxInspectorPlugins/DPIAwarePlugin.cpp +++ b/src/slic3r/Utils/wxInspectorPlugins/DPIAwarePlugin.cpp @@ -2,8 +2,15 @@ #include "slic3r/GUI/GUI_Utils.hpp" // DPIFrame, DPIDialog, DPIAware

+#include +#include +#include +#include +#include +#include #include #include +#include namespace { diff --git a/src/slic3r/Utils/wxInspectorPlugins/DPIAwarePlugin.hpp b/src/slic3r/Utils/wxInspectorPlugins/DPIAwarePlugin.hpp index 5d78342967..d1df7fe4aa 100644 --- a/src/slic3r/Utils/wxInspectorPlugins/DPIAwarePlugin.hpp +++ b/src/slic3r/Utils/wxInspectorPlugins/DPIAwarePlugin.hpp @@ -1,6 +1,10 @@ #pragma once +#include #include +#include +#include +#include class DPIAwarePlugin : public wxInspector::wxInspectorPlugin { diff --git a/src/slic3r/plugin/CloudPluginService.cpp b/src/slic3r/plugin/CloudPluginService.cpp index 6b72da3293..b6af332dbc 100644 --- a/src/slic3r/plugin/CloudPluginService.cpp +++ b/src/slic3r/plugin/CloudPluginService.cpp @@ -4,9 +4,13 @@ #include "slic3r/Utils/Http.hpp" #include +#include +#include #include #include #include +#include +#include #include #include #include diff --git a/src/slic3r/plugin/PluginAuditManager.cpp b/src/slic3r/plugin/PluginAuditManager.cpp index 4d69a4f761..bd75ad2459 100644 --- a/src/slic3r/plugin/PluginAuditManager.cpp +++ b/src/slic3r/plugin/PluginAuditManager.cpp @@ -3,24 +3,33 @@ #include "../Utils/OrcaCloudServiceAgent.hpp" #include "libslic3r/Utils.hpp" #include "libslic3r/libslic3r.h" // GCODEVIEWER_APP_KEY, and SLIC3R_APP_KEY via libslic3r_version.h +#include "libslic3r_version.h" #include +#include +#include #include #include #include #include #include +#include +#include #include #include #include #include +#include #include #include #include #include +#include #include #include +#include +#include namespace Slic3r { diff --git a/src/slic3r/plugin/PluginAuditManager.hpp b/src/slic3r/plugin/PluginAuditManager.hpp index 153f9d6107..76ac5cdd18 100644 --- a/src/slic3r/plugin/PluginAuditManager.hpp +++ b/src/slic3r/plugin/PluginAuditManager.hpp @@ -2,6 +2,7 @@ #define slic3r_PluginAuditManager_hpp_ // Via pybind11 so this file requests the same python3xx.lib as everything else. +#include #include #include #include diff --git a/src/slic3r/plugin/PluginBindingUtils.hpp b/src/slic3r/plugin/PluginBindingUtils.hpp index 52050ed561..7572777c43 100644 --- a/src/slic3r/plugin/PluginBindingUtils.hpp +++ b/src/slic3r/plugin/PluginBindingUtils.hpp @@ -1,8 +1,11 @@ #pragma once +#include "libslic3r/libslic3r.h" #include #include #include "libslic3r/Config.hpp" // ConfigBase #include "libslic3r/Point.hpp" // Point/Point3 packing asserts, Vec3d, Transform3d +#include +#include #include #include #include diff --git a/src/slic3r/plugin/PluginConfig.cpp b/src/slic3r/plugin/PluginConfig.cpp index 14d24fabe1..685d295206 100644 --- a/src/slic3r/plugin/PluginConfig.cpp +++ b/src/slic3r/plugin/PluginConfig.cpp @@ -1,24 +1,38 @@ #include "PluginConfig.hpp" #include +#include #include #include #include +#include #include +#include "libslic3r/Preset.hpp" #include #include +#include +#include +#include +#include "libslic3r/Utils.hpp" +#include "libslic3r/libslic3r.h" #include #include #include #include +#include "slic3r/plugin/PluginDescriptor.hpp" #include #include #include #include #include +#include +#include +#include +#include #include +#include #include namespace Slic3r { diff --git a/src/slic3r/plugin/PluginConfig.hpp b/src/slic3r/plugin/PluginConfig.hpp index 523173af68..8f39b4a40e 100644 --- a/src/slic3r/plugin/PluginConfig.hpp +++ b/src/slic3r/plugin/PluginConfig.hpp @@ -1,5 +1,6 @@ #pragma once +#include #include #include #include diff --git a/src/slic3r/plugin/PluginDescriptor.hpp b/src/slic3r/plugin/PluginDescriptor.hpp index b0d2d214c3..9e55a89e59 100644 --- a/src/slic3r/plugin/PluginDescriptor.hpp +++ b/src/slic3r/plugin/PluginDescriptor.hpp @@ -4,6 +4,7 @@ #include #include +#include #include #include #include diff --git a/src/slic3r/plugin/PluginFsUtils.cpp b/src/slic3r/plugin/PluginFsUtils.cpp index 4d6aabe3d3..e3b1bc3bee 100644 --- a/src/slic3r/plugin/PluginFsUtils.cpp +++ b/src/slic3r/plugin/PluginFsUtils.cpp @@ -4,16 +4,24 @@ #include "libslic3r/miniz_extension.hpp" #include +#include +#include +#include +#include #include #include #include "PluginAuditManager.hpp" #include "PythonInterpreter.hpp" +#include +#include #include #include #include +#include +#include "slic3r/plugin/PluginDescriptor.hpp" #include #include #include diff --git a/src/slic3r/plugin/PluginFsUtils.hpp b/src/slic3r/plugin/PluginFsUtils.hpp index 5b62e9f7f1..80174a68bd 100644 --- a/src/slic3r/plugin/PluginFsUtils.hpp +++ b/src/slic3r/plugin/PluginFsUtils.hpp @@ -1,6 +1,7 @@ #pragma once #include "PluginDescriptor.hpp" +#include #include #include @@ -9,6 +10,7 @@ #include #include +#include #include #define PLUGIN_SUBSCRIBED_DIR "_subscribed" diff --git a/src/slic3r/plugin/PluginHooks.cpp b/src/slic3r/plugin/PluginHooks.cpp index 2d84df5fdb..36c7f9292d 100644 --- a/src/slic3r/plugin/PluginHooks.cpp +++ b/src/slic3r/plugin/PluginHooks.cpp @@ -13,7 +13,10 @@ #include +#include +#include #include +#include "slic3r/plugin/PluginDescriptor.hpp" #include #include diff --git a/src/slic3r/plugin/PluginLoader.cpp b/src/slic3r/plugin/PluginLoader.cpp index 0c45564f1b..9da76b9109 100644 --- a/src/slic3r/plugin/PluginLoader.cpp +++ b/src/slic3r/plugin/PluginLoader.cpp @@ -11,9 +11,26 @@ #include "libslic3r/Utils.hpp" #include +#include +#include #include +#include +#include +#include +#include #include #include +#include "slic3r/plugin/PluginDescriptor.hpp" +#include +#include +#include +#include "slic3r/plugin/PythonPluginInterface.hpp" +#include +#include +#include +#include +#include +#include #ifdef _WIN32 #include #endif diff --git a/src/slic3r/plugin/PluginManager.cpp b/src/slic3r/plugin/PluginManager.cpp index 022f85eb1f..c064622b17 100644 --- a/src/slic3r/plugin/PluginManager.cpp +++ b/src/slic3r/plugin/PluginManager.cpp @@ -1,8 +1,14 @@ #include "PluginManager.hpp" +#include +#include +#include #include +#include +#include "libslic3r/LifecycleEvents.hpp" #include #include +#include #include #include "PluginFsUtils.hpp" @@ -21,14 +27,19 @@ #include #include #include +#include "slic3r/plugin/CloudPluginService.hpp" #include #include #include #include #include +#include #include +#include #include #include +#include +#include namespace Slic3r { namespace { diff --git a/src/slic3r/plugin/PluginManager.hpp b/src/slic3r/plugin/PluginManager.hpp index 891f787bf2..bd7a495a67 100644 --- a/src/slic3r/plugin/PluginManager.hpp +++ b/src/slic3r/plugin/PluginManager.hpp @@ -1,9 +1,11 @@ #ifndef slic3r_PluginManager_hpp_ #define slic3r_PluginManager_hpp_ +#include #include #include +#include #include #include #include @@ -13,9 +15,11 @@ #include #include #include +#include "slic3r/plugin/PluginFsUtils.hpp" #include #include #include +#include #include #include diff --git a/src/slic3r/plugin/PluginResolver.cpp b/src/slic3r/plugin/PluginResolver.cpp index 6e72929c63..6b8ca9a417 100644 --- a/src/slic3r/plugin/PluginResolver.cpp +++ b/src/slic3r/plugin/PluginResolver.cpp @@ -11,9 +11,15 @@ #include "../GUI/NotificationManager.hpp" #include +#include #include +#include "libslic3r/Preset.hpp" #include +#include #include +#include +#include "slic3r/plugin/PythonPluginInterface.hpp" +#include #include #include diff --git a/src/slic3r/plugin/PyPluginTrampoline.hpp b/src/slic3r/plugin/PyPluginTrampoline.hpp index 4c77f1ba9c..915c578353 100644 --- a/src/slic3r/plugin/PyPluginTrampoline.hpp +++ b/src/slic3r/plugin/PyPluginTrampoline.hpp @@ -1,17 +1,22 @@ #ifndef slic3r_PyPluginTrampoline_hpp_ #define slic3r_PyPluginTrampoline_hpp_ +#include "libslic3r/LifecycleEvents.hpp" #include #include #include #include +#include #include "PythonPluginInterface.hpp" #include "PythonInterpreter.hpp" #include "PluginFsUtils.hpp" #include "PluginAuditManager.hpp" +#include +#include +#include // Trampoline variants of pybind11's override macros. Every C++->Python plugin call crosses a // trampoline method, so this single boundary is where we (1) log the full Python traceback and diff --git a/src/slic3r/plugin/PythonInterpreter.cpp b/src/slic3r/plugin/PythonInterpreter.cpp index d82bf52a13..6d1afc1ba1 100644 --- a/src/slic3r/plugin/PythonInterpreter.cpp +++ b/src/slic3r/plugin/PythonInterpreter.cpp @@ -2,9 +2,15 @@ #include "GeneratedConfig.hpp" #include "libslic3r/Utils.hpp" #include "PluginAuditManager.hpp" +#include +#include #include +#include +#include +#include #include #include "PluginFsUtils.hpp" +#include #include @@ -16,7 +22,10 @@ #include #include #include +#include #include +#include +#include #include namespace Slic3r { diff --git a/src/slic3r/plugin/PythonInterpreter.hpp b/src/slic3r/plugin/PythonInterpreter.hpp index e15aa91598..2c499283cc 100644 --- a/src/slic3r/plugin/PythonInterpreter.hpp +++ b/src/slic3r/plugin/PythonInterpreter.hpp @@ -2,6 +2,7 @@ #define slic3r_PythonInterpreter_hpp_ // Via pybind11 so this file requests the same python3xx.lib as everything else. +#include #include #include #include diff --git a/src/slic3r/plugin/PythonPluginBridge.cpp b/src/slic3r/plugin/PythonPluginBridge.cpp index a88695005c..6cf747810f 100644 --- a/src/slic3r/plugin/PythonPluginBridge.cpp +++ b/src/slic3r/plugin/PythonPluginBridge.cpp @@ -3,15 +3,19 @@ #include #include #include +#include "libslic3r/LifecycleEvents.hpp" #include #include #include +#include "slic3r/plugin/PythonPluginInterface.hpp" #include #include #include #include #include +#include +#include #include "PythonInterpreter.hpp" #include "PluginFsUtils.hpp" @@ -23,6 +27,8 @@ #include "pluginTypes/pages/PagesPluginCapability.hpp" #include "pluginTypes/script/ScriptPluginCapability.hpp" #include "pluginTypes/slicingPipeline/SlicingPipelinePluginCapability.hpp" +#include +#include namespace py = pybind11; diff --git a/src/slic3r/plugin/host/PluginHost.cpp b/src/slic3r/plugin/host/PluginHost.cpp index 2830d6f276..ae56bc575c 100644 --- a/src/slic3r/plugin/host/PluginHost.cpp +++ b/src/slic3r/plugin/host/PluginHost.cpp @@ -1,10 +1,12 @@ #include "PluginHost.hpp" #include "PluginHostBindings.hpp" #include "PluginHostUi.hpp" +#include #include #include #include +#include namespace Slic3r { diff --git a/src/slic3r/plugin/host/PluginHostApp.cpp b/src/slic3r/plugin/host/PluginHostApp.cpp index 75acd4cc7b..668e99c7ff 100644 --- a/src/slic3r/plugin/host/PluginHostApp.cpp +++ b/src/slic3r/plugin/host/PluginHostApp.cpp @@ -1,4 +1,5 @@ #include "PluginHostBindings.hpp" +#include #include #include @@ -8,6 +9,8 @@ #include #include +#include +#include namespace py = pybind11; diff --git a/src/slic3r/plugin/host/PluginHostGeometry.cpp b/src/slic3r/plugin/host/PluginHostGeometry.cpp index 646dffb5d4..14db01cc4c 100644 --- a/src/slic3r/plugin/host/PluginHostGeometry.cpp +++ b/src/slic3r/plugin/host/PluginHostGeometry.cpp @@ -1,10 +1,18 @@ #include "PluginHostBindings.hpp" +#include +#include +#include +#include #include "slic3r/plugin/PluginBindingUtils.hpp" +#include #include #include // offset/offset_ex/union_ex/diff_ex/intersection_ex #include +#include "libslic3r/Polygon.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/Point.hpp" #include #include diff --git a/src/slic3r/plugin/host/PluginHostMesh.cpp b/src/slic3r/plugin/host/PluginHostMesh.cpp index 28da5c3afc..8799278bd5 100644 --- a/src/slic3r/plugin/host/PluginHostMesh.cpp +++ b/src/slic3r/plugin/host/PluginHostMesh.cpp @@ -1,11 +1,18 @@ #include "PluginHostBindings.hpp" #include "PluginHostMesh.hpp" +#include +#include +#include #include "slic3r/plugin/PluginBindingUtils.hpp" +#include "libslic3r/TriangleMesh.hpp" +#include "libslic3r/Point.hpp" +#include #include #include #include +#include #include namespace py = pybind11; diff --git a/src/slic3r/plugin/host/PluginHostModel.cpp b/src/slic3r/plugin/host/PluginHostModel.cpp index 3da1c2ae6f..357e37808d 100644 --- a/src/slic3r/plugin/host/PluginHostModel.cpp +++ b/src/slic3r/plugin/host/PluginHostModel.cpp @@ -1,7 +1,11 @@ #include "PluginHostBindings.hpp" #include "PluginHostMesh.hpp" +#include +#include +#include #include "slic3r/plugin/PluginBindingUtils.hpp" +#include #include #include diff --git a/src/slic3r/plugin/host/PluginHostPresets.cpp b/src/slic3r/plugin/host/PluginHostPresets.cpp index fffe9e64cf..6e10e3f282 100644 --- a/src/slic3r/plugin/host/PluginHostPresets.cpp +++ b/src/slic3r/plugin/host/PluginHostPresets.cpp @@ -1,9 +1,14 @@ #include "PluginHostBindings.hpp" +#include +#include +#include #include "slic3r/plugin/PluginBindingUtils.hpp" +#include #include #include +#include #include #include diff --git a/src/slic3r/plugin/host/PluginHostSlicing.cpp b/src/slic3r/plugin/host/PluginHostSlicing.cpp index 30e7b45138..fb2c02eaac 100644 --- a/src/slic3r/plugin/host/PluginHostSlicing.cpp +++ b/src/slic3r/plugin/host/PluginHostSlicing.cpp @@ -1,4 +1,7 @@ #include "PluginHostBindings.hpp" +#include +#include +#include #include "slic3r/plugin/PluginBindingUtils.hpp" #include "libslic3r/BoundingBox.hpp" @@ -10,8 +13,12 @@ #include "libslic3r/Layer.hpp" // LayerRegion, Layer, SupportLayer #include "libslic3r/Print.hpp" // PrintRegion, PrintObject, Print +#include "libslic3r/Point.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/Model.hpp" #include #include +#include #include namespace py = pybind11; diff --git a/src/slic3r/plugin/host/PluginHostUi.cpp b/src/slic3r/plugin/host/PluginHostUi.cpp index ed501f0249..54de1df0d6 100644 --- a/src/slic3r/plugin/host/PluginHostUi.cpp +++ b/src/slic3r/plugin/host/PluginHostUi.cpp @@ -1,9 +1,14 @@ #include "PluginHostUi.hpp" +#include +#include +#include #include "slic3r/plugin/PluginAuditManager.hpp" #include "slic3r/plugin/PythonInterpreter.hpp" // PythonGILState #include "slic3r/plugin/PluginFsUtils.hpp" // json_to_py / py_to_json +#include +#include #include #include #include @@ -18,8 +23,14 @@ #include +#include +#include #include #include +#include +#include +#include +#include #include #include diff --git a/src/slic3r/plugin/host/PluginPages.cpp b/src/slic3r/plugin/host/PluginPages.cpp index eb8b3332b9..680b573bd7 100644 --- a/src/slic3r/plugin/host/PluginPages.cpp +++ b/src/slic3r/plugin/host/PluginPages.cpp @@ -9,16 +9,30 @@ #include +#include #include #include +#include +#include +#include #include +#include "slic3r/plugin/pluginTypes/pages/PagesPluginCapability.hpp" +#include "slic3r/GUI/WebPanel.hpp" +#include +#include "slic3r/plugin/PythonPluginInterface.hpp" #include +#include +#include +#include #include +#include #include #include #include +#include +#include namespace Slic3r { namespace { diff --git a/src/slic3r/plugin/host/PluginPages.hpp b/src/slic3r/plugin/host/PluginPages.hpp index 59d34fe9ff..c0dd74b94d 100644 --- a/src/slic3r/plugin/host/PluginPages.hpp +++ b/src/slic3r/plugin/host/PluginPages.hpp @@ -12,6 +12,7 @@ #include #include +#include #include class Notebook; diff --git a/src/slic3r/plugin/pluginTypes/pages/PagesPluginCapability.cpp b/src/slic3r/plugin/pluginTypes/pages/PagesPluginCapability.cpp index e009f4426f..e6ab45246b 100644 --- a/src/slic3r/plugin/pluginTypes/pages/PagesPluginCapability.cpp +++ b/src/slic3r/plugin/pluginTypes/pages/PagesPluginCapability.cpp @@ -2,10 +2,17 @@ #include "PagesPluginCapabilityTrampoline.hpp" #include "../../PluginFsUtils.hpp" +#include +#include #include +#include +#include +#include #include +#include "slic3r/plugin/PythonPluginInterface.hpp" +#include #include namespace py = pybind11; diff --git a/src/slic3r/plugin/pluginTypes/pages/PagesPluginCapabilityTrampoline.hpp b/src/slic3r/plugin/pluginTypes/pages/PagesPluginCapabilityTrampoline.hpp index f6e13c981b..24b98bea24 100644 --- a/src/slic3r/plugin/pluginTypes/pages/PagesPluginCapabilityTrampoline.hpp +++ b/src/slic3r/plugin/pluginTypes/pages/PagesPluginCapabilityTrampoline.hpp @@ -3,8 +3,14 @@ #include "PagesPluginCapability.hpp" #include "../../PluginFsUtils.hpp" #include "../../PyPluginTrampoline.hpp" +#include +#include #include +#include +#include "slic3r/plugin/PythonPluginInterface.hpp" +#include "slic3r/plugin/PythonInterpreter.hpp" +#include namespace Slic3r { diff --git a/src/slic3r/plugin/pluginTypes/printerAgent/PrinterAgentPluginCapability.cpp b/src/slic3r/plugin/pluginTypes/printerAgent/PrinterAgentPluginCapability.cpp index d0c88404fe..eac19199bf 100644 --- a/src/slic3r/plugin/pluginTypes/printerAgent/PrinterAgentPluginCapability.cpp +++ b/src/slic3r/plugin/pluginTypes/printerAgent/PrinterAgentPluginCapability.cpp @@ -2,11 +2,16 @@ #include "PrinterAgentPluginCapabilityTrampoline.hpp" #include "IPrinterAgent.hpp" +#include +#include "slic3r/Utils/bambu_networking.hpp" +#include #include #include #include +#include +#include "slic3r/plugin/PythonPluginInterface.hpp" #include namespace py = pybind11; diff --git a/src/slic3r/plugin/pluginTypes/printerAgent/PrinterAgentPluginCapability.hpp b/src/slic3r/plugin/pluginTypes/printerAgent/PrinterAgentPluginCapability.hpp index d33cee7afe..e106a35f52 100644 --- a/src/slic3r/plugin/pluginTypes/printerAgent/PrinterAgentPluginCapability.hpp +++ b/src/slic3r/plugin/pluginTypes/printerAgent/PrinterAgentPluginCapability.hpp @@ -4,6 +4,8 @@ #include "../../PythonPluginInterface.hpp" #include "IPrinterAgent.hpp" +#include +#include "slic3r/Utils/bambu_networking.hpp" #include #include diff --git a/src/slic3r/plugin/pluginTypes/printerAgent/PrinterAgentPluginCapabilityTrampoline.hpp b/src/slic3r/plugin/pluginTypes/printerAgent/PrinterAgentPluginCapabilityTrampoline.hpp index 2e15523430..790f6e3ac6 100644 --- a/src/slic3r/plugin/pluginTypes/printerAgent/PrinterAgentPluginCapabilityTrampoline.hpp +++ b/src/slic3r/plugin/pluginTypes/printerAgent/PrinterAgentPluginCapabilityTrampoline.hpp @@ -5,9 +5,16 @@ #include "../../PyPluginTrampoline.hpp" #include "IPrinterAgent.hpp" +#include "slic3r/Utils/bambu_networking.hpp" #include "pybind11/pybind11.h" +#include +#include +#include +#include #include +#include "slic3r/plugin/PythonInterpreter.hpp" #include +#include #include #include diff --git a/src/slic3r/plugin/pluginTypes/script/ScriptPluginCapability.cpp b/src/slic3r/plugin/pluginTypes/script/ScriptPluginCapability.cpp index 712ba9b653..f9ff379cf8 100644 --- a/src/slic3r/plugin/pluginTypes/script/ScriptPluginCapability.cpp +++ b/src/slic3r/plugin/pluginTypes/script/ScriptPluginCapability.cpp @@ -3,8 +3,10 @@ #include "ScriptPluginCapabilityTrampoline.hpp" #include +#include #include #include +#include "slic3r/plugin/PythonPluginInterface.hpp" namespace py = pybind11; diff --git a/src/slic3r/plugin/pluginTypes/script/ScriptPluginCapability.hpp b/src/slic3r/plugin/pluginTypes/script/ScriptPluginCapability.hpp index fb1319e560..59055d7c8f 100644 --- a/src/slic3r/plugin/pluginTypes/script/ScriptPluginCapability.hpp +++ b/src/slic3r/plugin/pluginTypes/script/ScriptPluginCapability.hpp @@ -2,6 +2,7 @@ #define slic3r_ScriptPluginCapability_hpp_ #include "../../PythonPluginInterface.hpp" +#include namespace Slic3r { class ScriptPluginCapability : public PluginCapabilityInterface diff --git a/src/slic3r/plugin/pluginTypes/script/ScriptPluginCapabilityTrampoline.hpp b/src/slic3r/plugin/pluginTypes/script/ScriptPluginCapabilityTrampoline.hpp index 62958a89d9..dc90001c57 100644 --- a/src/slic3r/plugin/pluginTypes/script/ScriptPluginCapabilityTrampoline.hpp +++ b/src/slic3r/plugin/pluginTypes/script/ScriptPluginCapabilityTrampoline.hpp @@ -3,6 +3,8 @@ #include "ScriptPluginCapability.hpp" #include "../../PyPluginTrampoline.hpp" +#include "slic3r/plugin/PythonPluginInterface.hpp" +#include namespace Slic3r { class PyScriptPluginCapabilityTrampoline : public PyPluginCommonTrampoline diff --git a/src/slic3r/plugin/pluginTypes/slicingPipeline/SlicingPipelinePluginCapability.cpp b/src/slic3r/plugin/pluginTypes/slicingPipeline/SlicingPipelinePluginCapability.cpp index d2e630242d..ed2a6aeecf 100644 --- a/src/slic3r/plugin/pluginTypes/slicingPipeline/SlicingPipelinePluginCapability.cpp +++ b/src/slic3r/plugin/pluginTypes/slicingPipeline/SlicingPipelinePluginCapability.cpp @@ -1,7 +1,14 @@ #include "SlicingPipelinePluginCapability.hpp" #include "SlicingPipelinePluginCapabilityTrampoline.hpp" +#include +#include +#include #include "slic3r/plugin/PluginBindingUtils.hpp" // config_value_or_none #include "libslic3r/libslic3r.h" // unscale<>, live SCALING_FACTOR +#include "libslic3r/Print.hpp" +#include +#include "slic3r/plugin/PythonPluginInterface.hpp" +#include namespace py = pybind11; namespace Slic3r { diff --git a/src/slic3r/plugin/pluginTypes/slicingPipeline/SlicingPipelinePluginCapability.hpp b/src/slic3r/plugin/pluginTypes/slicingPipeline/SlicingPipelinePluginCapability.hpp index da0dbcbcbd..6bad90817f 100644 --- a/src/slic3r/plugin/pluginTypes/slicingPipeline/SlicingPipelinePluginCapability.hpp +++ b/src/slic3r/plugin/pluginTypes/slicingPipeline/SlicingPipelinePluginCapability.hpp @@ -1,6 +1,7 @@ #pragma once #include "slic3r/plugin/PythonPluginInterface.hpp" #include "libslic3r/Print.hpp" // SlicingPipelineStepPlugin, Print, PrintObject +#include "libslic3r/PrintConfig.hpp" #include #include #include diff --git a/src/slic3r/plugin/pluginTypes/slicingPipeline/SlicingPipelinePluginCapabilityTrampoline.hpp b/src/slic3r/plugin/pluginTypes/slicingPipeline/SlicingPipelinePluginCapabilityTrampoline.hpp index 5c9d527e42..82312c4200 100644 --- a/src/slic3r/plugin/pluginTypes/slicingPipeline/SlicingPipelinePluginCapabilityTrampoline.hpp +++ b/src/slic3r/plugin/pluginTypes/slicingPipeline/SlicingPipelinePluginCapabilityTrampoline.hpp @@ -1,8 +1,10 @@ #pragma once #include "SlicingPipelinePluginCapability.hpp" +#include #include "slic3r/plugin/PyPluginTrampoline.hpp" #include "slic3r/plugin/PluginAuditManager.hpp" #include +#include "slic3r/plugin/PythonPluginInterface.hpp" namespace Slic3r { class PySlicingPipelinePluginCapabilityTrampoline : public PyPluginCommonTrampoline { diff --git a/tests/fff_print/test_cooling.cpp b/tests/fff_print/test_cooling.cpp index a21ff236ce..4ae9649197 100644 --- a/tests/fff_print/test_cooling.cpp +++ b/tests/fff_print/test_cooling.cpp @@ -1,10 +1,16 @@ #include +#include #include "test_helpers.hpp" #include +#include "libslic3r/PrintConfig.hpp" +#include "libslic3r/Config.hpp" +#include "libslic3r/TriangleMesh.hpp" +#include "libslic3r/libslic3r.h" #include #include +#include #include using namespace Slic3r; diff --git a/tests/fff_print/test_extrusion_entity.cpp b/tests/fff_print/test_extrusion_entity.cpp index 57bc7e81e6..5b18b3ece5 100644 --- a/tests/fff_print/test_extrusion_entity.cpp +++ b/tests/fff_print/test_extrusion_entity.cpp @@ -1,7 +1,12 @@ +#include #include #include +#include +#include +#include +#include #include "libslic3r/ExtrusionEntityCollection.hpp" #include "libslic3r/ExtrusionEntity.hpp" #include "libslic3r/Point.hpp" diff --git a/tests/fff_print/test_extrusion_processor.cpp b/tests/fff_print/test_extrusion_processor.cpp index 47f9a62ecf..a3499a71b5 100644 --- a/tests/fff_print/test_extrusion_processor.cpp +++ b/tests/fff_print/test_extrusion_processor.cpp @@ -1,5 +1,11 @@ #include +#include +#include +#include +#include +#include +#include #include "libslic3r/AABBTreeLines.hpp" #include "libslic3r/GCode/ExtrusionProcessor.hpp" #include "libslic3r/GCodeReader.hpp" @@ -9,7 +15,15 @@ #include #include +#include +#include "libslic3r/Line.hpp" +#include "libslic3r/Point.hpp" +#include +#include "libslic3r/PrintConfig.hpp" +#include "libslic3r/Print.hpp" +#include "libslic3r/Model.hpp" #include +#include #include using namespace Slic3r; diff --git a/tests/fff_print/test_fill.cpp b/tests/fff_print/test_fill.cpp index 0efaba023d..7247503824 100644 --- a/tests/fff_print/test_fill.cpp +++ b/tests/fff_print/test_fill.cpp @@ -2,13 +2,35 @@ #include #include +#include +#include #include +#include "libslic3r/Fill/FillBase.hpp" +#include "libslic3r/Polyline.hpp" +#include "libslic3r/Surface.hpp" +#include "libslic3r/Point.hpp" +#include +#include "libslic3r/Polygon.hpp" +#include "libslic3r/ExtrusionEntity.hpp" +#include "libslic3r/Line.hpp" +#include "libslic3r/ExPolygon.hpp" +#include "libslic3r/TriangleMesh.hpp" +#include +#include "libslic3r/Model.hpp" #include +#include +#include #include #include #include +#include #include +#include +#include +#include +#include +#include #include "libslic3r/ClipperUtils.hpp" #include "libslic3r/AABBTreeLines.hpp" #include "libslic3r/Fill/Fill.hpp" diff --git a/tests/fff_print/test_flow.cpp b/tests/fff_print/test_flow.cpp index 6025bb9b56..f0579c675f 100644 --- a/tests/fff_print/test_flow.cpp +++ b/tests/fff_print/test_flow.cpp @@ -1,8 +1,11 @@ #include +#include #include #include +#include +#include #include "test_helpers.hpp" // get access to init_print, etc #include "libslic3r/Config.hpp" diff --git a/tests/fff_print/test_gcode_timing.cpp b/tests/fff_print/test_gcode_timing.cpp index 8c08fc4f03..45a71cdd92 100644 --- a/tests/fff_print/test_gcode_timing.cpp +++ b/tests/fff_print/test_gcode_timing.cpp @@ -1,5 +1,9 @@ #include +#include +#include +#include +#include #include "libslic3r/libslic3r.h" #include "libslic3r/GCode/GCodeProcessor.hpp" #include "libslic3r/MultiNozzleUtils.hpp" @@ -8,9 +12,13 @@ #include "test_utils.hpp" #include +#include #include #include +#include "libslic3r/ExtrusionEntity.hpp" +#include #include +#include #include #include #include diff --git a/tests/fff_print/test_gcodeprocessor.cpp b/tests/fff_print/test_gcodeprocessor.cpp index 402a4757e1..6914ec4df9 100644 --- a/tests/fff_print/test_gcodeprocessor.cpp +++ b/tests/fff_print/test_gcodeprocessor.cpp @@ -1,5 +1,7 @@ #include +#include +#include #include "libslic3r/libslic3r.h" #include "libslic3r/GCode/GCodeProcessor.hpp" diff --git a/tests/fff_print/test_gcodewriter.cpp b/tests/fff_print/test_gcodewriter.cpp index d3a0722fc1..992204d716 100644 --- a/tests/fff_print/test_gcodewriter.cpp +++ b/tests/fff_print/test_gcodewriter.cpp @@ -1,14 +1,28 @@ +#include #include #include #include +#include "libslic3r/PrintConfig.hpp" +#include "libslic3r/BoundingBox.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/Config.hpp" +#include "libslic3r/Extruder.hpp" +#include "libslic3r/libslic3r.h" #include #include #include #include #include +#include #include +#include +#include +#include +#include +#include +#include #include "nlohmann/json.hpp" #include "libslic3r/GCodeReader.hpp" diff --git a/tests/fff_print/test_helpers.cpp b/tests/fff_print/test_helpers.cpp index 89f9f9fdd1..c131b10f83 100644 --- a/tests/fff_print/test_helpers.cpp +++ b/tests/fff_print/test_helpers.cpp @@ -1,5 +1,6 @@ #include "test_helpers.hpp" +#include #include "libslic3r/TriangleMesh.hpp" #include "libslic3r/GCodeReader.hpp" #include "libslic3r/Config.hpp" @@ -7,11 +8,23 @@ #include "libslic3r/Format/OBJ.hpp" #include "libslic3r/Format/STL.hpp" +#include #include +#include "libslic3r/libslic3r.h" +#include "libslic3r/Exception.hpp" +#include "libslic3r/PrintConfig.hpp" +#include +#include "libslic3r/Point.hpp" +#include +#include +#include #include #include #include +#include +#include +#include #include "test_utils.hpp" diff --git a/tests/fff_print/test_helpers.hpp b/tests/fff_print/test_helpers.hpp index cbdc90c3d9..1ffc08c64e 100644 --- a/tests/fff_print/test_helpers.hpp +++ b/tests/fff_print/test_helpers.hpp @@ -8,6 +8,10 @@ #include "libslic3r/Print.hpp" #include "libslic3r/TriangleMesh.hpp" +#include "libslic3r/libslic3r.h" +#include +#include "libslic3r/PrintConfig.hpp" +#include #include #include #include diff --git a/tests/fff_print/test_mixed_filament.cpp b/tests/fff_print/test_mixed_filament.cpp index 25b426c210..bfa8985fd4 100644 --- a/tests/fff_print/test_mixed_filament.cpp +++ b/tests/fff_print/test_mixed_filament.cpp @@ -1,5 +1,16 @@ +#include #include +#include "libslic3r/PrintConfig.hpp" +#include +#include +#include "libslic3r/Model.hpp" +#include +#include "libslic3r/Config.hpp" +#include "libslic3r/TriangleMesh.hpp" +#include "libslic3r/PrintBase.hpp" +#include +#include #include "libslic3r/GCode/ToolOrdering.hpp" #include "libslic3r/MultiNozzleUtils.hpp" #include "libslic3r/Print.hpp" diff --git a/tests/fff_print/test_model.cpp b/tests/fff_print/test_model.cpp index 27bf539373..9e2c0790b3 100644 --- a/tests/fff_print/test_model.cpp +++ b/tests/fff_print/test_model.cpp @@ -1,10 +1,17 @@ +#include #include +#include #include "libslic3r/libslic3r.h" #include "libslic3r/Model.hpp" #include "libslic3r/ModelArrange.hpp" #include +#include "libslic3r/TriangleMesh.hpp" +#include "libslic3r/PrintConfig.hpp" +#include +#include "libslic3r/Point.hpp" +#include #include "test_helpers.hpp" #include "test_utils.hpp" diff --git a/tests/fff_print/test_multifilament.cpp b/tests/fff_print/test_multifilament.cpp index 445b1c0694..9b9cae23db 100644 --- a/tests/fff_print/test_multifilament.cpp +++ b/tests/fff_print/test_multifilament.cpp @@ -1,5 +1,8 @@ #include +#include +#include +#include #include "libslic3r/GCode/GCodeProcessor.hpp" #include "libslic3r/GCodeReader.hpp" @@ -12,6 +15,11 @@ #include #include #include +#include "libslic3r/PrintConfig.hpp" +#include "libslic3r/Config.hpp" +#include "libslic3r/Model.hpp" +#include "libslic3r/TriangleMesh.hpp" +#include "libslic3r/Print.hpp" #include #include #include diff --git a/tests/fff_print/test_perimeters.cpp b/tests/fff_print/test_perimeters.cpp index 459ba0a178..6ab3473e3c 100644 --- a/tests/fff_print/test_perimeters.cpp +++ b/tests/fff_print/test_perimeters.cpp @@ -1,5 +1,10 @@ #include +#include +#include +#include +#include +#include #include "libslic3r/ExtrusionEntity.hpp" #include "libslic3r/ExtrusionEntityCollection.hpp" #include "libslic3r/Layer.hpp" @@ -10,8 +15,15 @@ #include #include +#include "libslic3r/PrintConfig.hpp" +#include +#include "libslic3r/libslic3r.h" +#include "libslic3r/BoundingBox.hpp" +#include "libslic3r/ExPolygon.hpp" +#include "libslic3r/Point.hpp" #include #include +#include #include #include "test_helpers.hpp" diff --git a/tests/fff_print/test_precise_seam.cpp b/tests/fff_print/test_precise_seam.cpp index d324a91626..0dd422f0f5 100644 --- a/tests/fff_print/test_precise_seam.cpp +++ b/tests/fff_print/test_precise_seam.cpp @@ -1,9 +1,24 @@ #include +#include +#include +#include +#include +#include #include "test_helpers.hpp" #include "libslic3r/GCode/PreciseSeam.hpp" #include +#include "libslic3r/Point.hpp" +#include "libslic3r/Polygon.hpp" +#include "libslic3r/Model.hpp" +#include "libslic3r/Print.hpp" +#include "libslic3r/Layer.hpp" +#include +#include +#include "libslic3r/libslic3r.h" +#include "libslic3r/GCode/SeamPlacer.hpp" +#include using namespace Slic3r; diff --git a/tests/fff_print/test_print.cpp b/tests/fff_print/test_print.cpp index 4176256021..9417934276 100644 --- a/tests/fff_print/test_print.cpp +++ b/tests/fff_print/test_print.cpp @@ -8,6 +8,20 @@ #include #endif +#include +#include +#include +#include +#include +#include "libslic3r/PrintConfig.hpp" +#include +#include "libslic3r/Surface.hpp" +#include "libslic3r/Config.hpp" +#include "libslic3r/PrintBase.hpp" +#include "libslic3r/TriangleMesh.hpp" +#include +#include + #include #include "libslic3r/libslic3r.h" diff --git a/tests/fff_print/test_printobject.cpp b/tests/fff_print/test_printobject.cpp index a373a1ad39..6671dabc4b 100644 --- a/tests/fff_print/test_printobject.cpp +++ b/tests/fff_print/test_printobject.cpp @@ -1,5 +1,11 @@ +#include #include +#include +#include +#include +#include +#include #include "libslic3r/libslic3r.h" #include "libslic3r/Print.hpp" #include "libslic3r/Layer.hpp" @@ -10,7 +16,20 @@ #include "test_helpers.hpp" #include +#include #include +#include "libslic3r/TriangleMesh.hpp" +#include "libslic3r/PrintConfig.hpp" +#include "libslic3r/Model.hpp" +#include "libslic3r/Geometry.hpp" +#include "libslic3r/Surface.hpp" +#include "libslic3r/Config.hpp" +#include "libslic3r/Polygon.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/Polyline.hpp" +#include "libslic3r/Line.hpp" +#include "libslic3r/ExtrusionEntity.hpp" +#include "libslic3r/BoundingBox.hpp" #include #include #include diff --git a/tests/fff_print/test_seam_placer.cpp b/tests/fff_print/test_seam_placer.cpp index 81b7cd806c..40bbbdd117 100644 --- a/tests/fff_print/test_seam_placer.cpp +++ b/tests/fff_print/test_seam_placer.cpp @@ -1,5 +1,10 @@ #include +#include +#include +#include +#include +#include #include "test_helpers.hpp" #include "libslic3r/GCode/SeamPlacer.hpp" #include "libslic3r/Layer.hpp" @@ -7,6 +12,16 @@ #include #include +#include "libslic3r/Model.hpp" +#include "libslic3r/PrintConfig.hpp" +#include "libslic3r/TriangleMesh.hpp" +#include +#include +#include "libslic3r/Point.hpp" +#include +#include "libslic3r/ExtrusionEntity.hpp" +#include "libslic3r/Polyline.hpp" +#include "libslic3r/libslic3r.h" using namespace Slic3r; diff --git a/tests/fff_print/test_skirt_brim.cpp b/tests/fff_print/test_skirt_brim.cpp index 17a79a7828..d04b32361e 100644 --- a/tests/fff_print/test_skirt_brim.cpp +++ b/tests/fff_print/test_skirt_brim.cpp @@ -1,5 +1,11 @@ +#include #include +#include +#include +#include +#include +#include #include "libslic3r/GCodeReader.hpp" #include "libslic3r/Config.hpp" #include "libslic3r/Geometry.hpp" @@ -9,6 +15,16 @@ #include #include +#include +#include "libslic3r/Polygon.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/Polyline.hpp" +#include +#include "libslic3r/Model.hpp" +#include +#include "libslic3r/PrintConfig.hpp" +#include "libslic3r/libslic3r.h" +#include #include "test_helpers.hpp" // get access to init_print, etc diff --git a/tests/fff_print/test_slicing_pipeline_hook.cpp b/tests/fff_print/test_slicing_pipeline_hook.cpp index d7ebd1fd60..8b328e5dde 100644 --- a/tests/fff_print/test_slicing_pipeline_hook.cpp +++ b/tests/fff_print/test_slicing_pipeline_hook.cpp @@ -1,4 +1,14 @@ #include +#include "libslic3r/Config.hpp" +#include "libslic3r/Model.hpp" +#include +#include +#include "libslic3r/Surface.hpp" +#include +#include "libslic3r/libslic3r.h" +#include "libslic3r/Point.hpp" +#include +#include "libslic3r/ExtrusionEntity.hpp" #include "libslic3r/PrintConfig.hpp" #include "test_helpers.hpp" using namespace Slic3r; diff --git a/tests/fff_print/test_support_material.cpp b/tests/fff_print/test_support_material.cpp index 97a9cea9e1..d311130094 100644 --- a/tests/fff_print/test_support_material.cpp +++ b/tests/fff_print/test_support_material.cpp @@ -1,12 +1,28 @@ +#include #include +#include +#include +#include +#include +#include #include "libslic3r/GCodeReader.hpp" #include "libslic3r/Layer.hpp" #include +#include +#include "libslic3r/TriangleMesh.hpp" +#include "libslic3r/PrintBase.hpp" +#include "libslic3r/Model.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/PrintConfig.hpp" #include +#include #include #include +#include +#include +#include #include #include "test_helpers.hpp" // get access to init_print, etc diff --git a/tests/fff_print/test_texture_displacement.cpp b/tests/fff_print/test_texture_displacement.cpp index 459a42d185..87047af618 100644 --- a/tests/fff_print/test_texture_displacement.cpp +++ b/tests/fff_print/test_texture_displacement.cpp @@ -1,10 +1,22 @@ +#include +#include #include +#include +#include #include +#include #include #include +#include +#include +#include +#include +#include "libslic3r/PrintConfig.hpp" +#include +#include #include "libslic3r/Model.hpp" #include "libslic3r/PNGReadWrite.hpp" #include "libslic3r/Print.hpp" diff --git a/tests/fff_print/test_tree_support.cpp b/tests/fff_print/test_tree_support.cpp index fbb40bb8f3..677cf4359f 100644 --- a/tests/fff_print/test_tree_support.cpp +++ b/tests/fff_print/test_tree_support.cpp @@ -1,7 +1,15 @@ #include #include +#include +#include "libslic3r/Config.hpp" +#include "libslic3r/PrintConfig.hpp" +#include "libslic3r/Point.hpp" +#include +#include "libslic3r/libslic3r.h" +#include +#include #include "libslic3r/Layer.hpp" #include "libslic3r/TriangleMesh.hpp" diff --git a/tests/fff_print/test_trianglemesh.cpp b/tests/fff_print/test_trianglemesh.cpp index b21f6299fd..722732e207 100644 --- a/tests/fff_print/test_trianglemesh.cpp +++ b/tests/fff_print/test_trianglemesh.cpp @@ -1,5 +1,6 @@ #include +#include #include "libslic3r/TriangleMesh.hpp" #include "libslic3r/TriangleMeshSlicer.hpp" #include "libslic3r/Point.hpp" @@ -8,8 +9,14 @@ #include "libslic3r/libslic3r.h" #include +#include +#include +#include #include #include +#include +#include +#include "libslic3r/ExPolygon.hpp" //#include "test_options.hpp" #include "test_helpers.hpp" diff --git a/tests/fff_print/test_wipe.cpp b/tests/fff_print/test_wipe.cpp index 46ee0d6441..63cd847ccb 100644 --- a/tests/fff_print/test_wipe.cpp +++ b/tests/fff_print/test_wipe.cpp @@ -2,11 +2,27 @@ #include #include +#include "libslic3r/Point.hpp" +#include "libslic3r/libslic3r.h" +#include +#include "libslic3r/TriangleMesh.hpp" +#include "libslic3r/Config.hpp" +#include "libslic3r/ExtrusionEntity.hpp" +#include "libslic3r/Model.hpp" +#include "libslic3r/Print.hpp" +#include "libslic3r/calib.hpp" +#include "libslic3r/ExtrusionEntityCollection.hpp" #include #include #include +#include #include +#include +#include +#include +#include +#include #include "libslic3r/GCode/GCodeProcessor.hpp" #include "libslic3r/GCodeReader.hpp" #include "libslic3r/PrintConfig.hpp" diff --git a/tests/fff_print/test_wipe_tower.cpp b/tests/fff_print/test_wipe_tower.cpp index 014eab6f8b..da3cbe2502 100644 --- a/tests/fff_print/test_wipe_tower.cpp +++ b/tests/fff_print/test_wipe_tower.cpp @@ -1,8 +1,23 @@ +#include #include +#include "libslic3r/Config.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/Point.hpp" +#include "libslic3r/Polygon.hpp" +#include +#include "libslic3r/Model.hpp" +#include "libslic3r/Print.hpp" #include #include +#include +#include +#include +#include +#include +#include +#include #include "libslic3r/BoundingBox.hpp" #include "libslic3r/ClipperUtils.hpp" #include "libslic3r/GCode/GCodeProcessor.hpp" diff --git a/tests/filament_group/fg_test_evaluator.hpp b/tests/filament_group/fg_test_evaluator.hpp index 00a2e1a6f5..ceec7cf154 100644 --- a/tests/filament_group/fg_test_evaluator.hpp +++ b/tests/filament_group/fg_test_evaluator.hpp @@ -2,13 +2,18 @@ #define FG_TEST_EVALUATOR_HPP #include "fg_test_serialization.hpp" +#include #include #include #include #include +#include +#include #include +#include #include +#include namespace Slic3r { namespace FGTest { diff --git a/tests/filament_group/fg_test_serialization.hpp b/tests/filament_group/fg_test_serialization.hpp index 5f59da619c..fa0ab3c9ff 100644 --- a/tests/filament_group/fg_test_serialization.hpp +++ b/tests/filament_group/fg_test_serialization.hpp @@ -1,6 +1,7 @@ #ifndef FG_TEST_SERIALIZATION_HPP #define FG_TEST_SERIALIZATION_HPP +#include #include #include #include @@ -10,6 +11,7 @@ #include #include #include +#include #include #include #include diff --git a/tests/filament_group/fg_test_utils.hpp b/tests/filament_group/fg_test_utils.hpp index 2d2864bf10..b493e44607 100644 --- a/tests/filament_group/fg_test_utils.hpp +++ b/tests/filament_group/fg_test_utils.hpp @@ -2,9 +2,16 @@ #define FG_TEST_UTILS_HPP #include "fg_test_serialization.hpp" +#include "libslic3r/FilamentGroupUtils.hpp" +#include "libslic3r/PrintConfig.hpp" +#include "libslic3r/FilamentGroup.hpp" +#include #include #include #include +#include +#include +#include namespace Slic3r { namespace FGTest { diff --git a/tests/filament_group/filament_group_regression_main.cpp b/tests/filament_group/filament_group_regression_main.cpp index b2cc4bd178..c8933e6b6e 100644 --- a/tests/filament_group/filament_group_regression_main.cpp +++ b/tests/filament_group/filament_group_regression_main.cpp @@ -11,13 +11,19 @@ #include +#include +#include +#include +#include #include "fg_test_serialization.hpp" #include "fg_test_evaluator.hpp" #include "fg_test_utils.hpp" +#include #include #include #include +#include "libslic3r/FilamentGroup.hpp" #include #include #include diff --git a/tests/libnest2d/libnest2d_test_utils.hpp b/tests/libnest2d/libnest2d_test_utils.hpp index 55f184f60c..b9f8510a8a 100644 --- a/tests/libnest2d/libnest2d_test_utils.hpp +++ b/tests/libnest2d/libnest2d_test_utils.hpp @@ -8,7 +8,10 @@ // it here and include this header from every libnest2d test file. #include +#include +#include "libnest2d/common.hpp" +#include "libnest2d/geometry_traits_nfp.hpp" #include #include diff --git a/tests/libnest2d/libnest2d_tests.cpp b/tests/libnest2d/libnest2d_tests.cpp index 1657d45601..f5e3263b89 100644 --- a/tests/libnest2d/libnest2d_tests.cpp +++ b/tests/libnest2d/libnest2d_tests.cpp @@ -1,5 +1,10 @@ #include +#include "libnest2d/libnest2d.hpp" +#include +#include +#include "libnest2d/nester.hpp" +#include #include "libnest2d_test_utils.hpp" using namespace libnest2d; diff --git a/tests/libnest2d/printer_parts.hpp b/tests/libnest2d/printer_parts.hpp index 075e32a837..07a3e9153d 100644 --- a/tests/libnest2d/printer_parts.hpp +++ b/tests/libnest2d/printer_parts.hpp @@ -1,6 +1,7 @@ #ifndef PRINTER_PARTS_H #define PRINTER_PARTS_H +#include "libnest2d/backends/libslic3r/geometries.hpp" #include #include diff --git a/tests/libnest2d/test_geometry.cpp b/tests/libnest2d/test_geometry.cpp index 9c58a299e4..e32c47042a 100644 --- a/tests/libnest2d/test_geometry.cpp +++ b/tests/libnest2d/test_geometry.cpp @@ -1,5 +1,24 @@ +#include +#include +#include #include +#include +#include "libnest2d/libnest2d.hpp" +#include "libnest2d/geometry_traits.hpp" +#include "libnest2d/backends/libslic3r/geometries.hpp" +#include "libnest2d/common.hpp" +#include +#include +#include "libnest2d/placers/nfpplacer.hpp" +#include +#include +#include +#include +#include "libnest2d/utils/rotcalipers.hpp" +#include +#include +#include #include "libnest2d_test_utils.hpp" #include "printer_parts.hpp" diff --git a/tests/libnest2d/test_nfp.cpp b/tests/libnest2d/test_nfp.cpp index 1b5c5d3a1c..fdb43f7bfa 100644 --- a/tests/libnest2d/test_nfp.cpp +++ b/tests/libnest2d/test_nfp.cpp @@ -1,5 +1,17 @@ +#include #include +#include "libnest2d/libnest2d.hpp" +#include +#include "libnest2d/geometry_traits.hpp" +#include "libnest2d/backends/libslic3r/geometries.hpp" +#include "libnest2d/geometry_traits_nfp.hpp" +#include "libnest2d/utils/boost_alg.hpp" +#include "libnest2d/placers/nfpplacer.hpp" +#include +#include +#include +#include #include "libnest2d_test_utils.hpp" using namespace libnest2d; diff --git a/tests/libnest2d/test_nfp_placer.cpp b/tests/libnest2d/test_nfp_placer.cpp index 4446333f5d..02b711ec9d 100644 --- a/tests/libnest2d/test_nfp_placer.cpp +++ b/tests/libnest2d/test_nfp_placer.cpp @@ -1,5 +1,13 @@ #include +#include "libnest2d/libnest2d.hpp" +#include +#include +#include "libnest2d/geometry_traits.hpp" +#include "libnest2d/common.hpp" +#include +#include +#include #include "libnest2d_test_utils.hpp" using namespace libnest2d; diff --git a/tests/libslic3r/libslic3r_tests.cpp b/tests/libslic3r/libslic3r_tests.cpp index a46b69d124..178a869648 100644 --- a/tests/libslic3r/libslic3r_tests.cpp +++ b/tests/libslic3r/libslic3r_tests.cpp @@ -1,5 +1,10 @@ #include +#include +#include "libslic3r/libslic3r.h" +#include +#include +#include #include "libslic3r/Utils.hpp" #define NANOSVG_IMPLEMENTATION #include "nanosvg/nanosvg.h" diff --git a/tests/libslic3r/test_3mf.cpp b/tests/libslic3r/test_3mf.cpp index 846caf5432..a8fd1eb888 100644 --- a/tests/libslic3r/test_3mf.cpp +++ b/tests/libslic3r/test_3mf.cpp @@ -1,4 +1,9 @@ +#include +#include +#include +#include +#include #include "libslic3r/Model.hpp" #include "libslic3r/Format/3mf.hpp" #include "libslic3r/Format/bbs_3mf.hpp" @@ -14,6 +19,15 @@ #include "test_utils.hpp" +#include "libslic3r/Config.hpp" +#include "libslic3r/Geometry.hpp" +#include +#include +#include "libslic3r/TriangleMesh.hpp" +#include "libslic3r/TriangleSelector.hpp" +#include +#include +#include #include #include @@ -25,8 +39,12 @@ #include #include #include +#include +#include #include // for std::enable_if_t #include // for typeid +#include +#include namespace Catch { template diff --git a/tests/libslic3r/test_aabbindirect.cpp b/tests/libslic3r/test_aabbindirect.cpp index 122e4756f1..e97b8d193b 100644 --- a/tests/libslic3r/test_aabbindirect.cpp +++ b/tests/libslic3r/test_aabbindirect.cpp @@ -1,8 +1,13 @@ #include +#include +#include #include "test_utils.hpp" +#include +#include #include #include +#include using namespace Slic3r; diff --git a/tests/libslic3r/test_appconfig.cpp b/tests/libslic3r/test_appconfig.cpp index d3811c9827..3eb35d7490 100644 --- a/tests/libslic3r/test_appconfig.cpp +++ b/tests/libslic3r/test_appconfig.cpp @@ -1,5 +1,6 @@ #include +#include #include "libslic3r/AppConfig.hpp" using namespace Slic3r; diff --git a/tests/libslic3r/test_arachne_walls.cpp b/tests/libslic3r/test_arachne_walls.cpp index 2b6580ed11..be4df5d3b1 100644 --- a/tests/libslic3r/test_arachne_walls.cpp +++ b/tests/libslic3r/test_arachne_walls.cpp @@ -17,6 +17,9 @@ #include +#include +#include +#include #include "libslic3r/Arachne/WallToolPaths.hpp" #include "libslic3r/Arachne/SkeletalTrapezoidation.hpp" #include "libslic3r/Arachne/utils/ExtrusionLine.hpp" @@ -31,6 +34,14 @@ #include #include +#include +#include "libslic3r/libslic3r.h" +#include +#include +#include +#include "libslic3r/Arachne/utils/ExtrusionJunction.hpp" +#include "libslic3r/PerimeterGenerator.hpp" +#include "libslic3r/PrintConfig.hpp" using namespace Slic3r; using namespace Slic3r::Arachne; diff --git a/tests/libslic3r/test_arrange.cpp b/tests/libslic3r/test_arrange.cpp index 3906cba8ba..2f8df3166a 100644 --- a/tests/libslic3r/test_arrange.cpp +++ b/tests/libslic3r/test_arrange.cpp @@ -1,5 +1,19 @@ +#include #include +#include "libslic3r/libslic3r.h" +#include "libslic3r/Polygon.hpp" +#include "libslic3r/Point.hpp" +#include +#include "libslic3r/Config.hpp" +#include +#include +#include +#include +#include +#include +#include +#include #include "libslic3r/Arrange.hpp" #include "libslic3r/BoundingBox.hpp" #include "libslic3r/ClipperUtils.hpp" diff --git a/tests/libslic3r/test_bambu_networking.cpp b/tests/libslic3r/test_bambu_networking.cpp index 5cf55030f8..ec16e96c19 100644 --- a/tests/libslic3r/test_bambu_networking.cpp +++ b/tests/libslic3r/test_bambu_networking.cpp @@ -1,5 +1,6 @@ #include +#include #include "slic3r/Utils/bambu_networking.hpp" using namespace Slic3r; diff --git a/tests/libslic3r/test_buildvolume.cpp b/tests/libslic3r/test_buildvolume.cpp index b2e8040d68..3438f7517f 100644 --- a/tests/libslic3r/test_buildvolume.cpp +++ b/tests/libslic3r/test_buildvolume.cpp @@ -1,5 +1,10 @@ #include +#include +#include "libslic3r/Point.hpp" +#include +#include +#include #include "libslic3r/BuildVolume.hpp" using namespace Slic3r; diff --git a/tests/libslic3r/test_caddocument.cpp b/tests/libslic3r/test_caddocument.cpp index d69ada09b6..afb4acf409 100644 --- a/tests/libslic3r/test_caddocument.cpp +++ b/tests/libslic3r/test_caddocument.cpp @@ -1,4 +1,23 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include #include // mainline OrcaSlicer ships Catch2 v3 (v2 was catch2/catch.hpp) +#include +#include +#include +#include +#include +#include +#include +#include "libslic3r/TriangleMesh.hpp" +#include +#include // Substring assertions, spelled so this file compiles UNCHANGED on both forks. // Catch2 v2 (Snapmaker) spells it Matchers::Contains; v3 (orca_cad / mainline) spells it diff --git a/tests/libslic3r/test_calib.cpp b/tests/libslic3r/test_calib.cpp index 0092a7dedd..81fa59ff93 100644 --- a/tests/libslic3r/test_calib.cpp +++ b/tests/libslic3r/test_calib.cpp @@ -1,9 +1,13 @@ #include #include +#include "libslic3r/CustomGCode.hpp" #include #include +#include +#include +#include #include "libslic3r/calib.hpp" #include "libslic3r/Model.hpp" #include "libslic3r/TriangleMesh.hpp" diff --git a/tests/libslic3r/test_clipper_offset.cpp b/tests/libslic3r/test_clipper_offset.cpp index ecf14a60c8..7a816a2174 100644 --- a/tests/libslic3r/test_clipper_offset.cpp +++ b/tests/libslic3r/test_clipper_offset.cpp @@ -1,8 +1,15 @@ #include +#include #include #include +#include "libslic3r/libslic3r.h" +#include +#include "libslic3r/Polygon.hpp" +#include +#include +#include #include "libslic3r/ClipperUtils.hpp" #include "libslic3r/ExPolygon.hpp" #include "libslic3r/SVG.hpp" diff --git a/tests/libslic3r/test_clipper_utils.cpp b/tests/libslic3r/test_clipper_utils.cpp index ddec07089b..3b32bba7cf 100644 --- a/tests/libslic3r/test_clipper_utils.cpp +++ b/tests/libslic3r/test_clipper_utils.cpp @@ -1,9 +1,17 @@ +#include #include +#include "libslic3r/Polygon.hpp" +#include "libslic3r/Polyline.hpp" +#include +#include "libslic3r/libslic3r.h" #include #include #include +#include +#include +#include #include "libslic3r/ClipperUtils.hpp" #include "libslic3r/ExPolygon.hpp" #include "libslic3r/SVG.hpp" diff --git a/tests/libslic3r/test_config.cpp b/tests/libslic3r/test_config.cpp index d7803f300b..bb51735bfe 100644 --- a/tests/libslic3r/test_config.cpp +++ b/tests/libslic3r/test_config.cpp @@ -1,5 +1,10 @@ #include +#include +#include +#include +#include +#include #include "libslic3r/PrintConfig.hpp" #include "libslic3r/PrintConfigConstants.hpp" #include "libslic3r/LocalesUtils.hpp" @@ -13,9 +18,16 @@ #include #include +#include "libslic3r/Config.hpp" +#include +#include +#include #include +#include #include +#include +#include using namespace Slic3r; diff --git a/tests/libslic3r/test_config_variant_expansion.cpp b/tests/libslic3r/test_config_variant_expansion.cpp index f30ad985e3..240a6e25fa 100644 --- a/tests/libslic3r/test_config_variant_expansion.cpp +++ b/tests/libslic3r/test_config_variant_expansion.cpp @@ -1,5 +1,15 @@ #include +#include "libslic3r/Config.hpp" +#include +#include +#include +#include +#include +#include +#include +#include +#include #include "libslic3r/PrintConfig.hpp" #include "libslic3r/Preset.hpp" diff --git a/tests/libslic3r/test_drc.cpp b/tests/libslic3r/test_drc.cpp index 917fd5c714..06a329e4e3 100644 --- a/tests/libslic3r/test_drc.cpp +++ b/tests/libslic3r/test_drc.cpp @@ -1,12 +1,21 @@ #include +#include #include "libslic3r/Format/DRC.hpp" #include "libslic3r/TriangleMesh.hpp" #include +#include +#include +#include +#include #include +#include +#include #include +#include +#include #include "test_utils.hpp" diff --git a/tests/libslic3r/test_elephant_foot_compensation.cpp b/tests/libslic3r/test_elephant_foot_compensation.cpp index ab9700a305..6388dab184 100644 --- a/tests/libslic3r/test_elephant_foot_compensation.cpp +++ b/tests/libslic3r/test_elephant_foot_compensation.cpp @@ -2,7 +2,11 @@ #include #include +#include "libslic3r/Point.hpp" +#include +#include "libslic3r/libslic3r.h" +#include #include "libslic3r/ClipperUtils.hpp" #include "libslic3r/ElephantFootCompensation.hpp" #include "libslic3r/ExPolygon.hpp" diff --git a/tests/libslic3r/test_filament_mixer.cpp b/tests/libslic3r/test_filament_mixer.cpp index ade0c910dc..f43a8e7588 100644 --- a/tests/libslic3r/test_filament_mixer.cpp +++ b/tests/libslic3r/test_filament_mixer.cpp @@ -1,5 +1,13 @@ #include +#include +#include +#include "libslic3r/Config.hpp" +#include +#include +#include +#include +#include #include "libslic3r/FilamentMixer.hpp" #include "libslic3r/PrintConfig.hpp" diff --git a/tests/libslic3r/test_fill_corner_smoothing.cpp b/tests/libslic3r/test_fill_corner_smoothing.cpp index a9e752f250..ebad09e9e5 100644 --- a/tests/libslic3r/test_fill_corner_smoothing.cpp +++ b/tests/libslic3r/test_fill_corner_smoothing.cpp @@ -2,8 +2,12 @@ #include #include +#include "libslic3r/Point.hpp" +#include +#include "libslic3r/Polygon.hpp" #include +#include #include "libslic3r/Fill/FillCornerSmoothing.hpp" #include "libslic3r/Polyline.hpp" #include "libslic3r/libslic3r.h" diff --git a/tests/libslic3r/test_fill_plane_path.cpp b/tests/libslic3r/test_fill_plane_path.cpp index 7fc7f4a6b0..e28d74b4fc 100644 --- a/tests/libslic3r/test_fill_plane_path.cpp +++ b/tests/libslic3r/test_fill_plane_path.cpp @@ -2,9 +2,18 @@ #include #include +#include "libslic3r/Point.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/Fill/FillBase.hpp" +#include +#include +#include "libslic3r/Config.hpp" #include #include +#include +#include +#include #include "libslic3r/Fill/FillPlanePath.hpp" #include "libslic3r/PrintConfig.hpp" diff --git a/tests/libslic3r/test_geometry.cpp b/tests/libslic3r/test_geometry.cpp index b4bbe86cc6..6f12b1113a 100644 --- a/tests/libslic3r/test_geometry.cpp +++ b/tests/libslic3r/test_geometry.cpp @@ -1,5 +1,8 @@ +#include #include +#include +#include #include "libslic3r/Point.hpp" #include "libslic3r/BoundingBox.hpp" #include "libslic3r/Polygon.hpp" @@ -17,7 +20,14 @@ #include "../libnest2d/printer_parts.hpp" +#include "libslic3r/libslic3r.h" +#include +#include +#include +#include +#include #include +#include using namespace Slic3r; diff --git a/tests/libslic3r/test_hollowing.cpp b/tests/libslic3r/test_hollowing.cpp index dc39b47373..6e1baef4cc 100644 --- a/tests/libslic3r/test_hollowing.cpp +++ b/tests/libslic3r/test_hollowing.cpp @@ -1,7 +1,10 @@ #include #include #include +#include "libslic3r/TriangleMesh.hpp" +#include "libslic3r/libslic3r.h" +#include #include "libslic3r/SLA/Hollowing.hpp" #include "test_utils.hpp" diff --git a/tests/libslic3r/test_indexed_triangle_set.cpp b/tests/libslic3r/test_indexed_triangle_set.cpp index 43116936d3..c65bf589a8 100644 --- a/tests/libslic3r/test_indexed_triangle_set.cpp +++ b/tests/libslic3r/test_indexed_triangle_set.cpp @@ -1,8 +1,17 @@ +#include +#include +#include #include #include +#include "libslic3r/Point.hpp" +#include "libslic3r/libslic3r.h" +#include #include #include +#include +#include +#include #include "libslic3r/TriangleMesh.hpp" #include "test_utils.hpp" diff --git a/tests/libslic3r/test_instance_lock.cpp b/tests/libslic3r/test_instance_lock.cpp index 207dd77173..5ee14c665f 100644 --- a/tests/libslic3r/test_instance_lock.cpp +++ b/tests/libslic3r/test_instance_lock.cpp @@ -1,3 +1,4 @@ +#include #include #include @@ -6,6 +7,7 @@ #include +#include #include "libslic3r/InstanceLock.hpp" #include "test_utils.hpp" diff --git a/tests/libslic3r/test_lay_on_face.cpp b/tests/libslic3r/test_lay_on_face.cpp index 60226a9aab..76a197efe7 100644 --- a/tests/libslic3r/test_lay_on_face.cpp +++ b/tests/libslic3r/test_lay_on_face.cpp @@ -1,5 +1,15 @@ #include +#include "libslic3r/Point.hpp" +#include "libslic3r/TriangleMesh.hpp" +#include +#include +#include "libslic3r/libslic3r.h" +#include +#include +#include +#include +#include #include "libslic3r/LayOnFace.hpp" #include "libslic3r/Model.hpp" diff --git a/tests/libslic3r/test_locales_utils.cpp b/tests/libslic3r/test_locales_utils.cpp index 6f1528649d..2bb134af6b 100644 --- a/tests/libslic3r/test_locales_utils.cpp +++ b/tests/libslic3r/test_locales_utils.cpp @@ -1,7 +1,9 @@ #include #include +#include +#include #include "libslic3r/LocalesUtils.hpp" using namespace Slic3r; diff --git a/tests/libslic3r/test_marchingsquares.cpp b/tests/libslic3r/test_marchingsquares.cpp index 9a11f49faa..e9d0f8ebc2 100644 --- a/tests/libslic3r/test_marchingsquares.cpp +++ b/tests/libslic3r/test_marchingsquares.cpp @@ -2,6 +2,28 @@ #define NOMINMAX #endif +#include "libslic3r/Point.hpp" +#include +#include "libslic3r/libslic3r.h" +#include +#include "libslic3r/BoundingBox.hpp" +#include "libslic3r/Polygon.hpp" +#include +#include +#include "libslic3r/SLA/RasterBase.hpp" +#include +#include +#include +#include +#include "libslic3r/ExPolygon.hpp" +#include +#include +#include +#include +#include "libslic3r/TriangleMesh.hpp" +#include +#include + #include #include "test_utils.hpp" diff --git a/tests/libslic3r/test_meshboolean.cpp b/tests/libslic3r/test_meshboolean.cpp index b7208349cc..4c0faa1bb0 100644 --- a/tests/libslic3r/test_meshboolean.cpp +++ b/tests/libslic3r/test_meshboolean.cpp @@ -1,4 +1,6 @@ #include +#include +#include #include "test_utils.hpp" #include diff --git a/tests/libslic3r/test_minimum_spanning_tree.cpp b/tests/libslic3r/test_minimum_spanning_tree.cpp index 5f9998171c..b6685b0d1e 100644 --- a/tests/libslic3r/test_minimum_spanning_tree.cpp +++ b/tests/libslic3r/test_minimum_spanning_tree.cpp @@ -1,7 +1,11 @@ #include #include +#include +#include +#include +#include #include "libslic3r/MinimumSpanningTree.hpp" #include "libslic3r/Point.hpp" diff --git a/tests/libslic3r/test_miniz_extension.cpp b/tests/libslic3r/test_miniz_extension.cpp index ff3274a886..3a10a8eb8e 100644 --- a/tests/libslic3r/test_miniz_extension.cpp +++ b/tests/libslic3r/test_miniz_extension.cpp @@ -1,5 +1,12 @@ +#include +#include +#include +#include #include +#include +#include +#include #include "libslic3r/miniz_extension.hpp" #include "test_utils.hpp" @@ -7,8 +14,11 @@ #include #include +#include #include +#include #include +#include #include #include #include diff --git a/tests/libslic3r/test_model.cpp b/tests/libslic3r/test_model.cpp index 3a580e3be2..24d690ac9e 100644 --- a/tests/libslic3r/test_model.cpp +++ b/tests/libslic3r/test_model.cpp @@ -1,5 +1,10 @@ #include +#include "libslic3r/TriangleMesh.hpp" +#include "libslic3r/Polygon.hpp" +#include "libslic3r/BoundingBox.hpp" +#include "libslic3r/Point.hpp" +#include #include "libslic3r/Model.hpp" using namespace Slic3r; diff --git a/tests/libslic3r/test_multimaterial_segmentation.cpp b/tests/libslic3r/test_multimaterial_segmentation.cpp index 271b9d5660..065a143ce1 100644 --- a/tests/libslic3r/test_multimaterial_segmentation.cpp +++ b/tests/libslic3r/test_multimaterial_segmentation.cpp @@ -3,6 +3,12 @@ // MultiMaterialSegmentation.hpp declares boost::polygon traits for ColoredLine, so its // geometry/boost dependencies must be included first. #include +#include +#include +#include +#include +#include +#include #include "libslic3r/Line.hpp" #include "libslic3r/Flow.hpp" #include "libslic3r/MultiMaterialSegmentation.hpp" diff --git a/tests/libslic3r/test_mutable_polygon.cpp b/tests/libslic3r/test_mutable_polygon.cpp index 906dffe50a..a233454427 100644 --- a/tests/libslic3r/test_mutable_polygon.cpp +++ b/tests/libslic3r/test_mutable_polygon.cpp @@ -1,5 +1,9 @@ #include +#include +#include "libslic3r/libslic3r.h" +#include "libslic3r/Polygon.hpp" +#include #include "libslic3r/Point.hpp" #include "libslic3r/MutablePolygon.hpp" diff --git a/tests/libslic3r/test_mutable_priority_queue.cpp b/tests/libslic3r/test_mutable_priority_queue.cpp index db7124df78..67191793da 100644 --- a/tests/libslic3r/test_mutable_priority_queue.cpp +++ b/tests/libslic3r/test_mutable_priority_queue.cpp @@ -1,8 +1,15 @@ +#include #include #include +#include +#include +#include +#include #include +#include +#include #include "libslic3r/MutablePriorityQueue.hpp" // based on https://raw.githubusercontent.com/rollbear/prio_queue/master/self_test.cpp diff --git a/tests/libslic3r/test_nozzle_volume_type.cpp b/tests/libslic3r/test_nozzle_volume_type.cpp index 99ad375f93..289133bb03 100644 --- a/tests/libslic3r/test_nozzle_volume_type.cpp +++ b/tests/libslic3r/test_nozzle_volume_type.cpp @@ -1,5 +1,9 @@ #include +#include +#include "libslic3r/Config.hpp" +#include +#include #include "libslic3r/PrintConfig.hpp" using namespace Slic3r; diff --git a/tests/libslic3r/test_obj.cpp b/tests/libslic3r/test_obj.cpp index 2cbf57ff04..abab016b2a 100644 --- a/tests/libslic3r/test_obj.cpp +++ b/tests/libslic3r/test_obj.cpp @@ -1,9 +1,16 @@ +#include #include +#include +#include +#include #include "libslic3r/TriangleMesh.hpp" #include "libslic3r/Format/OBJ.hpp" #include +#include +#include "libslic3r/Point.hpp" +#include #include "test_utils.hpp" diff --git a/tests/libslic3r/test_optimizers.cpp b/tests/libslic3r/test_optimizers.cpp index 8783ac1428..232481f23c 100644 --- a/tests/libslic3r/test_optimizers.cpp +++ b/tests/libslic3r/test_optimizers.cpp @@ -1,9 +1,13 @@ #include +#include #include "test_utils.hpp" +#include #include #include +#include "libslic3r/Optimize/Optimizer.hpp" +#include "libslic3r/libslic3r.h" void check_opt_result(double score, double ref, double abs_err, double rel_err) { diff --git a/tests/libslic3r/test_ordering_strategies.cpp b/tests/libslic3r/test_ordering_strategies.cpp index ddbca07ae6..f6e0cd94f2 100644 --- a/tests/libslic3r/test_ordering_strategies.cpp +++ b/tests/libslic3r/test_ordering_strategies.cpp @@ -1,4 +1,12 @@ +#include #include +#include +#include +#include +#include "libslic3r/libslic3r.h" +#include +#include +#include #define SLIC3R_TEST_HARNESS diff --git a/tests/libslic3r/test_parallel_resolve.cpp b/tests/libslic3r/test_parallel_resolve.cpp index 76811f1475..4e7e52dca2 100644 --- a/tests/libslic3r/test_parallel_resolve.cpp +++ b/tests/libslic3r/test_parallel_resolve.cpp @@ -1,5 +1,6 @@ #include +#include #include #include #include @@ -9,6 +10,7 @@ #include #include +#include #include "libslic3r/ParallelResolve.hpp" using namespace Slic3r; diff --git a/tests/libslic3r/test_placeholder_parser.cpp b/tests/libslic3r/test_placeholder_parser.cpp index 4a95156c34..0a490a6bdd 100644 --- a/tests/libslic3r/test_placeholder_parser.cpp +++ b/tests/libslic3r/test_placeholder_parser.cpp @@ -1,5 +1,12 @@ #include +#include +#include +#include "libslic3r/Config.hpp" +#include +#include +#include +#include #include "libslic3r/PlaceholderParser.hpp" #include "libslic3r/PrintConfig.hpp" diff --git a/tests/libslic3r/test_polygon.cpp b/tests/libslic3r/test_polygon.cpp index feae4ff50c..08fd21d3c0 100644 --- a/tests/libslic3r/test_polygon.cpp +++ b/tests/libslic3r/test_polygon.cpp @@ -1,5 +1,9 @@ +#include #include +#include +#include "libslic3r/libslic3r.h" +#include #include "libslic3r/Point.hpp" #include "libslic3r/Polygon.hpp" diff --git a/tests/libslic3r/test_precise_seam_3mf.cpp b/tests/libslic3r/test_precise_seam_3mf.cpp index 6449236744..cda140ebce 100644 --- a/tests/libslic3r/test_precise_seam_3mf.cpp +++ b/tests/libslic3r/test_precise_seam_3mf.cpp @@ -1,5 +1,10 @@ #include +#include +#include +#include +#include +#include #include "test_utils.hpp" #include "libslic3r/Model.hpp" #include "libslic3r/PrintConfig.hpp" @@ -12,7 +17,13 @@ #include #include +#include "libslic3r/Config.hpp" +#include "libslic3r/TriangleMesh.hpp" +#include +#include "libslic3r/Geometry.hpp" +#include #include +#include #include using namespace Slic3r; diff --git a/tests/libslic3r/test_preset_bundle_loading.cpp b/tests/libslic3r/test_preset_bundle_loading.cpp index 4741e28f6b..c8cc1784de 100644 --- a/tests/libslic3r/test_preset_bundle_loading.cpp +++ b/tests/libslic3r/test_preset_bundle_loading.cpp @@ -1,9 +1,19 @@ +#include +#include +#include +#include #include #include #include +#include #include +#include +#include +#include +#include +#include #include "libslic3r/PresetBundle.hpp" #include "libslic3r/ParallelResolve.hpp" #include "libslic3r/AppConfig.hpp" @@ -17,6 +27,19 @@ #include #include #include +#include +#include +#include "libslic3r/PrintConfig.hpp" +#include "libslic3r/Preset.hpp" +#include +#include "libslic3r/Config.hpp" +#include +#include "libslic3r/libslic3r.h" +#include "libslic3r/PublishSettings.hpp" +#include +#include "libslic3r/TriangleSelector.hpp" +#include +#include #ifndef _WIN32 #include // geteuid diff --git a/tests/libslic3r/test_preset_diff.cpp b/tests/libslic3r/test_preset_diff.cpp index 22255c049e..036e2aa922 100644 --- a/tests/libslic3r/test_preset_diff.cpp +++ b/tests/libslic3r/test_preset_diff.cpp @@ -1,9 +1,15 @@ #include +#include +#include #include "libslic3r/Preset.hpp" #include "libslic3r/PrintConfig.hpp" #include +#include "libslic3r/Config.hpp" +#include +#include +#include using namespace Slic3r; diff --git a/tests/libslic3r/test_preset_options.cpp b/tests/libslic3r/test_preset_options.cpp index 1763f5fbc7..cf878ca9f8 100644 --- a/tests/libslic3r/test_preset_options.cpp +++ b/tests/libslic3r/test_preset_options.cpp @@ -16,10 +16,14 @@ #include +#include +#include #include "libslic3r/Preset.hpp" #include "libslic3r/PrintConfig.hpp" +#include "libslic3r/Config.hpp" #include +#include using namespace Slic3r; diff --git a/tests/libslic3r/test_preset_setting_id.cpp b/tests/libslic3r/test_preset_setting_id.cpp index 5c06335381..0b5736ad26 100644 --- a/tests/libslic3r/test_preset_setting_id.cpp +++ b/tests/libslic3r/test_preset_setting_id.cpp @@ -1,5 +1,8 @@ #include +#include +#include +#include #include "libslic3r/Preset.hpp" using namespace Slic3r; diff --git a/tests/libslic3r/test_sketchconstraints.cpp b/tests/libslic3r/test_sketchconstraints.cpp index d0c5844b40..2142398e68 100644 --- a/tests/libslic3r/test_sketchconstraints.cpp +++ b/tests/libslic3r/test_sketchconstraints.cpp @@ -1,4 +1,11 @@ #include // mainline OrcaSlicer ships Catch2 v3 (v2 was catch2/catch.hpp) +#include +#include +#include +#include +#include +#include +#include #include "libslic3r/CAD/SketchConstraints.hpp" #include "libslic3r/CAD/SketchEngine.hpp" diff --git a/tests/libslic3r/test_sketchedit.cpp b/tests/libslic3r/test_sketchedit.cpp index 634e743b99..b289b71e69 100644 --- a/tests/libslic3r/test_sketchedit.cpp +++ b/tests/libslic3r/test_sketchedit.cpp @@ -1,9 +1,16 @@ +#include +#include #include // mainline OrcaSlicer ships Catch2 v3 (v2 was catch2/catch.hpp) +#include +#include +#include #include "libslic3r/CAD/SketchEngine.hpp" #include #include #include #include +#include +#include using namespace Slic3r; diff --git a/tests/libslic3r/test_sketchimport.cpp b/tests/libslic3r/test_sketchimport.cpp index 3e3f7c906e..3e6636fd7d 100644 --- a/tests/libslic3r/test_sketchimport.cpp +++ b/tests/libslic3r/test_sketchimport.cpp @@ -1,10 +1,16 @@ +#include #include // mainline OrcaSlicer ships Catch2 v3 (v2 was catch2/catch.hpp) +#include +#include +#include #include "libslic3r/CAD/SketchImport.hpp" #include "libslic3r/Utils.hpp" // resources_dir #include "test_utils.hpp" // ScopedTemporaryFile +#include #include +#include "libslic3r/Point.hpp" #include using namespace Slic3r; diff --git a/tests/libslic3r/test_sketchinference.cpp b/tests/libslic3r/test_sketchinference.cpp index cbdd90628b..6ff9768b8f 100644 --- a/tests/libslic3r/test_sketchinference.cpp +++ b/tests/libslic3r/test_sketchinference.cpp @@ -1,4 +1,9 @@ +#include +#include #include // mainline OrcaSlicer ships Catch2 v3 (v2 was catch2/catch.hpp) +#include "libslic3r/CAD/SketchEngine.hpp" +#include "libslic3r/Point.hpp" +#include using Catch::Approx; // v3 scopes Approx into the Catch namespace; v2 had it at global scope #include "libslic3r/CAD/SketchInference.hpp" diff --git a/tests/libslic3r/test_sketchprofile.cpp b/tests/libslic3r/test_sketchprofile.cpp index 7f455eb936..6c33599847 100644 --- a/tests/libslic3r/test_sketchprofile.cpp +++ b/tests/libslic3r/test_sketchprofile.cpp @@ -9,11 +9,19 @@ // So these cases assert the loop, not the coordinates. That is the invariant every sketch // operation has to preserve and the only one that predicts whether the GUI can build a solid // out of the result. +#include #include // mainline OrcaSlicer ships Catch2 v3 (v2 was catch2/catch.hpp) +#include +#include +#include #include "libslic3r/CAD/SketchEngine.hpp" #include #include #include +#include "libslic3r/Point.hpp" +#include +#include +#include using namespace Slic3r; using Catch::Matchers::WithinAbs; diff --git a/tests/libslic3r/test_slvs_constraints.cpp b/tests/libslic3r/test_slvs_constraints.cpp index 6dfac07348..4f5c27ba7d 100644 --- a/tests/libslic3r/test_slvs_constraints.cpp +++ b/tests/libslic3r/test_slvs_constraints.cpp @@ -1,4 +1,9 @@ +#include +#include #include // mainline OrcaSlicer ships Catch2 v3 (v2 was catch2/catch.hpp) +#include "libslic3r/Point.hpp" +#include +#include using Catch::Approx; // v3 scopes Approx into the Catch namespace; v2 had it at global scope #include "libslic3r/CAD/SketchSolver.hpp" diff --git a/tests/libslic3r/test_step.cpp b/tests/libslic3r/test_step.cpp index a2aa7218f1..3635c977dd 100644 --- a/tests/libslic3r/test_step.cpp +++ b/tests/libslic3r/test_step.cpp @@ -1,7 +1,11 @@ #include #include +#include +#include +#include +#include #include "libslic3r/Model.hpp" #include "libslic3r/Format/STEP.hpp" #include "test_utils.hpp" diff --git a/tests/libslic3r/test_stl.cpp b/tests/libslic3r/test_stl.cpp index a8addeca16..0223392c3f 100644 --- a/tests/libslic3r/test_stl.cpp +++ b/tests/libslic3r/test_stl.cpp @@ -1,5 +1,8 @@ #include +#include +#include "libslic3r/Point.hpp" +#include #include "libslic3r/Model.hpp" #include "libslic3r/Format/STL.hpp" diff --git a/tests/libslic3r/test_texture_displacement.cpp b/tests/libslic3r/test_texture_displacement.cpp index 04713d3fd9..1d9a89481b 100644 --- a/tests/libslic3r/test_texture_displacement.cpp +++ b/tests/libslic3r/test_texture_displacement.cpp @@ -1,6 +1,29 @@ #ifndef NOMINMAX #define NOMINMAX #endif + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "libslic3r/Point.hpp" +#include +#include +#include +#include +#include "libslic3r/TextureBake/TextureBakeDisplace.hpp" +#include "libslic3r/TextureBake/TextureBakeIndex.hpp" +#include +#include +#include "libslic3r/libslic3r.h" +#include #include #include diff --git a/tests/libslic3r/test_timeutils.cpp b/tests/libslic3r/test_timeutils.cpp index 221dd07d81..213b5e6788 100644 --- a/tests/libslic3r/test_timeutils.cpp +++ b/tests/libslic3r/test_timeutils.cpp @@ -1,10 +1,13 @@ #include +#include #include "libslic3r/Time.hpp" +#include #include #include #include +#include using namespace Slic3r; diff --git a/tests/libslic3r/test_toolordering_nozzle_group.cpp b/tests/libslic3r/test_toolordering_nozzle_group.cpp index 837b66287a..7c41b2315e 100644 --- a/tests/libslic3r/test_toolordering_nozzle_group.cpp +++ b/tests/libslic3r/test_toolordering_nozzle_group.cpp @@ -1,5 +1,9 @@ +#include #include +#include +#include +#include #include "libslic3r/FilamentGroupUtils.hpp" #include "libslic3r/MultiNozzleUtils.hpp" #include "libslic3r/PrintConfig.hpp" @@ -11,7 +15,11 @@ #include "test_utils.hpp" #include +#include "libslic3r/Config.hpp" +#include "libslic3r/GCode/ToolOrderUtils.hpp" +#include "libslic3r/PrintBase.hpp" #include +#include #include #include #include diff --git a/tests/libslic3r/test_triangle_selector.cpp b/tests/libslic3r/test_triangle_selector.cpp index c207ee66ad..9886308bdd 100644 --- a/tests/libslic3r/test_triangle_selector.cpp +++ b/tests/libslic3r/test_triangle_selector.cpp @@ -1,9 +1,16 @@ #include +#include +#include +#include #include "libslic3r/TriangleSelector.hpp" #include "libslic3r/TriangleMesh.hpp" #include +#include "libslic3r/libslic3r.h" +#include +#include +#include using namespace Slic3r; diff --git a/tests/libslic3r/test_utils.cpp b/tests/libslic3r/test_utils.cpp index ad5110aa5e..35094f056a 100644 --- a/tests/libslic3r/test_utils.cpp +++ b/tests/libslic3r/test_utils.cpp @@ -1,5 +1,14 @@ +#include +#include +#include +#include #include +#include +#include +#include +#include +#include #include "libslic3r/Utils.hpp" #include "test_utils.hpp" @@ -8,10 +17,14 @@ #include #include +#include #include +#include +#include #include #include #include +#include #ifndef _WIN32 #include // getuid diff --git a/tests/libslic3r/test_vendor_cache.cpp b/tests/libslic3r/test_vendor_cache.cpp index be8b97943c..b78ce77e1f 100644 --- a/tests/libslic3r/test_vendor_cache.cpp +++ b/tests/libslic3r/test_vendor_cache.cpp @@ -1,3 +1,5 @@ +#include +#include #include #include @@ -5,19 +7,32 @@ #include #include #include +#include #include #include #include +#include +#include +#include "libslic3r/Semver.hpp" +#include "libslic3r/Config.hpp" #include #include #include #include #include +#include +#include #include #include #include +#include +#include +#include +#include +#include +#include #include "libslic3r/PresetBundle.hpp" #include "libslic3r/PresetCacheFormat.hpp" #include "libslic3r/Preset.hpp" diff --git a/tests/libslic3r/test_voronoi.cpp b/tests/libslic3r/test_voronoi.cpp index b86f448c02..b512fe38fe 100644 --- a/tests/libslic3r/test_voronoi.cpp +++ b/tests/libslic3r/test_voronoi.cpp @@ -1,6 +1,14 @@ +#include #include +#include #include "test_utils.hpp" +#include "libslic3r/Geometry/Voronoi.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/Line.hpp" +#include +#include +#include "libslic3r/BoundingBox.hpp" #include #include #include @@ -9,8 +17,11 @@ #include #include +#include "libslic3r/libslic3r.h" +#include #include #include +#include // #define VORONOI_DEBUG_OUT diff --git a/tests/libslic3r/test_wipe_path.cpp b/tests/libslic3r/test_wipe_path.cpp index b637ad2b87..731a8626d4 100644 --- a/tests/libslic3r/test_wipe_path.cpp +++ b/tests/libslic3r/test_wipe_path.cpp @@ -1,5 +1,10 @@ #include +#include +#include +#include +#include +#include #include "libslic3r/GCode/WipePathHelpers.hpp" #include "libslic3r/AABBTreeLines.hpp" #include "libslic3r/Polyline.hpp" @@ -9,7 +14,12 @@ #include #include +#include "libslic3r/ExtrusionEntity.hpp" +#include #include +#include +#include +#include using namespace Slic3r; using Slic3r::AABBTreeLines::LinesDistancer; diff --git a/tests/libslic3r/test_wipe_tower.cpp b/tests/libslic3r/test_wipe_tower.cpp index 6f6daa74b8..9c64ae1b53 100644 --- a/tests/libslic3r/test_wipe_tower.cpp +++ b/tests/libslic3r/test_wipe_tower.cpp @@ -1,7 +1,17 @@ #include #include +#include +#include "libslic3r/Polygon.hpp" +#include "libslic3r/Point.hpp" +#include +#include +#include "libslic3r/libslic3r.h" +#include +#include +#include +#include #include "libslic3r/BoundingBox.hpp" #include "libslic3r/ClipperUtils.hpp" #include "libslic3r/GCode/WipeTower.hpp" diff --git a/tests/libslic3r/test_wipe_tower_estimate.cpp b/tests/libslic3r/test_wipe_tower_estimate.cpp index 22b9b2d6c5..6f0b268801 100644 --- a/tests/libslic3r/test_wipe_tower_estimate.cpp +++ b/tests/libslic3r/test_wipe_tower_estimate.cpp @@ -1,5 +1,10 @@ +#include #include +#include +#include +#include +#include #include "libslic3r/BoundingBox.hpp" #include "libslic3r/ClipperUtils.hpp" #include "libslic3r/GCode/WipeTower.hpp" @@ -8,8 +13,14 @@ #include "libslic3r/PrintConfig.hpp" #include +#include "libslic3r/Config.hpp" +#include +#include "libslic3r/Polygon.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/libslic3r.h" #include #include +#include using namespace Slic3r; using Catch::Matchers::WithinAbs; diff --git a/tests/sla_print/sla_print_tests.cpp b/tests/sla_print/sla_print_tests.cpp index 308925a163..e095c0543a 100644 --- a/tests/sla_print/sla_print_tests.cpp +++ b/tests/sla_print/sla_print_tests.cpp @@ -1,14 +1,34 @@ +#include "libslic3r/TriangleMesh.hpp" +#include "libslic3r/SLA/IndexedMesh.hpp" +#include "libslic3r/SLA/SupportTree.hpp" +#include "libslic3r/SLA/SupportPointGenerator.hpp" +#include "libslic3r/MTUtils.hpp" +#include "libslic3r/ExPolygon.hpp" +#include "libslic3r/SLA/SupportPoint.hpp" +#include "libslic3r/Point.hpp" +#include +#include "libslic3r/SLA/Pad.hpp" +#include "libslic3r/SLA/RasterBase.hpp" +#include "libslic3r/SLA/AGGRaster.hpp" +#include +#include "libslic3r/SLA/SupportTreeBuilder.hpp" +#include "libslic3r/Execution/Execution.hpp" +#include "libslic3r/Execution/ExecutionTBB.hpp" #include #include #include #include #include +#include +#include #include "sla_test_utils.hpp" +#include "test_utils.hpp" #include #include #include +#include namespace { diff --git a/tests/sla_print/sla_raycast_tests.cpp b/tests/sla_print/sla_raycast_tests.cpp index 8a520a241f..e050e35845 100644 --- a/tests/sla_print/sla_raycast_tests.cpp +++ b/tests/sla_print/sla_raycast_tests.cpp @@ -1,8 +1,15 @@ +#include #include +#include +#include #include "test_utils.hpp" +#include "libslic3r/Point.hpp" +#include +#include #include #include +#include #include "sla_test_utils.hpp" diff --git a/tests/sla_print/sla_supptgen_tests.cpp b/tests/sla_print/sla_supptgen_tests.cpp index 32f049d78e..091bfa2d66 100644 --- a/tests/sla_print/sla_supptgen_tests.cpp +++ b/tests/sla_print/sla_supptgen_tests.cpp @@ -1,8 +1,21 @@ +#include #include +#include #include "test_utils.hpp" +#include +#include #include #include +#include "libslic3r/TriangleMesh.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/SLA/SupportPoint.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/SLA/SpatIndex.hpp" +#include +#include "libslic3r/SLA/SupportPointGenerator.hpp" +#include "libslic3r/Line.hpp" +#include "libslic3r/SLA/Hollowing.hpp" #include "sla_test_utils.hpp" diff --git a/tests/sla_print/sla_test_utils.cpp b/tests/sla_print/sla_test_utils.cpp index 8951bb3853..2a769692c8 100644 --- a/tests/sla_print/sla_test_utils.cpp +++ b/tests/sla_print/sla_test_utils.cpp @@ -1,8 +1,39 @@ #include "sla_test_utils.hpp" +#include +#include +#include #include "libslic3r/TriangleMeshSlicer.hpp" #include "libslic3r/SLA/AGGRaster.hpp" +#include "test_utils.hpp" +#include +#include +#include +#include #include +#include +#include "libslic3r/SLA/SupportTree.hpp" +#include "libslic3r/SLA/Hollowing.hpp" +#include +#include "libslic3r/ExPolygon.hpp" +#include "libslic3r/Polygon.hpp" +#include "libslic3r/ClipperUtils.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/libslic3r.h" +#include +#include "libslic3r/SVG.hpp" +#include "libslic3r/TriangleMesh.hpp" +#include "libslic3r/MTUtils.hpp" +#include "libslic3r/SLA/IndexedMesh.hpp" +#include "libslic3r/SLA/SupportPointGenerator.hpp" +#include "libslic3r/SLA/SupportPoint.hpp" +#include "libslic3r/SLA/SupportTreeBuildsteps.hpp" +#include +#include "libslic3r/SLA/SupportTreeBuilder.hpp" +#include "libslic3r/SLA/Pad.hpp" +#include "libslic3r/SLA/ConcaveHull.hpp" +#include "libslic3r/SLA/RasterBase.hpp" +#include "libslic3r/BoundingBox.hpp" void test_support_model_collision(const std::string &obj_filename, const sla::SupportTreeConfig &input_supportcfg, diff --git a/tests/sla_print/sla_test_utils.hpp b/tests/sla_print/sla_test_utils.hpp index 1d27030c9d..03d4bfd3c9 100644 --- a/tests/sla_print/sla_test_utils.hpp +++ b/tests/sla_print/sla_test_utils.hpp @@ -2,11 +2,26 @@ #define SLA_TEST_UTILS_HPP #include +#include #include "test_utils.hpp" // Debug +#include +#include +#include +#include #include +#include +#include "libslic3r/SLA/SupportTree.hpp" +#include "libslic3r/SLA/Hollowing.hpp" +#include +#include +#include +#include "libslic3r/SLA/RasterBase.hpp" +#include "libslic3r/SLA/SupportPoint.hpp" #include +#include +#include #include "libslic3r/libslic3r.h" #include "libslic3r/Format/OBJ.hpp" diff --git a/tests/slic3rutils/plugin_test_utils.hpp b/tests/slic3rutils/plugin_test_utils.hpp index cbdcf1ff95..133a5aac9e 100644 --- a/tests/slic3rutils/plugin_test_utils.hpp +++ b/tests/slic3rutils/plugin_test_utils.hpp @@ -1,5 +1,6 @@ #pragma once +#include #include #include diff --git a/tests/slic3rutils/python_test_support.hpp b/tests/slic3rutils/python_test_support.hpp index 29747a88c4..e9b0aaac8d 100644 --- a/tests/slic3rutils/python_test_support.hpp +++ b/tests/slic3rutils/python_test_support.hpp @@ -4,7 +4,9 @@ // interpreter (test_plugin_host_api.cpp, test_slicing_pipeline_bindings.cpp, ...). #include #include +#include #include +#include #include #include #include diff --git a/tests/slic3rutils/slic3rutils_tests_main.cpp b/tests/slic3rutils/slic3rutils_tests_main.cpp index 176e34a5df..f8d2b4fac5 100644 --- a/tests/slic3rutils/slic3rutils_tests_main.cpp +++ b/tests/slic3rutils/slic3rutils_tests_main.cpp @@ -1,5 +1,6 @@ #include +#include #include "slic3r/Utils/Http.hpp" TEST_CASE("Check SSL certificates paths", "[Http][NotWorking]") { diff --git a/tests/slic3rutils/test_action_source.cpp b/tests/slic3rutils/test_action_source.cpp index 8dc4404419..315721ca9b 100644 --- a/tests/slic3rutils/test_action_source.cpp +++ b/tests/slic3rutils/test_action_source.cpp @@ -1,11 +1,15 @@ +#include +#include #include +#include #include "slic3r/GUI/ActionRegistry.hpp" #include "slic3r/GUI/NativeCommands.hpp" #include "slic3r/GUI/SettingsIndex.hpp" #include +#include "libslic3r/Config.hpp" #include #include #include diff --git a/tests/slic3rutils/test_bambu_filament_ids.cpp b/tests/slic3rutils/test_bambu_filament_ids.cpp index 5f6215d7ca..7d9e0df1f1 100644 --- a/tests/slic3rutils/test_bambu_filament_ids.cpp +++ b/tests/slic3rutils/test_bambu_filament_ids.cpp @@ -2,7 +2,9 @@ #include #include #include +#include +#include #include "libslic3r/Utils.hpp" #include "slic3r/Utils/BBLPrinterAgent.hpp" #include "slic3r/Utils/OrcaPrinterAgent.hpp" diff --git a/tests/slic3rutils/test_creality_cfs_match.cpp b/tests/slic3rutils/test_creality_cfs_match.cpp index 06606684b7..6b8faf4b79 100644 --- a/tests/slic3rutils/test_creality_cfs_match.cpp +++ b/tests/slic3rutils/test_creality_cfs_match.cpp @@ -1,4 +1,6 @@ +#include #include +#include #include "libslic3r/Preset.hpp" #include "libslic3r/PresetBundle.hpp" diff --git a/tests/slic3rutils/test_dev_mapping.cpp b/tests/slic3rutils/test_dev_mapping.cpp index 658117d2e4..4e32bcc20d 100644 --- a/tests/slic3rutils/test_dev_mapping.cpp +++ b/tests/slic3rutils/test_dev_mapping.cpp @@ -13,6 +13,12 @@ #include #endif +#include +#include "slic3r/GUI/DeviceCore/DevDefs.h" +#include "libslic3r/ProjectTask.hpp" +#include +#include + #include #include diff --git a/tests/slic3rutils/test_device_manager_integration.cpp b/tests/slic3rutils/test_device_manager_integration.cpp index 2b042d4f8e..7e58dc7696 100644 --- a/tests/slic3rutils/test_device_manager_integration.cpp +++ b/tests/slic3rutils/test_device_manager_integration.cpp @@ -1,8 +1,11 @@ +#include #include #include #include #include +#include "slic3r/Utils/IPrinterAgent.hpp" +#include "slic3r/Utils/CloudProvider.hpp" #include #include #include diff --git a/tests/slic3rutils/test_device_progress.cpp b/tests/slic3rutils/test_device_progress.cpp index 96dead46f0..3d42b012a2 100644 --- a/tests/slic3rutils/test_device_progress.cpp +++ b/tests/slic3rutils/test_device_progress.cpp @@ -12,6 +12,9 @@ #include #endif +#include +#include "libslic3r/ProjectTask.hpp" + #include #include diff --git a/tests/slic3rutils/test_filament_bitmap_utils.cpp b/tests/slic3rutils/test_filament_bitmap_utils.cpp index 997a119521..df5bba0567 100644 --- a/tests/slic3rutils/test_filament_bitmap_utils.cpp +++ b/tests/slic3rutils/test_filament_bitmap_utils.cpp @@ -11,6 +11,12 @@ #include #endif +#include +#include "libslic3r/Config.hpp" +#include +#include +#include + #include #include diff --git a/tests/slic3rutils/test_file_url.cpp b/tests/slic3rutils/test_file_url.cpp index 484067b57e..f22b21612a 100644 --- a/tests/slic3rutils/test_file_url.cpp +++ b/tests/slic3rutils/test_file_url.cpp @@ -1,10 +1,13 @@ #include #include +#include #include "slic3r/GUI/GUI.hpp" #include +#include +#include #include using namespace Slic3r::GUI; diff --git a/tests/slic3rutils/test_lazy.cpp b/tests/slic3rutils/test_lazy.cpp index c04a27e9d1..156c478791 100644 --- a/tests/slic3rutils/test_lazy.cpp +++ b/tests/slic3rutils/test_lazy.cpp @@ -2,9 +2,12 @@ #include #include +#include "slic3r/GUI/StagedBuild.hpp" #include +#include #include +#include #include "slic3r/GUI/Lazy.hpp" using Slic3r::GUI::Lazy; diff --git a/tests/slic3rutils/test_network_versions.cpp b/tests/slic3rutils/test_network_versions.cpp index 349082a965..bfddcb5423 100644 --- a/tests/slic3rutils/test_network_versions.cpp +++ b/tests/slic3rutils/test_network_versions.cpp @@ -1,8 +1,13 @@ +#include #include #include #include +#include +#include "libslic3r/AppConfig.hpp" +#include +#include #include "libslic3r/Utils.hpp" #include "slic3r/Utils/bambu_networking.hpp" diff --git a/tests/slic3rutils/test_orca_cloud_agent.cpp b/tests/slic3rutils/test_orca_cloud_agent.cpp index 5f325751cb..8657310f27 100644 --- a/tests/slic3rutils/test_orca_cloud_agent.cpp +++ b/tests/slic3rutils/test_orca_cloud_agent.cpp @@ -1,3 +1,5 @@ +#include +#include #include #include @@ -6,6 +8,7 @@ #include #include +#include #include "slic3r/Utils/OrcaCloudServiceAgent.hpp" #include "test_utils.hpp" diff --git a/tests/slic3rutils/test_plugin_audit.cpp b/tests/slic3rutils/test_plugin_audit.cpp index 71ce692671..ca8c46fabd 100644 --- a/tests/slic3rutils/test_plugin_audit.cpp +++ b/tests/slic3rutils/test_plugin_audit.cpp @@ -1,3 +1,5 @@ +#include +#include #include #include @@ -5,6 +7,8 @@ #include #include // secret_constants::USER_SECRET_FILENAME +#include +#include "libslic3r_version.h" #include "plugin_test_utils.hpp" #include diff --git a/tests/slic3rutils/test_plugin_capabilities_in_use.cpp b/tests/slic3rutils/test_plugin_capabilities_in_use.cpp index 16ba6e91ac..e33c9980dd 100644 --- a/tests/slic3rutils/test_plugin_capabilities_in_use.cpp +++ b/tests/slic3rutils/test_plugin_capabilities_in_use.cpp @@ -1,5 +1,7 @@ +#include #include +#include "libslic3r/Config.hpp" #include #include #include diff --git a/tests/slic3rutils/test_plugin_capability_config.cpp b/tests/slic3rutils/test_plugin_capability_config.cpp index 39ecd1002d..34c380bba9 100644 --- a/tests/slic3rutils/test_plugin_capability_config.cpp +++ b/tests/slic3rutils/test_plugin_capability_config.cpp @@ -1,5 +1,6 @@ #include +#include #include #include #include @@ -7,7 +8,11 @@ #include #include +#include #include "plugin_test_utils.hpp" +#include +#include +#include #include #include diff --git a/tests/slic3rutils/test_plugin_cloud_metadata.cpp b/tests/slic3rutils/test_plugin_cloud_metadata.cpp index 241ef3ed90..09ac877eca 100644 --- a/tests/slic3rutils/test_plugin_cloud_metadata.cpp +++ b/tests/slic3rutils/test_plugin_cloud_metadata.cpp @@ -1,5 +1,8 @@ +#include +#include #include +#include #include #include #include @@ -8,6 +11,8 @@ #include #include +#include +#include #include "plugin_test_utils.hpp" #include diff --git a/tests/slic3rutils/test_plugin_config.cpp b/tests/slic3rutils/test_plugin_config.cpp index 99de5e53db..ac7bae36be 100644 --- a/tests/slic3rutils/test_plugin_config.cpp +++ b/tests/slic3rutils/test_plugin_config.cpp @@ -1,15 +1,20 @@ +#include +#include #include +#include #include #include #include +#include #include "plugin_test_utils.hpp" #include #include #include +#include "slic3r/plugin/PythonPluginInterface.hpp" #include using namespace Slic3r; diff --git a/tests/slic3rutils/test_plugin_host_api.cpp b/tests/slic3rutils/test_plugin_host_api.cpp index 0283bb5744..7919b273db 100644 --- a/tests/slic3rutils/test_plugin_host_api.cpp +++ b/tests/slic3rutils/test_plugin_host_api.cpp @@ -1,5 +1,6 @@ #include +#include #include #include #include @@ -8,7 +9,13 @@ #include #include +#include +#include +#include +#include #include "plugin_test_utils.hpp" +#include +#include #include "python_test_support.hpp" #include @@ -16,6 +23,7 @@ #include +#include #include namespace py = pybind11; diff --git a/tests/slic3rutils/test_plugin_install.cpp b/tests/slic3rutils/test_plugin_install.cpp index ae16703fa6..539bd917e0 100644 --- a/tests/slic3rutils/test_plugin_install.cpp +++ b/tests/slic3rutils/test_plugin_install.cpp @@ -1,10 +1,16 @@ +#include +#include #include +#include #include #include #include #include +#include +#include +#include #include "plugin_test_utils.hpp" #include diff --git a/tests/slic3rutils/test_plugin_lifecycle.cpp b/tests/slic3rutils/test_plugin_lifecycle.cpp index d90a166835..0c0399e2d3 100644 --- a/tests/slic3rutils/test_plugin_lifecycle.cpp +++ b/tests/slic3rutils/test_plugin_lifecycle.cpp @@ -1,13 +1,19 @@ +#include +#include #include +#include #include #include +#include #include #include #include #include #include +#include +#include #include "plugin_test_utils.hpp" #include @@ -17,8 +23,10 @@ #include #include #include +#include "slic3r/plugin/PythonPluginInterface.hpp" #include #include +#include #include using namespace Slic3r; diff --git a/tests/slic3rutils/test_plugin_printer_agent.cpp b/tests/slic3rutils/test_plugin_printer_agent.cpp index c1bba8a88e..50570f8712 100644 --- a/tests/slic3rutils/test_plugin_printer_agent.cpp +++ b/tests/slic3rutils/test_plugin_printer_agent.cpp @@ -1,5 +1,6 @@ #include +#include "slic3r/Utils/bambu_networking.hpp" #include #include #include @@ -12,7 +13,11 @@ #include #include +#include #include "plugin_test_utils.hpp" +#include +#include +#include namespace py = pybind11; using namespace Slic3r; diff --git a/tests/slic3rutils/test_plugin_sort.cpp b/tests/slic3rutils/test_plugin_sort.cpp index 58db799dd8..8af2ce3b5b 100644 --- a/tests/slic3rutils/test_plugin_sort.cpp +++ b/tests/slic3rutils/test_plugin_sort.cpp @@ -1,7 +1,10 @@ +#include #include #include +#include "slic3r/GUI/PluginSource.hpp" +#include "slic3r/GUI/PluginStatus.hpp" #include #include diff --git a/tests/slic3rutils/test_plugin_status.cpp b/tests/slic3rutils/test_plugin_status.cpp index c51c54c6c6..ab206c22ce 100644 --- a/tests/slic3rutils/test_plugin_status.cpp +++ b/tests/slic3rutils/test_plugin_status.cpp @@ -1,3 +1,4 @@ +#include #include #include diff --git a/tests/slic3rutils/test_prebuild_queue.cpp b/tests/slic3rutils/test_prebuild_queue.cpp index 8cc5444345..dc797ca60a 100644 --- a/tests/slic3rutils/test_prebuild_queue.cpp +++ b/tests/slic3rutils/test_prebuild_queue.cpp @@ -1,8 +1,10 @@ #include +#include "slic3r/GUI/Lazy.hpp" #include #include +#include #include "slic3r/GUI/PrebuildQueue.hpp" using Slic3r::GUI::LazyBase; diff --git a/tests/slic3rutils/test_precise_seam_plugin.cpp b/tests/slic3rutils/test_precise_seam_plugin.cpp index 244a4c3405..0375b96b9e 100644 --- a/tests/slic3rutils/test_precise_seam_plugin.cpp +++ b/tests/slic3rutils/test_precise_seam_plugin.cpp @@ -1,7 +1,11 @@ #include +#include #include "libslic3r/Model.hpp" #include "libslic3r/TriangleMesh.hpp" +#include +#include +#include #include "python_test_support.hpp" #include diff --git a/tests/slic3rutils/test_printer_agent.cpp b/tests/slic3rutils/test_printer_agent.cpp index 1418001205..8113326cc2 100644 --- a/tests/slic3rutils/test_printer_agent.cpp +++ b/tests/slic3rutils/test_printer_agent.cpp @@ -1,8 +1,14 @@ #include +#include +#include "slic3r/Utils/ICloudServiceAgent.hpp" +#include "slic3r/Utils/IPrinterAgent.hpp" #include #include +#include +#include +#include #include "python_test_support.hpp" #include diff --git a/tests/slic3rutils/test_printhost.cpp b/tests/slic3rutils/test_printhost.cpp index c4df56ebb6..c7ce9dccaa 100644 --- a/tests/slic3rutils/test_printhost.cpp +++ b/tests/slic3rutils/test_printhost.cpp @@ -3,10 +3,18 @@ #include #include #include +#include #include #include +#include +#include +#include +#include +#include +#include +#include #include "libslic3r/LifecycleEvents.hpp" #include "slic3r/Utils/PrintHost.hpp" #include "slic3r/Utils/Flashforge.hpp" diff --git a/tests/slic3rutils/test_scene_raycaster.cpp b/tests/slic3rutils/test_scene_raycaster.cpp index d51671e5c5..a1be46f216 100644 --- a/tests/slic3rutils/test_scene_raycaster.cpp +++ b/tests/slic3rutils/test_scene_raycaster.cpp @@ -11,6 +11,16 @@ #include #endif +#include +#include "slic3r/GUI/MeshUtils.hpp" +#include "libslic3r/Point.hpp" +#include +#include +#include +#include "libslic3r/TriangleMesh.hpp" +#include "libslic3r/Geometry.hpp" +#include + #include #include "slic3r/GUI/Camera.hpp" diff --git a/tests/slic3rutils/test_shortcuts.cpp b/tests/slic3rutils/test_shortcuts.cpp index 350e87f48a..ed7975b1e5 100644 --- a/tests/slic3rutils/test_shortcuts.cpp +++ b/tests/slic3rutils/test_shortcuts.cpp @@ -1,10 +1,16 @@ #include #include +#include #include "libslic3r/AppConfig.hpp" #include "slic3r/GUI/KeyChord.hpp" #include "slic3r/GUI/Shortcuts.hpp" +#include +#include +#include +#include +#include #include using namespace Slic3r; diff --git a/tests/slic3rutils/test_slicing_pipeline_bindings.cpp b/tests/slic3rutils/test_slicing_pipeline_bindings.cpp index 5e819c09e0..7552fe15af 100644 --- a/tests/slic3rutils/test_slicing_pipeline_bindings.cpp +++ b/tests/slic3rutils/test_slicing_pipeline_bindings.cpp @@ -1,4 +1,18 @@ #include +#include +#include +#include +#include "libslic3r/libslic3r.h" +#include +#include +#include +#include "libslic3r/Config.hpp" +#include "libslic3r/Print.hpp" +#include +#include "libslic3r/SurfaceCollection.hpp" +#include "libslic3r/Polygon.hpp" +#include +#include #include "slic3r/plugin/PythonPluginInterface.hpp" using namespace Slic3r; diff --git a/tests/slic3rutils/test_slicing_pipeline_config.cpp b/tests/slic3rutils/test_slicing_pipeline_config.cpp index 37984cff34..1e8e728f4d 100644 --- a/tests/slic3rutils/test_slicing_pipeline_config.cpp +++ b/tests/slic3rutils/test_slicing_pipeline_config.cpp @@ -1,13 +1,26 @@ +#include +#include #include +#include +#include +#include "libslic3r/Print.hpp" +#include "libslic3r/Model.hpp" +#include "libslic3r/PrintConfig.hpp" +#include "libslic3r/Config.hpp" #include #include +#include "slic3r/plugin/PluginFsUtils.hpp" #include #include #include +#include +#include #include "fff_print/test_helpers.hpp" #include "plugin_test_utils.hpp" +#include +#include #include #include diff --git a/tests/slic3rutils/test_staged_build.cpp b/tests/slic3rutils/test_staged_build.cpp index 3afcd9e5fc..df56d0c6e7 100644 --- a/tests/slic3rutils/test_staged_build.cpp +++ b/tests/slic3rutils/test_staged_build.cpp @@ -2,6 +2,7 @@ #include +#include #include "slic3r/GUI/StagedBuild.hpp" using Slic3r::GUI::StagedBuild; diff --git a/tests/slic3rutils/test_user_manager.cpp b/tests/slic3rutils/test_user_manager.cpp index cfccebe1cc..3c60552f22 100644 --- a/tests/slic3rutils/test_user_manager.cpp +++ b/tests/slic3rutils/test_user_manager.cpp @@ -2,6 +2,8 @@ #include +#include +#include #include "slic3r/GUI/UserManager.hpp" using namespace Slic3r; diff --git a/tests/slic3rutils/test_web_media_controller.cpp b/tests/slic3rutils/test_web_media_controller.cpp index cdf756ca3a..fdf271fe10 100644 --- a/tests/slic3rutils/test_web_media_controller.cpp +++ b/tests/slic3rutils/test_web_media_controller.cpp @@ -1,7 +1,15 @@ +#include #include #include +#include +#include +#include +#include +#include +#include "slic3r/Utils/IPrinterAgent.hpp" +#include #include #include diff --git a/tests/test_utils.hpp b/tests/test_utils.hpp index 0b04e6ad11..d0817ce128 100644 --- a/tests/test_utils.hpp +++ b/tests/test_utils.hpp @@ -1,6 +1,9 @@ #ifndef SLIC3R_TEST_UTILS #define SLIC3R_TEST_UTILS +#include +#include +#include "libslic3r/BoundingBox.hpp" #include #include #include From c86e33db6dd96f20ef1fd92e1018269b95ee0c31 Mon Sep 17 00:00:00 2001 From: SoftFever Date: Sat, 3 Oct 2026 14:11:21 +0800 Subject: [PATCH 5/7] Make the orca-wxwidgets skill find the wx source on Windows and in worktrees --- .claude/skills/orca-wxwidgets/SKILL.md | 12 ++++++++++-- .../references/mouse-keyboard-focus.md | 2 +- .../references/painting-custom-widgets.md | 2 +- .../skills/orca-wxwidgets/references/platforms.md | 5 +++-- .../skills/orca-wxwidgets/references/popups-menus.md | 2 +- .../orca-wxwidgets/references/threads-timers-app.md | 2 +- .../orca-wxwidgets/references/windows-dialogs.md | 7 +++---- .../orca-wxwidgets/references/wx-33-changes.md | 2 +- 8 files changed, 21 insertions(+), 13 deletions(-) diff --git a/.claude/skills/orca-wxwidgets/SKILL.md b/.claude/skills/orca-wxwidgets/SKILL.md index 263d2e390f..0e39ce9d24 100644 --- a/.claude/skills/orca-wxwidgets/SKILL.md +++ b/.claude/skills/orca-wxwidgets/SKILL.md @@ -30,8 +30,9 @@ how you read the wx docs: Look things up in the source the app is built from — it beats memory, and 3.3 changed real behaviour: ```bash -WX=$(find deps -maxdepth 5 -type d -path '*dep_wxWidgets-prefix/src/dep_wxWidgets' | head -1) -# macOS: deps/build//dep_wxWidgets-prefix/src/dep_wxWidgets Linux: deps/build/dep_wxWidgets-prefix/... +WX=$(find -L deps -maxdepth 5 -type d -path '*dep_wxWidgets-prefix/src/dep_wxWidgets' 2>/dev/null | head -1) +# macOS: deps/build//dep_wxWidgets-prefix/src/dep_wxWidgets Linux, Windows: deps//dep_wxWidgets-prefix/... +# -L follows a worktree's deps/ symlinked to the main checkout. Not a glob: zsh aborts on one that matches nothing. # If deps are not built: git clone --depth 1 -b v3.3.2 https://github.com/SoftFever/Orca-deps-wxWidgets grep -n "CaptureMouse" -A 30 $WX/interface/wx/window.h # documented contract (doxygen source) grep -rn "@onlyfor\|not implemented" $WX/interface/wx/popupwin.h # documented platform limits @@ -40,6 +41,13 @@ grep -n "IsDark" $WX/docs/changes.txt # what changed in grep -n "NotifyCaptureLost" -r $WX/src/osx $WX/src/gtk $WX/src/msw # what each port actually does ``` +On Windows these lookups are bash: run them from Git Bash. PowerShell has no `grep`, and its `find` is +Windows' text-search `find.exe`. To locate the wx tree from PowerShell: + +```powershell +$WX = Resolve-Path deps\*\dep_wxWidgets-prefix\src\dep_wxWidgets, deps\*\*\dep_wxWidgets-prefix\src\dep_wxWidgets -ErrorAction SilentlyContinue | Select-Object -First 1 -ExpandProperty Path +``` + `interface/wx/.h` is the documentation; `src/common` holds shared behaviour and `src/{msw,osx,gtk,unix,generic}` the per-port implementation. When the docs and the source disagree, the source is what runs — the references mark such facts **[source]**. Orca-side design docs live in diff --git a/.claude/skills/orca-wxwidgets/references/mouse-keyboard-focus.md b/.claude/skills/orca-wxwidgets/references/mouse-keyboard-focus.md index 0ccb5e4b70..48646134d8 100644 --- a/.claude/skills/orca-wxwidgets/references/mouse-keyboard-focus.md +++ b/.claude/skills/orca-wxwidgets/references/mouse-keyboard-focus.md @@ -10,7 +10,7 @@ wx asserts are compiled out in Orca (`wxDEBUG_LEVEL=0`), so every misuse below t an assert fails silently. "GTK" means wxGTK3, Orca's Linux default (X11 and Wayland); GTK2 is only an opt-out build (`-DDEP_WX_GTK3=OFF`), noted where it differs. Paths starting `interface/`, `include/`, `src/`, `docs/` are in the wx tree -(`find deps -maxdepth 5 -type d -path '*dep_wxWidgets-prefix/src/dep_wxWidgets'`); Orca paths are +(located as in `SKILL.md` §Ground truth); Orca paths are relative to `src/slic3r/GUI/`. Contents: [Rules](#rules) · [Mouse capture](#mouse-capture) · [Mouse events](#mouse-events) · diff --git a/.claude/skills/orca-wxwidgets/references/painting-custom-widgets.md b/.claude/skills/orca-wxwidgets/references/painting-custom-widgets.md index 905ff97d99..4f047042c3 100644 --- a/.claude/skills/orca-wxwidgets/references/painting-custom-widgets.md +++ b/.claude/skills/orca-wxwidgets/references/painting-custom-widgets.md @@ -6,7 +6,7 @@ to write a custom control on the wx side and how to author an Orca widget on the `StaticBox`/`StateHandler` foundation. Read it before writing or reviewing any `wxEVT_PAINT` handler, `render`/`doRender` method, `messureSize`, or a new class under `src/slic3r/GUI/Widgets/`. -wx cites are relative to the pinned wx 3.3.2 tree (`deps/build//dep_wxWidgets-prefix/src/dep_wxWidgets`). +wx cites are relative to the pinned wx 3.3.2 tree (located as in `SKILL.md` §Ground truth). Orca builds wx with `wxBUILD_DEBUG_LEVEL=0` and `libslic3r_gui` with `wxDEBUG_LEVEL=0`: every wx assert below is compiled out and `wxCHECK*` returns silently, so paint misuse shows up only as wrong, missing or stale pixels, never as an assert dialog. diff --git a/.claude/skills/orca-wxwidgets/references/platforms.md b/.claude/skills/orca-wxwidgets/references/platforms.md index 13ed32314a..f100b02269 100644 --- a/.claude/skills/orca-wxwidgets/references/platforms.md +++ b/.claude/skills/orca-wxwidgets/references/platforms.md @@ -78,8 +78,9 @@ Contents: [Rules](#rules) · [The wx build Orca uses](#the-wx-build-orca-uses) `references/colours-dark-mode.md`. - The checked-out source is the tree that every wx citation in this skill refers to: `deps/build//dep_wxWidgets-prefix/src/dep_wxWidgets` on macOS and - `deps/build/dep_wxWidgets-prefix/src/dep_wxWidgets` on Linux. Find it with - `find deps -maxdepth 5 -type d -path '*dep_wxWidgets-prefix/src/dep_wxWidgets'`. On macOS its + `deps//dep_wxWidgets-prefix/src/dep_wxWidgets` on Linux and Windows (`deps/build` for a + release build; `build_win.bat` names the others). Locate it with the bash or PowerShell lookup in + `SKILL.md` §Ground truth. On macOS its `src/osx/cocoa/colour.mm` already has the patch applied. - **Flatpak builds wx separately.** `deps/CMakeLists.txt` leaves `dep_wxWidgets` out of the deps target when `FLATPAK` is set. Instead, `scripts/flatpak/com.orcaslicer.OrcaSlicer.yml` has its own diff --git a/.claude/skills/orca-wxwidgets/references/popups-menus.md b/.claude/skills/orca-wxwidgets/references/popups-menus.md index be1abb69a8..3fab369436 100644 --- a/.claude/skills/orca-wxwidgets/references/popups-menus.md +++ b/.claude/skills/orca-wxwidgets/references/popups-menus.md @@ -5,7 +5,7 @@ How wx 3.3.2 popups and menus behave on each port, and the Orca wrappers built o `append_menu_item`, `Plater::PopupMenu` and the macOS menubar versus `BBLTopbar`. Read it before you add or change anything that opens over other UI and must close by itself, or any context menu or menubar item. -wx cites are relative to the wx tree root (`deps/build//dep_wxWidgets-prefix/src/dep_wxWidgets`). +wx cites are relative to the wx tree root (located as in `SKILL.md` §Ground truth). **[source]** marks behaviour derived from the implementation that the wx docs do not state or contradict. Orca builds wx with `wxBUILD_DEBUG_LEVEL=0`, so every "asserts" below means "fails silently in Orca". "GTK" means wxGTK3 (X11 and Wayland), the default Linux build; GTK2 is only an opt-out (`-DDEP_WX_GTK3=OFF`). diff --git a/.claude/skills/orca-wxwidgets/references/threads-timers-app.md b/.claude/skills/orca-wxwidgets/references/threads-timers-app.md index 8c8367c999..269c228a35 100644 --- a/.claude/skills/orca-wxwidgets/references/threads-timers-app.md +++ b/.claude/skills/orca-wxwidgets/references/threads-timers-app.md @@ -7,7 +7,7 @@ yields and nested event loops, progress dialogs, startup, shutdown and exception screen, and the access rules for `wxGetApp()` and `app_config`. Read it whenever code runs off the main thread, defers work, starts a timer, yields, shows progress, or runs during startup or shutdown. -wx cites are relative to the pinned wx 3.3.2 tree (`deps/build//dep_wxWidgets-prefix/src/dep_wxWidgets`). +wx cites are relative to the pinned wx 3.3.2 tree (located as in `SKILL.md` §Ground truth). Orca builds wx with `wxBUILD_DEBUG_LEVEL=0` and `libslic3r_gui` with `wxDEBUG_LEVEL=0`, so `wxASSERT` is compiled out and `wxCHECK*` returns silently: a timer started off the main thread never fires on macOS, `Exit()` on a loop that is not the active one is ignored, `Start(0)` on macOS fails — all without diff --git a/.claude/skills/orca-wxwidgets/references/windows-dialogs.md b/.claude/skills/orca-wxwidgets/references/windows-dialogs.md index 1c5be5af4c..ff8a858e24 100644 --- a/.claude/skills/orca-wxwidgets/references/windows-dialogs.md +++ b/.claude/skills/orca-wxwidgets/references/windows-dialogs.md @@ -6,10 +6,9 @@ port; what Orca's `DPIDialog`/`DPIFrame` add; the Orca dialog recipe; and the `M Read it before writing or reviewing any dialog, frame, close handler, `Destroy()`/`delete`, or code that keeps a pointer to a window across an event, a `CallAfter` or a modal loop. -wx cites are relative to the pinned wx 3.3.2 tree (`find deps -maxdepth 5 -type d -path -'*dep_wxWidgets-prefix/src/dep_wxWidgets'`). wx is built with `wxBUILD_DEBUG_LEVEL=0` and -`libslic3r_gui` with `wxDEBUG_LEVEL=0`: every wx assert quoted below is compiled out, so misuse -fails silently (dropped call, stuck loop, freed memory), never with an assert dialog. "GTK" below +wx cites are relative to the pinned wx 3.3.2 tree (located as in `SKILL.md` §Ground truth). wx is +built with `wxBUILD_DEBUG_LEVEL=0` and `libslic3r_gui` with `wxDEBUG_LEVEL=0`: every wx assert +quoted below is compiled out, so misuse fails silently (dropped call, stuck loop, freed memory), never with an assert dialog. "GTK" below means wxGTK as Orca builds it on Linux: GTK3 by default (X11 or Wayland); GTK2 is only an opt-out. Contents: [Rules](#rules) · [1 Creating and parenting](#1-creating-and-parenting-windows) · diff --git a/.claude/skills/orca-wxwidgets/references/wx-33-changes.md b/.claude/skills/orca-wxwidgets/references/wx-33-changes.md index c2075ea2fb..4a292d89af 100644 --- a/.claude/skills/orca-wxwidgets/references/wx-33-changes.md +++ b/.claude/skills/orca-wxwidgets/references/wx-33-changes.md @@ -14,7 +14,7 @@ Contents: [Rules](#rules) · [1 Reading the change logs](#1-reading-the-change-l [8 Migration done in Orca](#8-migration-already-done-in-orca) All `docs/`, `interface/`, `include/`, `src/`, `build/` cites are relative to the pinned wx tree -(`find deps -maxdepth 5 -type d -path '*dep_wxWidgets-prefix/src/dep_wxWidgets'`), except paths +(located as in `SKILL.md` §Ground truth), except paths explicitly called Orca's (`deps/…`, Orca's `src/CMakeLists.txt`) and bare Orca file + symbol cites. ## Rules From 8a6377f087e3f422275cd788339e1fa64a280f50 Mon Sep 17 00:00:00 2001 From: HanifKoh <76276251+HanifKoh@users.noreply.github.com> Date: Sat, 3 Oct 2026 15:31:11 +0800 Subject: [PATCH 6/7] Add Missing Includes Across src/libslic3r (#16068) * Add Missing Includes Across src/libslic3r Every libslic3r source and header now directly includes the headers declaring what it uses, rather than relying on the precompiled header or transitive includes. Generated with clang-tidy misc-include-cleaner, with libslic3r headers spelled libslic3r/... so they resolve outside the library's private include paths. MultiMaterialSegmentation.hpp, Support/SupportParameters.hpp and Format/STEP.hpp are made self-contained by hand. * Make the libslic3r Headers Compile on Their Own Each now includes, or forward-declares, what it uses instead of relying on what its includers happened to include first. Left out: I18N.hpp, which errors on purpose when included from GUI code, and VoxelizeCSGMesh.hpp and SLA/bicubic.h, which nothing includes and which no longer compile at all. * Add the Includes Missing From the Hand-Fixed libslic3r Headers clang-tidy would not edit these headers while they failed to compile on their own, so the first pass skipped them. With the headers now self-contained, a second pass adds the rest. * Keep Windows Setup Ahead of the Added libslic3r Includes Print.cpp and Thread.cpp open with a _WIN32 block that has to come first; without the precompiled header, Print.cpp otherwise reaches windows.h through OCCT with NONLS defined and boost/regex fails. OpenVDBUtils.cpp and SLA/SupportTreeBuilder.cpp had includes inside #ifndef NOMINMAX, which libslic3r defines on Windows, so those were skipped there. .clang-tidy also ignores the MSVC STL and UCRT internals, Boost.Multiprecision's fwd.hpp and CPython's Windows include directory. * Re-Add libslic3r Includes After the Clipper2 2.0.1 Migration Rebasing onto main took main's version of the files the Clipper2 migration rewrote, so their added includes are restored here, along with includes for main's new code. Clipper2's individual headers are now ignored by clang-tidy: they only build the Z variant through clipper2_z.hpp, which defines USINGZ first, so including clipper.core.h and the like directly broke ClipperZUtils.cpp. --- .clang-tidy | 5 +- src/libslic3r/AABBMesh.cpp | 9 +++ src/libslic3r/AABBMesh.hpp | 4 ++ src/libslic3r/AABBTreeIndirect.hpp | 5 ++ src/libslic3r/AABBTreeLines.hpp | 6 ++ src/libslic3r/AStar.hpp | 4 ++ src/libslic3r/Algorithm/LineSplit.cpp | 12 ++++ src/libslic3r/Algorithm/LineSplit.hpp | 6 ++ src/libslic3r/Algorithm/RegionExpansion.cpp | 14 +++++ src/libslic3r/Algorithm/RegionExpansion.hpp | 2 + src/libslic3r/AnyPtr.hpp | 1 + src/libslic3r/AppConfig.cpp | 14 +++++ src/libslic3r/AppConfig.hpp | 3 + .../BeadingStrategy/BeadingStrategy.cpp | 2 + .../BeadingStrategyFactory.cpp | 1 + .../DistributedBeadingStrategy.cpp | 1 + .../LimitedBeadingStrategy.cpp | 2 + .../OuterWallInsetBeadingStrategy.cpp | 1 + .../RedistributeBeadingStrategy.cpp | 1 + .../WideningBeadingStrategy.cpp | 3 + .../Arachne/SkeletalTrapezoidation.cpp | 8 +++ .../Arachne/SkeletalTrapezoidationEdge.hpp | 2 + .../Arachne/SkeletalTrapezoidationGraph.cpp | 6 ++ .../Arachne/SkeletalTrapezoidationJoint.hpp | 1 + src/libslic3r/Arachne/WallToolPaths.cpp | 21 +++++++ src/libslic3r/Arachne/WallToolPaths.hpp | 6 ++ .../Arachne/utils/ExtrusionJunction.hpp | 3 + src/libslic3r/Arachne/utils/ExtrusionLine.cpp | 6 ++ src/libslic3r/Arachne/utils/ExtrusionLine.hpp | 1 + .../Arachne/utils/PolygonsPointIndex.hpp | 3 + .../Arachne/utils/PolygonsSegmentIndex.hpp | 3 + .../Arachne/utils/PolylineStitcher.cpp | 1 + src/libslic3r/Arachne/utils/SparseGrid.hpp | 3 + .../Arachne/utils/SparseLineGrid.hpp | 5 ++ .../Arachne/utils/SparsePointGrid.hpp | 4 ++ src/libslic3r/Arachne/utils/SquareGrid.cpp | 4 ++ src/libslic3r/Arachne/utils/linearAlg2D.hpp | 3 + src/libslic3r/ArcFitter.cpp | 6 ++ src/libslic3r/ArcFitter.hpp | 3 + src/libslic3r/Arrange.cpp | 24 ++++++++ src/libslic3r/Arrange.hpp | 9 +++ src/libslic3r/BoundingBox.cpp | 3 + src/libslic3r/BoundingBox.hpp | 3 + src/libslic3r/BridgeDetector.cpp | 11 ++++ src/libslic3r/BridgeDetector.hpp | 7 +++ src/libslic3r/Brim.cpp | 19 +++++++ src/libslic3r/Brim.hpp | 2 + src/libslic3r/BrimEarsPoint.hpp | 3 + src/libslic3r/BuildVolume.cpp | 13 +++++ src/libslic3r/BuildVolume.hpp | 4 ++ src/libslic3r/CAD/CadDocument.cpp | 16 ++++++ src/libslic3r/CAD/CadDocument.hpp | 4 ++ src/libslic3r/CAD/GeometryEngine.cpp | 16 ++++++ src/libslic3r/CAD/GeometryEngine.hpp | 3 + src/libslic3r/CAD/SketchConstraints.cpp | 5 ++ src/libslic3r/CAD/SketchConstraints.hpp | 1 + src/libslic3r/CAD/SketchEngine.cpp | 14 +++++ src/libslic3r/CAD/SketchImport.cpp | 8 +++ src/libslic3r/CAD/SketchInference.cpp | 6 ++ src/libslic3r/CAD/SketchInference.hpp | 2 + src/libslic3r/CAD/SketchSolver.cpp | 4 ++ src/libslic3r/CAD/ThreadStandards.cpp | 2 + src/libslic3r/CSGMesh/CSGMesh.hpp | 4 ++ src/libslic3r/CSGMesh/CSGMeshCopy.hpp | 4 ++ src/libslic3r/CSGMesh/ModelToCSGMesh.hpp | 4 ++ .../CSGMesh/PerformCSGMeshBooleans.hpp | 6 ++ src/libslic3r/CSGMesh/SliceCSGMesh.hpp | 8 +++ src/libslic3r/CSGMesh/TriangleMeshAdapter.hpp | 1 + src/libslic3r/Channel.hpp | 3 + src/libslic3r/Circle.cpp | 6 ++ src/libslic3r/Circle.hpp | 2 + src/libslic3r/ClipperUtils.cpp | 15 +++++ src/libslic3r/ClipperUtils.hpp | 7 +++ src/libslic3r/ClipperZUtils.cpp | 2 + src/libslic3r/ClipperZUtils.hpp | 5 ++ src/libslic3r/Color.cpp | 8 +++ src/libslic3r/ColorDecomposeRecipe.cpp | 2 + src/libslic3r/Config.cpp | 22 ++++++++ src/libslic3r/Config.hpp | 10 ++++ src/libslic3r/ContourZ.cpp | 4 ++ src/libslic3r/CustomGCode.cpp | 4 ++ src/libslic3r/CustomGCode.hpp | 3 + src/libslic3r/CutSurface.cpp | 34 ++++++++++++ src/libslic3r/CutSurface.hpp | 2 + src/libslic3r/CutUtils.cpp | 11 ++++ src/libslic3r/CutUtils.hpp | 1 + src/libslic3r/EdgeGrid.cpp | 11 ++++ src/libslic3r/EdgeGrid.hpp | 12 ++++ src/libslic3r/ElephantFootCompensation.cpp | 9 +++ src/libslic3r/Emboss.cpp | 23 ++++++++ src/libslic3r/Emboss.hpp | 8 +++ src/libslic3r/EmbossShape.hpp | 2 + src/libslic3r/ExPolygon.cpp | 10 ++++ src/libslic3r/ExPolygon.hpp | 7 +++ src/libslic3r/ExPolygonCollection.hpp | 3 + src/libslic3r/ExPolygonSerialize.hpp | 1 + src/libslic3r/ExPolygonsIndex.cpp | 6 ++ src/libslic3r/ExPolygonsIndex.hpp | 2 + src/libslic3r/Exception.hpp | 2 + src/libslic3r/Execution/Execution.hpp | 1 + src/libslic3r/Execution/ExecutionSeq.hpp | 3 + src/libslic3r/Execution/ExecutionTBB.hpp | 3 + src/libslic3r/Extruder.cpp | 6 ++ src/libslic3r/Extruder.hpp | 1 + src/libslic3r/ExtrusionEntity.cpp | 13 +++++ src/libslic3r/ExtrusionEntity.hpp | 6 ++ src/libslic3r/ExtrusionEntityCollection.cpp | 5 ++ src/libslic3r/ExtrusionEntityCollection.hpp | 7 +++ src/libslic3r/ExtrusionSimulator.cpp | 10 ++++ src/libslic3r/ExtrusionSimulator.hpp | 1 + src/libslic3r/FaceDetector.cpp | 5 ++ src/libslic3r/FaceDetector.hpp | 1 + src/libslic3r/Feature/FuzzySkin/FuzzySkin.cpp | 14 +++++ src/libslic3r/Feature/FuzzySkin/FuzzySkin.hpp | 4 ++ .../Interlocking/InterlockingGenerator.cpp | 14 +++++ .../Interlocking/InterlockingGenerator.hpp | 8 +++ .../Feature/Interlocking/VoxelUtils.cpp | 12 ++++ .../Feature/Interlocking/VoxelUtils.hpp | 5 ++ src/libslic3r/FilamentGroup.cpp | 23 ++++++++ src/libslic3r/FilamentGroup.hpp | 7 +++ src/libslic3r/FilamentGroupUtils.cpp | 16 ++++++ src/libslic3r/FilamentGroupUtils.hpp | 3 + src/libslic3r/FilamentMixer.cpp | 5 ++ src/libslic3r/FilamentMixer.hpp | 1 + src/libslic3r/FileParserError.hpp | 2 + src/libslic3r/Fill/Fill.cpp | 22 ++++++++ src/libslic3r/Fill/Fill.hpp | 2 + src/libslic3r/Fill/Fill3DHoneycomb.cpp | 12 ++++ src/libslic3r/Fill/Fill3DHoneycomb.hpp | 4 ++ src/libslic3r/Fill/FillAdaptive.cpp | 22 ++++++++ src/libslic3r/Fill/FillAdaptive.hpp | 10 ++++ src/libslic3r/Fill/FillBase.cpp | 20 +++++++ src/libslic3r/Fill/FillBase.hpp | 8 +++ src/libslic3r/Fill/FillConcentric.cpp | 13 +++++ src/libslic3r/Fill/FillConcentric.hpp | 4 ++ src/libslic3r/Fill/FillConcentricInternal.cpp | 13 +++++ src/libslic3r/Fill/FillConcentricInternal.hpp | 1 + src/libslic3r/Fill/FillCornerSmoothing.cpp | 10 ++++ src/libslic3r/Fill/FillCornerSmoothing.hpp | 1 + src/libslic3r/Fill/FillCrossHatch.cpp | 8 +++ src/libslic3r/Fill/FillCrossHatch.hpp | 4 ++ src/libslic3r/Fill/FillGyroid.cpp | 10 ++++ src/libslic3r/Fill/FillGyroid.hpp | 4 ++ src/libslic3r/Fill/FillHoneycomb.cpp | 10 ++++ src/libslic3r/Fill/FillHoneycomb.hpp | 6 ++ src/libslic3r/Fill/FillLightning.cpp | 8 +++ src/libslic3r/Fill/FillLightning.hpp | 6 ++ src/libslic3r/Fill/FillLine.cpp | 11 ++++ src/libslic3r/Fill/FillLine.hpp | 5 ++ src/libslic3r/Fill/FillPlanePath.cpp | 14 +++++ src/libslic3r/Fill/FillPlanePath.hpp | 6 ++ src/libslic3r/Fill/FillRectilinear.cpp | 18 ++++++ src/libslic3r/Fill/FillRectilinear.hpp | 11 ++++ src/libslic3r/Fill/FillSpiralInset.cpp | 13 +++++ src/libslic3r/Fill/FillSpiralInset.hpp | 4 ++ src/libslic3r/Fill/FillTpmsD.cpp | 5 ++ src/libslic3r/Fill/FillTpmsFK.cpp | 9 +++ .../Fill/Lightning/DistanceField.cpp | 14 +++++ .../Fill/Lightning/DistanceField.hpp | 7 +++ src/libslic3r/Fill/Lightning/Generator.cpp | 21 +++++++ src/libslic3r/Fill/Lightning/Generator.hpp | 4 ++ src/libslic3r/Fill/Lightning/Layer.cpp | 15 +++++ src/libslic3r/Fill/Lightning/Layer.hpp | 5 ++ src/libslic3r/Fill/Lightning/TreeNode.cpp | 16 ++++++ src/libslic3r/Fill/Lightning/TreeNode.hpp | 6 ++ src/libslic3r/Flow.cpp | 5 ++ src/libslic3r/Flow.hpp | 2 + src/libslic3r/FlushVolCalc.cpp | 3 + src/libslic3r/FlushVolPredictor.cpp | 10 ++++ src/libslic3r/Format/3mf.cpp | 30 ++++++++++ src/libslic3r/Format/3mf.hpp | 1 + src/libslic3r/Format/AMF.cpp | 11 ++++ src/libslic3r/Format/AMF.hpp | 1 + src/libslic3r/Format/AssimpImport.cpp | 9 +++ src/libslic3r/Format/DRC.cpp | 13 +++++ src/libslic3r/Format/OBJ.cpp | 12 ++++ src/libslic3r/Format/OBJ.hpp | 7 +++ src/libslic3r/Format/ResourcePathUtils.hpp | 3 + src/libslic3r/Format/SL1.cpp | 26 +++++++++ src/libslic3r/Format/SL1.hpp | 9 +++ src/libslic3r/Format/STEP.cpp | 22 ++++++++ src/libslic3r/Format/STEP.hpp | 10 ++++ src/libslic3r/Format/STL.cpp | 2 + src/libslic3r/Format/ZipperArchiveImport.cpp | 13 +++++ src/libslic3r/Format/ZipperArchiveImport.hpp | 2 + src/libslic3r/Format/bbs_3mf.cpp | 55 +++++++++++++++++++ src/libslic3r/Format/bbs_3mf.hpp | 12 ++++ src/libslic3r/Format/objparser.cpp | 8 +++ src/libslic3r/Format/objparser.hpp | 1 + src/libslic3r/Format/svg.cpp | 16 ++++++ src/libslic3r/Format/svg.hpp | 3 + src/libslic3r/GCode.cpp | 47 ++++++++++++++++ src/libslic3r/GCode.hpp | 13 +++++ .../GCode/AdaptivePAInterpolator.cpp | 6 ++ src/libslic3r/GCode/AdaptivePAProcessor.cpp | 9 +++ src/libslic3r/GCode/AdaptivePAProcessor.hpp | 2 + .../GCode/AvoidCrossingPerimeters.cpp | 19 +++++++ .../GCode/AvoidCrossingPerimeters.hpp | 4 ++ src/libslic3r/GCode/ConflictChecker.cpp | 17 ++++++ src/libslic3r/GCode/ConflictChecker.hpp | 10 ++++ src/libslic3r/GCode/CoolingBuffer.cpp | 14 +++++ src/libslic3r/GCode/CoolingBuffer.hpp | 4 ++ .../GCode/ElegooGCodeProcessorHelper.cpp | 3 + src/libslic3r/GCode/ExtrusionProcessor.hpp | 3 + src/libslic3r/GCode/FanMover.cpp | 19 +++++++ src/libslic3r/GCode/FanMover.hpp | 5 ++ src/libslic3r/GCode/GCodeProcessor.cpp | 39 +++++++++++++ src/libslic3r/GCode/GCodeProcessor.hpp | 14 +++++ src/libslic3r/GCode/OrderingStrategies.cpp | 5 ++ src/libslic3r/GCode/OrderingStrategies.hpp | 2 + .../GCode/PchipInterpolatorHelper.cpp | 4 ++ src/libslic3r/GCode/PreciseSeam.cpp | 14 +++++ src/libslic3r/GCode/PreciseSeam.hpp | 2 + src/libslic3r/GCode/PressureEqualizer.cpp | 11 ++++ src/libslic3r/GCode/PressureEqualizer.hpp | 7 +++ src/libslic3r/GCode/PrintExtents.cpp | 9 +++ .../GCode/RetractWhenCrossingPerimeters.cpp | 9 +++ .../GCode/RetractWhenCrossingPerimeters.hpp | 1 + src/libslic3r/GCode/SeamPlacer.cpp | 23 ++++++++ src/libslic3r/GCode/SeamPlacer.hpp | 5 ++ .../GCode/SmallAreaInfillFlowCompensator.cpp | 10 ++++ .../GCode/SmallAreaInfillFlowCompensator.hpp | 1 + src/libslic3r/GCode/SpiralVase.cpp | 5 ++ src/libslic3r/GCode/SpiralVase.hpp | 4 ++ src/libslic3r/GCode/ThumbnailData.cpp | 1 + src/libslic3r/GCode/ThumbnailData.hpp | 3 + src/libslic3r/GCode/Thumbnails.cpp | 16 ++++++ src/libslic3r/GCode/Thumbnails.hpp | 4 ++ src/libslic3r/GCode/TimelapsePosPicker.cpp | 17 ++++++ src/libslic3r/GCode/TimelapsePosPicker.hpp | 4 ++ src/libslic3r/GCode/ToolOrderUtils.cpp | 14 +++++ src/libslic3r/GCode/ToolOrderUtils.hpp | 1 + src/libslic3r/GCode/ToolOrdering.cpp | 17 ++++++ src/libslic3r/GCode/ToolOrdering.hpp | 8 +++ src/libslic3r/GCode/WipePathHelpers.cpp | 7 +++ src/libslic3r/GCode/WipePathHelpers.hpp | 1 + src/libslic3r/GCode/WipeTower.cpp | 23 ++++++++ src/libslic3r/GCode/WipeTower.hpp | 7 +++ src/libslic3r/GCode/WipeTower2.cpp | 22 ++++++++ src/libslic3r/GCode/WipeTower2.hpp | 4 ++ src/libslic3r/GCode/WipeTowerEstimate.cpp | 3 + src/libslic3r/GCodeReader.cpp | 12 ++++ src/libslic3r/GCodeReader.hpp | 4 ++ src/libslic3r/GCodeSender.hpp | 8 +++ src/libslic3r/GCodeWriter.cpp | 20 +++++++ src/libslic3r/GCodeWriter.hpp | 6 ++ src/libslic3r/Geometry.cpp | 13 +++++ src/libslic3r/Geometry.hpp | 11 ++++ src/libslic3r/Geometry/ArcWelder.hpp | 2 + src/libslic3r/Geometry/Bicubic.hpp | 2 + src/libslic3r/Geometry/Circle.cpp | 9 +++ src/libslic3r/Geometry/Circle.hpp | 5 ++ src/libslic3r/Geometry/ConvexHull.cpp | 10 ++++ src/libslic3r/Geometry/ConvexHull.hpp | 3 + src/libslic3r/Geometry/Curves.hpp | 6 ++ src/libslic3r/Geometry/MedialAxis.cpp | 4 ++ src/libslic3r/Geometry/Voronoi.cpp | 5 ++ src/libslic3r/Geometry/VoronoiOffset.cpp | 4 ++ src/libslic3r/Geometry/VoronoiUtils.cpp | 5 ++ src/libslic3r/Geometry/VoronoiUtilsCgal.cpp | 9 +++ src/libslic3r/Geometry/VoronoiVisualUtils.hpp | 12 ++++ src/libslic3r/InstanceLock.cpp | 4 ++ src/libslic3r/IntersectionPoints.cpp | 5 ++ src/libslic3r/IntersectionPoints.hpp | 5 ++ src/libslic3r/JumpPointSearch.hpp | 1 + src/libslic3r/KDTreeIndirect.hpp | 5 ++ src/libslic3r/LayOnFace.cpp | 6 ++ src/libslic3r/LayOnFace.hpp | 1 + src/libslic3r/Layer.cpp | 16 ++++++ src/libslic3r/Layer.hpp | 9 +++ src/libslic3r/LayerRegion.cpp | 24 ++++++++ src/libslic3r/Line.cpp | 5 ++ src/libslic3r/Line.hpp | 3 + src/libslic3r/LocalesUtils.cpp | 6 ++ src/libslic3r/LocalesUtils.hpp | 1 + src/libslic3r/MTUtils.hpp | 2 + src/libslic3r/MarchingSquares.hpp | 6 ++ src/libslic3r/MaterialType.cpp | 2 + src/libslic3r/Measure.cpp | 22 ++++++++ src/libslic3r/Measure.hpp | 7 +++ src/libslic3r/MeasureUtils.hpp | 7 +++ src/libslic3r/MeshBoolean.cpp | 31 +++++++++++ src/libslic3r/MeshBoolean.hpp | 4 ++ src/libslic3r/MeshSplitImpl.hpp | 9 +++ src/libslic3r/MinAreaBoundingBox.cpp | 7 +++ src/libslic3r/MinimumSpanningTree.cpp | 5 ++ src/libslic3r/Model.cpp | 42 ++++++++++++++ src/libslic3r/Model.hpp | 10 ++++ src/libslic3r/ModelArrange.cpp | 10 ++++ src/libslic3r/ModelArrange.hpp | 6 ++ src/libslic3r/MultiMaterialSegmentation.cpp | 29 ++++++++++ src/libslic3r/MultiMaterialSegmentation.hpp | 8 +++ src/libslic3r/MultiNozzleUtils.cpp | 10 ++++ src/libslic3r/MultiNozzleUtils.hpp | 2 + src/libslic3r/MultiPoint.cpp | 11 ++++ src/libslic3r/MultiPoint.hpp | 4 ++ src/libslic3r/MutablePolygon.cpp | 5 ++ src/libslic3r/MutablePolygon.hpp | 7 +++ src/libslic3r/MutablePriorityQueue.hpp | 4 ++ src/libslic3r/NSVGUtils.cpp | 13 +++++ src/libslic3r/NSVGUtils.hpp | 4 ++ src/libslic3r/NormalUtils.cpp | 5 ++ src/libslic3r/NormalUtils.hpp | 1 + src/libslic3r/ObjColorUtils.cpp | 2 + src/libslic3r/ObjColorUtils.hpp | 7 +++ src/libslic3r/ObjectID.cpp | 1 + src/libslic3r/ObjectID.hpp | 1 + src/libslic3r/OpenVDBUtils.cpp | 13 +++++ src/libslic3r/OpenVDBUtils.hpp | 3 + .../Optimize/BruteforceOptimizer.hpp | 5 ++ src/libslic3r/Optimize/NLoptOptimizer.hpp | 6 ++ src/libslic3r/Optimize/Optimizer.hpp | 1 + src/libslic3r/Orient.cpp | 20 +++++++ src/libslic3r/Orient.hpp | 7 +++ src/libslic3r/PNGReadWrite.cpp | 6 ++ src/libslic3r/PNGReadWrite.hpp | 2 + src/libslic3r/ParameterUtils.cpp | 5 ++ src/libslic3r/ParameterUtils.hpp | 2 + src/libslic3r/PerimeterGenerator.cpp | 18 ++++++ src/libslic3r/PerimeterGenerator.hpp | 7 +++ src/libslic3r/PlaceholderParser.cpp | 40 ++++++++++++++ src/libslic3r/PlaceholderParser.hpp | 2 + src/libslic3r/Platform.cpp | 5 ++ src/libslic3r/Point.cpp | 7 +++ src/libslic3r/Point.hpp | 11 ++++ src/libslic3r/Polygon.cpp | 13 +++++ src/libslic3r/Polygon.hpp | 7 +++ src/libslic3r/PolygonTrimmer.cpp | 5 ++ src/libslic3r/PolygonTrimmer.hpp | 1 + src/libslic3r/Polyline.cpp | 10 ++++ src/libslic3r/Polyline.hpp | 6 ++ src/libslic3r/Preset.cpp | 29 ++++++++++ src/libslic3r/Preset.hpp | 10 ++++ src/libslic3r/PresetBundle.cpp | 36 ++++++++++++ src/libslic3r/PresetBundle.hpp | 9 +++ src/libslic3r/PresetCacheFormat.cpp | 16 ++++++ src/libslic3r/PresetCacheFormat.hpp | 1 + src/libslic3r/PrincipalComponents2D.cpp | 6 ++ src/libslic3r/PrincipalComponents2D.hpp | 2 + src/libslic3r/Print.cpp | 50 +++++++++++++++++ src/libslic3r/Print.hpp | 22 ++++++++ src/libslic3r/PrintApply.cpp | 25 +++++++++ src/libslic3r/PrintBase.cpp | 12 ++++ src/libslic3r/PrintBase.hpp | 7 +++ src/libslic3r/PrintConfig.cpp | 26 +++++++++ src/libslic3r/PrintConfig.hpp | 16 ++++++ src/libslic3r/PrintObject.cpp | 32 +++++++++++ src/libslic3r/PrintObjectSlice.cpp | 26 +++++++++ src/libslic3r/PrintRegion.cpp | 8 +++ src/libslic3r/ProjectTask.cpp | 5 ++ src/libslic3r/ProjectTask.hpp | 1 + src/libslic3r/PublishSettings.cpp | 4 ++ src/libslic3r/QuadricEdgeCollapse.cpp | 14 +++++ src/libslic3r/SLA/AGGRaster.hpp | 9 +++ src/libslic3r/SLA/BoostAdapter.hpp | 12 ++++ src/libslic3r/SLA/Clustering.cpp | 8 +++ src/libslic3r/SLA/Clustering.hpp | 5 ++ src/libslic3r/SLA/ConcaveHull.cpp | 9 +++ src/libslic3r/SLA/ConcaveHull.hpp | 4 ++ src/libslic3r/SLA/Concurrency.hpp | 2 + src/libslic3r/SLA/Hollowing.cpp | 17 ++++++ src/libslic3r/SLA/Hollowing.hpp | 8 +++ src/libslic3r/SLA/IndexedMesh.cpp | 14 +++++ src/libslic3r/SLA/IndexedMesh.hpp | 6 ++ src/libslic3r/SLA/Pad.cpp | 9 +++ src/libslic3r/SLA/RasterBase.cpp | 12 ++++ src/libslic3r/SLA/RasterBase.hpp | 5 ++ src/libslic3r/SLA/RasterToPolygons.cpp | 9 +++ src/libslic3r/SLA/RasterToPolygons.hpp | 1 + src/libslic3r/SLA/ReprojectPointsOnMesh.hpp | 2 + src/libslic3r/SLA/Rotfinder.cpp | 14 +++++ src/libslic3r/SLA/Rotfinder.hpp | 1 + src/libslic3r/SLA/SpatIndex.cpp | 8 +++ src/libslic3r/SLA/SpatIndex.hpp | 3 + src/libslic3r/SLA/SupportPoint.hpp | 4 ++ src/libslic3r/SLA/SupportPointGenerator.cpp | 15 +++++ src/libslic3r/SLA/SupportPointGenerator.hpp | 10 ++++ src/libslic3r/SLA/SupportTree.cpp | 8 +++ src/libslic3r/SLA/SupportTree.hpp | 1 + src/libslic3r/SLA/SupportTreeBuilder.cpp | 15 +++++ src/libslic3r/SLA/SupportTreeBuilder.hpp | 6 ++ src/libslic3r/SLA/SupportTreeBuildsteps.cpp | 23 ++++++++ src/libslic3r/SLA/SupportTreeBuildsteps.hpp | 18 ++++++ src/libslic3r/SLA/SupportTreeMesher.cpp | 9 +++ src/libslic3r/SLA/SupportTreeMesher.hpp | 4 ++ src/libslic3r/SLAPrint.cpp | 25 +++++++++ src/libslic3r/SLAPrint.hpp | 20 +++++++ src/libslic3r/SLAPrintSteps.cpp | 25 +++++++++ src/libslic3r/SLAPrintSteps.hpp | 3 + src/libslic3r/SVG.cpp | 20 +++++++ src/libslic3r/SVG.hpp | 9 +++ src/libslic3r/Semver.cpp | 2 + src/libslic3r/Semver.hpp | 5 ++ src/libslic3r/Shape/TextShape.cpp | 23 ++++++++ src/libslic3r/Shape/TextShape.hpp | 3 + src/libslic3r/ShortEdgeCollapse.cpp | 4 ++ src/libslic3r/ShortEdgeCollapse.hpp | 1 + src/libslic3r/ShortestPath.cpp | 15 +++++ src/libslic3r/ShortestPath.hpp | 2 + src/libslic3r/SlicesToTriangleMesh.cpp | 7 +++ src/libslic3r/SlicesToTriangleMesh.hpp | 1 + src/libslic3r/Slicing.cpp | 8 +++ src/libslic3r/Slicing.hpp | 2 + src/libslic3r/SlicingAdaptive.cpp | 6 ++ src/libslic3r/SlicingAdaptive.hpp | 3 + src/libslic3r/StreamUtils.hpp | 1 + src/libslic3r/Support/SupportCommon.cpp | 16 ++++++ src/libslic3r/Support/SupportCommon.hpp | 8 +++ src/libslic3r/Support/SupportLayer.hpp | 4 ++ src/libslic3r/Support/SupportMaterial.cpp | 26 +++++++++ src/libslic3r/Support/SupportMaterial.hpp | 3 + src/libslic3r/Support/SupportParameters.hpp | 11 ++++ .../Support/SupportSpotsGenerator.cpp | 2 + .../Support/SupportSpotsGenerator.hpp | 2 + src/libslic3r/Support/TreeModelVolumes.cpp | 15 +++++ src/libslic3r/Support/TreeModelVolumes.hpp | 9 +++ src/libslic3r/Support/TreeSupport.cpp | 37 +++++++++++++ src/libslic3r/Support/TreeSupport.hpp | 14 +++++ src/libslic3r/Support/TreeSupport3D.cpp | 31 +++++++++++ src/libslic3r/Support/TreeSupport3D.hpp | 10 ++++ src/libslic3r/Support/TreeSupportCommon.hpp | 18 ++++++ src/libslic3r/Surface.cpp | 5 ++ src/libslic3r/Surface.hpp | 8 +++ src/libslic3r/SurfaceCollection.cpp | 10 ++++ src/libslic3r/SurfaceCollection.hpp | 4 ++ src/libslic3r/SurfaceMesh.hpp | 5 ++ src/libslic3r/Tesselate.cpp | 9 +++ src/libslic3r/Tesselate.hpp | 1 + src/libslic3r/TextConfiguration.hpp | 2 + .../TextureBake/TextureBakeDebug.cpp | 8 +++ .../TextureBake/TextureBakeDebug.hpp | 2 + .../TextureBake/TextureBakeDecimate.cpp | 6 ++ .../TextureBake/TextureBakeDecimate.hpp | 1 + .../TextureBake/TextureBakeDisplace.cpp | 7 +++ .../TextureBake/TextureBakeDisplace.hpp | 1 + src/libslic3r/TextureBake/TextureBakeFlip.cpp | 7 +++ src/libslic3r/TextureBake/TextureBakeFlip.hpp | 1 + .../TextureBake/TextureBakeIndex.cpp | 3 + .../TextureBake/TextureBakeIndex.hpp | 2 + src/libslic3r/TextureBake/TextureBakeMesh.cpp | 5 ++ src/libslic3r/TextureBake/TextureBakeMesh.hpp | 2 + .../TextureBake/TextureBakePipeline.cpp | 15 +++++ .../TextureBake/TextureBakePipeline.hpp | 2 + .../TextureBake/TextureBakeRegularize.cpp | 7 +++ .../TextureBake/TextureBakeRegularize.hpp | 1 + .../TextureBake/TextureBakeRelocate.cpp | 6 ++ .../TextureBake/TextureBakeRelocate.hpp | 1 + .../TextureBake/TextureBakeRepair.cpp | 6 ++ .../TextureBake/TextureBakeRepair.hpp | 1 + .../TextureBake/TextureBakeSubdivide.cpp | 8 +++ .../TextureBake/TextureBakeSubdivide.hpp | 3 + src/libslic3r/TextureDisplacement.cpp | 11 ++++ src/libslic3r/TextureDisplacement.hpp | 3 + src/libslic3r/TexturePainting.cpp | 10 ++++ src/libslic3r/TextureToColor/CgalUtils.hpp | 2 + src/libslic3r/TextureToColor/ColorUtils.cpp | 22 ++++++++ src/libslic3r/TextureToColor/ColorUtils.hpp | 5 ++ src/libslic3r/TextureToColor/Repair.hpp | 4 ++ .../TextureToColor/TextureToColor.cpp | 13 +++++ .../TextureToColor/TextureToColor.hpp | 5 ++ src/libslic3r/TextureToColor/TriMesh.hpp | 3 + src/libslic3r/Thread.cpp | 8 +++ src/libslic3r/Thread.hpp | 1 + src/libslic3r/Time.cpp | 6 ++ src/libslic3r/Timer.cpp | 2 + src/libslic3r/Timer.hpp | 2 + src/libslic3r/TriangleMesh.cpp | 15 +++++ src/libslic3r/TriangleMesh.hpp | 5 ++ src/libslic3r/TriangleMeshDeal.cpp | 2 + src/libslic3r/TriangleMeshSlicer.cpp | 14 +++++ src/libslic3r/TriangleMeshSlicer.hpp | 6 ++ src/libslic3r/TriangleSelector.cpp | 19 +++++++ src/libslic3r/TriangleSelector.hpp | 11 ++++ src/libslic3r/TriangleSetSampling.cpp | 5 ++ src/libslic3r/TriangleSetSampling.hpp | 2 + src/libslic3r/TriangulateWall.hpp | 4 ++ src/libslic3r/Triangulation.cpp | 17 ++++++ src/libslic3r/Triangulation.hpp | 2 + src/libslic3r/Utils.hpp | 15 +++++ src/libslic3r/VariableWidth.cpp | 12 ++++ src/libslic3r/VariableWidth.hpp | 2 + src/libslic3r/Zipper.cpp | 5 ++ src/libslic3r/Zipper.hpp | 2 + src/libslic3r/calib.cpp | 14 +++++ src/libslic3r/calib.hpp | 6 ++ src/libslic3r/format.hpp | 1 + src/libslic3r/libslic3r.h | 6 ++ src/libslic3r/miniz_extension.cpp | 8 +++ src/libslic3r/utils.cpp | 38 +++++++++++++ 489 files changed, 4156 insertions(+), 1 deletion(-) diff --git a/.clang-tidy b/.clang-tidy index f45561badb..3f0aaa8bde 100644 --- a/.clang-tidy +++ b/.clang-tidy @@ -14,7 +14,9 @@ CheckOptions: # admesh's stl.h, which the include path also exposes without its directory. # Clipper's own clipper.hpp is only included through libslic3r/clipper.hpp or # clipper_z.hpp, which configure it first, and Boost.Polygon's headers only - # work through boost/polygon/polygon.hpp or voronoi.hpp. minilzo's config + # work through boost/polygon/polygon.hpp or voronoi.hpp. Clipper2's headers + # are included through clipper2/clipper.h, or clipper2_z.hpp, which defines + # USINGZ first. minilzo's config # headers are internal to minilzo.h. # FFmpeg's C headers are left alone because they are only included inside # extern "C", which an inserted include would miss. OS-specific headers (GLib, @@ -59,4 +61,5 @@ CheckOptions: png(lib)?conf\.h; mcut[/\\]platform\.h; boost[/\\]polygon[/\\].*; + clipper2[/\\]clipper\.(core|engine|offset|minkowski|rectclip|export|triangulation|version)\.h; lzo(conf|defs)\.h diff --git a/src/libslic3r/AABBMesh.cpp b/src/libslic3r/AABBMesh.cpp index be026f69d7..bcd34546ed 100644 --- a/src/libslic3r/AABBMesh.cpp +++ b/src/libslic3r/AABBMesh.cpp @@ -1,10 +1,19 @@ #include "AABBMesh.hpp" +#include "Point.hpp" +#include #include +#include +#include +#include +#include +#include #include #include +#include #include +#include #ifdef SLIC3R_HOLE_RAYCASTER #include diff --git a/src/libslic3r/AABBMesh.hpp b/src/libslic3r/AABBMesh.hpp index 9998f504b5..c9195b2105 100644 --- a/src/libslic3r/AABBMesh.hpp +++ b/src/libslic3r/AABBMesh.hpp @@ -1,6 +1,10 @@ #ifndef PRUSASLICER_AABBMESH_H #define PRUSASLICER_AABBMESH_H +#include +#include +#include +#include #include #include diff --git a/src/libslic3r/AABBTreeIndirect.hpp b/src/libslic3r/AABBTreeIndirect.hpp index 483ca8efc4..5fd83e0be9 100644 --- a/src/libslic3r/AABBTreeIndirect.hpp +++ b/src/libslic3r/AABBTreeIndirect.hpp @@ -6,15 +6,20 @@ #ifndef slic3r_AABBTreeIndirect_hpp_ #define slic3r_AABBTreeIndirect_hpp_ +#include #include +#include +#include #include #include +#include #include #include #include "BoundingBox.hpp" #include "Utils.hpp" // for next_highest_power_of_2() +#include "libslic3r.h" // Definition of the ray intersection hit structure. #include diff --git a/src/libslic3r/AABBTreeLines.hpp b/src/libslic3r/AABBTreeLines.hpp index 52c4cdf545..de0c88aeb1 100644 --- a/src/libslic3r/AABBTreeLines.hpp +++ b/src/libslic3r/AABBTreeLines.hpp @@ -6,9 +6,15 @@ #include "libslic3r.h" #include "libslic3r/AABBTreeIndirect.hpp" #include "libslic3r/Line.hpp" +#include #include +#include #include +#include +#include +#include #include +#include #include namespace Slic3r { diff --git a/src/libslic3r/AStar.hpp b/src/libslic3r/AStar.hpp index a7d9e7b8f9..e79295c503 100644 --- a/src/libslic3r/AStar.hpp +++ b/src/libslic3r/AStar.hpp @@ -1,7 +1,11 @@ #ifndef ASTAR_HPP #define ASTAR_HPP +#include #include // std::isinf() is here +#include +#include +#include #include #include "libslic3r/MutablePriorityQueue.hpp" diff --git a/src/libslic3r/Algorithm/LineSplit.cpp b/src/libslic3r/Algorithm/LineSplit.cpp index d91514dbf9..789ca39be6 100644 --- a/src/libslic3r/Algorithm/LineSplit.cpp +++ b/src/libslic3r/Algorithm/LineSplit.cpp @@ -1,8 +1,20 @@ #include "LineSplit.hpp" #include "AABBTreeLines.hpp" +#include "libslic3r/ClipperUtils.hpp" +#include "libslic3r/ClipperZUtils.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/Line.hpp" +#include "libslic3r/ExPolygon.hpp" #include "SVG.hpp" #include "Utils.hpp" +#include +#include "libslic3r/libslic3r.h" +#include +#include +#include +#include +#include //#define DEBUG_SPLIT_LINE diff --git a/src/libslic3r/Algorithm/LineSplit.hpp b/src/libslic3r/Algorithm/LineSplit.hpp index 80f64e684c..098ff72d09 100644 --- a/src/libslic3r/Algorithm/LineSplit.hpp +++ b/src/libslic3r/Algorithm/LineSplit.hpp @@ -2,6 +2,12 @@ #define SRC_LIBSLIC3R_ALGORITHM_LINE_SPLIT_HPP_ #include "ClipperZUtils.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/Point.hpp" +#include +#include +#include +#include "libslic3r/ExPolygon.hpp" namespace Slic3r { namespace Algorithm { diff --git a/src/libslic3r/Algorithm/RegionExpansion.cpp b/src/libslic3r/Algorithm/RegionExpansion.cpp index 2cfb15ce6d..a4558a3939 100644 --- a/src/libslic3r/Algorithm/RegionExpansion.cpp +++ b/src/libslic3r/Algorithm/RegionExpansion.cpp @@ -1,11 +1,25 @@ #include "RegionExpansion.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/ExPolygon.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/Polyline.hpp" +#include "libslic3r/Polygon.hpp" +#include +#include +#include +#include +#include +#include #include #include #include #include +#include #include +#include +#include namespace Slic3r { namespace Algorithm { diff --git a/src/libslic3r/Algorithm/RegionExpansion.hpp b/src/libslic3r/Algorithm/RegionExpansion.hpp index a3e5ddaa38..b493b72d5c 100644 --- a/src/libslic3r/Algorithm/RegionExpansion.hpp +++ b/src/libslic3r/Algorithm/RegionExpansion.hpp @@ -1,10 +1,12 @@ #ifndef SRC_LIBSLIC3R_ALGORITHM_REGION_EXPANSION_HPP_ #define SRC_LIBSLIC3R_ALGORITHM_REGION_EXPANSION_HPP_ +#include #include #include #include #include +#include namespace Slic3r { namespace Algorithm { diff --git a/src/libslic3r/AnyPtr.hpp b/src/libslic3r/AnyPtr.hpp index c40d10093e..7c0f28b834 100644 --- a/src/libslic3r/AnyPtr.hpp +++ b/src/libslic3r/AnyPtr.hpp @@ -1,6 +1,7 @@ #ifndef ANYPTR_HPP #define ANYPTR_HPP +#include #include #include #include diff --git a/src/libslic3r/AppConfig.cpp b/src/libslic3r/AppConfig.cpp index 061665fbe6..663072d866 100644 --- a/src/libslic3r/AppConfig.cpp +++ b/src/libslic3r/AppConfig.cpp @@ -1,3 +1,8 @@ +#include "Technologies.hpp" +#include "Config.hpp" +#include "PrintConfig.hpp" +#include "calib.hpp" +#include "Semver.hpp" #include "libslic3r/libslic3r.h" #include "libslic3r/Utils.hpp" #include "libslic3r/Format/DRC.hpp" @@ -9,9 +14,18 @@ #include "LocalesUtils.hpp" #include "Thread.hpp" #include "format.hpp" +#include "libslic3r_version.h" #include "nlohmann/json.hpp" #include +#include +#include +#include +#include +#include +#include +#include +#include #include #include #include diff --git a/src/libslic3r/AppConfig.hpp b/src/libslic3r/AppConfig.hpp index 1486cb6f9f..a08c018bb2 100644 --- a/src/libslic3r/AppConfig.hpp +++ b/src/libslic3r/AppConfig.hpp @@ -5,8 +5,11 @@ #include #include #include +#include "LocalesUtils.hpp" #include "nlohmann/json.hpp" #include +#include +#include #include "libslic3r/Config.hpp" #include "libslic3r/Semver.hpp" diff --git a/src/libslic3r/Arachne/BeadingStrategy/BeadingStrategy.cpp b/src/libslic3r/Arachne/BeadingStrategy/BeadingStrategy.cpp index 5ade0c9207..119ff8dd99 100644 --- a/src/libslic3r/Arachne/BeadingStrategy/BeadingStrategy.cpp +++ b/src/libslic3r/Arachne/BeadingStrategy/BeadingStrategy.cpp @@ -2,7 +2,9 @@ //CuraEngine is released under the terms of the AGPLv3 or higher. #include "BeadingStrategy.hpp" +#include "libslic3r/libslic3r.h" #include "libslic3r/Point.hpp" +#include namespace Slic3r::Arachne { diff --git a/src/libslic3r/Arachne/BeadingStrategy/BeadingStrategyFactory.cpp b/src/libslic3r/Arachne/BeadingStrategy/BeadingStrategyFactory.cpp index d6cb1331c1..242d54e63b 100644 --- a/src/libslic3r/Arachne/BeadingStrategy/BeadingStrategyFactory.cpp +++ b/src/libslic3r/Arachne/BeadingStrategy/BeadingStrategyFactory.cpp @@ -12,6 +12,7 @@ #include "DistributedBeadingStrategy.hpp" #include "RedistributeBeadingStrategy.hpp" #include "OuterWallInsetBeadingStrategy.hpp" +#include "libslic3r/libslic3r.h" #include "libslic3r/Arachne/BeadingStrategy/BeadingStrategy.hpp" namespace Slic3r::Arachne { diff --git a/src/libslic3r/Arachne/BeadingStrategy/DistributedBeadingStrategy.cpp b/src/libslic3r/Arachne/BeadingStrategy/DistributedBeadingStrategy.cpp index 7234015ae2..966682e054 100644 --- a/src/libslic3r/Arachne/BeadingStrategy/DistributedBeadingStrategy.cpp +++ b/src/libslic3r/Arachne/BeadingStrategy/DistributedBeadingStrategy.cpp @@ -6,6 +6,7 @@ #include #include "DistributedBeadingStrategy.hpp" +#include "libslic3r/libslic3r.h" #include "libslic3r/Arachne/BeadingStrategy/BeadingStrategy.hpp" namespace Slic3r::Arachne diff --git a/src/libslic3r/Arachne/BeadingStrategy/LimitedBeadingStrategy.cpp b/src/libslic3r/Arachne/BeadingStrategy/LimitedBeadingStrategy.cpp index 24e04c3f26..0c570bf307 100644 --- a/src/libslic3r/Arachne/BeadingStrategy/LimitedBeadingStrategy.cpp +++ b/src/libslic3r/Arachne/BeadingStrategy/LimitedBeadingStrategy.cpp @@ -3,10 +3,12 @@ #include #include +#include #include #include #include "LimitedBeadingStrategy.hpp" +#include "libslic3r/libslic3r.h" #include "libslic3r/Point.hpp" #include "libslic3r/Arachne/BeadingStrategy/BeadingStrategy.hpp" diff --git a/src/libslic3r/Arachne/BeadingStrategy/OuterWallInsetBeadingStrategy.cpp b/src/libslic3r/Arachne/BeadingStrategy/OuterWallInsetBeadingStrategy.cpp index ac9edb1dba..1b7bd7e342 100644 --- a/src/libslic3r/Arachne/BeadingStrategy/OuterWallInsetBeadingStrategy.cpp +++ b/src/libslic3r/Arachne/BeadingStrategy/OuterWallInsetBeadingStrategy.cpp @@ -6,6 +6,7 @@ #include #include +#include "libslic3r/libslic3r.h" #include "libslic3r/Arachne/BeadingStrategy/BeadingStrategy.hpp" namespace Slic3r::Arachne diff --git a/src/libslic3r/Arachne/BeadingStrategy/RedistributeBeadingStrategy.cpp b/src/libslic3r/Arachne/BeadingStrategy/RedistributeBeadingStrategy.cpp index 7307781840..e6a3c337ae 100644 --- a/src/libslic3r/Arachne/BeadingStrategy/RedistributeBeadingStrategy.cpp +++ b/src/libslic3r/Arachne/BeadingStrategy/RedistributeBeadingStrategy.cpp @@ -7,6 +7,7 @@ #include #include +#include "libslic3r/libslic3r.h" #include "libslic3r/Arachne/BeadingStrategy/BeadingStrategy.hpp" namespace Slic3r::Arachne diff --git a/src/libslic3r/Arachne/BeadingStrategy/WideningBeadingStrategy.cpp b/src/libslic3r/Arachne/BeadingStrategy/WideningBeadingStrategy.cpp index ab8b070604..0ceb2d9dd3 100644 --- a/src/libslic3r/Arachne/BeadingStrategy/WideningBeadingStrategy.cpp +++ b/src/libslic3r/Arachne/BeadingStrategy/WideningBeadingStrategy.cpp @@ -4,8 +4,11 @@ #include "WideningBeadingStrategy.hpp" #include +#include #include +#include +#include "libslic3r/libslic3r.h" #include "libslic3r/Arachne/BeadingStrategy/BeadingStrategy.hpp" namespace Slic3r::Arachne diff --git a/src/libslic3r/Arachne/SkeletalTrapezoidation.cpp b/src/libslic3r/Arachne/SkeletalTrapezoidation.cpp index da5c7357c1..82ca92e090 100644 --- a/src/libslic3r/Arachne/SkeletalTrapezoidation.cpp +++ b/src/libslic3r/Arachne/SkeletalTrapezoidation.cpp @@ -10,10 +10,18 @@ #include #include #include +#include +#include +#include #include #include #include +#include +#include "libslic3r/Point.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/Polygon.hpp" +#include "libslic3r/Arachne/BeadingStrategy/BeadingStrategy.hpp" #include "libslic3r/Geometry/VoronoiUtils.hpp" #include "ankerl/unordered_dense.h" #include "libslic3r/Arachne/SkeletalTrapezoidationEdge.hpp" diff --git a/src/libslic3r/Arachne/SkeletalTrapezoidationEdge.hpp b/src/libslic3r/Arachne/SkeletalTrapezoidationEdge.hpp index e0d3fe81d2..9eced8be93 100644 --- a/src/libslic3r/Arachne/SkeletalTrapezoidationEdge.hpp +++ b/src/libslic3r/Arachne/SkeletalTrapezoidationEdge.hpp @@ -4,10 +4,12 @@ #ifndef SKELETAL_TRAPEZOIDATION_EDGE_H #define SKELETAL_TRAPEZOIDATION_EDGE_H +#include #include // smart pointers #include #include +#include "libslic3r/libslic3r.h" #include "utils/ExtrusionJunction.hpp" namespace Slic3r::Arachne diff --git a/src/libslic3r/Arachne/SkeletalTrapezoidationGraph.cpp b/src/libslic3r/Arachne/SkeletalTrapezoidationGraph.cpp index f7a30c32db..4621a04616 100644 --- a/src/libslic3r/Arachne/SkeletalTrapezoidationGraph.cpp +++ b/src/libslic3r/Arachne/SkeletalTrapezoidationGraph.cpp @@ -6,11 +6,17 @@ #include #include #include +#include #include #include #include +#include +#include #include "../Line.hpp" +#include "libslic3r/Arachne/utils/HalfEdge.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/Arachne/utils/HalfEdgeNode.hpp" #include "libslic3r/Arachne/SkeletalTrapezoidationEdge.hpp" #include "libslic3r/Arachne/SkeletalTrapezoidationJoint.hpp" #include "libslic3r/Point.hpp" diff --git a/src/libslic3r/Arachne/SkeletalTrapezoidationJoint.hpp b/src/libslic3r/Arachne/SkeletalTrapezoidationJoint.hpp index 346d511165..3eab9c0916 100644 --- a/src/libslic3r/Arachne/SkeletalTrapezoidationJoint.hpp +++ b/src/libslic3r/Arachne/SkeletalTrapezoidationJoint.hpp @@ -6,6 +6,7 @@ #include // smart pointers +#include "libslic3r/libslic3r.h" #include "libslic3r/Arachne/BeadingStrategy/BeadingStrategy.hpp" namespace Slic3r::Arachne diff --git a/src/libslic3r/Arachne/WallToolPaths.cpp b/src/libslic3r/Arachne/WallToolPaths.cpp index d1f0341bda..a116674daa 100644 --- a/src/libslic3r/Arachne/WallToolPaths.cpp +++ b/src/libslic3r/Arachne/WallToolPaths.cpp @@ -2,12 +2,31 @@ // CuraEngine is released under the terms of the AGPLv3 or higher. #include //For std::partition_copy and std::min_element. +#include +#include +#include +#include +#include +#include +#include #include #include "WallToolPaths.hpp" +#include "libslic3r/PrintConfig.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/Polygon.hpp" +#include "libslic3r/Arachne/utils/ExtrusionLine.hpp" +#include "libslic3r/Line.hpp" +#include "libslic3r/Arachne/utils/PolygonsPointIndex.hpp" +#include "libslic3r/Flow.hpp" +#include "libslic3r/Arachne/BeadingStrategy/BeadingStrategyFactory.hpp" +#include "libslic3r/Arachne/utils/ExtrusionJunction.hpp" +#include "libslic3r/Arachne/utils/SparsePointGrid.hpp" +#include "libslic3r/Arachne/utils/SquareGrid.hpp" #include "SkeletalTrapezoidation.hpp" #include "../ClipperUtils.hpp" +#include "libslic3r/libslic3r.h" #include "utils/linearAlg2D.hpp" #include "EdgeGrid.hpp" #include "utils/SparseLineGrid.hpp" @@ -17,6 +36,8 @@ #include "Utils.hpp" #include +#include +#include //#define ARACHNE_STITCH_PATCH_DEBUG diff --git a/src/libslic3r/Arachne/WallToolPaths.hpp b/src/libslic3r/Arachne/WallToolPaths.hpp index d7120a088c..cfec7284eb 100644 --- a/src/libslic3r/Arachne/WallToolPaths.hpp +++ b/src/libslic3r/Arachne/WallToolPaths.hpp @@ -4,10 +4,16 @@ #ifndef CURAENGINE_WALLTOOLPATHS_H #define CURAENGINE_WALLTOOLPATHS_H +#include +#include #include #include +#include +#include #include "BeadingStrategy/BeadingStrategyFactory.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/Point.hpp" #include "utils/ExtrusionLine.hpp" #include "../Polygon.hpp" #include "../PrintConfig.hpp" diff --git a/src/libslic3r/Arachne/utils/ExtrusionJunction.hpp b/src/libslic3r/Arachne/utils/ExtrusionJunction.hpp index 625bf9b727..aebfd81347 100644 --- a/src/libslic3r/Arachne/utils/ExtrusionJunction.hpp +++ b/src/libslic3r/Arachne/utils/ExtrusionJunction.hpp @@ -6,6 +6,9 @@ #define UTILS_EXTRUSION_JUNCTION_H #include "../../Point.hpp" +#include "libslic3r/libslic3r.h" +#include +#include namespace Slic3r::Arachne { diff --git a/src/libslic3r/Arachne/utils/ExtrusionLine.cpp b/src/libslic3r/Arachne/utils/ExtrusionLine.cpp index 2beaa4f92f..c1c29c50e9 100644 --- a/src/libslic3r/Arachne/utils/ExtrusionLine.cpp +++ b/src/libslic3r/Arachne/utils/ExtrusionLine.cpp @@ -2,11 +2,17 @@ //CuraEngine is released under the terms of the AGPLv3 or higher. #include +#include #include +#include #include +#include #include "ExtrusionLine.hpp" #include "../../VariableWidth.hpp" +#include "libslic3r/ClipperZUtils.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/Point.hpp" #include "libslic3r/Arachne/utils/ExtrusionJunction.hpp" #include "libslic3r/BoundingBox.hpp" #include "libslic3r/ExtrusionEntity.hpp" diff --git a/src/libslic3r/Arachne/utils/ExtrusionLine.hpp b/src/libslic3r/Arachne/utils/ExtrusionLine.hpp index 8b4a753f5e..421f73e0e8 100644 --- a/src/libslic3r/Arachne/utils/ExtrusionLine.hpp +++ b/src/libslic3r/Arachne/utils/ExtrusionLine.hpp @@ -22,6 +22,7 @@ #include "../../BoundingBox.hpp" #include "../../ExtrusionEntity.hpp" #include "../../Flow.hpp" +#include "libslic3r/libslic3r.h" #include "libslic3r/Point.hpp" namespace Slic3r { diff --git a/src/libslic3r/Arachne/utils/PolygonsPointIndex.hpp b/src/libslic3r/Arachne/utils/PolygonsPointIndex.hpp index 04f017f86a..2ac32b9366 100644 --- a/src/libslic3r/Arachne/utils/PolygonsPointIndex.hpp +++ b/src/libslic3r/Arachne/utils/PolygonsPointIndex.hpp @@ -4,6 +4,9 @@ #ifndef UTILS_POLYGONS_POINT_INDEX_H #define UTILS_POLYGONS_POINT_INDEX_H +#include +#include +#include #include #include "../../Point.hpp" diff --git a/src/libslic3r/Arachne/utils/PolygonsSegmentIndex.hpp b/src/libslic3r/Arachne/utils/PolygonsSegmentIndex.hpp index 3258b41c7d..2df641c085 100644 --- a/src/libslic3r/Arachne/utils/PolygonsSegmentIndex.hpp +++ b/src/libslic3r/Arachne/utils/PolygonsSegmentIndex.hpp @@ -6,7 +6,10 @@ #include +#include "libslic3r/Polygon.hpp" +#include "libslic3r/Point.hpp" #include "PolygonsPointIndex.hpp" +#include "libslic3r/libslic3r.h" namespace Slic3r::Arachne { diff --git a/src/libslic3r/Arachne/utils/PolylineStitcher.cpp b/src/libslic3r/Arachne/utils/PolylineStitcher.cpp index 0abf63ac10..e011e5db51 100644 --- a/src/libslic3r/Arachne/utils/PolylineStitcher.cpp +++ b/src/libslic3r/Arachne/utils/PolylineStitcher.cpp @@ -4,6 +4,7 @@ #include "PolylineStitcher.hpp" #include "ExtrusionLine.hpp" +#include "libslic3r/Point.hpp" #include "libslic3r/Arachne/utils/PolygonsPointIndex.hpp" #include "libslic3r/Polygon.hpp" diff --git a/src/libslic3r/Arachne/utils/SparseGrid.hpp b/src/libslic3r/Arachne/utils/SparseGrid.hpp index 45876fb9a7..ce5bac81bc 100644 --- a/src/libslic3r/Arachne/utils/SparseGrid.hpp +++ b/src/libslic3r/Arachne/utils/SparseGrid.hpp @@ -6,11 +6,14 @@ #define UTILS_SPARSE_GRID_H #include +#include +#include #include #include #include "../../Point.hpp" #include "SquareGrid.hpp" +#include "libslic3r/libslic3r.h" namespace Slic3r::Arachne { diff --git a/src/libslic3r/Arachne/utils/SparseLineGrid.hpp b/src/libslic3r/Arachne/utils/SparseLineGrid.hpp index 0b38988f92..be3c430749 100644 --- a/src/libslic3r/Arachne/utils/SparseLineGrid.hpp +++ b/src/libslic3r/Arachne/utils/SparseLineGrid.hpp @@ -6,10 +6,15 @@ #define UTILS_SPARSE_LINE_GRID_H #include +#include +#include +#include #include #include +#include "libslic3r/Point.hpp" #include "SparseGrid.hpp" +#include "libslic3r/libslic3r.h" namespace Slic3r::Arachne { diff --git a/src/libslic3r/Arachne/utils/SparsePointGrid.hpp b/src/libslic3r/Arachne/utils/SparsePointGrid.hpp index 127380b3eb..ba1898a0ae 100644 --- a/src/libslic3r/Arachne/utils/SparsePointGrid.hpp +++ b/src/libslic3r/Arachne/utils/SparsePointGrid.hpp @@ -6,9 +6,13 @@ #define UTILS_SPARSE_POINT_GRID_H #include +#include +#include #include +#include "libslic3r/Point.hpp" #include "SparseGrid.hpp" +#include "libslic3r/libslic3r.h" namespace Slic3r::Arachne { diff --git a/src/libslic3r/Arachne/utils/SquareGrid.cpp b/src/libslic3r/Arachne/utils/SquareGrid.cpp index 1af9910426..dcbd018f1b 100644 --- a/src/libslic3r/Arachne/utils/SquareGrid.cpp +++ b/src/libslic3r/Arachne/utils/SquareGrid.cpp @@ -4,7 +4,11 @@ #include "SquareGrid.hpp" #include +#include +#include +#include +#include "libslic3r/libslic3r.h" #include "libslic3r/Point.hpp" using namespace Slic3r::Arachne; diff --git a/src/libslic3r/Arachne/utils/linearAlg2D.hpp b/src/libslic3r/Arachne/utils/linearAlg2D.hpp index 599d3fa835..632032da8f 100644 --- a/src/libslic3r/Arachne/utils/linearAlg2D.hpp +++ b/src/libslic3r/Arachne/utils/linearAlg2D.hpp @@ -5,6 +5,9 @@ #define UTILS_LINEAR_ALG_2D_H #include "../../Point.hpp" +#include +#include +#include namespace Slic3r::Arachne::LinearAlg2D { diff --git a/src/libslic3r/ArcFitter.cpp b/src/libslic3r/ArcFitter.cpp index 46dd12931e..8bd1bc4fe6 100644 --- a/src/libslic3r/ArcFitter.cpp +++ b/src/libslic3r/ArcFitter.cpp @@ -1,8 +1,14 @@ #include "ArcFitter.hpp" +#include "Point.hpp" +#include "Circle.hpp" +#include "MultiPoint.hpp" #include "Polyline.hpp" +#include "libslic3r.h" #include #include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/ArcFitter.hpp b/src/libslic3r/ArcFitter.hpp index f2b2ee49d8..03d38abc85 100644 --- a/src/libslic3r/ArcFitter.hpp +++ b/src/libslic3r/ArcFitter.hpp @@ -2,6 +2,9 @@ #define slic3r_ArcFitter_hpp_ #include "Circle.hpp" +#include +#include "Point.hpp" +#include namespace Slic3r { diff --git a/src/libslic3r/Arrange.cpp b/src/libslic3r/Arrange.cpp index 9020aba8ba..8a2cace499 100644 --- a/src/libslic3r/Arrange.cpp +++ b/src/libslic3r/Arrange.cpp @@ -1,9 +1,28 @@ #include "Arrange.hpp" +#include "ExPolygon.hpp" +#include "Point.hpp" #include "Print.hpp" #include "BoundingBox.hpp" +#include "PrintConfig.hpp" #include "libslic3r.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include #include +#include "libnest2d/common.hpp" +#include "libnest2d/geometry_traits_nfp.hpp" +#include "libnest2d/nester.hpp" +#include "libnest2d/geometry_traits.hpp" #include #include #include @@ -13,6 +32,11 @@ #include #include +#include +#include +#include +#include +#include #if defined(_MSC_VER) && defined(__clang__) #define BOOST_NO_CXX17_HDR_STRING_VIEW diff --git a/src/libslic3r/Arrange.hpp b/src/libslic3r/Arrange.hpp index ad125aee7d..ea89640a7b 100644 --- a/src/libslic3r/Arrange.hpp +++ b/src/libslic3r/Arrange.hpp @@ -2,8 +2,17 @@ #define ARRANGE_HPP #include "ExPolygon.hpp" +#include "Point.hpp" +#include "Polygon.hpp" #include "PrintConfig.hpp" #include "Print.hpp" +#include +#include "libslic3r.h" +#include +#include +#include +#include +#include #define BED_SHRINK_SEQ_PRINT 5 diff --git a/src/libslic3r/BoundingBox.cpp b/src/libslic3r/BoundingBox.cpp index cf5441dace..dc4f461dc7 100644 --- a/src/libslic3r/BoundingBox.cpp +++ b/src/libslic3r/BoundingBox.cpp @@ -1,5 +1,8 @@ #include "BoundingBox.hpp" +#include "Point.hpp" #include "Polygon.hpp" +#include "libslic3r.h" +#include #include #include diff --git a/src/libslic3r/BoundingBox.hpp b/src/libslic3r/BoundingBox.hpp index 8aac3f1cb9..03f6a8f9bb 100644 --- a/src/libslic3r/BoundingBox.hpp +++ b/src/libslic3r/BoundingBox.hpp @@ -5,7 +5,10 @@ #include "Exception.hpp" #include "Point.hpp" #include "Polygon.hpp" +#include +#include #include +#include namespace Slic3r { diff --git a/src/libslic3r/BridgeDetector.cpp b/src/libslic3r/BridgeDetector.cpp index 321e066a8a..ad1b8bb6fb 100644 --- a/src/libslic3r/BridgeDetector.cpp +++ b/src/libslic3r/BridgeDetector.cpp @@ -1,7 +1,18 @@ #include "BridgeDetector.hpp" +#include "BoundingBox.hpp" #include "ClipperUtils.hpp" +#include "ExPolygon.hpp" #include "Geometry.hpp" +#include "libslic3r.h" +#include "Polygon.hpp" +#include "Line.hpp" +#include "Polyline.hpp" +#include "Point.hpp" #include +#include +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/BridgeDetector.hpp b/src/libslic3r/BridgeDetector.hpp index 1e5bb1a101..85982ed91c 100644 --- a/src/libslic3r/BridgeDetector.hpp +++ b/src/libslic3r/BridgeDetector.hpp @@ -9,7 +9,14 @@ #include "PrincipalComponents2D.hpp" #include "libslic3r.h" #include "ExPolygon.hpp" +#include +#include +#include #include +#include +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/Brim.cpp b/src/libslic3r/Brim.cpp index 8ba4dfb596..f48723cfef 100644 --- a/src/libslic3r/Brim.cpp +++ b/src/libslic3r/Brim.cpp @@ -1,18 +1,37 @@ +#include "BoundingBox.hpp" +#include "BrimEarsPoint.hpp" #include "ClipperUtils.hpp" #include "EdgeGrid.hpp" +#include "ExPolygon.hpp" +#include "Flow.hpp" +#include "Geometry.hpp" +#include "ExtrusionEntity.hpp" #include "Layer.hpp" +#include "Point.hpp" +#include "ObjectID.hpp" +#include "Polygon.hpp" +#include "Line.hpp" +#include "MultiPoint.hpp" +#include "Polyline.hpp" #include "Print.hpp" +#include "PrintBase.hpp" #include "ShortestPath.hpp" #include "libslic3r.h" #include "PrintConfig.hpp" #include "MaterialType.hpp" #include "Model.hpp" #include +#include +#include #include #include +#include +#include #include #include +#include +#include #ifndef NDEBUG // #define BRIM_DEBUG_TO_SVG diff --git a/src/libslic3r/Brim.hpp b/src/libslic3r/Brim.hpp index 0603af20cc..9279b1e023 100644 --- a/src/libslic3r/Brim.hpp +++ b/src/libslic3r/Brim.hpp @@ -4,8 +4,10 @@ #include "ExPolygon.hpp" #include "ObjectID.hpp" #include "Point.hpp" +#include "Polygon.hpp" #include +#include #include namespace Slic3r { diff --git a/src/libslic3r/BrimEarsPoint.hpp b/src/libslic3r/BrimEarsPoint.hpp index a859d54f23..020b03475a 100644 --- a/src/libslic3r/BrimEarsPoint.hpp +++ b/src/libslic3r/BrimEarsPoint.hpp @@ -1,7 +1,10 @@ #ifndef BRIMEARSPOINT_HPP #define BRIMEARSPOINT_HPP +#include +#include "libslic3r.h" #include +#include namespace Slic3r { diff --git a/src/libslic3r/BuildVolume.cpp b/src/libslic3r/BuildVolume.cpp index 15e6668bae..eb5a447249 100644 --- a/src/libslic3r/BuildVolume.cpp +++ b/src/libslic3r/BuildVolume.cpp @@ -1,11 +1,24 @@ #include "BuildVolume.hpp" +#include "BoundingBox.hpp" #include "ClipperUtils.hpp" +#include "Polygon.hpp" +#include "Geometry/Circle.hpp" +#include "ExtrusionEntity.hpp" #include "TriangleMesh.hpp" #include "Geometry/ConvexHull.hpp" #include "GCode/GCodeProcessor.hpp" #include "Point.hpp" +#include "libslic3r.h" +#include #include +#include +#include +#include +#include +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/BuildVolume.hpp b/src/libslic3r/BuildVolume.hpp index 6f53fdd704..8c53242fe8 100644 --- a/src/libslic3r/BuildVolume.hpp +++ b/src/libslic3r/BuildVolume.hpp @@ -5,9 +5,13 @@ #include "Geometry/Circle.hpp" #include "Polygon.hpp" #include "BoundingBox.hpp" +#include "libslic3r.h" #include +#include #include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/CAD/CadDocument.cpp b/src/libslic3r/CAD/CadDocument.cpp index ea20ffd966..b4a89f6a69 100644 --- a/src/libslic3r/CAD/CadDocument.cpp +++ b/src/libslic3r/CAD/CadDocument.cpp @@ -1,8 +1,14 @@ #include "libslic3r/CAD/CadDocument.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/CAD/SketchEngine.hpp" +#include "libslic3r/CAD/GeometryEngine.hpp" #include "libslic3r/CAD/SketchConstraints.hpp" #include "libslic3r/CAD/SketchSolver.hpp" #include "libslic3r/CAD/SketchImport.hpp" // transform_regions for imported art +#include +#include +#include #include #include @@ -26,6 +32,10 @@ #include #include #include +#include +#include +#include +#include #include #include #include @@ -69,12 +79,18 @@ #include #include #include +#include +#include +#include #include #include #include #include #include +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/CAD/CadDocument.hpp b/src/libslic3r/CAD/CadDocument.hpp index f62536384a..216be818bd 100644 --- a/src/libslic3r/CAD/CadDocument.hpp +++ b/src/libslic3r/CAD/CadDocument.hpp @@ -1,16 +1,20 @@ #ifndef slic3r_CadDocument_hpp_ #define slic3r_CadDocument_hpp_ +#include "libslic3r/Point.hpp" #include "libslic3r/TriangleMesh.hpp" #include "libslic3r/CAD/SketchEngine.hpp" #include "libslic3r/CAD/GeometryEngine.hpp" // FaceGroup #include "libslic3r/Color.hpp" // ColorRGBA (per-body display colour override) +#include #include #include #include #include #include +#include +#include #include #include #include diff --git a/src/libslic3r/CAD/GeometryEngine.cpp b/src/libslic3r/CAD/GeometryEngine.cpp index 2b923938c2..1e5896e67a 100644 --- a/src/libslic3r/CAD/GeometryEngine.cpp +++ b/src/libslic3r/CAD/GeometryEngine.cpp @@ -1,12 +1,25 @@ #include "libslic3r/CAD/GeometryEngine.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/TriangleMesh.hpp" #include #include #include #include +#include +#include +#include +#include +#include +#include +#include +#include +#include #include #include #include +#include +#include #include #include #include @@ -43,6 +56,9 @@ #include #include #include +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/CAD/GeometryEngine.hpp b/src/libslic3r/CAD/GeometryEngine.hpp index f27a0f2f17..6c0fb51daf 100644 --- a/src/libslic3r/CAD/GeometryEngine.hpp +++ b/src/libslic3r/CAD/GeometryEngine.hpp @@ -1,6 +1,7 @@ #ifndef slic3r_GeometryEngine_hpp_ #define slic3r_GeometryEngine_hpp_ +#include "libslic3r/Point.hpp" #include "libslic3r/TriangleMesh.hpp" #include @@ -8,6 +9,8 @@ #include #include #include +#include +#include #include #include #include diff --git a/src/libslic3r/CAD/SketchConstraints.cpp b/src/libslic3r/CAD/SketchConstraints.cpp index 003afb4d63..acc82a0e42 100644 --- a/src/libslic3r/CAD/SketchConstraints.cpp +++ b/src/libslic3r/CAD/SketchConstraints.cpp @@ -1,6 +1,11 @@ #include "libslic3r/CAD/SketchConstraints.hpp" +#include "libslic3r/Point.hpp" +#include #include +#include #include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/CAD/SketchConstraints.hpp b/src/libslic3r/CAD/SketchConstraints.hpp index 88bcadc403..10c3efacc4 100644 --- a/src/libslic3r/CAD/SketchConstraints.hpp +++ b/src/libslic3r/CAD/SketchConstraints.hpp @@ -2,6 +2,7 @@ #define slic3r_SketchConstraints_hpp_ #include "libslic3r/Point.hpp" +#include #include #include diff --git a/src/libslic3r/CAD/SketchEngine.cpp b/src/libslic3r/CAD/SketchEngine.cpp index 5cc36ce648..ba92fa88bb 100644 --- a/src/libslic3r/CAD/SketchEngine.cpp +++ b/src/libslic3r/CAD/SketchEngine.cpp @@ -1,7 +1,18 @@ #include "libslic3r/CAD/SketchEngine.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/TriangleMesh.hpp" +#include +#include +#include +#include +#include +#include +#include +#include #include #include +#include #include #include @@ -47,8 +58,11 @@ #include #include #include +#include #include #include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/CAD/SketchImport.cpp b/src/libslic3r/CAD/SketchImport.cpp index 7140776603..32bcc608d3 100644 --- a/src/libslic3r/CAD/SketchImport.cpp +++ b/src/libslic3r/CAD/SketchImport.cpp @@ -1,5 +1,8 @@ #include "libslic3r/CAD/SketchImport.hpp" +#include "libslic3r/Polygon.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/EmbossShape.hpp" #include "libslic3r/Emboss.hpp" #include "libslic3r/NSVGUtils.hpp" #include "libslic3r/ExPolygon.hpp" @@ -9,6 +12,11 @@ #include #include +#include +#include +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/CAD/SketchInference.cpp b/src/libslic3r/CAD/SketchInference.cpp index cfeb2cd509..eca56ee5c1 100644 --- a/src/libslic3r/CAD/SketchInference.cpp +++ b/src/libslic3r/CAD/SketchInference.cpp @@ -1,7 +1,13 @@ #include "libslic3r/CAD/SketchInference.hpp" +#include "libslic3r/CAD/SketchEngine.hpp" +#include "libslic3r/Point.hpp" #include #include +#include +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/CAD/SketchInference.hpp b/src/libslic3r/CAD/SketchInference.hpp index be51f0240e..eb30af184a 100644 --- a/src/libslic3r/CAD/SketchInference.hpp +++ b/src/libslic3r/CAD/SketchInference.hpp @@ -1,7 +1,9 @@ #ifndef slic3r_SketchInference_hpp_ #define slic3r_SketchInference_hpp_ +#include "libslic3r/Point.hpp" #include "libslic3r/CAD/SketchEngine.hpp" +#include #include #include #include diff --git a/src/libslic3r/CAD/SketchSolver.cpp b/src/libslic3r/CAD/SketchSolver.cpp index 952f9de16f..03033d061e 100644 --- a/src/libslic3r/CAD/SketchSolver.cpp +++ b/src/libslic3r/CAD/SketchSolver.cpp @@ -1,5 +1,7 @@ #include "libslic3r/CAD/SketchSolver.hpp" +#include "libslic3r/CAD/SketchEngine.hpp" +#include #include #include @@ -7,6 +9,8 @@ #include #include #include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/CAD/ThreadStandards.cpp b/src/libslic3r/CAD/ThreadStandards.cpp index 2d113d01e6..11b6b24d8f 100644 --- a/src/libslic3r/CAD/ThreadStandards.cpp +++ b/src/libslic3r/CAD/ThreadStandards.cpp @@ -1,4 +1,6 @@ #include "libslic3r/CAD/ThreadStandards.hpp" +#include +#include namespace Slic3r { diff --git a/src/libslic3r/CSGMesh/CSGMesh.hpp b/src/libslic3r/CSGMesh/CSGMesh.hpp index ea16eae52a..bb5060b0d3 100644 --- a/src/libslic3r/CSGMesh/CSGMesh.hpp +++ b/src/libslic3r/CSGMesh/CSGMesh.hpp @@ -2,7 +2,11 @@ #define CSGMESH_HPP #include +#include +#include #include +#include +#include namespace Slic3r { namespace csg { diff --git a/src/libslic3r/CSGMesh/CSGMeshCopy.hpp b/src/libslic3r/CSGMesh/CSGMeshCopy.hpp index 78800f9bbb..f00b24b535 100644 --- a/src/libslic3r/CSGMesh/CSGMeshCopy.hpp +++ b/src/libslic3r/CSGMesh/CSGMeshCopy.hpp @@ -1,7 +1,11 @@ #ifndef CSGMESHCOPY_HPP #define CSGMESHCOPY_HPP +#include "libslic3r/AnyPtr.hpp" #include "CSGMesh.hpp" +#include "libslic3r/libslic3r.h" +#include +#include namespace Slic3r { namespace csg { diff --git a/src/libslic3r/CSGMesh/ModelToCSGMesh.hpp b/src/libslic3r/CSGMesh/ModelToCSGMesh.hpp index 5963b29109..2dcd2eef2e 100644 --- a/src/libslic3r/CSGMesh/ModelToCSGMesh.hpp +++ b/src/libslic3r/CSGMesh/ModelToCSGMesh.hpp @@ -3,9 +3,13 @@ #include "CSGMesh.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/TriangleMesh.hpp" #include "libslic3r/Model.hpp" #include "libslic3r/SLA/Hollowing.hpp" #include "libslic3r/MeshSplitImpl.hpp" +#include +#include namespace Slic3r { namespace csg { diff --git a/src/libslic3r/CSGMesh/PerformCSGMeshBooleans.hpp b/src/libslic3r/CSGMesh/PerformCSGMeshBooleans.hpp index df4a603382..091621ab84 100644 --- a/src/libslic3r/CSGMesh/PerformCSGMeshBooleans.hpp +++ b/src/libslic3r/CSGMesh/PerformCSGMeshBooleans.hpp @@ -1,11 +1,17 @@ #ifndef PERFORMCSGMESHBOOLEANS_HPP #define PERFORMCSGMESHBOOLEANS_HPP +#include #include +#include +#include #include +#include + #include "CSGMesh.hpp" +#include "libslic3r/libslic3r.h" #include "libslic3r/Execution/ExecutionTBB.hpp" //#include "libslic3r/Execution/ExecutionSeq.hpp" #include "libslic3r/MeshBoolean.hpp" diff --git a/src/libslic3r/CSGMesh/SliceCSGMesh.hpp b/src/libslic3r/CSGMesh/SliceCSGMesh.hpp index 9d7b9a077d..165e9af2b6 100644 --- a/src/libslic3r/CSGMesh/SliceCSGMesh.hpp +++ b/src/libslic3r/CSGMesh/SliceCSGMesh.hpp @@ -3,8 +3,16 @@ #include "CSGMesh.hpp" +#include +#include +#include #include +#include +#include +#include "libslic3r/ExPolygon.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/Execution/Execution.hpp" #include "libslic3r/TriangleMeshSlicer.hpp" #include "libslic3r/ClipperUtils.hpp" #include "libslic3r/Execution/ExecutionTBB.hpp" diff --git a/src/libslic3r/CSGMesh/TriangleMeshAdapter.hpp b/src/libslic3r/CSGMesh/TriangleMeshAdapter.hpp index 81b05b0463..d5586823fb 100644 --- a/src/libslic3r/CSGMesh/TriangleMeshAdapter.hpp +++ b/src/libslic3r/CSGMesh/TriangleMeshAdapter.hpp @@ -3,6 +3,7 @@ #include "CSGMesh.hpp" +#include "libslic3r/Point.hpp" #include "libslic3r/TriangleMesh.hpp" namespace Slic3r { namespace csg { diff --git a/src/libslic3r/Channel.hpp b/src/libslic3r/Channel.hpp index 68369af638..8ed9da9a88 100644 --- a/src/libslic3r/Channel.hpp +++ b/src/libslic3r/Channel.hpp @@ -1,6 +1,9 @@ #ifndef slic3r_Channel_hpp_ #define slic3r_Channel_hpp_ +#include +#include +#include #include #include #include diff --git a/src/libslic3r/Circle.cpp b/src/libslic3r/Circle.cpp index c277a67795..8d09ba8f89 100644 --- a/src/libslic3r/Circle.cpp +++ b/src/libslic3r/Circle.cpp @@ -2,8 +2,14 @@ #include #include +#include +#include +#include #include "Geometry.hpp" +#include "Point.hpp" +#include "Line.hpp" #include "Polygon.hpp" +#include "libslic3r.h" //BBS: Refer to ArcWelderLib for the arc fitting functions diff --git a/src/libslic3r/Circle.hpp b/src/libslic3r/Circle.hpp index c06b197e19..388c7488ea 100644 --- a/src/libslic3r/Circle.hpp +++ b/src/libslic3r/Circle.hpp @@ -3,6 +3,8 @@ #include "Point.hpp" #include "Line.hpp" +#include "libslic3r.h" +#include namespace Slic3r { diff --git a/src/libslic3r/ClipperUtils.cpp b/src/libslic3r/ClipperUtils.cpp index 88be185f8c..d80936515e 100644 --- a/src/libslic3r/ClipperUtils.cpp +++ b/src/libslic3r/ClipperUtils.cpp @@ -1,14 +1,29 @@ #include #include +#include +#include +#include +#include +#include #include #include #include #include "ClipperUtils.hpp" +#include "BoundingBox.hpp" +#include "ExPolygon.hpp" #include "Geometry.hpp" +#include "Point.hpp" +#include "Polygon.hpp" +#include "Polyline.hpp" +#include "Line.hpp" #include "ShortestPath.hpp" +#include "libslic3r.h" +#include "Surface.hpp" #include +#include +#include // #define CLIPPER_UTILS_DEBUG diff --git a/src/libslic3r/ClipperUtils.hpp b/src/libslic3r/ClipperUtils.hpp index 5f05c8e3c4..00cf60076b 100644 --- a/src/libslic3r/ClipperUtils.hpp +++ b/src/libslic3r/ClipperUtils.hpp @@ -1,10 +1,17 @@ #ifndef slic3r_ClipperUtils_hpp_ #define slic3r_ClipperUtils_hpp_ +#include "Point.hpp" +#include "Polyline.hpp" +#include "Line.hpp" #include "libslic3r.h" #include "ExPolygon.hpp" #include "Polygon.hpp" #include "Surface.hpp" +#include +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/ClipperZUtils.cpp b/src/libslic3r/ClipperZUtils.cpp index f7a4b79b0d..a07f40dc4a 100644 --- a/src/libslic3r/ClipperZUtils.cpp +++ b/src/libslic3r/ClipperZUtils.cpp @@ -1,6 +1,8 @@ #include "ClipperZUtils.hpp" +#include "ClipperUtils.hpp" #include +#include namespace Slic3r { namespace ClipperZUtils { diff --git a/src/libslic3r/ClipperZUtils.hpp b/src/libslic3r/ClipperZUtils.hpp index 159a4e81b3..781357caa5 100644 --- a/src/libslic3r/ClipperZUtils.hpp +++ b/src/libslic3r/ClipperZUtils.hpp @@ -1,8 +1,13 @@ #ifndef slic3r_ClipperZUtils_hpp_ #define slic3r_ClipperZUtils_hpp_ +#include "libslic3r.h" +#include +#include +#include #include #include +#include #include #include diff --git a/src/libslic3r/Color.cpp b/src/libslic3r/Color.cpp index d7208d40fc..bb08b7c75b 100644 --- a/src/libslic3r/Color.cpp +++ b/src/libslic3r/Color.cpp @@ -1,7 +1,15 @@ #include "libslic3r.h" #include "Color.hpp" +#include +#include +#include +#include +#include +#include #include +#include +#include static const float INV_255 = 1.0f / 255.0f; diff --git a/src/libslic3r/ColorDecomposeRecipe.cpp b/src/libslic3r/ColorDecomposeRecipe.cpp index f2ceb1860a..6aa09f01d2 100644 --- a/src/libslic3r/ColorDecomposeRecipe.cpp +++ b/src/libslic3r/ColorDecomposeRecipe.cpp @@ -9,7 +9,9 @@ #include #include #include +#include #include +#include namespace Slic3r { namespace { diff --git a/src/libslic3r/Config.cpp b/src/libslic3r/Config.cpp index df2030b575..38c5b30118 100644 --- a/src/libslic3r/Config.cpp +++ b/src/libslic3r/Config.cpp @@ -1,4 +1,6 @@ #include "Config.hpp" +#include "Exception.hpp" +#include "Point.hpp" #include "format.hpp" #include "Utils.hpp" #include "LocalesUtils.hpp" @@ -6,7 +8,20 @@ #include #include +#include +#include +#include +#include +#include +#include #include +#include +#include +#include +#include +#include +#include +#include #include #include #include @@ -26,8 +41,15 @@ #include #include #include +#include #include +#include +#include +#include +#include //BBS: add json support +#include "libslic3r.h" +#include "libslic3r_version.h" #include "nlohmann/json.hpp" using namespace nlohmann; diff --git a/src/libslic3r/Config.hpp b/src/libslic3r/Config.hpp index 9818887c1d..9d76262ec6 100644 --- a/src/libslic3r/Config.hpp +++ b/src/libslic3r/Config.hpp @@ -3,6 +3,11 @@ #include #include +#include +#include +#include +#include +#include #include #include #include @@ -10,10 +15,15 @@ #include #include #include +#include #include +#include +#include #include #include +#include #include +#include "LocalesUtils.hpp" #include "libslic3r.h" #include "clonable_ptr.hpp" #include "Exception.hpp" diff --git a/src/libslic3r/ContourZ.cpp b/src/libslic3r/ContourZ.cpp index f4a5fc049a..8751bcca58 100644 --- a/src/libslic3r/ContourZ.cpp +++ b/src/libslic3r/ContourZ.cpp @@ -2,14 +2,18 @@ #include "ExtrusionEntity.hpp" #include "ExtrusionEntityCollection.hpp" #include "Layer.hpp" +#include "Line.hpp" #include "Point.hpp" #include "Print.hpp" #include "SLA/IndexedMesh.hpp" #include "libslic3r.h" +#include #include #include #include +#include #include +#include namespace Slic3r { diff --git a/src/libslic3r/CustomGCode.cpp b/src/libslic3r/CustomGCode.cpp index acd7089c05..a78bc2a111 100644 --- a/src/libslic3r/CustomGCode.cpp +++ b/src/libslic3r/CustomGCode.cpp @@ -2,6 +2,10 @@ #include "Config.hpp" #include "GCode.hpp" #include "GCodeWriter.hpp" +#include +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/CustomGCode.hpp b/src/libslic3r/CustomGCode.hpp index 7d8c7d9982..a4ed244dc5 100644 --- a/src/libslic3r/CustomGCode.hpp +++ b/src/libslic3r/CustomGCode.hpp @@ -1,7 +1,10 @@ #ifndef slic3r_CustomGCode_hpp_ #define slic3r_CustomGCode_hpp_ +#include +#include #include +#include #include #include diff --git a/src/libslic3r/CutSurface.cpp b/src/libslic3r/CutSurface.cpp index dbf737e3ed..8967f6c2ba 100644 --- a/src/libslic3r/CutSurface.cpp +++ b/src/libslic3r/CutSurface.cpp @@ -1,4 +1,38 @@ #include "CutSurface.hpp" +#include "libslic3r/Emboss.hpp" +#include +#include +#include +#include "libslic3r/Point.hpp" +#include "libslic3r/ExPolygon.hpp" +#include +#include +#include +#include +#include "libslic3r/BoundingBox.hpp" +#include +#include "libslic3r/Polygon.hpp" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "libslic3r/AABBTreeIndirect.hpp" +#include +#include "libslic3r/libslic3r.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include /// models_input.obj - Check transormation of model to each others /// projection_center.obj - circle representing center of projection with correct distance diff --git a/src/libslic3r/CutSurface.hpp b/src/libslic3r/CutSurface.hpp index 9f4e3159cf..33b0d88697 100644 --- a/src/libslic3r/CutSurface.hpp +++ b/src/libslic3r/CutSurface.hpp @@ -1,6 +1,8 @@ #ifndef slic3r_CutSurface_hpp_ #define slic3r_CutSurface_hpp_ +#include "libslic3r/BoundingBox.hpp" +#include #include #include // indexed_triangle_set #include "ExPolygon.hpp" diff --git a/src/libslic3r/CutUtils.cpp b/src/libslic3r/CutUtils.cpp index f8b1483773..e5cb3cc6f1 100644 --- a/src/libslic3r/CutUtils.cpp +++ b/src/libslic3r/CutUtils.cpp @@ -1,13 +1,24 @@ #include "CutUtils.hpp" #include "Geometry.hpp" +#include "Point.hpp" +#include "TriangleMesh.hpp" #include "libslic3r.h" #include "Model.hpp" #include "TriangleMeshSlicer.hpp" #include "TriangleSelector.hpp" #include "ObjectID.hpp" +#include #include +#include +#include +#include +#include +#include +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/CutUtils.hpp b/src/libslic3r/CutUtils.hpp index b7f31d7b9a..37f30308b6 100644 --- a/src/libslic3r/CutUtils.hpp +++ b/src/libslic3r/CutUtils.hpp @@ -5,6 +5,7 @@ #include "Point.hpp" #include "Model.hpp" +#include #include namespace Slic3r { diff --git a/src/libslic3r/EdgeGrid.cpp b/src/libslic3r/EdgeGrid.cpp index 93bf7d48ec..c6e003505a 100644 --- a/src/libslic3r/EdgeGrid.cpp +++ b/src/libslic3r/EdgeGrid.cpp @@ -1,10 +1,21 @@ #include +#include +#include +#include +#include +#include +#include #include #include #include #include +#include "Polygon.hpp" +#include "Point.hpp" +#include "Polyline.hpp" +#include "ExPolygon.hpp" +#include "Line.hpp" #include "libslic3r.h" #include "ClipperUtils.hpp" #include "EdgeGrid.hpp" diff --git a/src/libslic3r/EdgeGrid.hpp b/src/libslic3r/EdgeGrid.hpp index 6bbed1e9fa..971d23ead6 100644 --- a/src/libslic3r/EdgeGrid.hpp +++ b/src/libslic3r/EdgeGrid.hpp @@ -1,12 +1,24 @@ #ifndef slic3r_EdgeGrid_hpp_ #define slic3r_EdgeGrid_hpp_ +#include +#include +#include +#include +#include #include #include +#include +#include +#include +#include "Line.hpp" #include "Point.hpp" #include "BoundingBox.hpp" #include "ExPolygon.hpp" +#include "libslic3r.h" +#include "Polygon.hpp" +#include "Polyline.hpp" namespace Slic3r { namespace EdgeGrid { diff --git a/src/libslic3r/ElephantFootCompensation.cpp b/src/libslic3r/ElephantFootCompensation.cpp index aaf18608ee..40b856ee4b 100644 --- a/src/libslic3r/ElephantFootCompensation.cpp +++ b/src/libslic3r/ElephantFootCompensation.cpp @@ -1,3 +1,6 @@ +#include "Point.hpp" +#include "BoundingBox.hpp" +#include "Polygon.hpp" #include "libslic3r.h" #include "ClipperUtils.hpp" #include "EdgeGrid.hpp" @@ -8,8 +11,14 @@ #include "SVG.hpp" #include "Utils.hpp" +#include #include #include +#include +#include +#include +#include +#include // #define CONTOUR_DISTANCE_DEBUG_SVG diff --git a/src/libslic3r/Emboss.cpp b/src/libslic3r/Emboss.cpp index 80a9274fd0..ae13cbf54e 100644 --- a/src/libslic3r/Emboss.cpp +++ b/src/libslic3r/Emboss.cpp @@ -1,12 +1,35 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include #include #include "Emboss.hpp" +#include #include #include #include #include #include #include // union_ex + for boldness(polygon extend(offset)) +#include "ExPolygon.hpp" +#include +#include "AABBTreeIndirect.hpp" +#include +#include "EmbossShape.hpp" +#include #include "IntersectionPoints.hpp" +#include "Polygon.hpp" +#include "TextConfiguration.hpp" +#include "Point.hpp" #define STB_TRUETYPE_IMPLEMENTATION // force following include to generate implementation #include "imgui/imstb_truetype.h" // stbtt_fontinfo diff --git a/src/libslic3r/Emboss.hpp b/src/libslic3r/Emboss.hpp index 2d445fcc6c..9b7beafec7 100644 --- a/src/libslic3r/Emboss.hpp +++ b/src/libslic3r/Emboss.hpp @@ -1,11 +1,19 @@ #ifndef slic3r_Emboss_hpp_ #define slic3r_Emboss_hpp_ +#include +#include +#include +#include +#include +#include +#include #include #include #include #include #include // indexed_triangle_set +#include "Point.hpp" #include "Polygon.hpp" #include "ExPolygon.hpp" #include "EmbossShape.hpp" // ExPolygonsWithIds diff --git a/src/libslic3r/EmbossShape.hpp b/src/libslic3r/EmbossShape.hpp index 3e4a950037..490844bdef 100644 --- a/src/libslic3r/EmbossShape.hpp +++ b/src/libslic3r/EmbossShape.hpp @@ -9,9 +9,11 @@ #include #include #include +#include #include "Point.hpp" // Transform3d #include "ExPolygon.hpp" #include "ExPolygonSerialize.hpp" +#include "libslic3r.h" #include "nanosvg/nanosvg.h" // NSVGimage namespace Slic3r { diff --git a/src/libslic3r/ExPolygon.cpp b/src/libslic3r/ExPolygon.cpp index 185e925084..f34b07b7cb 100644 --- a/src/libslic3r/ExPolygon.cpp +++ b/src/libslic3r/ExPolygon.cpp @@ -2,13 +2,23 @@ #include "ExPolygon.hpp" #include "Exception.hpp" #include "Geometry/MedialAxis.hpp" +#include "Point.hpp" +#include "MultiPoint.hpp" #include "Polygon.hpp" #include "Line.hpp" #include "ClipperUtils.hpp" +#include "Polyline.hpp" #include "SVG.hpp" +#include "libslic3r.h" #include #include +#include +#include +#include +#include #include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/ExPolygon.hpp b/src/libslic3r/ExPolygon.hpp index ce7ebe892f..d695171d1e 100644 --- a/src/libslic3r/ExPolygon.hpp +++ b/src/libslic3r/ExPolygon.hpp @@ -1,10 +1,17 @@ #ifndef slic3r_ExPolygon_hpp_ #define slic3r_ExPolygon_hpp_ +#include "Line.hpp" #include "Point.hpp" #include "libslic3r.h" #include "Polygon.hpp" #include "Polyline.hpp" +#include +#include +#include +#include +#include +#include #include namespace Slic3r { diff --git a/src/libslic3r/ExPolygonCollection.hpp b/src/libslic3r/ExPolygonCollection.hpp index 35e1eef4eb..ecef053ebc 100644 --- a/src/libslic3r/ExPolygonCollection.hpp +++ b/src/libslic3r/ExPolygonCollection.hpp @@ -1,10 +1,13 @@ #ifndef slic3r_ExPolygonCollection_hpp_ #define slic3r_ExPolygonCollection_hpp_ +#include "Point.hpp" +#include "Polygon.hpp" #include "libslic3r.h" #include "ExPolygon.hpp" #include "Line.hpp" #include "Polyline.hpp" +#include namespace Slic3r { diff --git a/src/libslic3r/ExPolygonSerialize.hpp b/src/libslic3r/ExPolygonSerialize.hpp index 712d4706d5..58d12093e6 100644 --- a/src/libslic3r/ExPolygonSerialize.hpp +++ b/src/libslic3r/ExPolygonSerialize.hpp @@ -3,6 +3,7 @@ #include "ExPolygon.hpp" #include "Point.hpp" // Cereal serialization of Point +#include "Polygon.hpp" #include #include diff --git a/src/libslic3r/ExPolygonsIndex.cpp b/src/libslic3r/ExPolygonsIndex.cpp index 976531799f..296d43a198 100644 --- a/src/libslic3r/ExPolygonsIndex.cpp +++ b/src/libslic3r/ExPolygonsIndex.cpp @@ -1,4 +1,10 @@ #include "ExPolygonsIndex.hpp" +#include "ExPolygon.hpp" +#include +#include +#include +#include +#include using namespace Slic3r; // IMPROVE: use one dimensional vector for polygons offset with searching by std::lower_bound diff --git a/src/libslic3r/ExPolygonsIndex.hpp b/src/libslic3r/ExPolygonsIndex.hpp index b46fd50890..317fb5f731 100644 --- a/src/libslic3r/ExPolygonsIndex.hpp +++ b/src/libslic3r/ExPolygonsIndex.hpp @@ -2,6 +2,8 @@ #define slic3r_ExPolygonsIndex_hpp_ #include "ExPolygon.hpp" +#include +#include namespace Slic3r { ///

diff --git a/src/libslic3r/Exception.hpp b/src/libslic3r/Exception.hpp index d271a25052..5297af8ff2 100644 --- a/src/libslic3r/Exception.hpp +++ b/src/libslic3r/Exception.hpp @@ -1,7 +1,9 @@ #ifndef _libslic3r_Exception_h_ #define _libslic3r_Exception_h_ +#include #include +#include #include namespace Slic3r { diff --git a/src/libslic3r/Execution/Execution.hpp b/src/libslic3r/Execution/Execution.hpp index 62e49cfeb3..9620d9b11d 100644 --- a/src/libslic3r/Execution/Execution.hpp +++ b/src/libslic3r/Execution/Execution.hpp @@ -1,6 +1,7 @@ #ifndef EXECUTION_HPP #define EXECUTION_HPP +#include #include #include #include diff --git a/src/libslic3r/Execution/ExecutionSeq.hpp b/src/libslic3r/Execution/ExecutionSeq.hpp index 321d65631b..56afa6aaf4 100644 --- a/src/libslic3r/Execution/ExecutionSeq.hpp +++ b/src/libslic3r/Execution/ExecutionSeq.hpp @@ -1,6 +1,9 @@ #ifndef EXECUTIONSEQ_HPP #define EXECUTIONSEQ_HPP +#include +#include "libslic3r/libslic3r.h" +#include #ifdef PRUSASLICER_USE_EXECUTION_STD // Conflicts with our version of TBB #include #endif diff --git a/src/libslic3r/Execution/ExecutionTBB.hpp b/src/libslic3r/Execution/ExecutionTBB.hpp index 2250b8e322..4881c7b59c 100644 --- a/src/libslic3r/Execution/ExecutionTBB.hpp +++ b/src/libslic3r/Execution/ExecutionTBB.hpp @@ -1,14 +1,17 @@ #ifndef EXECUTIONTBB_HPP #define EXECUTIONTBB_HPP +#include #include #include #include #include #include +#include #include "Execution.hpp" +#include "libslic3r/libslic3r.h" namespace Slic3r { diff --git a/src/libslic3r/Extruder.cpp b/src/libslic3r/Extruder.cpp index b1b6ca347a..bffdf6771c 100644 --- a/src/libslic3r/Extruder.cpp +++ b/src/libslic3r/Extruder.cpp @@ -1,5 +1,11 @@ #include "Extruder.hpp" +#include "Exception.hpp" #include "PrintConfig.hpp" +#include +#include "libslic3r.h" +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/Extruder.hpp b/src/libslic3r/Extruder.hpp index aa023ea040..94e083c86b 100644 --- a/src/libslic3r/Extruder.hpp +++ b/src/libslic3r/Extruder.hpp @@ -3,6 +3,7 @@ #include "libslic3r.h" #include "Point.hpp" +#include namespace Slic3r { diff --git a/src/libslic3r/ExtrusionEntity.cpp b/src/libslic3r/ExtrusionEntity.cpp index bd45150a15..a3590814f7 100644 --- a/src/libslic3r/ExtrusionEntity.cpp +++ b/src/libslic3r/ExtrusionEntity.cpp @@ -4,10 +4,23 @@ #include "ClipperUtils.hpp" #include "Extruder.hpp" #include "Flow.hpp" +#include +#include #include +#include +#include #include #include +#include "Point.hpp" +#include "Polyline.hpp" +#include "Polygon.hpp" +#include +#include +#include "Line.hpp" +#include +#include #include "Utils.hpp" +#include "libslic3r.h" #define L(s) (s) diff --git a/src/libslic3r/ExtrusionEntity.hpp b/src/libslic3r/ExtrusionEntity.hpp index de80247bce..d7dac99364 100644 --- a/src/libslic3r/ExtrusionEntity.hpp +++ b/src/libslic3r/ExtrusionEntity.hpp @@ -1,13 +1,19 @@ #ifndef slic3r_ExtrusionEntity_hpp_ #define slic3r_ExtrusionEntity_hpp_ +#include "Point.hpp" #include "libslic3r.h" #include "Polygon.hpp" #include "Polyline.hpp" #include +#include +#include +#include #include #include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/ExtrusionEntityCollection.cpp b/src/libslic3r/ExtrusionEntityCollection.cpp index 9a37ff3ac1..0141e3d5e8 100644 --- a/src/libslic3r/ExtrusionEntityCollection.cpp +++ b/src/libslic3r/ExtrusionEntityCollection.cpp @@ -1,7 +1,12 @@ #include "ExtrusionEntityCollection.hpp" +#include "ExtrusionEntity.hpp" +#include "Point.hpp" +#include "Polygon.hpp" #include "ShortestPath.hpp" #include #include +#include +#include #include namespace Slic3r { diff --git a/src/libslic3r/ExtrusionEntityCollection.hpp b/src/libslic3r/ExtrusionEntityCollection.hpp index 13727869fe..664ad1ddcd 100644 --- a/src/libslic3r/ExtrusionEntityCollection.hpp +++ b/src/libslic3r/ExtrusionEntityCollection.hpp @@ -1,9 +1,16 @@ #ifndef slic3r_ExtrusionEntityCollection_hpp_ #define slic3r_ExtrusionEntityCollection_hpp_ +#include "Point.hpp" +#include "Polygon.hpp" +#include "Polyline.hpp" #include "libslic3r.h" #include "Exception.hpp" #include "ExtrusionEntity.hpp" +#include +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/ExtrusionSimulator.cpp b/src/libslic3r/ExtrusionSimulator.cpp index 4bf54edea9..bb9179a7e2 100644 --- a/src/libslic3r/ExtrusionSimulator.cpp +++ b/src/libslic3r/ExtrusionSimulator.cpp @@ -3,6 +3,9 @@ //#undef SLIC3R_DEBUG //#define NDEBUG +#include +#include +#include #include #include @@ -12,7 +15,14 @@ #include #include +#include +#include +#include +#include +#include "Point.hpp" +#include "BoundingBox.hpp" +#include "ExtrusionEntity.hpp" #include "libslic3r.h" #include "ExtrusionSimulator.hpp" diff --git a/src/libslic3r/ExtrusionSimulator.hpp b/src/libslic3r/ExtrusionSimulator.hpp index 040406766d..33629d79e6 100644 --- a/src/libslic3r/ExtrusionSimulator.hpp +++ b/src/libslic3r/ExtrusionSimulator.hpp @@ -1,6 +1,7 @@ #ifndef slic3r_ExtrusionSimulator_hpp_ #define slic3r_ExtrusionSimulator_hpp_ +#include "Point.hpp" #include "libslic3r.h" #include "ExtrusionEntity.hpp" #include "BoundingBox.hpp" diff --git a/src/libslic3r/FaceDetector.cpp b/src/libslic3r/FaceDetector.cpp index 5eb5ca762c..a631822d9e 100644 --- a/src/libslic3r/FaceDetector.cpp +++ b/src/libslic3r/FaceDetector.cpp @@ -1,8 +1,13 @@ #include "FaceDetector.hpp" +#include "BoundingBox.hpp" #include "TriangleMesh.hpp" #include "SLA/IndexedMesh.hpp" #include "Model.hpp" +#include +#include #include +#include +#include namespace Slic3r { static const double BBOX_OFFSET = 2.0; diff --git a/src/libslic3r/FaceDetector.hpp b/src/libslic3r/FaceDetector.hpp index b4d9d78985..190877ecec 100644 --- a/src/libslic3r/FaceDetector.hpp +++ b/src/libslic3r/FaceDetector.hpp @@ -2,6 +2,7 @@ #define slic3r_FaceDetector_hpp_ #include "Point.hpp" +#include namespace Slic3r { class ModelObject; diff --git a/src/libslic3r/Feature/FuzzySkin/FuzzySkin.cpp b/src/libslic3r/Feature/FuzzySkin/FuzzySkin.cpp index be86e92245..c580cc3c0f 100644 --- a/src/libslic3r/Feature/FuzzySkin/FuzzySkin.cpp +++ b/src/libslic3r/Feature/FuzzySkin/FuzzySkin.cpp @@ -1,5 +1,19 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include #include +#include +#include +#include +#include "libslic3r/libslic3r.h" +#include "libslic3r/Surface.hpp" #include "libslic3r/Algorithm/LineSplit.hpp" #include "libslic3r/Arachne/utils/ExtrusionJunction.hpp" #include "libslic3r/Arachne/utils/ExtrusionLine.hpp" diff --git a/src/libslic3r/Feature/FuzzySkin/FuzzySkin.hpp b/src/libslic3r/Feature/FuzzySkin/FuzzySkin.hpp index ab0c491b38..ec5069a49c 100644 --- a/src/libslic3r/Feature/FuzzySkin/FuzzySkin.hpp +++ b/src/libslic3r/Feature/FuzzySkin/FuzzySkin.hpp @@ -1,9 +1,13 @@ #ifndef libslic3r_FuzzySkin_hpp_ #define libslic3r_FuzzySkin_hpp_ +#include "libslic3r/Point.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/Polygon.hpp" #include "libslic3r/Arachne/utils/ExtrusionJunction.hpp" #include "libslic3r/Arachne/utils/ExtrusionLine.hpp" #include "libslic3r/PerimeterGenerator.hpp" +#include namespace Slic3r::Feature::FuzzySkin { diff --git a/src/libslic3r/Feature/Interlocking/InterlockingGenerator.cpp b/src/libslic3r/Feature/Interlocking/InterlockingGenerator.cpp index 726ee2ffd8..9e2fb7fa47 100644 --- a/src/libslic3r/Feature/Interlocking/InterlockingGenerator.cpp +++ b/src/libslic3r/Feature/Interlocking/InterlockingGenerator.cpp @@ -2,8 +2,22 @@ // CuraEngine is released under the terms of the AGPLv3 or higher. #include "InterlockingGenerator.hpp" +#include "libslic3r/Feature/Interlocking/VoxelUtils.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/Geometry.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/Flow.hpp" +#include "libslic3r/Polygon.hpp" +#include "libslic3r/Surface.hpp" +#include "libslic3r/ExPolygon.hpp" #include "libslic3r/ClipperUtils.hpp" #include "Layer.hpp" +#include +#include +#include +#include +#include +#include namespace std { template<> struct hash diff --git a/src/libslic3r/Feature/Interlocking/InterlockingGenerator.hpp b/src/libslic3r/Feature/Interlocking/InterlockingGenerator.hpp index e6b79f9bc8..b06c8a10c8 100644 --- a/src/libslic3r/Feature/Interlocking/InterlockingGenerator.hpp +++ b/src/libslic3r/Feature/Interlocking/InterlockingGenerator.hpp @@ -4,8 +4,16 @@ #ifndef INTERLOCKING_GENERATOR_HPP #define INTERLOCKING_GENERATOR_HPP +#include "libslic3r/libslic3r.h" +#include "libslic3r/Point.hpp" +#include "libslic3r/ExPolygon.hpp" #include "libslic3r/Print.hpp" #include "VoxelUtils.hpp" +#include +#include +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/Feature/Interlocking/VoxelUtils.cpp b/src/libslic3r/Feature/Interlocking/VoxelUtils.cpp index 303473ae48..6e33ddaca7 100644 --- a/src/libslic3r/Feature/Interlocking/VoxelUtils.cpp +++ b/src/libslic3r/Feature/Interlocking/VoxelUtils.cpp @@ -2,9 +2,21 @@ // CuraEngine is released under the terms of the AGPLv3 or higher. #include "VoxelUtils.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/Point.hpp" +#include "libslic3r/ExPolygon.hpp" +#include "libslic3r/Polygon.hpp" +#include "libslic3r/Fill/FillBase.hpp" +#include "libslic3r/PrintConfig.hpp" +#include "libslic3r/Polyline.hpp" #include "libslic3r/Geometry.hpp" #include "libslic3r/Fill/FillRectilinear.hpp" #include "libslic3r/Surface.hpp" +#include +#include +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/Feature/Interlocking/VoxelUtils.hpp b/src/libslic3r/Feature/Interlocking/VoxelUtils.hpp index 0348b69598..dc571c06ea 100644 --- a/src/libslic3r/Feature/Interlocking/VoxelUtils.hpp +++ b/src/libslic3r/Feature/Interlocking/VoxelUtils.hpp @@ -4,8 +4,13 @@ #ifndef UTILS_VOXEL_UTILS_H #define UTILS_VOXEL_UTILS_H +#include +#include #include +#include +#include "libslic3r/Point.hpp" +#include "libslic3r/libslic3r.h" #include "libslic3r/Polygon.hpp" #include "libslic3r/ExPolygon.hpp" diff --git a/src/libslic3r/FilamentGroup.cpp b/src/libslic3r/FilamentGroup.cpp index 07a4cc2449..5536a13282 100644 --- a/src/libslic3r/FilamentGroup.cpp +++ b/src/libslic3r/FilamentGroup.cpp @@ -1,11 +1,34 @@ #include "FilamentGroup.hpp" +#include "FilamentGroupUtils.hpp" #include "GCode/ToolOrderUtils.hpp" #include "FlushVolPredictor.hpp" +#include "MultiNozzleUtils.hpp" +#include "PrintConfig.hpp" +#include "libslic3r.h" #include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include #include #include +#include #include #include +#include +#include +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/FilamentGroup.hpp b/src/libslic3r/FilamentGroup.hpp index 9172685bee..b090a22fe0 100644 --- a/src/libslic3r/FilamentGroup.hpp +++ b/src/libslic3r/FilamentGroup.hpp @@ -2,14 +2,21 @@ #define FILAMENT_GROUP_HPP #include +#include #include #include +#include #include #include +#include +#include +#include #include #include #include "GCode/ToolOrderUtils.hpp" #include "FilamentGroupUtils.hpp" +#include "PrintConfig.hpp" +#include "MultiNozzleUtils.hpp" const static int DEFAULT_CLUSTER_SIZE = 16; diff --git a/src/libslic3r/FilamentGroupUtils.cpp b/src/libslic3r/FilamentGroupUtils.cpp index c0cd747025..7402341806 100644 --- a/src/libslic3r/FilamentGroupUtils.cpp +++ b/src/libslic3r/FilamentGroupUtils.cpp @@ -1,6 +1,22 @@ #include "FilamentGroupUtils.hpp" +#include +#include +#include +#include +#include +#include "PrintConfig.hpp" +#include "Config.hpp" +#include +#include +#include "libslic3r.h" +#include "MultiNozzleUtils.hpp" #include +#include #include +#include +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/FilamentGroupUtils.hpp b/src/libslic3r/FilamentGroupUtils.hpp index f0865a93c6..a73a562e90 100644 --- a/src/libslic3r/FilamentGroupUtils.hpp +++ b/src/libslic3r/FilamentGroupUtils.hpp @@ -1,6 +1,9 @@ #ifndef FILAMENT_GROUP_UTILS_HPP #define FILAMENT_GROUP_UTILS_HPP +#include +#include +#include #include #include #include diff --git a/src/libslic3r/FilamentMixer.cpp b/src/libslic3r/FilamentMixer.cpp index 66640498e6..51952c94c9 100644 --- a/src/libslic3r/FilamentMixer.cpp +++ b/src/libslic3r/FilamentMixer.cpp @@ -5,12 +5,17 @@ #include #include #include +#include #include +#include #include #include #include #include +#include +#include +#include #include "ColorDecomposeRecipe.hpp" #include "FilamentMixerModel.hpp" diff --git a/src/libslic3r/FilamentMixer.hpp b/src/libslic3r/FilamentMixer.hpp index 81ddd29e46..5ea4484437 100644 --- a/src/libslic3r/FilamentMixer.hpp +++ b/src/libslic3r/FilamentMixer.hpp @@ -1,6 +1,7 @@ #ifndef SLIC3R_FILAMENT_MIXER_HPP #define SLIC3R_FILAMENT_MIXER_HPP +#include #include #include #include diff --git a/src/libslic3r/FileParserError.hpp b/src/libslic3r/FileParserError.hpp index b7e63d84e0..4777ee8a79 100644 --- a/src/libslic3r/FileParserError.hpp +++ b/src/libslic3r/FileParserError.hpp @@ -1,8 +1,10 @@ #ifndef slic3r_FileParserError_hpp_ #define slic3r_FileParserError_hpp_ +#include "Exception.hpp" #include "libslic3r.h" +#include #include #include #include diff --git a/src/libslic3r/Fill/Fill.cpp b/src/libslic3r/Fill/Fill.cpp index a09c69fc5e..505081ab79 100644 --- a/src/libslic3r/Fill/Fill.cpp +++ b/src/libslic3r/Fill/Fill.cpp @@ -1,6 +1,19 @@ +#include #include +#include +#include +#include +#include +#include +#include +#include #include #include +#include +#include +#include +#include +#include #include "../ClipperUtils.hpp" #include "../Geometry.hpp" @@ -10,14 +23,23 @@ #include "../Surface.hpp" #include "AABBTreeLines.hpp" +#include "libslic3r/Config.hpp" +#include "libslic3r/ExPolygon.hpp" +#include "libslic3r/BoundingBox.hpp" #include "ExtrusionEntity.hpp" #include "Fill.hpp" +#include "libslic3r/Fill/FillBase.hpp" #include "FillRectilinear.hpp" #include "FillLightning.hpp" #include "FillConcentricInternal.hpp" #include "FillTpmsD.hpp" #include "FillTpmsFK.hpp" #include "FillConcentric.hpp" +#include "libslic3r/Flow.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/Line.hpp" +#include "libslic3r/Polygon.hpp" +#include "libslic3r/Polyline.hpp" #include "libslic3r.h" namespace Slic3r { diff --git a/src/libslic3r/Fill/Fill.hpp b/src/libslic3r/Fill/Fill.hpp index b183cf0253..138321fd0a 100644 --- a/src/libslic3r/Fill/Fill.hpp +++ b/src/libslic3r/Fill/Fill.hpp @@ -1,9 +1,11 @@ #ifndef slic3r_Fill_hpp_ #define slic3r_Fill_hpp_ +#include #include #include #include +#include #include "../libslic3r.h" #include "../PrintConfig.hpp" diff --git a/src/libslic3r/Fill/Fill3DHoneycomb.cpp b/src/libslic3r/Fill/Fill3DHoneycomb.cpp index ad5f8918fd..5a390fa517 100644 --- a/src/libslic3r/Fill/Fill3DHoneycomb.cpp +++ b/src/libslic3r/Fill/Fill3DHoneycomb.cpp @@ -1,8 +1,20 @@ #include "../ClipperUtils.hpp" #include "../ShortestPath.hpp" #include "../Surface.hpp" +#include "libslic3r/ExPolygon.hpp" +#include "libslic3r/BoundingBox.hpp" #include "FillBase.hpp" #include "FillCornerSmoothing.hpp" +#include "libslic3r/libslic3r.h" +#include +#include +#include +#include "libslic3r/Point.hpp" +#include +#include +#include +#include "libslic3r/Polyline.hpp" +#include #include "Fill3DHoneycomb.hpp" namespace Slic3r { diff --git a/src/libslic3r/Fill/Fill3DHoneycomb.hpp b/src/libslic3r/Fill/Fill3DHoneycomb.hpp index 2d6664ddf4..2ad6f79a7c 100644 --- a/src/libslic3r/Fill/Fill3DHoneycomb.hpp +++ b/src/libslic3r/Fill/Fill3DHoneycomb.hpp @@ -2,10 +2,14 @@ #define slic3r_Fill3DHoneycomb_hpp_ #include +#include #include "../libslic3r.h" +#include "libslic3r/ExPolygon.hpp" #include "FillBase.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/Polyline.hpp" namespace Slic3r { diff --git a/src/libslic3r/Fill/FillAdaptive.cpp b/src/libslic3r/Fill/FillAdaptive.cpp index 809eddb218..927e2c86a3 100644 --- a/src/libslic3r/Fill/FillAdaptive.cpp +++ b/src/libslic3r/Fill/FillAdaptive.cpp @@ -6,18 +6,40 @@ #include "../Layer.hpp" #include "../Print.hpp" #include "../ShortestPath.hpp" +#include "libslic3r/BoundingBox.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/Flow.hpp" +#include "libslic3r/PrintConfig.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/Polyline.hpp" +#include "libslic3r/Line.hpp" +#include "libslic3r/Fill/FillBase.hpp" #include "FillAdaptive.hpp" // for indexed_triangle_set +#include +#include #include +#include +#include +#include +#include +#include +#include #include #include #include #include +#include +#include +#include #include +#include #include +#include +#include // Boost pool: Don't use mutexes to synchronize memory allocation. #define BOOST_POOL_NO_MT diff --git a/src/libslic3r/Fill/FillAdaptive.hpp b/src/libslic3r/Fill/FillAdaptive.hpp index de0768b26e..9b424133a2 100644 --- a/src/libslic3r/Fill/FillAdaptive.hpp +++ b/src/libslic3r/Fill/FillAdaptive.hpp @@ -11,7 +11,17 @@ #ifndef slic3r_FillAdaptive_hpp_ #define slic3r_FillAdaptive_hpp_ +#include "libslic3r/BoundingBox.hpp" +#include "libslic3r/ExPolygon.hpp" #include "FillBase.hpp" +#include +#include +#include +#include +#include "libslic3r/Point.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/Polyline.hpp" +#include "libslic3r/Line.hpp" struct indexed_triangle_set; diff --git a/src/libslic3r/Fill/FillBase.cpp b/src/libslic3r/Fill/FillBase.cpp index d0126e9cb8..91a3bb42af 100644 --- a/src/libslic3r/Fill/FillBase.cpp +++ b/src/libslic3r/Fill/FillBase.cpp @@ -1,7 +1,16 @@ +#include +#include +#include +#include +#include +#include #include #include #include +#include +#include +#include #include "../ClipperUtils.hpp" #include "../EdgeGrid.hpp" #include "../Geometry.hpp" @@ -13,6 +22,12 @@ #include "../VariableWidth.hpp" #include "FillBase.hpp" +#include "libslic3r/Exception.hpp" +#include "libslic3r/Config.hpp" +#include "libslic3r/ExPolygon.hpp" +#include "libslic3r/ExtrusionEntity.hpp" +#include "libslic3r/ExtrusionEntityCollection.hpp" +#include "libslic3r/BoundingBox.hpp" #include "FillConcentric.hpp" #include "FillSpiralInset.hpp" #include "FillHoneycomb.hpp" @@ -28,6 +43,11 @@ // BBS: new infill pattern header #include "FillConcentricInternal.hpp" #include "FillCrossHatch.hpp" +#include "libslic3r/Polyline.hpp" +#include "libslic3r/ShortestPath.hpp" +#include "libslic3r/Line.hpp" +#include "libslic3r/Polygon.hpp" +#include "libslic3r/Utils.hpp" // #define INFILL_DEBUG_OUTPUT namespace Slic3r { diff --git a/src/libslic3r/Fill/FillBase.hpp b/src/libslic3r/Fill/FillBase.hpp index d50c29b332..0ccce102ad 100644 --- a/src/libslic3r/Fill/FillBase.hpp +++ b/src/libslic3r/Fill/FillBase.hpp @@ -2,12 +2,18 @@ #define slic3r_FillBase_hpp_ #include +#include +#include +#include #include #include #include #include +#include #include +#include +#include #include "../libslic3r.h" #include "../BoundingBox.hpp" @@ -20,6 +26,8 @@ #include "../ExtrusionEntity.hpp" #include "../ExtrusionEntityCollection.hpp" #include "../ShortestPath.hpp" +#include "libslic3r/Polyline.hpp" +#include "libslic3r/Polygon.hpp" namespace Slic3r { diff --git a/src/libslic3r/Fill/FillConcentric.cpp b/src/libslic3r/Fill/FillConcentric.cpp index 044fee042e..6a70200b34 100644 --- a/src/libslic3r/Fill/FillConcentric.cpp +++ b/src/libslic3r/Fill/FillConcentric.cpp @@ -5,8 +5,21 @@ #include "Arachne/WallToolPaths.hpp" #include "FillConcentric.hpp" +#include "libslic3r/Fill/FillBase.hpp" +#include "libslic3r/BoundingBox.hpp" +#include "libslic3r/Arachne/utils/ExtrusionLine.hpp" #include "FillCornerSmoothing.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/Polyline.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/Polygon.hpp" +#include +#include "libslic3r/PrintConfig.hpp" +#include +#include #include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/Fill/FillConcentric.hpp b/src/libslic3r/Fill/FillConcentric.hpp index 56040d848d..43273131db 100644 --- a/src/libslic3r/Fill/FillConcentric.hpp +++ b/src/libslic3r/Fill/FillConcentric.hpp @@ -1,7 +1,11 @@ #ifndef slic3r_FillConcentric_hpp_ #define slic3r_FillConcentric_hpp_ +#include "libslic3r/ExPolygon.hpp" #include "FillBase.hpp" +#include +#include "libslic3r/Point.hpp" +#include "libslic3r/Polyline.hpp" namespace Slic3r { diff --git a/src/libslic3r/Fill/FillConcentricInternal.cpp b/src/libslic3r/Fill/FillConcentricInternal.cpp index d565992ea1..49b21935f3 100644 --- a/src/libslic3r/Fill/FillConcentricInternal.cpp +++ b/src/libslic3r/Fill/FillConcentricInternal.cpp @@ -3,9 +3,22 @@ #include "../Surface.hpp" #include "../VariableWidth.hpp" #include "Arachne/WallToolPaths.hpp" +#include "libslic3r/Fill/FillBase.hpp" +#include "libslic3r/ExtrusionEntity.hpp" +#include "libslic3r/Polyline.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/Polygon.hpp" +#include "libslic3r/Arachne/utils/ExtrusionLine.hpp" +#include "libslic3r/ExtrusionEntityCollection.hpp" #include "FillConcentricInternal.hpp" +#include +#include +#include #include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/Fill/FillConcentricInternal.hpp b/src/libslic3r/Fill/FillConcentricInternal.hpp index 2c93eb5ee9..f78e9e1cb1 100644 --- a/src/libslic3r/Fill/FillConcentricInternal.hpp +++ b/src/libslic3r/Fill/FillConcentricInternal.hpp @@ -1,6 +1,7 @@ #ifndef slic3r_FillConcentricInternal_hpp_ #define slic3r_FillConcentricInternal_hpp_ +#include "libslic3r/ExtrusionEntity.hpp" #include "FillBase.hpp" namespace Slic3r { diff --git a/src/libslic3r/Fill/FillCornerSmoothing.cpp b/src/libslic3r/Fill/FillCornerSmoothing.cpp index dbce39d572..f87de98293 100644 --- a/src/libslic3r/Fill/FillCornerSmoothing.cpp +++ b/src/libslic3r/Fill/FillCornerSmoothing.cpp @@ -1,6 +1,16 @@ +#include #include +#include +#include +#include +#include +#include #include "FillCornerSmoothing.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/Polyline.hpp" +#include "libslic3r/Polygon.hpp" namespace Slic3r { diff --git a/src/libslic3r/Fill/FillCornerSmoothing.hpp b/src/libslic3r/Fill/FillCornerSmoothing.hpp index 7f2ead229a..b59cf26237 100644 --- a/src/libslic3r/Fill/FillCornerSmoothing.hpp +++ b/src/libslic3r/Fill/FillCornerSmoothing.hpp @@ -4,6 +4,7 @@ #include #include #include +#include #include #include "../libslic3r.h" diff --git a/src/libslic3r/Fill/FillCrossHatch.cpp b/src/libslic3r/Fill/FillCrossHatch.cpp index 98be5ef46b..c70a8a5320 100644 --- a/src/libslic3r/Fill/FillCrossHatch.cpp +++ b/src/libslic3r/Fill/FillCrossHatch.cpp @@ -1,9 +1,17 @@ #include "../ClipperUtils.hpp" #include "../ShortestPath.hpp" #include "../Surface.hpp" +#include #include +#include +#include +#include "libslic3r/ExPolygon.hpp" +#include "libslic3r/BoundingBox.hpp" #include "FillBase.hpp" #include "FillCornerSmoothing.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/Polyline.hpp" #include "FillCrossHatch.hpp" namespace Slic3r { diff --git a/src/libslic3r/Fill/FillCrossHatch.hpp b/src/libslic3r/Fill/FillCrossHatch.hpp index 34c46116eb..0fdc16644a 100644 --- a/src/libslic3r/Fill/FillCrossHatch.hpp +++ b/src/libslic3r/Fill/FillCrossHatch.hpp @@ -2,10 +2,14 @@ #define slic3r_FillCrossHatch_hpp_ #include +#include #include "../libslic3r.h" +#include "libslic3r/ExPolygon.hpp" #include "FillBase.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/Polyline.hpp" namespace Slic3r { diff --git a/src/libslic3r/Fill/FillGyroid.cpp b/src/libslic3r/Fill/FillGyroid.cpp index c9a108573d..de748d4893 100644 --- a/src/libslic3r/Fill/FillGyroid.cpp +++ b/src/libslic3r/Fill/FillGyroid.cpp @@ -4,9 +4,19 @@ #include "../Surface.hpp" #include #include +#include #include #include +#include "libslic3r/BoundingBox.hpp" +#include +#include "libslic3r/Execution/ExecutionTBB.hpp" +#include +#include +#include "libslic3r/ExPolygon.hpp" #include "FillBase.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/Polyline.hpp" #include "FillGyroid.hpp" // --------------------------------------------------------------------------- diff --git a/src/libslic3r/Fill/FillGyroid.hpp b/src/libslic3r/Fill/FillGyroid.hpp index 751a7c2570..2599662403 100644 --- a/src/libslic3r/Fill/FillGyroid.hpp +++ b/src/libslic3r/Fill/FillGyroid.hpp @@ -3,7 +3,11 @@ #include "../libslic3r.h" +#include "libslic3r/ExPolygon.hpp" #include "FillBase.hpp" +#include +#include "libslic3r/Point.hpp" +#include "libslic3r/Polyline.hpp" namespace Slic3r { diff --git a/src/libslic3r/Fill/FillHoneycomb.cpp b/src/libslic3r/Fill/FillHoneycomb.cpp index 82679541da..594ff3fbba 100644 --- a/src/libslic3r/Fill/FillHoneycomb.cpp +++ b/src/libslic3r/Fill/FillHoneycomb.cpp @@ -2,7 +2,17 @@ #include "../ShortestPath.hpp" #include "../Surface.hpp" +#include "libslic3r/Fill/FillBase.hpp" +#include "libslic3r/ExPolygon.hpp" +#include "libslic3r/BoundingBox.hpp" #include "FillCornerSmoothing.hpp" +#include +#include "libslic3r/Point.hpp" +#include "libslic3r/Polyline.hpp" +#include "libslic3r/libslic3r.h" +#include +#include +#include #include "FillHoneycomb.hpp" namespace Slic3r { diff --git a/src/libslic3r/Fill/FillHoneycomb.hpp b/src/libslic3r/Fill/FillHoneycomb.hpp index 55be423854..fd1fe039de 100644 --- a/src/libslic3r/Fill/FillHoneycomb.hpp +++ b/src/libslic3r/Fill/FillHoneycomb.hpp @@ -1,11 +1,17 @@ #ifndef slic3r_FillHoneycomb_hpp_ #define slic3r_FillHoneycomb_hpp_ +#include #include +#include +#include #include "../libslic3r.h" +#include "libslic3r/ExPolygon.hpp" #include "FillBase.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/Polyline.hpp" namespace Slic3r { diff --git a/src/libslic3r/Fill/FillLightning.cpp b/src/libslic3r/Fill/FillLightning.cpp index 77031b42e0..9f6200a88e 100644 --- a/src/libslic3r/Fill/FillLightning.cpp +++ b/src/libslic3r/Fill/FillLightning.cpp @@ -1,10 +1,18 @@ #include "../ClipperUtils.hpp" #include "../Print.hpp" #include "../ShortestPath.hpp" +#include "libslic3r/ExPolygon.hpp" +#include "libslic3r/Fill/Lightning/Layer.hpp" #include "FillBase.hpp" #include "FillCornerSmoothing.hpp" #include "FillLightning.hpp" #include "Lightning/Generator.hpp" +#include +#include "libslic3r/Point.hpp" +#include "libslic3r/Polyline.hpp" +#include "libslic3r/libslic3r.h" +#include +#include namespace Slic3r::FillLightning { diff --git a/src/libslic3r/Fill/FillLightning.hpp b/src/libslic3r/Fill/FillLightning.hpp index 74aa159b0b..8ad15b5c2a 100644 --- a/src/libslic3r/Fill/FillLightning.hpp +++ b/src/libslic3r/Fill/FillLightning.hpp @@ -1,7 +1,13 @@ #ifndef slic3r_FillLightning_hpp_ #define slic3r_FillLightning_hpp_ +#include "libslic3r/ExPolygon.hpp" #include "FillBase.hpp" +#include +#include +#include +#include "libslic3r/Point.hpp" +#include "libslic3r/Polyline.hpp" namespace Slic3r { diff --git a/src/libslic3r/Fill/FillLine.cpp b/src/libslic3r/Fill/FillLine.cpp index 5d548e5dbb..f46c102131 100644 --- a/src/libslic3r/Fill/FillLine.cpp +++ b/src/libslic3r/Fill/FillLine.cpp @@ -2,6 +2,17 @@ #include "../ExPolygon.hpp" #include "../ShortestPath.hpp" #include "../Surface.hpp" +#include "libslic3r/Fill/FillBase.hpp" +#include +#include "libslic3r/Point.hpp" +#include "libslic3r/Polyline.hpp" +#include +#include "libslic3r/libslic3r.h" +#include "libslic3r/BoundingBox.hpp" +#include "libslic3r/Line.hpp" +#include +#include +#include #include "FillLine.hpp" diff --git a/src/libslic3r/Fill/FillLine.hpp b/src/libslic3r/Fill/FillLine.hpp index 4ad9ca49a4..73633716dc 100644 --- a/src/libslic3r/Fill/FillLine.hpp +++ b/src/libslic3r/Fill/FillLine.hpp @@ -3,7 +3,12 @@ #include "../libslic3r.h" +#include "libslic3r/ExPolygon.hpp" #include "FillBase.hpp" +#include +#include "libslic3r/Point.hpp" +#include "libslic3r/Polyline.hpp" +#include "libslic3r/Line.hpp" namespace Slic3r { diff --git a/src/libslic3r/Fill/FillPlanePath.cpp b/src/libslic3r/Fill/FillPlanePath.cpp index 577aef0600..2ee2b1ef3a 100644 --- a/src/libslic3r/Fill/FillPlanePath.cpp +++ b/src/libslic3r/Fill/FillPlanePath.cpp @@ -2,7 +2,21 @@ #include "../ShortestPath.hpp" #include "../Surface.hpp" +#include "libslic3r/BoundingBox.hpp" +#include "libslic3r/Fill/FillBase.hpp" +#include "libslic3r/ExPolygon.hpp" +#include "libslic3r/ExtrusionEntity.hpp" #include "FillCornerSmoothing.hpp" +#include "libslic3r/Point.hpp" +#include +#include "libslic3r/Polyline.hpp" +#include "libslic3r/PrintConfig.hpp" +#include "libslic3r/libslic3r.h" +#include +#include +#include +#include +#include #include "FillPlanePath.hpp" namespace Slic3r { diff --git a/src/libslic3r/Fill/FillPlanePath.hpp b/src/libslic3r/Fill/FillPlanePath.hpp index a1e9068ca9..d24d9df9f4 100644 --- a/src/libslic3r/Fill/FillPlanePath.hpp +++ b/src/libslic3r/Fill/FillPlanePath.hpp @@ -1,11 +1,17 @@ #ifndef slic3r_FillPlanePath_hpp_ #define slic3r_FillPlanePath_hpp_ +#include +#include #include +#include #include "../libslic3r.h" +#include "libslic3r/ExPolygon.hpp" #include "FillBase.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/Polyline.hpp" namespace Slic3r { diff --git a/src/libslic3r/Fill/FillRectilinear.cpp b/src/libslic3r/Fill/FillRectilinear.cpp index b4373d3ea6..5951e154e9 100644 --- a/src/libslic3r/Fill/FillRectilinear.cpp +++ b/src/libslic3r/Fill/FillRectilinear.cpp @@ -1,3 +1,8 @@ +#include +#include +#include +#include +#include #include #include @@ -10,6 +15,9 @@ #include #include #include +#include +#include +#include #include "../ClipperUtils.hpp" #include "../ExPolygon.hpp" @@ -18,7 +26,17 @@ #include "../ShortestPath.hpp" #include "../VariableWidth.hpp" +#include "libslic3r/BoundingBox.hpp" +#include "libslic3r/Fill/FillBase.hpp" +#include "libslic3r/ExtrusionEntity.hpp" +#include "libslic3r/ExtrusionEntityCollection.hpp" #include "FillCornerSmoothing.hpp" +#include "libslic3r/Polygon.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/Polyline.hpp" +#include "libslic3r/Utils.hpp" +#include "libslic3r/PrintConfig.hpp" +#include "libslic3r/Flow.hpp" #include "FillRectilinear.hpp" // #define SLIC3R_DEBUG diff --git a/src/libslic3r/Fill/FillRectilinear.hpp b/src/libslic3r/Fill/FillRectilinear.hpp index adb9ef5131..a4453ad2d0 100644 --- a/src/libslic3r/Fill/FillRectilinear.hpp +++ b/src/libslic3r/Fill/FillRectilinear.hpp @@ -3,7 +3,18 @@ #include "../libslic3r.h" +#include "libslic3r/BoundingBox.hpp" +#include "libslic3r/ExtrusionEntity.hpp" +#include "libslic3r/ExPolygon.hpp" #include "FillBase.hpp" +#include "libslic3r/Polyline.hpp" +#include +#include +#include +#include +#include "libslic3r/Flow.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/Polygon.hpp" namespace Slic3r { diff --git a/src/libslic3r/Fill/FillSpiralInset.cpp b/src/libslic3r/Fill/FillSpiralInset.cpp index e6323c2572..8f663df340 100644 --- a/src/libslic3r/Fill/FillSpiralInset.cpp +++ b/src/libslic3r/Fill/FillSpiralInset.cpp @@ -3,12 +3,25 @@ #include "../Surface.hpp" #include "../VariableWidth.hpp" #include "Arachne/WallToolPaths.hpp" +#include "libslic3r/Polygon.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/Polyline.hpp" +#include "libslic3r/Arachne/utils/ExtrusionLine.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/Fill/FillBase.hpp" +#include "libslic3r/PrintConfig.hpp" +#include "libslic3r/BoundingBox.hpp" #include "FillSpiralInset.hpp" #include +#include #include +#include #include +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/Fill/FillSpiralInset.hpp b/src/libslic3r/Fill/FillSpiralInset.hpp index eb799ec2f3..8b95657b4b 100644 --- a/src/libslic3r/Fill/FillSpiralInset.hpp +++ b/src/libslic3r/Fill/FillSpiralInset.hpp @@ -1,7 +1,11 @@ #ifndef slic3r_FillSpiralInset_hpp_ #define slic3r_FillSpiralInset_hpp_ +#include "libslic3r/ExPolygon.hpp" #include "FillBase.hpp" +#include +#include "libslic3r/Point.hpp" +#include "libslic3r/Polyline.hpp" namespace Slic3r { diff --git a/src/libslic3r/Fill/FillTpmsD.cpp b/src/libslic3r/Fill/FillTpmsD.cpp index 06e0302e8d..bb1a338691 100644 --- a/src/libslic3r/Fill/FillTpmsD.cpp +++ b/src/libslic3r/Fill/FillTpmsD.cpp @@ -1,10 +1,15 @@ #include #include +#include +#include +#include #include //#include #include "../ClipperUtils.hpp" #include "../ShortestPath.hpp" +#include "libslic3r/Polyline.hpp" +#include "libslic3r/ExPolygon.hpp" #include "libslic3r/BoundingBox.hpp" #include "libslic3r/Fill/FillBase.hpp" #include "libslic3r/Point.hpp" diff --git a/src/libslic3r/Fill/FillTpmsFK.cpp b/src/libslic3r/Fill/FillTpmsFK.cpp index 66ed1cbc84..a48a63f3d0 100644 --- a/src/libslic3r/Fill/FillTpmsFK.cpp +++ b/src/libslic3r/Fill/FillTpmsFK.cpp @@ -1,8 +1,17 @@ #include "../ClipperUtils.hpp" #include "../MarchingSquares.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/BoundingBox.hpp" +#include "libslic3r/Polyline.hpp" +#include "libslic3r/Execution/ExecutionTBB.hpp" +#include "libslic3r/Fill/FillBase.hpp" +#include "libslic3r/ExPolygon.hpp" #include "FillTpmsFK.hpp" #include #include +#include +#include #include #include #include diff --git a/src/libslic3r/Fill/Lightning/DistanceField.cpp b/src/libslic3r/Fill/Lightning/DistanceField.cpp index 65da94b839..73d74cef03 100644 --- a/src/libslic3r/Fill/Lightning/DistanceField.cpp +++ b/src/libslic3r/Fill/Lightning/DistanceField.cpp @@ -4,8 +4,22 @@ #include "DistanceField.hpp" //Class we're implementing. #include "../FillRectilinear.hpp" #include "../../ClipperUtils.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/Polygon.hpp" +#include "libslic3r/BoundingBox.hpp" +#include "libslic3r/ExPolygon.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/Line.hpp" +#include +#include +#include +#include +#include +#include +#include #include +#include #ifdef LIGHTNING_DISTANCE_FIELD_DEBUG_OUTPUT #include "../../SVG.hpp" diff --git a/src/libslic3r/Fill/Lightning/DistanceField.hpp b/src/libslic3r/Fill/Lightning/DistanceField.hpp index 007ac235e5..737c432824 100644 --- a/src/libslic3r/Fill/Lightning/DistanceField.hpp +++ b/src/libslic3r/Fill/Lightning/DistanceField.hpp @@ -7,6 +7,13 @@ #include "../../BoundingBox.hpp" #include "../../Point.hpp" #include "../../Polygon.hpp" +#include "libslic3r/libslic3r.h" +#include +#include +#include +#include +#include +#include //#define LIGHTNING_DISTANCE_FIELD_DEBUG_OUTPUT diff --git a/src/libslic3r/Fill/Lightning/Generator.cpp b/src/libslic3r/Fill/Lightning/Generator.cpp index c638610aa5..c35eb3250f 100644 --- a/src/libslic3r/Fill/Lightning/Generator.cpp +++ b/src/libslic3r/Fill/Lightning/Generator.cpp @@ -2,6 +2,15 @@ //CuraEngine is released under the terms of the AGPLv3 or higher. #include "Generator.hpp" +#include "libslic3r/SVG.hpp" +#include "libslic3r/BoundingBox.hpp" +#include "libslic3r/PrintConfig.hpp" +#include "libslic3r/Flow.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/Polygon.hpp" +#include "libslic3r/Surface.hpp" +#include "libslic3r/Fill/Lightning/Layer.hpp" +#include "libslic3r/EdgeGrid.hpp" #include "TreeNode.hpp" #include "../../ClipperUtils.hpp" @@ -9,6 +18,18 @@ #include "../../Print.hpp" #include "ExPolygon.hpp" +#include +#include +#include +#include +#include +#include +#include +#include "libslic3r/libslic3r.h" +#include +#include +#include +#include /* Possible future tasks/optimizations,etc.: * - Improve connecting heuristic to favor connecting to shorter trees diff --git a/src/libslic3r/Fill/Lightning/Generator.hpp b/src/libslic3r/Fill/Lightning/Generator.hpp index 79110fb8dd..18be848b9e 100644 --- a/src/libslic3r/Fill/Lightning/Generator.hpp +++ b/src/libslic3r/Fill/Lightning/Generator.hpp @@ -4,8 +4,12 @@ #ifndef LIGHTNING_GENERATOR_H #define LIGHTNING_GENERATOR_H +#include "libslic3r/BoundingBox.hpp" #include "Layer.hpp" +#include "libslic3r/Polygon.hpp" +#include "libslic3r/libslic3r.h" +#include #include #include #include diff --git a/src/libslic3r/Fill/Lightning/Layer.cpp b/src/libslic3r/Fill/Lightning/Layer.cpp index 4a30a95f45..f461888a14 100644 --- a/src/libslic3r/Fill/Lightning/Layer.cpp +++ b/src/libslic3r/Fill/Lightning/Layer.cpp @@ -3,16 +3,31 @@ #include "Layer.hpp" //The class we're implementing. +#include "libslic3r/BoundingBox.hpp" #include "DistanceField.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/Polygon.hpp" +#include "libslic3r/EdgeGrid.hpp" +#include "libslic3r/Line.hpp" +#include "libslic3r/Polyline.hpp" #include "TreeNode.hpp" #include "../../ClipperUtils.hpp" #include "../../Geometry.hpp" #include "Utils.hpp" +#include "libslic3r/libslic3r.h" +#include +#include +#include +#include +#include +#include #include #include #include +#include +#include namespace Slic3r::FillLightning { diff --git a/src/libslic3r/Fill/Lightning/Layer.hpp b/src/libslic3r/Fill/Lightning/Layer.hpp index e8c0a38b4d..378dc354b2 100644 --- a/src/libslic3r/Fill/Lightning/Layer.hpp +++ b/src/libslic3r/Fill/Lightning/Layer.hpp @@ -6,7 +6,12 @@ #include "../../EdgeGrid.hpp" #include "../../Polygon.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/BoundingBox.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/Polyline.hpp" +#include #include #include #include diff --git a/src/libslic3r/Fill/Lightning/TreeNode.cpp b/src/libslic3r/Fill/Lightning/TreeNode.cpp index c57180e530..9a08242392 100644 --- a/src/libslic3r/Fill/Lightning/TreeNode.cpp +++ b/src/libslic3r/Fill/Lightning/TreeNode.cpp @@ -4,6 +4,22 @@ #include "TreeNode.hpp" #include "../../Geometry.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/Point.hpp" +#include +#include +#include +#include "libslic3r/Polygon.hpp" +#include "libslic3r/EdgeGrid.hpp" +#include +#include +#include +#include +#include +#include "libslic3r/Line.hpp" +#include "libslic3r/Polyline.hpp" +#include +#include namespace Slic3r::FillLightning { diff --git a/src/libslic3r/Fill/Lightning/TreeNode.hpp b/src/libslic3r/Fill/Lightning/TreeNode.hpp index 95559524ba..c82ca3f2b6 100644 --- a/src/libslic3r/Fill/Lightning/TreeNode.hpp +++ b/src/libslic3r/Fill/Lightning/TreeNode.hpp @@ -4,6 +4,8 @@ #ifndef LIGHTNING_TREE_NODE_H #define LIGHTNING_TREE_NODE_H +#include +#include #include #include #include @@ -12,7 +14,11 @@ #include "../../EdgeGrid.hpp" #include "../../Polygon.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/Polyline.hpp" +#include "libslic3r/BoundingBox.hpp" #include "SVG.hpp" +#include "libslic3r/libslic3r.h" //#define LIGHTNING_TREE_NODE_DEBUG_OUTPUT diff --git a/src/libslic3r/Flow.cpp b/src/libslic3r/Flow.cpp index 80912362ce..13ee73973e 100644 --- a/src/libslic3r/Flow.cpp +++ b/src/libslic3r/Flow.cpp @@ -1,10 +1,15 @@ #include "Flow.hpp" +#include "Exception.hpp" +#include "Config.hpp" #include "I18N.hpp" #include "Print.hpp" +#include "libslic3r.h" #include #include #include +#include +#include // Mark string for localization and translate. #define L(s) Slic3r::I18N::translate(s) diff --git a/src/libslic3r/Flow.hpp b/src/libslic3r/Flow.hpp index 79cb1b324d..14d20a41c7 100644 --- a/src/libslic3r/Flow.hpp +++ b/src/libslic3r/Flow.hpp @@ -5,6 +5,8 @@ #include "Config.hpp" #include "Exception.hpp" #include "ExtrusionEntity.hpp" +#include +#include namespace Slic3r { diff --git a/src/libslic3r/FlushVolCalc.cpp b/src/libslic3r/FlushVolCalc.cpp index 635328f5ab..daeaf587c6 100644 --- a/src/libslic3r/FlushVolCalc.cpp +++ b/src/libslic3r/FlushVolCalc.cpp @@ -1,5 +1,8 @@ +#include #include #include +#include +#include "FlushVolPredictor.hpp" #include "slic3r/Utils/ColorSpaceConvert.hpp" #include "Utils.hpp" #include "FlushVolCalc.hpp" diff --git a/src/libslic3r/FlushVolPredictor.cpp b/src/libslic3r/FlushVolPredictor.cpp index dc39284b5f..e18b726c1f 100644 --- a/src/libslic3r/FlushVolPredictor.cpp +++ b/src/libslic3r/FlushVolPredictor.cpp @@ -1,9 +1,19 @@ #include "FlushVolPredictor.hpp" #include "Utils.hpp" +#include +#include +#include #include +#include +#include +#include #include #include #include +#include +#include +#include +#include namespace FlushPredict { diff --git a/src/libslic3r/Format/3mf.cpp b/src/libslic3r/Format/3mf.cpp index 738f1f5f6f..2f457f634d 100644 --- a/src/libslic3r/Format/3mf.cpp +++ b/src/libslic3r/Format/3mf.cpp @@ -10,10 +10,37 @@ #include "../Time.hpp" #include "../I18N.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/TriangleMesh.hpp" +#include "libslic3r/Slicing.hpp" +#include "libslic3r/SLA/SupportPoint.hpp" +#include "libslic3r/SLA/Hollowing.hpp" +#include "libslic3r/Config.hpp" +#include "libslic3r_version.h" +#include "libslic3r/PrintConfig.hpp" #include "3mf.hpp" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include #include +#include +#include +#include #include #include @@ -28,6 +55,9 @@ #include #include #include +#include +#include +#include namespace pt = boost::property_tree; #include diff --git a/src/libslic3r/Format/3mf.hpp b/src/libslic3r/Format/3mf.hpp index c46b4e5533..ec59aff307 100644 --- a/src/libslic3r/Format/3mf.hpp +++ b/src/libslic3r/Format/3mf.hpp @@ -1,6 +1,7 @@ #ifndef slic3r_Format_3mf_hpp_ #define slic3r_Format_3mf_hpp_ #include +#include namespace Slic3r { // PrusaFileParser is used to check 3mf file is from Prusa diff --git a/src/libslic3r/Format/AMF.cpp b/src/libslic3r/Format/AMF.cpp index c5c9904e87..abf6953855 100644 --- a/src/libslic3r/Format/AMF.cpp +++ b/src/libslic3r/Format/AMF.cpp @@ -1,4 +1,10 @@ +#include +#include +#include +#include +#include #include +#include #include #include #include @@ -16,11 +22,16 @@ #include "../Geometry.hpp" #include "../CustomGCode.hpp" #include "../LocalesUtils.hpp" +#include "libslic3r/Config.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/TriangleMesh.hpp" #include "AMF.hpp" #include #include +#include +#include namespace pt = boost::property_tree; #include diff --git a/src/libslic3r/Format/AMF.hpp b/src/libslic3r/Format/AMF.hpp index e48e424748..335d47d6fb 100644 --- a/src/libslic3r/Format/AMF.hpp +++ b/src/libslic3r/Format/AMF.hpp @@ -5,6 +5,7 @@ namespace Slic3r { class Model; class DynamicPrintConfig; +struct ConfigSubstitutionContext; // Load the content of an amf file into the given model and configuration. extern bool load_amf(const char* path, DynamicPrintConfig* config, ConfigSubstitutionContext* config_substitutions, Model* model, bool* use_inches); diff --git a/src/libslic3r/Format/AssimpImport.cpp b/src/libslic3r/Format/AssimpImport.cpp index f0ae99506a..0ab728f305 100644 --- a/src/libslic3r/Format/AssimpImport.cpp +++ b/src/libslic3r/Format/AssimpImport.cpp @@ -4,21 +4,30 @@ #include "ResourcePathUtils.hpp" #include +#include #include #include +#include #include #include +#include +#include +#include #include #include +#include #include #include #include +#include #include +#include #include #include #include +#include #include namespace Slic3r { diff --git a/src/libslic3r/Format/DRC.cpp b/src/libslic3r/Format/DRC.cpp index c07655f69b..1cf9c13565 100644 --- a/src/libslic3r/Format/DRC.cpp +++ b/src/libslic3r/Format/DRC.cpp @@ -1,3 +1,15 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include #include #include #include @@ -9,6 +21,7 @@ #include #include #include +#include using namespace draco; #include "libslic3r/Model.hpp" diff --git a/src/libslic3r/Format/OBJ.cpp b/src/libslic3r/Format/OBJ.cpp index 8242f2c0c9..db24ebec0b 100644 --- a/src/libslic3r/Format/OBJ.cpp +++ b/src/libslic3r/Format/OBJ.cpp @@ -2,15 +2,27 @@ #include "../Model.hpp" #include "../TriangleMesh.hpp" #include "../TexturePainting.hpp" +#include "libslic3r/Color.hpp" +#include "libslic3r/Point.hpp" #include "ResourcePathUtils.hpp" #include "OBJ.hpp" #include "objparser.hpp" +#include +#include +#include +#include +#include +#include +#include +#include +#include #include #include #include +#include #ifdef _WIN32 #define DIR_SEPARATOR '\\' diff --git a/src/libslic3r/Format/OBJ.hpp b/src/libslic3r/Format/OBJ.hpp index c103326af6..0767ddd87d 100644 --- a/src/libslic3r/Format/OBJ.hpp +++ b/src/libslic3r/Format/OBJ.hpp @@ -2,7 +2,14 @@ #define slic3r_Format_OBJ_hpp_ #include "libslic3r/Color.hpp" #include "objparser.hpp" +#include "libslic3r/Point.hpp" +#include +#include +#include +#include +#include #include +#include namespace Slic3r { class TriangleMesh; diff --git a/src/libslic3r/Format/ResourcePathUtils.hpp b/src/libslic3r/Format/ResourcePathUtils.hpp index d82b92bd45..eccfcba84f 100644 --- a/src/libslic3r/Format/ResourcePathUtils.hpp +++ b/src/libslic3r/Format/ResourcePathUtils.hpp @@ -2,6 +2,9 @@ #define slic3r_Format_ResourcePathUtils_hpp_ #include +#include +#include +#include #include #include #include diff --git a/src/libslic3r/Format/SL1.cpp b/src/libslic3r/Format/SL1.cpp index 5796c108e5..15589e79b4 100644 --- a/src/libslic3r/Format/SL1.cpp +++ b/src/libslic3r/Format/SL1.cpp @@ -1,13 +1,34 @@ #include "SL1.hpp" +#include "libslic3r/ExPolygon.hpp" +#include "libslic3r/Config.hpp" #include "GCode/ThumbnailData.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/Polygon.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/Utils.hpp" #include "libslic3r/Time.hpp" +#include +#include +#include +#include #include #include #include "libslic3r/Zipper.hpp" #include "libslic3r/SLAPrint.hpp" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include #include #include "libslic3r/Exception.hpp" @@ -20,10 +41,15 @@ #include "libslic3r/miniz_extension.hpp" #include "libslic3r/PNGReadWrite.hpp" #include "libslic3r/LocalesUtils.hpp" +#include "libslic3r_version.h" #include #include #include +#include +#include +#include +#include namespace marchsq { diff --git a/src/libslic3r/Format/SL1.hpp b/src/libslic3r/Format/SL1.hpp index 6fb4405c90..ad6b51f7d9 100644 --- a/src/libslic3r/Format/SL1.hpp +++ b/src/libslic3r/Format/SL1.hpp @@ -1,8 +1,17 @@ #ifndef ARCHIVETRAITS_HPP #define ARCHIVETRAITS_HPP +#include +#include +#include #include +#include +#include "libslic3r/PrintConfig.hpp" +#include "libslic3r/SLA/RasterBase.hpp" +#include "libslic3r/Config.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/Exception.hpp" #include "libslic3r/Zipper.hpp" #include "libslic3r/SLAPrint.hpp" diff --git a/src/libslic3r/Format/STEP.cpp b/src/libslic3r/Format/STEP.cpp index 8305174e73..611648bc5a 100644 --- a/src/libslic3r/Format/STEP.cpp +++ b/src/libslic3r/Format/STEP.cpp @@ -1,10 +1,30 @@ #include "../libslic3r.h" #include "../Model.hpp" #include "../TriangleMesh.hpp" +#include "libslic3r/Exception.hpp" +#include "libslic3r/Utils.hpp" +#include "libslic3r/Point.hpp" #include "libslic3r/Thread.hpp" #include "STEP.hpp" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include #include #include #include @@ -12,6 +32,8 @@ #include #include +#include +#include #ifdef _WIN32 #define DIR_SEPARATOR '\\' diff --git a/src/libslic3r/Format/STEP.hpp b/src/libslic3r/Format/STEP.hpp index 336fd79766..5563a690c8 100644 --- a/src/libslic3r/Format/STEP.hpp +++ b/src/libslic3r/Format/STEP.hpp @@ -3,16 +3,26 @@ #include "XCAFDoc_DocumentTool.hxx" #include "XCAFApp_Application.hxx" #include "XCAFDoc_ShapeTool.hxx" +#include +#include #include #include #include #include +#include +#include +#include +#include +#include +#include +#include namespace fs = boost::filesystem; namespace Slic3r { class TriangleMesh; +class Model; class ModelObject; // load step stage diff --git a/src/libslic3r/Format/STL.cpp b/src/libslic3r/Format/STL.cpp index 1888f5cd18..55489af976 100644 --- a/src/libslic3r/Format/STL.cpp +++ b/src/libslic3r/Format/STL.cpp @@ -4,7 +4,9 @@ #include "STL.hpp" +#include #include +#include #ifdef _WIN32 #define DIR_SEPARATOR '\\' diff --git a/src/libslic3r/Format/ZipperArchiveImport.cpp b/src/libslic3r/Format/ZipperArchiveImport.cpp index 657e420bbc..3f690e42da 100644 --- a/src/libslic3r/Format/ZipperArchiveImport.cpp +++ b/src/libslic3r/Format/ZipperArchiveImport.cpp @@ -1,12 +1,25 @@ #include "ZipperArchiveImport.hpp" +#include "libslic3r/Config.hpp" +#include "libslic3r/LocalesUtils.hpp" #include "libslic3r/miniz_extension.hpp" #include "libslic3r/Exception.hpp" #include "libslic3r/PrintConfig.hpp" +#include +#include +#include #include #include #include +#include +#include +#include +#include +#include +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/Format/ZipperArchiveImport.hpp b/src/libslic3r/Format/ZipperArchiveImport.hpp index adddcacd40..18cbb78209 100644 --- a/src/libslic3r/Format/ZipperArchiveImport.hpp +++ b/src/libslic3r/Format/ZipperArchiveImport.hpp @@ -1,12 +1,14 @@ #ifndef ZIPPERARCHIVEIMPORT_HPP #define ZIPPERARCHIVEIMPORT_HPP +#include #include #include #include #include +#include "libslic3r/Config.hpp" #include "libslic3r/PrintConfig.hpp" namespace Slic3r { diff --git a/src/libslic3r/Format/bbs_3mf.cpp b/src/libslic3r/Format/bbs_3mf.cpp index 160c169d69..fb4c877a04 100644 --- a/src/libslic3r/Format/bbs_3mf.cpp +++ b/src/libslic3r/Format/bbs_3mf.cpp @@ -12,10 +12,61 @@ #include "../Time.hpp" #include "../I18N.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/GCode/GCodeProcessor.hpp" +#include "libslic3r/PrintConfig.hpp" +#include "libslic3r/MultiNozzleUtils.hpp" +#include "libslic3r/TriangleMesh.hpp" +#include "libslic3r/ObjectID.hpp" +#include "libslic3r/Slicing.hpp" +#include "libslic3r/BrimEarsPoint.hpp" +#include "libslic3r/Config.hpp" +#include "libslic3r/CustomGCode.hpp" +#include "libslic3r_version.h" #include "bbs_3mf.hpp" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include #include +#include +#include +#include +#include +#include +#include +#include +#include #include #include #include @@ -39,6 +90,10 @@ #include #include #include +#include +#include +#include +#include namespace pt = boost::property_tree; diff --git a/src/libslic3r/Format/bbs_3mf.hpp b/src/libslic3r/Format/bbs_3mf.hpp index 768ae7bcfe..489870b8fc 100644 --- a/src/libslic3r/Format/bbs_3mf.hpp +++ b/src/libslic3r/Format/bbs_3mf.hpp @@ -2,9 +2,21 @@ #define BBS_3MF_hpp_ #include "../GCode/ThumbnailData.hpp" +#include "libslic3r/MultiNozzleUtils.hpp" +#include "libslic3r/Semver.hpp" #include "libslic3r/ProjectTask.hpp" #include "libslic3r/GCode/GCodeProcessor.hpp" +#include #include +#include +#include +#include +#include +#include +#include +#include +#include +#include namespace Slic3r { class Model; diff --git a/src/libslic3r/Format/objparser.cpp b/src/libslic3r/Format/objparser.cpp index c5f33a7d0a..5146a21e80 100644 --- a/src/libslic3r/Format/objparser.cpp +++ b/src/libslic3r/Format/objparser.cpp @@ -1,8 +1,16 @@ +#include +#include +#include +#include +#include #include #include #include #include +#include +#include +#include #include "objparser.hpp" diff --git a/src/libslic3r/Format/objparser.hpp b/src/libslic3r/Format/objparser.hpp index e711bdf6f4..b34c0f3bf2 100644 --- a/src/libslic3r/Format/objparser.hpp +++ b/src/libslic3r/Format/objparser.hpp @@ -6,6 +6,7 @@ #include #include #include +#include namespace ObjParser { diff --git a/src/libslic3r/Format/svg.cpp b/src/libslic3r/Format/svg.cpp index c9738c8058..7521afddb9 100644 --- a/src/libslic3r/Format/svg.cpp +++ b/src/libslic3r/Format/svg.cpp @@ -1,3 +1,5 @@ +#include "libslic3r/Point.hpp" +#include "libslic3r/Format/STEP.hpp" #include "libslic3r/ClipperUtils.hpp" #include "../libslic3r.h" #include "../Model.hpp" @@ -6,9 +8,23 @@ #include "svg.hpp" #include "nanosvg/nanosvg.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include #include #include +#include +#include #include "BRepBuilderAPI_MakeWire.hxx" #include "BRepBuilderAPI_MakeEdge.hxx" diff --git a/src/libslic3r/Format/svg.hpp b/src/libslic3r/Format/svg.hpp index 095251c32a..cf6c35137f 100644 --- a/src/libslic3r/Format/svg.hpp +++ b/src/libslic3r/Format/svg.hpp @@ -1,4 +1,7 @@ #pragma once + +#include + namespace Slic3r { class Model; diff --git a/src/libslic3r/GCode.cpp b/src/libslic3r/GCode.cpp index 25addff79d..2b0f254b43 100644 --- a/src/libslic3r/GCode.cpp +++ b/src/libslic3r/GCode.cpp @@ -1,9 +1,31 @@ +#include "ArcFitter.hpp" #include "BoundingBox.hpp" +#include "Circle.hpp" #include "Config.hpp" +#include "GCode/GCodeProcessor.hpp" +#include "Flow.hpp" +#include "GCode/ThumbnailData.hpp" +#include "GCode/ToolOrdering.hpp" +#include "GCode/SpiralVase.hpp" +#include "GCode/PressureEqualizer.hpp" +#include "GCode/SmallAreaInfillFlowCompensator.hpp" +#include "GCode/CoolingBuffer.hpp" +#include "GCode/AdaptivePAProcessor.hpp" +#include "CustomGCode.hpp" +#include "GCode/TimelapsePosPicker.hpp" +#include "ExPolygon.hpp" #include "GCode/WipePathHelpers.hpp" +#include "GCodeReader.hpp" #include "GCodeWriter.hpp" +#include "Point.hpp" +#include "Line.hpp" +#include "ObjectID.hpp" +#include "Layer.hpp" #include "Polygon.hpp" +#include "Polyline.hpp" +#include "PrintBase.hpp" #include "PrintConfig.hpp" +#include "enum_bitmask.hpp" #include "libslic3r.h" #include "I18N.hpp" #include "GCode.hpp" @@ -26,16 +48,39 @@ #include "libslic3r/format.hpp" #include "Time.hpp" #include "GCode/ExtrusionProcessor.hpp" +#include +#include #include +#include +#include +#include +#include #include #include +#include +#include +#include #include #include +#include +#include +#include +#include #include #include +#include +#include #include +#include +#include +#include +#include +#include #include #include +#include +#include +#include #include #include @@ -54,7 +99,9 @@ #include "SVG.hpp" #include +#include #include "calib.hpp" +#include "libslic3r_version.h" // Intel redesigned some TBB interface considerably when merging TBB with their oneAPI set of libraries, see GH #7332. // We are using quite an old TBB 2017 U7. Before we update our build servers, let's use the old API, which is deprecated in up to date TBB. #if ! defined(TBB_VERSION_MAJOR) diff --git a/src/libslic3r/GCode.hpp b/src/libslic3r/GCode.hpp index 7567bc6e0d..0172fcf8c0 100644 --- a/src/libslic3r/GCode.hpp +++ b/src/libslic3r/GCode.hpp @@ -1,6 +1,11 @@ #ifndef slic3r_GCode_hpp_ #define slic3r_GCode_hpp_ +#include "ExtrusionEntity.hpp" +#include "Polygon.hpp" +#include "Config.hpp" +#include "ExtrusionEntityCollection.hpp" +#include "Print.hpp" #include "libslic3r.h" #include "ExPolygon.hpp" #include "GCodeWriter.hpp" @@ -28,12 +33,20 @@ #include "GCode/AdaptivePAProcessor.hpp" #include "GCode/TimelapsePosPicker.hpp" +#include "libslic3r_version.h" +#include +#include +#include +#include +#include #include #include #include #include #include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/GCode/AdaptivePAInterpolator.cpp b/src/libslic3r/GCode/AdaptivePAInterpolator.cpp index 2681ab13b2..5d86420ad2 100644 --- a/src/libslic3r/GCode/AdaptivePAInterpolator.cpp +++ b/src/libslic3r/GCode/AdaptivePAInterpolator.cpp @@ -4,10 +4,16 @@ // Implementation file for the AdaptivePAInterpolator class, providing methods to parse data and perform PA interpolation. #include "AdaptivePAInterpolator.hpp" +#include +#include "libslic3r/GCode/PchipInterpolatorHelper.hpp" +#include #include #include #include #include +#include +#include +#include /** * @brief Parses the input data and sets up the interpolators. diff --git a/src/libslic3r/GCode/AdaptivePAProcessor.cpp b/src/libslic3r/GCode/AdaptivePAProcessor.cpp index 8145db3b9f..21bd308853 100644 --- a/src/libslic3r/GCode/AdaptivePAProcessor.cpp +++ b/src/libslic3r/GCode/AdaptivePAProcessor.cpp @@ -4,11 +4,20 @@ // Implementation of the AdaptivePAProcessor class, responsible for processing G-code layers with adaptive pressure advance. #include "../GCode.hpp" +#include "libslic3r/GCode/AdaptivePAInterpolator.hpp" +#include "libslic3r/libslic3r.h" #include "AdaptivePAProcessor.hpp" +#include +#include +#include +#include +#include +#include #include #include #include #include +#include namespace Slic3r { diff --git a/src/libslic3r/GCode/AdaptivePAProcessor.hpp b/src/libslic3r/GCode/AdaptivePAProcessor.hpp index 01aa2f1104..c662191536 100644 --- a/src/libslic3r/GCode/AdaptivePAProcessor.hpp +++ b/src/libslic3r/GCode/AdaptivePAProcessor.hpp @@ -11,12 +11,14 @@ #include #include #include +#include #include "AdaptivePAInterpolator.hpp" namespace Slic3r { // Forward declaration of GCode class class GCode; +class PrintConfig; /** * @brief Class for processing G-code layers with adaptive pressure advance. diff --git a/src/libslic3r/GCode/AvoidCrossingPerimeters.cpp b/src/libslic3r/GCode/AvoidCrossingPerimeters.cpp index 21f02b3462..62c2ae61fd 100644 --- a/src/libslic3r/GCode/AvoidCrossingPerimeters.cpp +++ b/src/libslic3r/GCode/AvoidCrossingPerimeters.cpp @@ -7,11 +7,30 @@ #include "../Geometry.hpp" #include "../ClipperUtils.hpp" #include "../SVG.hpp" +#include "libslic3r/Line.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/Point.hpp" +#include "libslic3r/Utils.hpp" +#include "libslic3r/Polyline.hpp" +#include "libslic3r/BoundingBox.hpp" +#include "libslic3r/Flow.hpp" +#include "libslic3r/Surface.hpp" +#include "libslic3r/Config.hpp" #include "AvoidCrossingPerimeters.hpp" +#include +#include +#include +#include +#include +#include +#include +#include #include #include #include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/GCode/AvoidCrossingPerimeters.hpp b/src/libslic3r/GCode/AvoidCrossingPerimeters.hpp index a348eed786..53e2942d3b 100644 --- a/src/libslic3r/GCode/AvoidCrossingPerimeters.hpp +++ b/src/libslic3r/GCode/AvoidCrossingPerimeters.hpp @@ -4,6 +4,10 @@ #include "../libslic3r.h" #include "../ExPolygon.hpp" #include "../EdgeGrid.hpp" +#include "libslic3r/Polyline.hpp" +#include "libslic3r/Polygon.hpp" +#include "libslic3r/BoundingBox.hpp" +#include namespace Slic3r { diff --git a/src/libslic3r/GCode/ConflictChecker.cpp b/src/libslic3r/GCode/ConflictChecker.cpp index e8f533be7c..70b58423fa 100644 --- a/src/libslic3r/GCode/ConflictChecker.cpp +++ b/src/libslic3r/GCode/ConflictChecker.cpp @@ -1,11 +1,28 @@ #include "ConflictChecker.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/Line.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/ExtrusionEntityCollection.hpp" +#include "libslic3r/ExtrusionEntity.hpp" +#include "libslic3r/Layer.hpp" +#include "libslic3r/Print.hpp" +#include "libslic3r/GCode/GCodeProcessor.hpp" +#include +#include +#include +#include +#include +#include +#include #include #include #include #include #include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/GCode/ConflictChecker.hpp b/src/libslic3r/GCode/ConflictChecker.hpp index a10b969431..50a126b89a 100644 --- a/src/libslic3r/GCode/ConflictChecker.hpp +++ b/src/libslic3r/GCode/ConflictChecker.hpp @@ -5,8 +5,18 @@ #include "../Model.hpp" #include "../Print.hpp" #include "../Layer.hpp" +#include "libslic3r/Line.hpp" +#include "libslic3r/ExtrusionEntity.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/Polyline.hpp" +#include "libslic3r/ExtrusionEntityCollection.hpp" +#include "libslic3r/GCode/GCodeProcessor.hpp" #include +#include +#include +#include +#include #include #include diff --git a/src/libslic3r/GCode/CoolingBuffer.cpp b/src/libslic3r/GCode/CoolingBuffer.cpp index 7f6e9c67d5..6524b3ce38 100644 --- a/src/libslic3r/GCode/CoolingBuffer.cpp +++ b/src/libslic3r/GCode/CoolingBuffer.cpp @@ -1,12 +1,26 @@ #include "../GCode.hpp" +#include "libslic3r/Extruder.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/Circle.hpp" #include "CoolingBuffer.hpp" +#include #include #include #include +#include +#include +#include +#include +#include +#include #include #include +#include #include #include +#include +#include #if 0 #define DEBUG diff --git a/src/libslic3r/GCode/CoolingBuffer.hpp b/src/libslic3r/GCode/CoolingBuffer.hpp index 742b8f78b7..0f7e27b14f 100644 --- a/src/libslic3r/GCode/CoolingBuffer.hpp +++ b/src/libslic3r/GCode/CoolingBuffer.hpp @@ -2,14 +2,18 @@ #define slic3r_CoolingBuffer_hpp_ #include "../libslic3r.h" +#include "../Point.hpp" +#include #include #include #include +#include namespace Slic3r { class GCode; class Layer; +class PrintConfig; struct PerExtruderAdjustments; // A standalone G-code filter, to control cooling of the print. diff --git a/src/libslic3r/GCode/ElegooGCodeProcessorHelper.cpp b/src/libslic3r/GCode/ElegooGCodeProcessorHelper.cpp index cac53637a5..1b086e4f47 100644 --- a/src/libslic3r/GCode/ElegooGCodeProcessorHelper.cpp +++ b/src/libslic3r/GCode/ElegooGCodeProcessorHelper.cpp @@ -1,10 +1,13 @@ #include "GCodeProcessor.hpp" +#include "libslic3r/GCodeReader.hpp" #include "libslic3r/libslic3r.h" #include #include #include +#include +#include #include namespace Slic3r { diff --git a/src/libslic3r/GCode/ExtrusionProcessor.hpp b/src/libslic3r/GCode/ExtrusionProcessor.hpp index 8ed829aa6e..7cc886bfe9 100644 --- a/src/libslic3r/GCode/ExtrusionProcessor.hpp +++ b/src/libslic3r/GCode/ExtrusionProcessor.hpp @@ -15,7 +15,10 @@ #include "../ClipperUtils.hpp" #include "../Flow.hpp" #include "../Config.hpp" +#include "libslic3r/Line.hpp" +#include "libslic3r/ExPolygon.hpp" +#include #include #include #include diff --git a/src/libslic3r/GCode/FanMover.cpp b/src/libslic3r/GCode/FanMover.cpp index 9d77d1d04c..cb5fc310ee 100644 --- a/src/libslic3r/GCode/FanMover.cpp +++ b/src/libslic3r/GCode/FanMover.cpp @@ -1,10 +1,25 @@ #include "FanMover.hpp" +#include "libslic3r/PrintConfig.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/ExtrusionEntity.hpp" #include "GCodeReader.hpp" +#include +#include +#include +#include +#include +#include +#include +#include #include /* +#include +#include +#include #include +#include #include #include @@ -12,8 +27,12 @@ #include "../PrintConfig.hpp" #include "../Utils.hpp" #include "Print.hpp" +#include "libslic3r/PrintConfig.hpp" +#include "libslic3r/libslic3r.h" #include +#include +#include */ diff --git a/src/libslic3r/GCode/FanMover.hpp b/src/libslic3r/GCode/FanMover.hpp index 17addd855c..b3a6fcb309 100644 --- a/src/libslic3r/GCode/FanMover.hpp +++ b/src/libslic3r/GCode/FanMover.hpp @@ -9,7 +9,12 @@ #include "../Point.hpp" #include "../GCodeReader.hpp" #include "../GCodeWriter.hpp" +#include +#include +#include #include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/GCode/GCodeProcessor.cpp b/src/libslic3r/GCode/GCodeProcessor.cpp index e03be228d0..760a04eb4d 100644 --- a/src/libslic3r/GCode/GCodeProcessor.cpp +++ b/src/libslic3r/GCode/GCodeProcessor.cpp @@ -1,14 +1,30 @@ +#include "libslic3r/Config.hpp" +#include "libslic3r/CustomGCode.hpp" +#include "libslic3r/Exception.hpp" +#include "libslic3r/BoundingBox.hpp" +#include "libslic3r/CommonDefs.hpp" +#include "libslic3r/ArcFitter.hpp" #include "ExtrusionEntity.hpp" +#include "libslic3r/GCodeReader.hpp" #include "GCodeWriter.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/PrintBase.hpp" +#include "libslic3r/Polygon.hpp" #include "PrintConfig.hpp" +#include "libslic3r/TriangleSelector.hpp" #include "libslic3r/libslic3r.h" #include "libslic3r/Utils.hpp" #include "libslic3r/Print.hpp" #include "libslic3r/ClipperUtils.hpp" #include "libslic3r/LocalesUtils.hpp" #include "libslic3r/format.hpp" +#include "libslic3r_version.h" #include "GCodeProcessor.hpp" +#include +#include +#include +#include #include #include #include @@ -16,15 +32,38 @@ #include #include +#include +#include +#include +#include +#include +#include +#include +#include +#include #include #include #include +#include +#include +#include +#include +#include +#include +#include +#include #include +#include #include #include #include +#include #include +#include +#include +#include +#include #if __has_include() #include diff --git a/src/libslic3r/GCode/GCodeProcessor.hpp b/src/libslic3r/GCode/GCodeProcessor.hpp index 192a80a43d..cde789cb6c 100644 --- a/src/libslic3r/GCode/GCodeProcessor.hpp +++ b/src/libslic3r/GCode/GCodeProcessor.hpp @@ -1,6 +1,11 @@ #ifndef slic3r_GCodeProcessor_hpp_ #define slic3r_GCodeProcessor_hpp_ +#include "libslic3r/CommonDefs.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/Polygon.hpp" +#include "libslic3r/Config.hpp" +#include "libslic3r/ArcFitter.hpp" #include "libslic3r/GCodeReader.hpp" #include "libslic3r/Point.hpp" #include "libslic3r/ExtrusionEntity.hpp" @@ -8,8 +13,17 @@ #include "libslic3r/CustomGCode.hpp" #include "libslic3r/MultiNozzleUtils.hpp" +#include +#include #include #include +#include +#include +#include +#include +#include +#include +#include #include #include #include diff --git a/src/libslic3r/GCode/OrderingStrategies.cpp b/src/libslic3r/GCode/OrderingStrategies.cpp index 2ba9ae5490..73cb90f461 100644 --- a/src/libslic3r/GCode/OrderingStrategies.cpp +++ b/src/libslic3r/GCode/OrderingStrategies.cpp @@ -4,9 +4,14 @@ #include "OrderingStrategies.hpp" #include "../Geometry.hpp" #include "../ShortestPath.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/PrintConfig.hpp" #include #include +#include +#include +#include #include #include #include diff --git a/src/libslic3r/GCode/OrderingStrategies.hpp b/src/libslic3r/GCode/OrderingStrategies.hpp index 598eac8130..4e6d766b37 100644 --- a/src/libslic3r/GCode/OrderingStrategies.hpp +++ b/src/libslic3r/GCode/OrderingStrategies.hpp @@ -5,6 +5,8 @@ #include "../libslic3r.h" #include "../Point.hpp" +#include +#include "libslic3r/PrintConfig.hpp" #ifndef SLIC3R_TEST_HARNESS #include "../Print.hpp" diff --git a/src/libslic3r/GCode/PchipInterpolatorHelper.cpp b/src/libslic3r/GCode/PchipInterpolatorHelper.cpp index 44baa6cbf7..b01a23edb5 100644 --- a/src/libslic3r/GCode/PchipInterpolatorHelper.cpp +++ b/src/libslic3r/GCode/PchipInterpolatorHelper.cpp @@ -4,9 +4,13 @@ // Implementation file for the PchipInterpolatorHelper class #include "PchipInterpolatorHelper.hpp" +#include +#include #include #include #include +#include +#include /** * @brief Constructs the PCHIP interpolator with given data points. diff --git a/src/libslic3r/GCode/PreciseSeam.cpp b/src/libslic3r/GCode/PreciseSeam.cpp index 378ab2d2d3..b8eb5ea270 100644 --- a/src/libslic3r/GCode/PreciseSeam.cpp +++ b/src/libslic3r/GCode/PreciseSeam.cpp @@ -1,9 +1,23 @@ #include "PreciseSeam.hpp" +#include "libslic3r/Polygon.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/Model.hpp" +#include "libslic3r/ClipperUtils.hpp" #include "SeamPlacer.hpp" +#include "libslic3r/libslic3r.h" #include "libslic3r/BoundingBox.hpp" #include +#include #include +#include +#include +#include +#include +#include +#include #include +#include +#include namespace Slic3r { namespace PreciseSeam { diff --git a/src/libslic3r/GCode/PreciseSeam.hpp b/src/libslic3r/GCode/PreciseSeam.hpp index d5c1e98952..f4f75c37bf 100644 --- a/src/libslic3r/GCode/PreciseSeam.hpp +++ b/src/libslic3r/GCode/PreciseSeam.hpp @@ -2,9 +2,11 @@ #define slic3r_PreciseSeam_hpp_ #include +#include #include #include #include +#include "libslic3r/Point.hpp" #include "libslic3r/Polygon.hpp" #include "libslic3r/Polyline.hpp" #include "libslic3r/Model.hpp" diff --git a/src/libslic3r/GCode/PressureEqualizer.cpp b/src/libslic3r/GCode/PressureEqualizer.cpp index 3db54ca2af..44ca576933 100644 --- a/src/libslic3r/GCode/PressureEqualizer.cpp +++ b/src/libslic3r/GCode/PressureEqualizer.cpp @@ -1,8 +1,17 @@ +#include +#include +#include +#include +#include +#include #include +#include +#include #include #include #include #include +#include #include "../libslic3r.h" #include "../PrintConfig.hpp" @@ -10,6 +19,8 @@ #include "../GCode.hpp" #include "PressureEqualizer.hpp" +#include "libslic3r/ExtrusionEntity.hpp" +#include "libslic3r/Exception.hpp" #include "fast_float/fast_float.h" #include "GCodeWriter.hpp" diff --git a/src/libslic3r/GCode/PressureEqualizer.hpp b/src/libslic3r/GCode/PressureEqualizer.hpp index 2f2982860e..be8e0e77fe 100644 --- a/src/libslic3r/GCode/PressureEqualizer.hpp +++ b/src/libslic3r/GCode/PressureEqualizer.hpp @@ -2,7 +2,14 @@ #define slic3r_GCode_PressureEqualizer_hpp_ #include "../libslic3r.h" +#include "../ExtrusionEntity.hpp" #include "../PrintConfig.hpp" +#include +#include +#include +#include +#include +#include #include diff --git a/src/libslic3r/GCode/PrintExtents.cpp b/src/libslic3r/GCode/PrintExtents.cpp index 9008adaa9a..71bc826258 100644 --- a/src/libslic3r/GCode/PrintExtents.cpp +++ b/src/libslic3r/GCode/PrintExtents.cpp @@ -10,7 +10,16 @@ #include "../Print.hpp" #include "PrintExtents.hpp" +#include "libslic3r/Polyline.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/Exception.hpp" +#include "libslic3r/Geometry.hpp" #include "WipeTower.hpp" +#include "libslic3r/libslic3r.h" +#include +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/GCode/RetractWhenCrossingPerimeters.cpp b/src/libslic3r/GCode/RetractWhenCrossingPerimeters.cpp index 776091adfb..32994741d4 100644 --- a/src/libslic3r/GCode/RetractWhenCrossingPerimeters.cpp +++ b/src/libslic3r/GCode/RetractWhenCrossingPerimeters.cpp @@ -1,6 +1,15 @@ #include "../ClipperUtils.hpp" #include "../Layer.hpp" #include "../Polyline.hpp" +#include "libslic3r/Surface.hpp" +#include +#include "libslic3r/AABBTreeIndirect.hpp" +#include +#include "libslic3r/ExPolygon.hpp" +#include "libslic3r/BoundingBox.hpp" +#include "libslic3r/libslic3r.h" +#include +#include "libslic3r/Polygon.hpp" #include "RetractWhenCrossingPerimeters.hpp" diff --git a/src/libslic3r/GCode/RetractWhenCrossingPerimeters.hpp b/src/libslic3r/GCode/RetractWhenCrossingPerimeters.hpp index fb624d7f90..e6029ce7f1 100644 --- a/src/libslic3r/GCode/RetractWhenCrossingPerimeters.hpp +++ b/src/libslic3r/GCode/RetractWhenCrossingPerimeters.hpp @@ -4,6 +4,7 @@ #include #include "../AABBTreeIndirect.hpp" +#include "libslic3r/libslic3r.h" namespace Slic3r { diff --git a/src/libslic3r/GCode/SeamPlacer.cpp b/src/libslic3r/GCode/SeamPlacer.cpp index d527ec6aa9..720339f746 100644 --- a/src/libslic3r/GCode/SeamPlacer.cpp +++ b/src/libslic3r/GCode/SeamPlacer.cpp @@ -1,15 +1,38 @@ #include "SeamPlacer.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/AABBTreeIndirect.hpp" +#include "libslic3r/Model.hpp" +#include "libslic3r/Flow.hpp" +#include "libslic3r/Line.hpp" +#include "libslic3r/ExPolygon.hpp" #include "Polygon.hpp" +#include "libslic3r/PrintBase.hpp" #include "PrintConfig.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/TriangleMesh.hpp" +#include "libslic3r/TriangleSelector.hpp" #include "tbb/parallel_for.h" #include "tbb/blocked_range.h" #include "tbb/parallel_reduce.h" +#include #include +#include +#include +#include +#include +#include +#include +#include +#include +#include #include #include #include +#include #include +#include +#include #include "libslic3r/AABBTreeLines.hpp" #include "libslic3r/KDTreeIndirect.hpp" diff --git a/src/libslic3r/GCode/SeamPlacer.hpp b/src/libslic3r/GCode/SeamPlacer.hpp index 9855b4f4aa..cbf2c73fbe 100644 --- a/src/libslic3r/GCode/SeamPlacer.hpp +++ b/src/libslic3r/GCode/SeamPlacer.hpp @@ -1,12 +1,17 @@ #ifndef libslic3r_SeamPlacer_hpp_ #define libslic3r_SeamPlacer_hpp_ +#include +#include #include #include +#include +#include #include #include #include +#include "libslic3r/Point.hpp" #include "libslic3r/libslic3r.h" #include "libslic3r/ExtrusionEntity.hpp" #include "libslic3r/Polygon.hpp" diff --git a/src/libslic3r/GCode/SmallAreaInfillFlowCompensator.cpp b/src/libslic3r/GCode/SmallAreaInfillFlowCompensator.cpp index 20377cfe8d..fec0e4aa88 100644 --- a/src/libslic3r/GCode/SmallAreaInfillFlowCompensator.cpp +++ b/src/libslic3r/GCode/SmallAreaInfillFlowCompensator.cpp @@ -6,16 +6,26 @@ // Based on original work by Alexander Þór licensed under the GPLv3: // https://github.com/Alexander-T-Moss/Small-Area-Flow-Comp +#include +#include +#include #include #include #include +#include +#include #include #include "../libslic3r.h" #include "../PrintConfig.hpp" +#include "libslic3r/Exception.hpp" +#include "libslic3r/GCode/PchipInterpolatorHelper.hpp" +#include "libslic3r/ExtrusionEntity.hpp" #include "SmallAreaInfillFlowCompensator.hpp" #include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/GCode/SmallAreaInfillFlowCompensator.hpp b/src/libslic3r/GCode/SmallAreaInfillFlowCompensator.hpp index de1df98170..2139e7f438 100644 --- a/src/libslic3r/GCode/SmallAreaInfillFlowCompensator.hpp +++ b/src/libslic3r/GCode/SmallAreaInfillFlowCompensator.hpp @@ -6,6 +6,7 @@ #include "../ExtrusionEntity.hpp" #include "PchipInterpolatorHelper.hpp" #include +#include namespace Slic3r { diff --git a/src/libslic3r/GCode/SpiralVase.cpp b/src/libslic3r/GCode/SpiralVase.cpp index 2c39bda4f7..d96f99de4f 100644 --- a/src/libslic3r/GCode/SpiralVase.cpp +++ b/src/libslic3r/GCode/SpiralVase.cpp @@ -1,8 +1,13 @@ #include "SpiralVase.hpp" #include "GCode.hpp" +#include "libslic3r/libslic3r.h" +#include +#include #include #include #include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/GCode/SpiralVase.hpp b/src/libslic3r/GCode/SpiralVase.hpp index f28b4c5f55..b1e7c79f7e 100644 --- a/src/libslic3r/GCode/SpiralVase.hpp +++ b/src/libslic3r/GCode/SpiralVase.hpp @@ -3,6 +3,10 @@ #include "../libslic3r.h" #include "../GCodeReader.hpp" +#include "libslic3r/PrintConfig.hpp" +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/GCode/ThumbnailData.cpp b/src/libslic3r/GCode/ThumbnailData.cpp index d895c0d95f..a86d10c4a4 100644 --- a/src/libslic3r/GCode/ThumbnailData.cpp +++ b/src/libslic3r/GCode/ThumbnailData.cpp @@ -1,4 +1,5 @@ #include "ThumbnailData.hpp" +#include namespace Slic3r { diff --git a/src/libslic3r/GCode/ThumbnailData.hpp b/src/libslic3r/GCode/ThumbnailData.hpp index bc37ad40c4..f112000273 100644 --- a/src/libslic3r/GCode/ThumbnailData.hpp +++ b/src/libslic3r/GCode/ThumbnailData.hpp @@ -1,7 +1,10 @@ #ifndef slic3r_ThumbnailData_hpp_ #define slic3r_ThumbnailData_hpp_ +#include +#include #include +#include "libslic3r/libslic3r.h" #include "libslic3r/Point.hpp" #include "nlohmann/json.hpp" diff --git a/src/libslic3r/GCode/Thumbnails.cpp b/src/libslic3r/GCode/Thumbnails.cpp index 526ba82498..9d32b0b63b 100644 --- a/src/libslic3r/GCode/Thumbnails.cpp +++ b/src/libslic3r/GCode/Thumbnails.cpp @@ -1,11 +1,27 @@ #include "Thumbnails.hpp" #include "../miniz_extension.hpp" +#include "libslic3r/GCode/ThumbnailData.hpp" +#include "libslic3r/PrintConfig.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/Config.hpp" +#include "libslic3r/enum_bitmask.hpp" #include "format.hpp" #include #include +#include +#include +#include +#include +#include #include #include +#include +#include +#include +#include +#include +#include #include #include diff --git a/src/libslic3r/GCode/Thumbnails.hpp b/src/libslic3r/GCode/Thumbnails.hpp index bcee02fea1..fd72973bac 100644 --- a/src/libslic3r/GCode/Thumbnails.hpp +++ b/src/libslic3r/GCode/Thumbnails.hpp @@ -4,9 +4,13 @@ #include "../Point.hpp" #include "../PrintConfig.hpp" #include "../enum_bitmask.hpp" +#include "libslic3r/Config.hpp" #include "ThumbnailData.hpp" #include "../enum_bitmask.hpp" +#include +#include +#include #include #include #include diff --git a/src/libslic3r/GCode/TimelapsePosPicker.cpp b/src/libslic3r/GCode/TimelapsePosPicker.cpp index 364624a88c..fded08c1ce 100644 --- a/src/libslic3r/GCode/TimelapsePosPicker.cpp +++ b/src/libslic3r/GCode/TimelapsePosPicker.cpp @@ -1,6 +1,23 @@ #include "ClipperUtils.hpp" #include "TimelapsePosPicker.hpp" +#include "libslic3r/ExPolygon.hpp" #include "Layer.hpp" +#include "libslic3r/Point.hpp" +#include +#include "libslic3r/PrintConfig.hpp" +#include +#include +#include +#include "libslic3r/libslic3r.h" +#include "libslic3r/Polygon.hpp" +#include +#include +#include "libslic3r/Print.hpp" +#include +#include +#include +#include "libslic3r/Utils.hpp" +#include "libslic3r/Polyline.hpp" constexpr int FILTER_THRESHOLD = 5; constexpr int MAX_CANDIDATE_SIZE = 5; diff --git a/src/libslic3r/GCode/TimelapsePosPicker.hpp b/src/libslic3r/GCode/TimelapsePosPicker.hpp index 9ed6b14fc7..af102e6340 100644 --- a/src/libslic3r/GCode/TimelapsePosPicker.hpp +++ b/src/libslic3r/GCode/TimelapsePosPicker.hpp @@ -1,7 +1,11 @@ #ifndef TIMELAPSE_POS_PICKER_HPP #define TIMELAPSE_POS_PICKER_HPP +#include +#include #include +#include "libslic3r/Polygon.hpp" +#include "libslic3r/BoundingBox.hpp" #include "libslic3r/Point.hpp" #include "libslic3r/ExPolygon.hpp" #include "libslic3r/Print.hpp" diff --git a/src/libslic3r/GCode/ToolOrderUtils.cpp b/src/libslic3r/GCode/ToolOrderUtils.cpp index 4a67477d24..b64042a23f 100644 --- a/src/libslic3r/GCode/ToolOrderUtils.cpp +++ b/src/libslic3r/GCode/ToolOrderUtils.cpp @@ -1,9 +1,23 @@ #include "ToolOrderUtils.hpp" +#include "libslic3r/MultiNozzleUtils.hpp" #include +#include +#include +#include +#include +#include +#include +#include +#include +#include #include #include #include #include +#include +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/GCode/ToolOrderUtils.hpp b/src/libslic3r/GCode/ToolOrderUtils.hpp index 7b103531b1..db24545f33 100644 --- a/src/libslic3r/GCode/ToolOrderUtils.hpp +++ b/src/libslic3r/GCode/ToolOrderUtils.hpp @@ -1,6 +1,7 @@ #ifndef TOOL_ORDER_UTILS_HPP #define TOOL_ORDER_UTILS_HPP +#include #include #include #include diff --git a/src/libslic3r/GCode/ToolOrdering.cpp b/src/libslic3r/GCode/ToolOrdering.cpp index 5026323d54..38532a2f67 100644 --- a/src/libslic3r/GCode/ToolOrdering.cpp +++ b/src/libslic3r/GCode/ToolOrdering.cpp @@ -1,4 +1,9 @@ +#include "libslic3r/Exception.hpp" +#include "libslic3r/CustomGCode.hpp" +#include "libslic3r/Config.hpp" #include "ExtrusionEntity.hpp" +#include "libslic3r/ObjectID.hpp" +#include "libslic3r/FilamentGroup.hpp" #include "Print.hpp" #include "ToolOrdering.hpp" #include "Layer.hpp" @@ -9,11 +14,23 @@ #include "MultiNozzleUtils.hpp" #include "FilamentMixer.hpp" #include "LocalesUtils.hpp" +#include "libslic3r/PrintConfig.hpp" #include "Utils.hpp" #include "format.hpp" #include "I18N.hpp" #include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include // #define SLIC3R_DEBUG diff --git a/src/libslic3r/GCode/ToolOrdering.hpp b/src/libslic3r/GCode/ToolOrdering.hpp index 1b8ce190d7..70b55fdb33 100644 --- a/src/libslic3r/GCode/ToolOrdering.hpp +++ b/src/libslic3r/GCode/ToolOrdering.hpp @@ -5,11 +5,19 @@ #include "../libslic3r.h" +#include +#include +#include #include #include +#include +#include +#include +#include #include #include +#include #include "../FilamentGroup.hpp" #include "../FilamentMixer.hpp" #include "../MultiNozzleUtils.hpp" diff --git a/src/libslic3r/GCode/WipePathHelpers.cpp b/src/libslic3r/GCode/WipePathHelpers.cpp index d785a16a8c..2c2ef7ff74 100644 --- a/src/libslic3r/GCode/WipePathHelpers.cpp +++ b/src/libslic3r/GCode/WipePathHelpers.cpp @@ -1,12 +1,19 @@ #include "WipePathHelpers.hpp" #include "../AABBTreeLines.hpp" +#include "libslic3r/ExtrusionEntity.hpp" +#include "libslic3r/Line.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/libslic3r.h" #include #include #include +#include #include +#include #include +#include namespace Slic3r { diff --git a/src/libslic3r/GCode/WipePathHelpers.hpp b/src/libslic3r/GCode/WipePathHelpers.hpp index 616e5dc88b..17c0dfa238 100644 --- a/src/libslic3r/GCode/WipePathHelpers.hpp +++ b/src/libslic3r/GCode/WipePathHelpers.hpp @@ -5,6 +5,7 @@ #include "../ExtrusionEntity.hpp" #include "../Polyline.hpp" #include "../Line.hpp" +#include "libslic3r/Point.hpp" namespace Slic3r { diff --git a/src/libslic3r/GCode/WipeTower.cpp b/src/libslic3r/GCode/WipeTower.cpp index a700ada09f..cef86313ba 100644 --- a/src/libslic3r/GCode/WipeTower.cpp +++ b/src/libslic3r/GCode/WipeTower.cpp @@ -1,16 +1,39 @@ #include "WipeTower.hpp" +#include #include +#include +#include +#include +#include #include +#include +#include +#include +#include +#include +#include +#include #include #include #include #include +#include "libslic3r/Circle.hpp" +#include "libslic3r/ExtrusionEntity.hpp" +#include "libslic3r/ArcFitter.hpp" #include "GCodeProcessor.hpp" #include "BoundingBox.hpp" #include "ClipperUtils.hpp" +#include "libslic3r/Line.hpp" #include "LocalesUtils.hpp" +#include "libslic3r/PrintConfig.hpp" +#include "libslic3r/Polygon.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/Polyline.hpp" +#include "libslic3r/MultiNozzleUtils.hpp" +#include "libslic3r/TriangleMesh.hpp" #include "Triangulation.hpp" +#include "libslic3r/libslic3r.h" namespace Slic3r diff --git a/src/libslic3r/GCode/WipeTower.hpp b/src/libslic3r/GCode/WipeTower.hpp index 8ea7f848ef..dd000737c7 100644 --- a/src/libslic3r/GCode/WipeTower.hpp +++ b/src/libslic3r/GCode/WipeTower.hpp @@ -2,16 +2,23 @@ #define WipeTower_ #include +#include +#include +#include +#include #include #include +#include #include #include +#include "libslic3r/libslic3r.h" #include "libslic3r/Point.hpp" #include "libslic3r/Polygon.hpp" #include "libslic3r/Polyline.hpp" #include "libslic3r/TriangleMesh.hpp" #include +#include #include "libslic3r/MultiNozzleUtils.hpp" namespace Slic3r { diff --git a/src/libslic3r/GCode/WipeTower2.cpp b/src/libslic3r/GCode/WipeTower2.cpp index a576172a39..9b92f4c26a 100644 --- a/src/libslic3r/GCode/WipeTower2.cpp +++ b/src/libslic3r/GCode/WipeTower2.cpp @@ -1,22 +1,44 @@ // Orca: WipeTower2 for all non bbl printers, support all MMU device and toolchanger. #include "WipeTower2.hpp" +#include +#include #include +#include +#include +#include +#include #include +#include +#include +#include +#include +#include #include #include #include #include #include +#include "libslic3r/Circle.hpp" +#include "libslic3r/ArcFitter.hpp" #include "ClipperUtils.hpp" +#include "libslic3r/ExtrusionEntity.hpp" +#include "libslic3r/GCode/WipeTower.hpp" +#include "libslic3r/ExPolygon.hpp" +#include "libslic3r/Fill/FillBase.hpp" #include "GCodeProcessor.hpp" #include "BoundingBox.hpp" +#include "libslic3r/Line.hpp" #include "LocalesUtils.hpp" #include "Geometry.hpp" +#include "libslic3r/Polygon.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/Polyline.hpp" #include "PrintConfig.hpp" #include "Surface.hpp" #include "Fill/FillRectilinear.hpp" +#include "libslic3r/libslic3r.h" #include diff --git a/src/libslic3r/GCode/WipeTower2.hpp b/src/libslic3r/GCode/WipeTower2.hpp index 02ce15672b..408a5f6607 100644 --- a/src/libslic3r/GCode/WipeTower2.hpp +++ b/src/libslic3r/GCode/WipeTower2.hpp @@ -4,10 +4,14 @@ #define WipeTower2_ #include +#include +#include +#include #include #include #include #include +#include #include "libslic3r/Point.hpp" #include "libslic3r/Polygon.hpp" diff --git a/src/libslic3r/GCode/WipeTowerEstimate.cpp b/src/libslic3r/GCode/WipeTowerEstimate.cpp index ac1508d9c0..223850d4f0 100644 --- a/src/libslic3r/GCode/WipeTowerEstimate.cpp +++ b/src/libslic3r/GCode/WipeTowerEstimate.cpp @@ -1,5 +1,6 @@ #include "WipeTowerEstimate.hpp" +#include "libslic3r/Polygon.hpp" #include "WipeTower.hpp" #include "WipeTower2.hpp" #include "../Config.hpp" @@ -8,7 +9,9 @@ #include #include +#include #include +#include namespace Slic3r { diff --git a/src/libslic3r/GCodeReader.cpp b/src/libslic3r/GCodeReader.cpp index 17510800c5..10c3be600f 100644 --- a/src/libslic3r/GCodeReader.cpp +++ b/src/libslic3r/GCodeReader.cpp @@ -1,18 +1,30 @@ #include "GCodeReader.hpp" +#include #include #include #include #include #include +#include +#include +#include +#include +#include #include #include #include +#include "PrintConfig.hpp" #include "Utils.hpp" #include "LocalesUtils.hpp" +#include "libslic3r.h" #include #include +#include +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/GCodeReader.hpp b/src/libslic3r/GCodeReader.hpp index 12b9dc98e2..591fe41e6b 100644 --- a/src/libslic3r/GCodeReader.hpp +++ b/src/libslic3r/GCodeReader.hpp @@ -3,10 +3,14 @@ #include "libslic3r.h" #include +#include #include +#include #include #include #include +#include +#include #include "PrintConfig.hpp" namespace Slic3r { diff --git a/src/libslic3r/GCodeSender.hpp b/src/libslic3r/GCodeSender.hpp index 3a2055e54f..e9f97e2a29 100644 --- a/src/libslic3r/GCodeSender.hpp +++ b/src/libslic3r/GCodeSender.hpp @@ -3,9 +3,17 @@ #include "libslic3r.h" #include +#include +#include +#include +#include +#include +#include +#include #include #include #include +#include #include #include diff --git a/src/libslic3r/GCodeWriter.cpp b/src/libslic3r/GCodeWriter.cpp index 0e80cc1fb7..667271bcd1 100644 --- a/src/libslic3r/GCodeWriter.cpp +++ b/src/libslic3r/GCodeWriter.cpp @@ -1,16 +1,36 @@ #include "GCodeWriter.hpp" +#include "Config.hpp" #include "CustomGCode.hpp" +#include "Extruder.hpp" #include "I18N.hpp" +#include "Point.hpp" +#include "Polygon.hpp" #include "PrintConfig.hpp" #include "ClipperUtils.hpp" #include "Geometry/ArcWelder.hpp" #include "Line.hpp" +#include "libslic3r.h" #include +#include +#include +#include +#include +#include +#include +#include #include #include +#include +#include #include #include #include +#include +#include +#include +#include +#include +#include #ifdef __APPLE__ #include diff --git a/src/libslic3r/GCodeWriter.hpp b/src/libslic3r/GCodeWriter.hpp index 8247ab757a..a07765a873 100644 --- a/src/libslic3r/GCodeWriter.hpp +++ b/src/libslic3r/GCodeWriter.hpp @@ -2,8 +2,14 @@ #define slic3r_GCodeWriter_hpp_ #include "libslic3r.h" +#include +#include +#include +#include +#include #include #include +#include #include "Extruder.hpp" #include "Point.hpp" #include "Polygon.hpp" diff --git a/src/libslic3r/Geometry.cpp b/src/libslic3r/Geometry.cpp index 1c775be3a8..6c097428f4 100644 --- a/src/libslic3r/Geometry.cpp +++ b/src/libslic3r/Geometry.cpp @@ -1,16 +1,29 @@ +#include "Point.hpp" +#include "Polygon.hpp" +#include "MultiPoint.hpp" +#include "BoundingBox.hpp" #include "libslic3r.h" #include "Exception.hpp" #include "Geometry.hpp" #include "ClipperUtils.hpp" #include "ExPolygon.hpp" #include "Line.hpp" +#include +#include +#include #include +#include +#include #include #include +#include +#include +#include #include #include #include #include +#include #include #include #include diff --git a/src/libslic3r/Geometry.hpp b/src/libslic3r/Geometry.hpp index e610a9ed4f..cb148e596a 100644 --- a/src/libslic3r/Geometry.hpp +++ b/src/libslic3r/Geometry.hpp @@ -9,7 +9,18 @@ #include "Polyline.hpp" // Serialization through the Cereal library +#include +#include +#include #include +#include +#include +#include +#include +#include +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/Geometry/ArcWelder.hpp b/src/libslic3r/Geometry/ArcWelder.hpp index 184a2d6c7c..aee893fae6 100644 --- a/src/libslic3r/Geometry/ArcWelder.hpp +++ b/src/libslic3r/Geometry/ArcWelder.hpp @@ -1,7 +1,9 @@ #ifndef slic3r_Geometry_ArcWelder_hpp_ #define slic3r_Geometry_ArcWelder_hpp_ +#include #include +#include #include #include #include diff --git a/src/libslic3r/Geometry/Bicubic.hpp b/src/libslic3r/Geometry/Bicubic.hpp index 98c6f8bb29..2121947e94 100644 --- a/src/libslic3r/Geometry/Bicubic.hpp +++ b/src/libslic3r/Geometry/Bicubic.hpp @@ -1,7 +1,9 @@ #ifndef BICUBIC_HPP #define BICUBIC_HPP +#include #include +#include #include #include diff --git a/src/libslic3r/Geometry/Circle.cpp b/src/libslic3r/Geometry/Circle.cpp index 6796671954..f8dc0d273d 100644 --- a/src/libslic3r/Geometry/Circle.cpp +++ b/src/libslic3r/Geometry/Circle.cpp @@ -1,10 +1,19 @@ #include "Circle.hpp" #include "../Polygon.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/libslic3r.h" +#include +#include +#include +#include +#include +#include #include #include #include +#include namespace Slic3r { namespace Geometry { diff --git a/src/libslic3r/Geometry/Circle.hpp b/src/libslic3r/Geometry/Circle.hpp index 653102e2ab..8f8655df65 100644 --- a/src/libslic3r/Geometry/Circle.hpp +++ b/src/libslic3r/Geometry/Circle.hpp @@ -2,8 +2,13 @@ #define slic3r_Geometry_Circle_hpp_ #include "../Point.hpp" +#include "libslic3r/libslic3r.h" +#include #include +#include +#include +#include namespace Slic3r { namespace Geometry { diff --git a/src/libslic3r/Geometry/ConvexHull.cpp b/src/libslic3r/Geometry/ConvexHull.cpp index b8bf5eb696..80617c0caf 100644 --- a/src/libslic3r/Geometry/ConvexHull.cpp +++ b/src/libslic3r/Geometry/ConvexHull.cpp @@ -1,9 +1,19 @@ +#include "libslic3r/Polygon.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/Polyline.hpp" #include "libslic3r.h" #include "ConvexHull.hpp" #include "BoundingBox.hpp" #include "../Geometry.hpp" +#include +#include #include +#include +#include +#include +#include +#include namespace Slic3r { namespace Geometry { diff --git a/src/libslic3r/Geometry/ConvexHull.hpp b/src/libslic3r/Geometry/ConvexHull.hpp index eb0be4fe1f..f8bac380e8 100644 --- a/src/libslic3r/Geometry/ConvexHull.hpp +++ b/src/libslic3r/Geometry/ConvexHull.hpp @@ -1,9 +1,12 @@ #ifndef slic3r_Geometry_ConvexHull_hpp_ #define slic3r_Geometry_ConvexHull_hpp_ +#include #include #include "../Polygon.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/Polyline.hpp" namespace Slic3r { diff --git a/src/libslic3r/Geometry/Curves.hpp b/src/libslic3r/Geometry/Curves.hpp index f4a5a0067e..e9c4bef40c 100644 --- a/src/libslic3r/Geometry/Curves.hpp +++ b/src/libslic3r/Geometry/Curves.hpp @@ -4,7 +4,13 @@ #include "libslic3r/Point.hpp" #include "Bicubic.hpp" +#include +#include +#include +#include #include +#include +#include //#define LSQR_DEBUG diff --git a/src/libslic3r/Geometry/MedialAxis.cpp b/src/libslic3r/Geometry/MedialAxis.cpp index 7fece75e63..9d05ec9867 100644 --- a/src/libslic3r/Geometry/MedialAxis.cpp +++ b/src/libslic3r/Geometry/MedialAxis.cpp @@ -5,7 +5,11 @@ #include #include #include +#include +#include +#include "libslic3r/Line.hpp" +#include "libslic3r/Polyline.hpp" #include "VoronoiOffset.hpp" #include "libslic3r/ClipperUtils.hpp" #include "libslic3r/ExPolygon.hpp" diff --git a/src/libslic3r/Geometry/Voronoi.cpp b/src/libslic3r/Geometry/Voronoi.cpp index 4f7173e5c2..7d59e2d2b8 100644 --- a/src/libslic3r/Geometry/Voronoi.cpp +++ b/src/libslic3r/Geometry/Voronoi.cpp @@ -2,7 +2,12 @@ #include #include +#include +#include +#include +#include "libslic3r/Point.hpp" +#include "libslic3r/libslic3r.h" #include "libslic3r/Arachne/utils/PolygonsSegmentIndex.hpp" #include "libslic3r/Geometry/VoronoiUtils.hpp" #include "libslic3r/Geometry/VoronoiUtilsCgal.hpp" diff --git a/src/libslic3r/Geometry/VoronoiOffset.cpp b/src/libslic3r/Geometry/VoronoiOffset.cpp index 70c45dfb25..aeaf883c72 100644 --- a/src/libslic3r/Geometry/VoronoiOffset.cpp +++ b/src/libslic3r/Geometry/VoronoiOffset.cpp @@ -8,7 +8,11 @@ #include #include #include +#include +#include "libslic3r/Point.hpp" +#include "libslic3r/Line.hpp" +#include "libslic3r/Polygon.hpp" #include "libslic3r/Geometry.hpp" #include "VoronoiOffset.hpp" #include "libslic3r/libslic3r.h" diff --git a/src/libslic3r/Geometry/VoronoiUtils.cpp b/src/libslic3r/Geometry/VoronoiUtils.cpp index f140782891..d0ad07cc7e 100644 --- a/src/libslic3r/Geometry/VoronoiUtils.cpp +++ b/src/libslic3r/Geometry/VoronoiUtils.cpp @@ -1,4 +1,5 @@ #include +#include #include #include #include @@ -10,6 +11,10 @@ #include #include "VoronoiUtils.hpp" +#include "libslic3r/Geometry/Voronoi.hpp" +#include "libslic3r/Arachne/utils/PolygonsPointIndex.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/libslic3r.h" #include "libslic3r/Exception.hpp" #include "libslic3r/Line.hpp" diff --git a/src/libslic3r/Geometry/VoronoiUtilsCgal.cpp b/src/libslic3r/Geometry/VoronoiUtilsCgal.cpp index 28a648851d..e1ae432f36 100644 --- a/src/libslic3r/Geometry/VoronoiUtilsCgal.cpp +++ b/src/libslic3r/Geometry/VoronoiUtilsCgal.cpp @@ -1,9 +1,18 @@ // Needed since the CGAL headers are not self-contained. +#include +#include +#include +#include +#include +#include +#include +#include #include #include #include #include #include +#include #include #include diff --git a/src/libslic3r/Geometry/VoronoiVisualUtils.hpp b/src/libslic3r/Geometry/VoronoiVisualUtils.hpp index c89d59bf9a..a27645c159 100644 --- a/src/libslic3r/Geometry/VoronoiVisualUtils.hpp +++ b/src/libslic3r/Geometry/VoronoiVisualUtils.hpp @@ -1,14 +1,26 @@ #ifndef slic3r_VoronoiVisualUtils_hpp_ #define slic3r_VoronoiVisualUtils_hpp_ +#include +#include +#include +#include +#include #include #include #include #include #include +#include +#include +#include +#include "libslic3r/Geometry/Voronoi.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/BoundingBox.hpp" #include "VoronoiOffset.hpp" +#include "libslic3r/libslic3r.h" namespace boost { namespace polygon { diff --git a/src/libslic3r/InstanceLock.cpp b/src/libslic3r/InstanceLock.cpp index 1fa71b572a..7cacdef0cb 100644 --- a/src/libslic3r/InstanceLock.cpp +++ b/src/libslic3r/InstanceLock.cpp @@ -1,7 +1,11 @@ #include "InstanceLock.hpp" +#include +#include #include #include +#include +#include #include #include diff --git a/src/libslic3r/IntersectionPoints.cpp b/src/libslic3r/IntersectionPoints.cpp index 888285f834..7db77d0787 100644 --- a/src/libslic3r/IntersectionPoints.cpp +++ b/src/libslic3r/IntersectionPoints.cpp @@ -1,5 +1,10 @@ #include "IntersectionPoints.hpp" +#include #include +#include "libslic3r/Line.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/Polygon.hpp" +#include "libslic3r/ExPolygon.hpp" //NOTE: using CGAL SweepLines is slower !!! (example in git history) diff --git a/src/libslic3r/IntersectionPoints.hpp b/src/libslic3r/IntersectionPoints.hpp index 49694c8a8e..89b36224df 100644 --- a/src/libslic3r/IntersectionPoints.hpp +++ b/src/libslic3r/IntersectionPoints.hpp @@ -2,6 +2,11 @@ #define slic3r_IntersectionPoints_hpp_ #include "ExPolygon.hpp" +#include +#include "libslic3r/Point.hpp" +#include +#include "libslic3r/Line.hpp" +#include "libslic3r/Polygon.hpp" namespace Slic3r { diff --git a/src/libslic3r/JumpPointSearch.hpp b/src/libslic3r/JumpPointSearch.hpp index 86eeb9ce6a..b5fbf6aaf0 100644 --- a/src/libslic3r/JumpPointSearch.hpp +++ b/src/libslic3r/JumpPointSearch.hpp @@ -1,4 +1,5 @@ #pragma once +#include "Line.hpp" #ifndef SRC_LIBSLIC3R_JUMPPOINTSEARCH_HPP_ #define SRC_LIBSLIC3R_JUMPPOINTSEARCH_HPP_ diff --git a/src/libslic3r/KDTreeIndirect.hpp b/src/libslic3r/KDTreeIndirect.hpp index 37c10827b1..d334a2ad64 100644 --- a/src/libslic3r/KDTreeIndirect.hpp +++ b/src/libslic3r/KDTreeIndirect.hpp @@ -4,10 +4,15 @@ #define slic3r_KDTreeIndirect_hpp_ #include +#include +#include +#include #include +#include #include #include "Utils.hpp" // for next_highest_power_of_2() +#include "libslic3r.h" namespace Slic3r { diff --git a/src/libslic3r/LayOnFace.cpp b/src/libslic3r/LayOnFace.cpp index 1112f9d2fe..3cc5c2fdce 100644 --- a/src/libslic3r/LayOnFace.cpp +++ b/src/libslic3r/LayOnFace.cpp @@ -3,11 +3,17 @@ #include "Geometry.hpp" #include "Geometry/ConvexHull.hpp" #include "Model.hpp" +#include "Point.hpp" #include "TriangleMesh.hpp" +#include "libslic3r.h" +#include #include #include +#include #include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/LayOnFace.hpp b/src/libslic3r/LayOnFace.hpp index 1a5e92a15e..6a9242e5c6 100644 --- a/src/libslic3r/LayOnFace.hpp +++ b/src/libslic3r/LayOnFace.hpp @@ -2,6 +2,7 @@ #include "Point.hpp" +#include #include namespace Slic3r { diff --git a/src/libslic3r/Layer.cpp b/src/libslic3r/Layer.cpp index 7bdef5a4ff..7f27012dc4 100644 --- a/src/libslic3r/Layer.cpp +++ b/src/libslic3r/Layer.cpp @@ -1,12 +1,28 @@ #include "Layer.hpp" #include "ClipperUtils.hpp" +#include "Polygon.hpp" +#include "Point.hpp" +#include "ExPolygon.hpp" +#include "ExtrusionEntity.hpp" +#include "Exception.hpp" +#include "Flow.hpp" #include "Print.hpp" #include "Fill/Fill.hpp" +#include "PrintConfig.hpp" #include "ShortestPath.hpp" #include "SVG.hpp" #include "BoundingBox.hpp" +#include "Surface.hpp" +#include "libslic3r.h" +#include "Utils.hpp" +#include #include +#include +#include +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/Layer.hpp b/src/libslic3r/Layer.hpp index 9be6b86139..600e4c4062 100644 --- a/src/libslic3r/Layer.hpp +++ b/src/libslic3r/Layer.hpp @@ -1,12 +1,21 @@ #ifndef slic3r_Layer_hpp_ #define slic3r_Layer_hpp_ +#include "Polyline.hpp" +#include "Polygon.hpp" +#include "ExtrusionEntity.hpp" +#include "Line.hpp" #include "libslic3r.h" #include "BoundingBox.hpp" #include "Flow.hpp" #include "SurfaceCollection.hpp" #include "ExtrusionEntityCollection.hpp" #include "BoundingBox.hpp" +#include +#include +#include +#include +#include namespace Slic3r { class ExPolygon; diff --git a/src/libslic3r/LayerRegion.cpp b/src/libslic3r/LayerRegion.cpp index ab2096184b..3132dd348d 100644 --- a/src/libslic3r/LayerRegion.cpp +++ b/src/libslic3r/LayerRegion.cpp @@ -1,20 +1,44 @@ +#include "Flow.hpp" +#include "Config.hpp" +#include "ExPolygon.hpp" +#include "ExtrusionEntity.hpp" +#include "Exception.hpp" #include "Layer.hpp" #include "BridgeDetector.hpp" #include "ClipperUtils.hpp" #include "Geometry.hpp" +#include "Line.hpp" #include "PerimeterGenerator.hpp" #include "Point.hpp" +#include "Polygon.hpp" +#include "Polyline.hpp" #include "Print.hpp" +#include "PrintConfig.hpp" #include "Surface.hpp" #include "BoundingBox.hpp" #include "SVG.hpp" #include "Algorithm/RegionExpansion.hpp" +#include "libslic3r.h" +#include "Utils.hpp" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include #include #include #include #include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/Line.cpp b/src/libslic3r/Line.cpp index 94453e18f7..5c40e48e63 100644 --- a/src/libslic3r/Line.cpp +++ b/src/libslic3r/Line.cpp @@ -1,8 +1,13 @@ #include "Geometry.hpp" #include "Line.hpp" +#include "Point.hpp" #include "Polyline.hpp" +#include +#include "libslic3r.h" #include #include +#include +#include #include namespace Slic3r { diff --git a/src/libslic3r/Line.hpp b/src/libslic3r/Line.hpp index d8240702b2..f75ef7fc66 100644 --- a/src/libslic3r/Line.hpp +++ b/src/libslic3r/Line.hpp @@ -4,7 +4,10 @@ #include "libslic3r.h" #include "Point.hpp" +#include #include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/LocalesUtils.cpp b/src/libslic3r/LocalesUtils.cpp index 9c81511dc5..ead94faeb4 100644 --- a/src/libslic3r/LocalesUtils.cpp +++ b/src/libslic3r/LocalesUtils.cpp @@ -1,4 +1,10 @@ #include "LocalesUtils.hpp" +#include +#include +#include +#include +#include +#include #ifdef _WIN32 #include diff --git a/src/libslic3r/LocalesUtils.hpp b/src/libslic3r/LocalesUtils.hpp index d7e59f5ded..c212a72e69 100644 --- a/src/libslic3r/LocalesUtils.hpp +++ b/src/libslic3r/LocalesUtils.hpp @@ -1,6 +1,7 @@ #ifndef slic3r_LocalesUtils_hpp_ #define slic3r_LocalesUtils_hpp_ +#include #include #include #include diff --git a/src/libslic3r/MTUtils.hpp b/src/libslic3r/MTUtils.hpp index ab99ea5f68..b1099e1439 100644 --- a/src/libslic3r/MTUtils.hpp +++ b/src/libslic3r/MTUtils.hpp @@ -1,7 +1,9 @@ #ifndef MTUTILS_HPP #define MTUTILS_HPP +#include #include // for std::atomic_flag and memory orders +#include #include // for std::lock_guard #include // for std::function #include // for std::forward diff --git a/src/libslic3r/MarchingSquares.hpp b/src/libslic3r/MarchingSquares.hpp index 7eb0b25806..e123dd14e0 100644 --- a/src/libslic3r/MarchingSquares.hpp +++ b/src/libslic3r/MarchingSquares.hpp @@ -2,11 +2,17 @@ #define MARCHINGSQUARES_HPP #include "Execution/ExecutionTBB.hpp" +#include +#include "libslic3r/Execution/Execution.hpp" +#include +#include #include #include #include #include #include +#include +#include // Marching squares // diff --git a/src/libslic3r/MaterialType.cpp b/src/libslic3r/MaterialType.cpp index dc65b6d23c..18e27dbe46 100644 --- a/src/libslic3r/MaterialType.cpp +++ b/src/libslic3r/MaterialType.cpp @@ -1,6 +1,8 @@ #include "MaterialType.hpp" #include +#include +#include namespace Slic3r { namespace { diff --git a/src/libslic3r/Measure.cpp b/src/libslic3r/Measure.cpp index ad34752685..e2ef912f37 100644 --- a/src/libslic3r/Measure.cpp +++ b/src/libslic3r/Measure.cpp @@ -1,3 +1,5 @@ +#include "Point.hpp" +#include "TriangleMesh.hpp" #include "libslic3r/libslic3r.h" #include "Measure.hpp" #include "MeasureUtils.hpp" @@ -6,8 +8,28 @@ #include "libslic3r/SurfaceMesh.hpp" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include #include +#include +#include #include +#include +#include +#include #define DEBUG_EXTRACT_ALL_FEATURES_AT_ONCE 0 diff --git a/src/libslic3r/Measure.hpp b/src/libslic3r/Measure.hpp index 0374c5d4aa..2980afe324 100644 --- a/src/libslic3r/Measure.hpp +++ b/src/libslic3r/Measure.hpp @@ -1,10 +1,17 @@ #ifndef Slic3r_Measure_hpp_ #define Slic3r_Measure_hpp_ +#include +#include +#include #include #include +#include +#include +#include #include "Point.hpp" +#include "libslic3r.h" struct indexed_triangle_set; diff --git a/src/libslic3r/MeasureUtils.hpp b/src/libslic3r/MeasureUtils.hpp index 2fdac52443..5e34c6fdf8 100644 --- a/src/libslic3r/MeasureUtils.hpp +++ b/src/libslic3r/MeasureUtils.hpp @@ -1,7 +1,14 @@ #ifndef Slic3r_MeasureUtils_hpp_ #define Slic3r_MeasureUtils_hpp_ +#include +#include +#include +#include #include +#include + +#include "Point.hpp" namespace Slic3r { namespace Measure { diff --git a/src/libslic3r/MeshBoolean.cpp b/src/libslic3r/MeshBoolean.cpp index 4d9dda0c2e..2a05378f58 100644 --- a/src/libslic3r/MeshBoolean.cpp +++ b/src/libslic3r/MeshBoolean.cpp @@ -3,6 +3,37 @@ #include "libslic3r/TriangleMesh.hpp" #include "libslic3r/TryCatchSignal.hpp" #include "libslic3r/format.hpp" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "libslic3r/Point.hpp" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include #undef PI #include diff --git a/src/libslic3r/MeshBoolean.hpp b/src/libslic3r/MeshBoolean.hpp index c307d1528b..6ced9b4646 100644 --- a/src/libslic3r/MeshBoolean.hpp +++ b/src/libslic3r/MeshBoolean.hpp @@ -1,9 +1,13 @@ #ifndef libslic3r_MeshBoolean_hpp_ #define libslic3r_MeshBoolean_hpp_ +#include +#include "libslic3r/Point.hpp" #include #include #include +#include +#include #include #include diff --git a/src/libslic3r/MeshSplitImpl.hpp b/src/libslic3r/MeshSplitImpl.hpp index 9fa87d2a9e..1805dc36ba 100644 --- a/src/libslic3r/MeshSplitImpl.hpp +++ b/src/libslic3r/MeshSplitImpl.hpp @@ -2,6 +2,15 @@ #define MESHSPLITIMPL_HPP // Disable meaningless boost warning on MSVC +#include +#include "Point.hpp" +#include +#include +#include +#include +#include +#include "libslic3r.h" +#include #ifdef _MSC_VER #pragma warning( push ) #pragma warning( disable : 4805 ) diff --git a/src/libslic3r/MinAreaBoundingBox.cpp b/src/libslic3r/MinAreaBoundingBox.cpp index 51fd8a45e7..ccc2eb981b 100644 --- a/src/libslic3r/MinAreaBoundingBox.cpp +++ b/src/libslic3r/MinAreaBoundingBox.cpp @@ -1,5 +1,12 @@ #include "MinAreaBoundingBox.hpp" +#include "Point.hpp" +#include "libslic3r.h" +#include +#include "libnest2d/common.hpp" +#include +#include +#include "libnest2d/geometry_traits.hpp" #include #if defined(_MSC_VER) && defined(__clang__) diff --git a/src/libslic3r/MinimumSpanningTree.cpp b/src/libslic3r/MinimumSpanningTree.cpp index 88555e70ee..0134c6b1a3 100644 --- a/src/libslic3r/MinimumSpanningTree.cpp +++ b/src/libslic3r/MinimumSpanningTree.cpp @@ -1,7 +1,12 @@ #include "MinimumSpanningTree.hpp" +#include #include #include +#include "Point.hpp" +#include +#include +#include #include "libslic3r.h" namespace Slic3r diff --git a/src/libslic3r/Model.cpp b/src/libslic3r/Model.cpp index fbc299cf72..24a77ce716 100644 --- a/src/libslic3r/Model.cpp +++ b/src/libslic3r/Model.cpp @@ -1,4 +1,21 @@ #include "Model.hpp" +#include "calib.hpp" +#include "Format/STEP.hpp" +#include "TriangleMesh.hpp" +#include "Semver.hpp" +#include "Format/OBJ.hpp" +#include "Config.hpp" +#include "Format/STL.hpp" +#include "Format/objparser.hpp" +#include "CustomGCode.hpp" +#include "PrintConfig.hpp" +#include "ObjectID.hpp" +#include "BoundingBox.hpp" +#include "Point.hpp" +#include "Utils.hpp" +#include "Polygon.hpp" +#include "SLA/SupportPoint.hpp" +#include "TextureDisplacement.hpp" #include "libslic3r.h" #include "BuildVolume.hpp" #include "TexturePainting.hpp" @@ -23,7 +40,17 @@ #include "libslic3r/Geometry/ConvexHull.hpp" +#include #include +#include +#include +#include +#include +#include +#include +#include +#include +#include #include #include @@ -35,6 +62,21 @@ #include "SVG.hpp" #include #include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include #include "GCodeWriter.hpp" // BBS: for segment diff --git a/src/libslic3r/Model.hpp b/src/libslic3r/Model.hpp index 895ea30d09..6ef00c8587 100644 --- a/src/libslic3r/Model.hpp +++ b/src/libslic3r/Model.hpp @@ -1,6 +1,9 @@ #ifndef slic3r_Model_hpp_ #define slic3r_Model_hpp_ +#include "BoundingBox.hpp" +#include "Polygon.hpp" +#include "Semver.hpp" #include "libslic3r.h" #include "enum_bitmask.hpp" #include "Geometry.hpp" @@ -30,6 +33,13 @@ #include "Format/OBJ.hpp" #include +#include +#include +#include +#include +#include +#include +#include #include #include #include diff --git a/src/libslic3r/ModelArrange.cpp b/src/libslic3r/ModelArrange.cpp index 95167565aa..df95b92b99 100644 --- a/src/libslic3r/ModelArrange.cpp +++ b/src/libslic3r/ModelArrange.cpp @@ -1,9 +1,19 @@ #include "ModelArrange.hpp" +#include +#include +#include #include #include #include +#include "Arrange.hpp" +#include +#include "Config.hpp" +#include +#include #include "MTUtils.hpp" +#include "Point.hpp" +#include "PrintConfig.hpp" namespace Slic3r { diff --git a/src/libslic3r/ModelArrange.hpp b/src/libslic3r/ModelArrange.hpp index e389eea5f0..b7a31dea8d 100644 --- a/src/libslic3r/ModelArrange.hpp +++ b/src/libslic3r/ModelArrange.hpp @@ -1,7 +1,13 @@ #ifndef MODELARRANGE_HPP #define MODELARRANGE_HPP +#include +#include #include +#include +#include "Exception.hpp" +#include +#include "Point.hpp" #include "libslic3r/PrintConfig.hpp" #include "libslic3r/Model.hpp" diff --git a/src/libslic3r/MultiMaterialSegmentation.cpp b/src/libslic3r/MultiMaterialSegmentation.cpp index 464740768d..9119498a1e 100644 --- a/src/libslic3r/MultiMaterialSegmentation.cpp +++ b/src/libslic3r/MultiMaterialSegmentation.cpp @@ -1,13 +1,40 @@ +#include "MultiMaterialSegmentation.hpp" #include "BoundingBox.hpp" #include "ClipperUtils.hpp" +#include "Config.hpp" #include "EdgeGrid.hpp" +#include "Geometry/VoronoiOffset.hpp" +#include "Geometry/Voronoi.hpp" +#include "Flow.hpp" +#include "ExPolygon.hpp" #include "Layer.hpp" +#include "Point.hpp" +#include "Polygon.hpp" +#include "Line.hpp" +#include "Model.hpp" #include "Print.hpp" #include "Geometry/VoronoiVisualUtils.hpp" #include "Geometry/VoronoiUtils.hpp" #include "MutablePolygon.hpp" +#include "Utils.hpp" +#include "PrintConfig.hpp" +#include "TriangleSelector.hpp" +#include "TriangleMeshSlicer.hpp" +#include "Surface.hpp" #include "format.hpp" +#include "libslic3r.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include #include #include @@ -15,6 +42,8 @@ #include #include #include +#include +#include //#define MM_SEGMENTATION_DEBUG_GRAPH //#define MM_SEGMENTATION_DEBUG_REGIONS diff --git a/src/libslic3r/MultiMaterialSegmentation.hpp b/src/libslic3r/MultiMaterialSegmentation.hpp index ee7b07c0d8..6b230e8cad 100644 --- a/src/libslic3r/MultiMaterialSegmentation.hpp +++ b/src/libslic3r/MultiMaterialSegmentation.hpp @@ -1,9 +1,17 @@ #ifndef slic3r_MultiMaterialSegmentation_hpp_ #define slic3r_MultiMaterialSegmentation_hpp_ +#include +#include #include #include +#include + +#include "Line.hpp" +#include "Point.hpp" +#include "libslic3r.h" + namespace Slic3r { class ExPolygon; diff --git a/src/libslic3r/MultiNozzleUtils.cpp b/src/libslic3r/MultiNozzleUtils.cpp index d5ce550536..5fc3d3de17 100644 --- a/src/libslic3r/MultiNozzleUtils.cpp +++ b/src/libslic3r/MultiNozzleUtils.cpp @@ -1,12 +1,22 @@ #include "MultiNozzleUtils.hpp" +#include "PrintConfig.hpp" +#include "Config.hpp" #include "Utils.hpp" #include "ProjectTask.hpp" // Slic3r::FilamentInfo (StaticNozzleGroupResult / load_nozzle_infos_with_compatibility) #include +#include +#include #include +#include +#include +#include #include +#include #include #include #include +#include +#include // Multi-nozzle support. diff --git a/src/libslic3r/MultiNozzleUtils.hpp b/src/libslic3r/MultiNozzleUtils.hpp index 5ae56e497d..f59dad6761 100644 --- a/src/libslic3r/MultiNozzleUtils.hpp +++ b/src/libslic3r/MultiNozzleUtils.hpp @@ -1,6 +1,8 @@ #ifndef MULTI_NOZZLE_UTILS_HPP #define MULTI_NOZZLE_UTILS_HPP +#include +#include #include #include #include diff --git a/src/libslic3r/MultiPoint.cpp b/src/libslic3r/MultiPoint.cpp index 694d3ea9d0..cda57c6cd8 100644 --- a/src/libslic3r/MultiPoint.cpp +++ b/src/libslic3r/MultiPoint.cpp @@ -1,5 +1,16 @@ #include "MultiPoint.hpp" #include "BoundingBox.hpp" +#include "Point.hpp" +#include "libslic3r.h" +#include +#include "Line.hpp" +#include +#include +#include +#include +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/MultiPoint.hpp b/src/libslic3r/MultiPoint.hpp index 096230d22c..82d6d5884b 100644 --- a/src/libslic3r/MultiPoint.hpp +++ b/src/libslic3r/MultiPoint.hpp @@ -3,6 +3,10 @@ #include "libslic3r.h" #include +#include +#include +#include +#include #include #include "Line.hpp" #include "Point.hpp" diff --git a/src/libslic3r/MutablePolygon.cpp b/src/libslic3r/MutablePolygon.cpp index bdc2d91376..60484dc3aa 100644 --- a/src/libslic3r/MutablePolygon.cpp +++ b/src/libslic3r/MutablePolygon.cpp @@ -1,6 +1,11 @@ #include "MutablePolygon.hpp" #include "Line.hpp" +#include "Point.hpp" #include "libslic3r.h" +#include +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/MutablePolygon.hpp b/src/libslic3r/MutablePolygon.hpp index e4741186ff..31322583e3 100644 --- a/src/libslic3r/MutablePolygon.hpp +++ b/src/libslic3r/MutablePolygon.hpp @@ -4,6 +4,13 @@ #include "Point.hpp" #include "Polygon.hpp" #include "ExPolygon.hpp" +#include +#include +#include +#include +#include +#include +#include "libslic3r.h" namespace Slic3r { diff --git a/src/libslic3r/MutablePriorityQueue.hpp b/src/libslic3r/MutablePriorityQueue.hpp index 2565f417f8..f06acaa93e 100644 --- a/src/libslic3r/MutablePriorityQueue.hpp +++ b/src/libslic3r/MutablePriorityQueue.hpp @@ -2,7 +2,11 @@ #define slic3r_MutablePriorityQueue_hpp_ #include +#include +#include #include +#include +#include constexpr auto InvalidQueueID = std::numeric_limits::max(); template class MutablePriorityQueue diff --git a/src/libslic3r/NSVGUtils.cpp b/src/libslic3r/NSVGUtils.cpp index d12a866b3d..5274ffad4f 100644 --- a/src/libslic3r/NSVGUtils.cpp +++ b/src/libslic3r/NSVGUtils.cpp @@ -1,11 +1,24 @@ #include "NSVGUtils.hpp" #include +#include #include // to_chars #include #include +#include +#include +#include +#include +#include +#include +#include #include "ClipperUtils.hpp" #include "Emboss.hpp" // heal for shape +#include "Polygon.hpp" +#include "Polyline.hpp" +#include "EmbossShape.hpp" +#include "Point.hpp" +#include "libslic3r.h" namespace { using namespace Slic3r; // Polygon diff --git a/src/libslic3r/NSVGUtils.hpp b/src/libslic3r/NSVGUtils.hpp index 8d6a3bc3ef..846c4adfb8 100644 --- a/src/libslic3r/NSVGUtils.hpp +++ b/src/libslic3r/NSVGUtils.hpp @@ -1,12 +1,16 @@ #ifndef slic3r_NSVGUtils_hpp_ #define slic3r_NSVGUtils_hpp_ +#include +#include #include #include #include +#include "Point.hpp" #include "Polygon.hpp" #include "ExPolygon.hpp" #include "EmbossShape.hpp" // ExPolygonsWithIds +#include "libslic3r.h" #include "nanosvg/nanosvg.h" // load SVG file // Helper function to work with nano svg diff --git a/src/libslic3r/NormalUtils.cpp b/src/libslic3r/NormalUtils.cpp index 8619b749a2..1499d25f22 100644 --- a/src/libslic3r/NormalUtils.cpp +++ b/src/libslic3r/NormalUtils.cpp @@ -1,4 +1,9 @@ #include "NormalUtils.hpp" +#include "Point.hpp" +#include +#include +#include +#include using namespace Slic3r; diff --git a/src/libslic3r/NormalUtils.hpp b/src/libslic3r/NormalUtils.hpp index 8dcd0c0290..1811957381 100644 --- a/src/libslic3r/NormalUtils.hpp +++ b/src/libslic3r/NormalUtils.hpp @@ -3,6 +3,7 @@ #include "Point.hpp" #include "Model.hpp" +#include namespace Slic3r { diff --git a/src/libslic3r/ObjColorUtils.cpp b/src/libslic3r/ObjColorUtils.cpp index 3761267401..536078a083 100644 --- a/src/libslic3r/ObjColorUtils.cpp +++ b/src/libslic3r/ObjColorUtils.cpp @@ -1,4 +1,6 @@ #include "ObjColorUtils.hpp" +#include +#include "Color.hpp" bool obj_color_deal_algo(std::vector & input_colors, std::vector & cluster_colors_from_algo, diff --git a/src/libslic3r/ObjColorUtils.hpp b/src/libslic3r/ObjColorUtils.hpp index b587c80848..46163c8b44 100644 --- a/src/libslic3r/ObjColorUtils.hpp +++ b/src/libslic3r/ObjColorUtils.hpp @@ -1,6 +1,13 @@ #pragma once +#include +#include #include #include +#include +#include +#include +#include +#include #include "opencv2/opencv.hpp" #include "libslic3r/Color.hpp" diff --git a/src/libslic3r/ObjectID.cpp b/src/libslic3r/ObjectID.cpp index 7177c47fec..c8f4f5409f 100644 --- a/src/libslic3r/ObjectID.cpp +++ b/src/libslic3r/ObjectID.cpp @@ -1,4 +1,5 @@ #include "ObjectID.hpp" +#include namespace Slic3r { diff --git a/src/libslic3r/ObjectID.hpp b/src/libslic3r/ObjectID.hpp index 56042bbaa3..6adc1078f0 100644 --- a/src/libslic3r/ObjectID.hpp +++ b/src/libslic3r/ObjectID.hpp @@ -4,6 +4,7 @@ #include #include #include +#include namespace Slic3r { diff --git a/src/libslic3r/OpenVDBUtils.cpp b/src/libslic3r/OpenVDBUtils.cpp index c72607f14f..d4ac09781d 100644 --- a/src/libslic3r/OpenVDBUtils.cpp +++ b/src/libslic3r/OpenVDBUtils.cpp @@ -1,6 +1,19 @@ #ifndef NOMINMAX #define NOMINMAX #endif + +#include +#include +#include +#include "Point.hpp" +#include +#include +#include +#include "TriangleMesh.hpp" +#include +#include "libslic3r.h" +#include +#include #include "OpenVDBUtils.hpp" #ifdef _MSC_VER diff --git a/src/libslic3r/OpenVDBUtils.hpp b/src/libslic3r/OpenVDBUtils.hpp index f4441ba964..badd19d377 100644 --- a/src/libslic3r/OpenVDBUtils.hpp +++ b/src/libslic3r/OpenVDBUtils.hpp @@ -1,7 +1,10 @@ #ifndef OPENVDBUTILS_HPP #define OPENVDBUTILS_HPP +#include "Point.hpp" #include +#include +#include #ifdef _MSC_VER // Suppress warning C4146 in include/gmp.h(2177,31): unary minus operator applied to unsigned type, result still unsigned diff --git a/src/libslic3r/Optimize/BruteforceOptimizer.hpp b/src/libslic3r/Optimize/BruteforceOptimizer.hpp index 2daef538e7..6aa4308f99 100644 --- a/src/libslic3r/Optimize/BruteforceOptimizer.hpp +++ b/src/libslic3r/Optimize/BruteforceOptimizer.hpp @@ -1,7 +1,12 @@ #ifndef BRUTEFORCEOPTIMIZER_HPP #define BRUTEFORCEOPTIMIZER_HPP +#include +#include +#include +#include #include +#include namespace Slic3r { namespace opt { diff --git a/src/libslic3r/Optimize/NLoptOptimizer.hpp b/src/libslic3r/Optimize/NLoptOptimizer.hpp index f5d3140463..6e1649f701 100644 --- a/src/libslic3r/Optimize/NLoptOptimizer.hpp +++ b/src/libslic3r/Optimize/NLoptOptimizer.hpp @@ -1,6 +1,12 @@ #ifndef NLOPTOPTIMIZER_HPP #define NLOPTOPTIMIZER_HPP +#include +#include +#include +#include +#include +#include #ifdef _MSC_VER #pragma warning(push) #pragma warning(disable: 4244) diff --git a/src/libslic3r/Optimize/Optimizer.hpp b/src/libslic3r/Optimize/Optimizer.hpp index 8ae55c61c5..ce5bb5bad6 100644 --- a/src/libslic3r/Optimize/Optimizer.hpp +++ b/src/libslic3r/Optimize/Optimizer.hpp @@ -1,6 +1,7 @@ #ifndef OPTIMIZER_HPP #define OPTIMIZER_HPP +#include #include #include #include diff --git a/src/libslic3r/Orient.cpp b/src/libslic3r/Orient.cpp index 7d54048176..b72401f36b 100644 --- a/src/libslic3r/Orient.cpp +++ b/src/libslic3r/Orient.cpp @@ -1,10 +1,30 @@ #include "Orient.hpp" #include "Geometry.hpp" +#include +#include +#include +#include "TriangleMesh.hpp" +#include "Point.hpp" +#include +#include +#include "libslic3r.h" +#include +#include +#include +#include +#include "Model.hpp" +#include "PrintConfig.hpp" #include #include #include #include +#include +#include +#include #include +#include +#include +#include #if defined(_MSC_VER) && defined(__clang__) #define BOOST_NO_CXX17_HDR_STRING_VIEW diff --git a/src/libslic3r/Orient.hpp b/src/libslic3r/Orient.hpp index 370f23d4fb..6839665e01 100644 --- a/src/libslic3r/Orient.hpp +++ b/src/libslic3r/Orient.hpp @@ -1,7 +1,14 @@ #ifndef ORIENT_HPP #define ORIENT_HPP +#include "TriangleMesh.hpp" +#include "Point.hpp" +#include "PrintConfig.hpp" #include "libslic3r/Model.hpp" +#include +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/PNGReadWrite.cpp b/src/libslic3r/PNGReadWrite.cpp index 9f6a8b739d..1f29de646b 100644 --- a/src/libslic3r/PNGReadWrite.cpp +++ b/src/libslic3r/PNGReadWrite.cpp @@ -1,5 +1,9 @@ #include "PNGReadWrite.hpp" +#include +#include +#include +#include #include #include @@ -8,6 +12,8 @@ #include #include #include +#include +#include namespace Slic3r { namespace png { diff --git a/src/libslic3r/PNGReadWrite.hpp b/src/libslic3r/PNGReadWrite.hpp index 9a27fed490..c2d2149e1f 100644 --- a/src/libslic3r/PNGReadWrite.hpp +++ b/src/libslic3r/PNGReadWrite.hpp @@ -1,6 +1,8 @@ #ifndef PNGREAD_HPP #define PNGREAD_HPP +#include +#include #include #include #include diff --git a/src/libslic3r/ParameterUtils.cpp b/src/libslic3r/ParameterUtils.cpp index 2e7b0d1d3c..f2f3669124 100644 --- a/src/libslic3r/ParameterUtils.cpp +++ b/src/libslic3r/ParameterUtils.cpp @@ -1,5 +1,10 @@ #include "ParameterUtils.hpp" +#include "PrintConfig.hpp" #include +#include +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/ParameterUtils.hpp b/src/libslic3r/ParameterUtils.hpp index 795e7ff619..bf475c16bd 100644 --- a/src/libslic3r/ParameterUtils.hpp +++ b/src/libslic3r/ParameterUtils.hpp @@ -1,6 +1,8 @@ #ifndef slic3r_Parameter_Utils_hpp_ #define slic3r_Parameter_Utils_hpp_ +#include +#include #include #include #include "PrintConfig.hpp" diff --git a/src/libslic3r/PerimeterGenerator.cpp b/src/libslic3r/PerimeterGenerator.cpp index 2f8e29c237..5b775f7e25 100644 --- a/src/libslic3r/PerimeterGenerator.cpp +++ b/src/libslic3r/PerimeterGenerator.cpp @@ -1,23 +1,41 @@ #include "PerimeterGenerator.hpp" #include "AABBTreeLines.hpp" +#include "Arachne/utils/ExtrusionLine.hpp" +#include "Arachne/utils/ExtrusionJunction.hpp" #include "BridgeDetector.hpp" #include "ClipperUtils.hpp" #include "ClipperZUtils.hpp" +#include "ExPolygon.hpp" #include "ExtrusionEntity.hpp" #include "ExtrusionEntityCollection.hpp" #include "Feature/FuzzySkin/FuzzySkin.hpp" +#include "Polygon.hpp" +#include "Polyline.hpp" +#include "Point.hpp" +#include "Flow.hpp" #include "PrintConfig.hpp" #include "ShortestPath.hpp" +#include "Surface.hpp" #include "VariableWidth.hpp" #include "Arachne/WallToolPaths.hpp" #include "Geometry/ConvexHull.hpp" #include "ExPolygonCollection.hpp" #include "Geometry.hpp" #include "Line.hpp" +#include #include #include +#include +#include +#include +#include +#include +#include #include #include +#include +#include "libslic3r.h" +#include #include "libslic3r/AABBTreeLines.hpp" #include "Print.hpp" static const int overhang_sampling_number = 6; diff --git a/src/libslic3r/PerimeterGenerator.hpp b/src/libslic3r/PerimeterGenerator.hpp index cd49b4acdd..c4d5b06095 100644 --- a/src/libslic3r/PerimeterGenerator.hpp +++ b/src/libslic3r/PerimeterGenerator.hpp @@ -1,8 +1,15 @@ #ifndef slic3r_PerimeterGenerator_hpp_ #define slic3r_PerimeterGenerator_hpp_ +#include "ExtrusionEntityCollection.hpp" +#include "Point.hpp" +#include "Surface.hpp" #include "libslic3r.h" +#include +#include +#include #include +#include #include #include "Layer.hpp" #include "Flow.hpp" diff --git a/src/libslic3r/PlaceholderParser.cpp b/src/libslic3r/PlaceholderParser.cpp index 1d7abcd5de..8bddfc1f10 100644 --- a/src/libslic3r/PlaceholderParser.cpp +++ b/src/libslic3r/PlaceholderParser.cpp @@ -1,12 +1,52 @@ #include "PlaceholderParser.hpp" +#include "Config.hpp" #include "Exception.hpp" #include "Flow.hpp" +#include "PrintConfig.hpp" +#include "Point.hpp" #include "Utils.hpp" +#include "libslic3r_version.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "libslic3r.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include #include #include #include +#include +#include +#include +#include #include #include +#include +#include #ifdef _MSC_VER #include // provides **_environ #else diff --git a/src/libslic3r/PlaceholderParser.hpp b/src/libslic3r/PlaceholderParser.hpp index e32a4de9dc..962517a252 100644 --- a/src/libslic3r/PlaceholderParser.hpp +++ b/src/libslic3r/PlaceholderParser.hpp @@ -1,8 +1,10 @@ #ifndef slic3r_PlaceholderParser_hpp_ #define slic3r_PlaceholderParser_hpp_ +#include "Config.hpp" #include "libslic3r.h" #include +#include #include #include #include diff --git a/src/libslic3r/Platform.cpp b/src/libslic3r/Platform.cpp index d2ca27fa96..35a30712d9 100644 --- a/src/libslic3r/Platform.cpp +++ b/src/libslic3r/Platform.cpp @@ -2,6 +2,11 @@ #include #include +#include +#include +#include +#include +#include #if defined(__APPLE__) #include diff --git a/src/libslic3r/Point.cpp b/src/libslic3r/Point.cpp index 9a2c2b14cd..e3ac888ede 100644 --- a/src/libslic3r/Point.cpp +++ b/src/libslic3r/Point.cpp @@ -5,7 +5,14 @@ #include "Polyline.hpp" #include "Int128.hpp" #include "BoundingBox.hpp" +#include +#include "libslic3r.h" #include +#include +#include +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/Point.hpp b/src/libslic3r/Point.hpp index 21e5355fc5..6b8c1a81d7 100644 --- a/src/libslic3r/Point.hpp +++ b/src/libslic3r/Point.hpp @@ -2,7 +2,18 @@ #define slic3r_Point_hpp_ #include "libslic3r.h" +#include +#include +#include #include +#include +#include +#include +#include +#include +#include +#include +#include #include #include #include diff --git a/src/libslic3r/Polygon.cpp b/src/libslic3r/Polygon.cpp index b2e2888111..d7591ae27c 100644 --- a/src/libslic3r/Polygon.cpp +++ b/src/libslic3r/Polygon.cpp @@ -2,9 +2,22 @@ #include "ClipperUtils.hpp" #include "Exception.hpp" #include "Polygon.hpp" +#include "Line.hpp" +#include "Point.hpp" +#include "MultiPoint.hpp" #include "Polyline.hpp" +#include "libslic3r.h" +#include +#include +#include #include +#include +#include +#include +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/Polygon.hpp b/src/libslic3r/Polygon.hpp index 146491e281..ae312fd830 100644 --- a/src/libslic3r/Polygon.hpp +++ b/src/libslic3r/Polygon.hpp @@ -2,6 +2,13 @@ #define slic3r_Polygon_hpp_ #include "libslic3r.h" +#include +#include +#include +#include +#include +#include +#include #include #include #include "Line.hpp" diff --git a/src/libslic3r/PolygonTrimmer.cpp b/src/libslic3r/PolygonTrimmer.cpp index 2c4e06fc58..a9cdafc73b 100644 --- a/src/libslic3r/PolygonTrimmer.cpp +++ b/src/libslic3r/PolygonTrimmer.cpp @@ -1,6 +1,11 @@ #include "PolygonTrimmer.hpp" #include "EdgeGrid.hpp" #include "Geometry.hpp" +#include "Polygon.hpp" +#include +#include "Point.hpp" +#include "libslic3r.h" +#include namespace Slic3r { diff --git a/src/libslic3r/PolygonTrimmer.hpp b/src/libslic3r/PolygonTrimmer.hpp index 93e94e303f..4f0608169b 100644 --- a/src/libslic3r/PolygonTrimmer.hpp +++ b/src/libslic3r/PolygonTrimmer.hpp @@ -1,6 +1,7 @@ #ifndef slic3r_PolygonTrimmer_hpp_ #define slic3r_PolygonTrimmer_hpp_ +#include "Point.hpp" #include "libslic3r.h" #include #include diff --git a/src/libslic3r/Polyline.cpp b/src/libslic3r/Polyline.cpp index 98a5366ecf..278522bfd9 100644 --- a/src/libslic3r/Polyline.cpp +++ b/src/libslic3r/Polyline.cpp @@ -1,11 +1,21 @@ +#include "ArcFitter.hpp" #include "BoundingBox.hpp" #include "Polyline.hpp" #include "Exception.hpp" #include "ExPolygon.hpp" #include "Line.hpp" +#include "Point.hpp" +#include "MultiPoint.hpp" #include "Polygon.hpp" +#include +#include +#include +#include "libslic3r.h" +#include #include +#include #include +#include namespace Slic3r { diff --git a/src/libslic3r/Polyline.hpp b/src/libslic3r/Polyline.hpp index f52c3c9bbd..29c795db33 100644 --- a/src/libslic3r/Polyline.hpp +++ b/src/libslic3r/Polyline.hpp @@ -1,10 +1,16 @@ #ifndef slic3r_Polyline_hpp_ #define slic3r_Polyline_hpp_ +#include "Point.hpp" #include "libslic3r.h" #include "Line.hpp" #include "MultiPoint.hpp" +#include +#include +#include +#include #include +#include #include //BBS: new necessary header file #include "ArcFitter.hpp" diff --git a/src/libslic3r/Preset.cpp b/src/libslic3r/Preset.cpp index 9ba142dd21..5c87b6b03e 100644 --- a/src/libslic3r/Preset.cpp +++ b/src/libslic3r/Preset.cpp @@ -1,4 +1,30 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include #include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include #include "Config.hpp" #include "Exception.hpp" @@ -7,6 +33,9 @@ #include "AppConfig.hpp" #include "LocalesUtils.hpp" #include "ParallelResolve.hpp" +#include "Semver.hpp" +#include "PrintConfig.hpp" +#include "libslic3r_version.h" #ifdef _MSC_VER #define WIN32_LEAN_AND_MEAN diff --git a/src/libslic3r/Preset.hpp b/src/libslic3r/Preset.hpp index 0134681f9f..2b1fb372af 100644 --- a/src/libslic3r/Preset.hpp +++ b/src/libslic3r/Preset.hpp @@ -1,7 +1,13 @@ #ifndef slic3r_Preset_hpp_ #define slic3r_Preset_hpp_ +#include +#include +#include +#include #include +#include +#include #include #include #include @@ -12,10 +18,14 @@ #include #include #include +#include +#include +#include "Config.hpp" #include "PrintConfig.hpp" #include "Semver.hpp" #include "ProjectTask.hpp" +#include "libslic3r.h" //BBS: change system directories #define PRESET_SYSTEM_DIR "system" diff --git a/src/libslic3r/PresetBundle.cpp b/src/libslic3r/PresetBundle.cpp index c7c31918a5..87ffa1a822 100644 --- a/src/libslic3r/PresetBundle.cpp +++ b/src/libslic3r/PresetBundle.cpp @@ -1,16 +1,45 @@ #include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include #include +#include #include +#include +#include +#include #include +#include +#include +#include +#include +#include +#include +#include +#include #include #include "PresetBundle.hpp" +#include "Config.hpp" +#include "Exception.hpp" +#include "AppConfig.hpp" #include "ParallelResolve.hpp" +#include "Preset.hpp" #include "PresetCacheFormat.hpp" #include "PrintConfig.hpp" #include "PublishSettings.hpp" #include "FilamentMixer.hpp" +#include "Semver.hpp" #include "libslic3r.h" #include "I18N.hpp" #include "Utils.hpp" @@ -25,6 +54,11 @@ #include #include #include +#include +#include +#include +#include +#include #include #include #include @@ -43,6 +77,8 @@ #include #include #include +#include +#include // Mark string for localization and translate. #define L(s) Slic3r::I18N::translate(s) diff --git a/src/libslic3r/PresetBundle.hpp b/src/libslic3r/PresetBundle.hpp index e09ce9dcb5..46d81a9052 100644 --- a/src/libslic3r/PresetBundle.hpp +++ b/src/libslic3r/PresetBundle.hpp @@ -1,16 +1,23 @@ #ifndef slic3r_PresetBundle_hpp_ #define slic3r_PresetBundle_hpp_ +#include "Config.hpp" #include "Preset.hpp" #include "PresetCacheFormat.hpp" #include "AppConfig.hpp" +#include "PrintConfig.hpp" #include "PublishSettings.hpp" +#include "Semver.hpp" #include "enum_bitmask.hpp" +#include +#include +#include #include #include #include #include +#include #include #include #include @@ -18,6 +25,8 @@ #include #include #include +#include +#include #define DEFAULT_USER_FOLDER_NAME "default" #define BUNDLE_STRUCTURE_JSON_NAME "bundle_structure.json" diff --git a/src/libslic3r/PresetCacheFormat.cpp b/src/libslic3r/PresetCacheFormat.cpp index a45bcb77ac..01e634a581 100644 --- a/src/libslic3r/PresetCacheFormat.cpp +++ b/src/libslic3r/PresetCacheFormat.cpp @@ -1,9 +1,20 @@ #include "libslic3r/PresetCacheFormat.hpp" #include +#include +#include +#include +#include +#include +#include +#include +#include #include #include #include +#include +#include +#include #include #include @@ -14,7 +25,12 @@ #include #include #include +#include +#include "Config.hpp" +#include "PrintConfig.hpp" +#include "Semver.hpp" +#include "Preset.hpp" #include "libslic3r/Utils.hpp" namespace Slic3r { diff --git a/src/libslic3r/PresetCacheFormat.hpp b/src/libslic3r/PresetCacheFormat.hpp index 52c40bea21..8ad1c5bde5 100644 --- a/src/libslic3r/PresetCacheFormat.hpp +++ b/src/libslic3r/PresetCacheFormat.hpp @@ -1,6 +1,7 @@ #ifndef slic3r_PresetCacheFormat_hpp_ #define slic3r_PresetCacheFormat_hpp_ +#include #include #include #include diff --git a/src/libslic3r/PrincipalComponents2D.cpp b/src/libslic3r/PrincipalComponents2D.cpp index 7bdf793157..6d88320286 100644 --- a/src/libslic3r/PrincipalComponents2D.cpp +++ b/src/libslic3r/PrincipalComponents2D.cpp @@ -1,5 +1,11 @@ #include "PrincipalComponents2D.hpp" #include "Point.hpp" +#include +#include +#include "Polygon.hpp" +#include +#include "libslic3r.h" +#include namespace Slic3r { diff --git a/src/libslic3r/PrincipalComponents2D.hpp b/src/libslic3r/PrincipalComponents2D.hpp index dc8897a7a7..adf8e77a20 100644 --- a/src/libslic3r/PrincipalComponents2D.hpp +++ b/src/libslic3r/PrincipalComponents2D.hpp @@ -3,7 +3,9 @@ #include "AABBTreeLines.hpp" #include "BoundingBox.hpp" +#include "Point.hpp" #include "libslic3r.h" +#include #include #include "Polygon.hpp" diff --git a/src/libslic3r/Print.cpp b/src/libslic3r/Print.cpp index c3d157e1e6..bb91441c79 100644 --- a/src/libslic3r/Print.cpp +++ b/src/libslic3r/Print.cpp @@ -3,6 +3,56 @@ // needs the Win32 types declared already. #include #endif + +#include "PrintBase.hpp" +#include +#include +#include +#include +#include "libslic3r.h" +#include "calib.hpp" +#include +#include "CustomGCode.hpp" +#include "ObjectID.hpp" +#include +#include "Point.hpp" +#include "Polygon.hpp" +#include "Geometry.hpp" +#include +#include +#include +#include +#include "Slicing.hpp" +#include +#include "TriangleSelector.hpp" +#include "GCode/AdaptivePAProcessor.hpp" +#include +#include +#include "ExPolygon.hpp" +#include "Layer.hpp" +#include "FilamentGroup.hpp" +#include +#include "FilamentGroupUtils.hpp" +#include "MultiNozzleUtils.hpp" +#include +#include +#include "GCode/GCodeProcessor.hpp" +#include "GCode/ThumbnailData.hpp" +#include "ExtrusionEntity.hpp" +#include +#include "CommonDefs.hpp" +#include +#include +#include +#include "Surface.hpp" +#include "Circle.hpp" +#include "Polyline.hpp" +#include "ArcFitter.hpp" +#include +#include +#include +#include +#include "TriangleMesh.hpp" #include "Config.hpp" #include "Exception.hpp" #include "Print.hpp" diff --git a/src/libslic3r/Print.hpp b/src/libslic3r/Print.hpp index 13562b4355..2fe135a24c 100644 --- a/src/libslic3r/Print.hpp +++ b/src/libslic3r/Print.hpp @@ -1,6 +1,14 @@ #ifndef slic3r_Print_hpp_ #define slic3r_Print_hpp_ +#include "Config.hpp" +#include "Model.hpp" +#include "Polygon.hpp" +#include "Fill/FillBase.hpp" +#include "Polyline.hpp" +#include "ExtrusionEntity.hpp" +#include "Geometry.hpp" +#include "CommonDefs.hpp" #include "PrintBase.hpp" #include "Fill/FillAdaptive.hpp" #include "Fill/FillLightning.hpp" @@ -9,7 +17,9 @@ #include "ExtrusionEntityCollection.hpp" #include "Flow.hpp" #include "Point.hpp" +#include "PrintConfig.hpp" #include "Slicing.hpp" +#include "TriangleMesh.hpp" #include "TriangleMeshSlicer.hpp" #include "GCode/ToolOrdering.hpp" #include "GCode/WipeTower.hpp" @@ -18,13 +28,25 @@ #include "GCode/GCodeProcessor.hpp" #include "MultiMaterialSegmentation.hpp" #include "ObjectID.hpp" +#include "TriangleSelector.hpp" #include "libslic3r.h" #include +#include +#include +#include #include +#include +#include +#include +#include #include +#include +#include #include +#include +#include #include "calib.hpp" diff --git a/src/libslic3r/PrintApply.cpp b/src/libslic3r/PrintApply.cpp index 9b794d2787..6b9a559f03 100644 --- a/src/libslic3r/PrintApply.cpp +++ b/src/libslic3r/PrintApply.cpp @@ -1,10 +1,35 @@ #include "ClipperUtils.hpp" +#include "Geometry.hpp" +#include "CustomGCode.hpp" +#include "Config.hpp" #include "Model.hpp" +#include "Point.hpp" +#include "Polygon.hpp" #include "Print.hpp" #include "FilamentMixer.hpp" +#include "Slicing.hpp" +#include "libslic3r.h" +#include "PrintConfig.hpp" +#include "PrintBase.hpp" +#include "libslic3r_version.h" +#include "TriangleSelector.hpp" +#include +#include #include +#include #include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/PrintBase.cpp b/src/libslic3r/PrintBase.cpp index 4448c12c76..7b022c8c84 100644 --- a/src/libslic3r/PrintBase.cpp +++ b/src/libslic3r/PrintBase.cpp @@ -1,11 +1,23 @@ +#include "Config.hpp" #include "Exception.hpp" #include "PrintBase.hpp" #include +#include #include #include +#include +#include +#include +#include +#include +#include #include "I18N.hpp" +#include "Model.hpp" +#include "libslic3r.h" +#include "libslic3r_version.h" +#include "PlaceholderParser.hpp" //! macro used to mark string used at localization, //! return same string diff --git a/src/libslic3r/PrintBase.hpp b/src/libslic3r/PrintBase.hpp index f1b158e51f..7e2b17e48f 100644 --- a/src/libslic3r/PrintBase.hpp +++ b/src/libslic3r/PrintBase.hpp @@ -1,8 +1,15 @@ #ifndef slic3r_PrintBase_hpp_ #define slic3r_PrintBase_hpp_ +#include "Config.hpp" +#include "Polygon.hpp" #include "libslic3r.h" +#include +#include +#include +#include #include +#include #include #include #include diff --git a/src/libslic3r/PrintConfig.cpp b/src/libslic3r/PrintConfig.cpp index fbd72117cd..76073b4981 100644 --- a/src/libslic3r/PrintConfig.cpp +++ b/src/libslic3r/PrintConfig.cpp @@ -1,14 +1,35 @@ #include "PrintConfig.hpp" +#include "CommonDefs.hpp" +#include "Point.hpp" +#include "Polygon.hpp" #include "PrintConfigConstants.hpp" #include "ClipperUtils.hpp" #include "Config.hpp" #include "FilamentMixer.hpp" #include "MaterialType.hpp" #include "I18N.hpp" +#include "enum_bitmask.hpp" #include "format.hpp" #include "GCode/Thumbnails.hpp" #include +#include +#include +#include +#include +#include +#include +#include +#include "libslic3r.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include #include #include #include @@ -19,6 +40,11 @@ #include #include #include +#include +#include +#include +#include +#include namespace { std::set SplitStringAndRemoveDuplicateElement(const std::string &str, const std::string &separator) diff --git a/src/libslic3r/PrintConfig.hpp b/src/libslic3r/PrintConfig.hpp index f2c7b2810a..0a478d66dc 100644 --- a/src/libslic3r/PrintConfig.hpp +++ b/src/libslic3r/PrintConfig.hpp @@ -16,10 +16,13 @@ #ifndef slic3r_PrintConfig_hpp_ #define slic3r_PrintConfig_hpp_ +#include "Point.hpp" #include "libslic3r.h" #include "CommonDefs.hpp" #include "Config.hpp" #include "Polygon.hpp" +#include +#include #include #include #include @@ -27,6 +30,19 @@ #include #include #include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/PrintObject.cpp b/src/libslic3r/PrintObject.cpp index 699bbb99b2..d4201cf696 100644 --- a/src/libslic3r/PrintObject.cpp +++ b/src/libslic3r/PrintObject.cpp @@ -1,6 +1,12 @@ +#include "ExPolygon.hpp" +#include "Config.hpp" #include "Exception.hpp" +#include "Line.hpp" +#include "Flow.hpp" #include "Model.hpp" #include "Point.hpp" +#include "Polygon.hpp" +#include "Polyline.hpp" #include "Print.hpp" #include "BoundingBox.hpp" #include "ClipperUtils.hpp" @@ -9,6 +15,7 @@ #include "I18N.hpp" #include "Layer.hpp" #include "MutablePolygon.hpp" +#include "PrintBase.hpp" #include "PrintConfig.hpp" #include "SLA/IndexedMesh.hpp" #include "Support/SupportMaterial.hpp" @@ -18,6 +25,7 @@ #include "Slicing.hpp" #include "Tesselate.hpp" #include "TriangleMeshSlicer.hpp" +#include "TriangleSelector.hpp" #include "Utils.hpp" #include "Fill/FillAdaptive.hpp" #include "Fill/Fill.hpp" @@ -26,16 +34,39 @@ #include "format.hpp" #include "AABBTreeIndirect.hpp" #include "AABBTreeLines.hpp" +#include "libslic3r.h" +#include +#include +#include +#include +#include +#include +#include #include +#include +#include #include +#include +#include +#include +#include #include +#include +#include +#include +#include #include +#include +#include +#include #include #include #include #include #include +#include +#include #include #include @@ -45,6 +76,7 @@ #include #include +#include using namespace std::literals; diff --git a/src/libslic3r/PrintObjectSlice.cpp b/src/libslic3r/PrintObjectSlice.cpp index 14bd65c9cf..43a9b703a0 100644 --- a/src/libslic3r/PrintObjectSlice.cpp +++ b/src/libslic3r/PrintObjectSlice.cpp @@ -1,16 +1,42 @@ +#include #include +#include +#include +#include +#include +#include +#include +#include +#include #include +#include +#include +#include "BoundingBox.hpp" #include "ClipperUtils.hpp" #include "ElephantFootCompensation.hpp" +#include "ExPolygon.hpp" #include "Exception.hpp" +#include "Flow.hpp" #include "I18N.hpp" #include "Layer.hpp" +#include "Model.hpp" #include "MultiMaterialSegmentation.hpp" +#include "ObjectID.hpp" +#include "Point.hpp" +#include "Polygon.hpp" #include "Print.hpp" //BBS +#include "PrintConfig.hpp" +#include "PrintBase.hpp" #include "ShortestPath.hpp" +#include "libslic3r.h" +#include "TriangleMeshSlicer.hpp" +#include "TriangleMesh.hpp" +#include "Slicing.hpp" +#include "Surface.hpp" +#include "Utils.hpp" #include "libslic3r/Feature/Interlocking/InterlockingGenerator.hpp" //! macro used to mark string used at localization, return same string diff --git a/src/libslic3r/PrintRegion.cpp b/src/libslic3r/PrintRegion.cpp index 5c08de8b36..52018223ca 100644 --- a/src/libslic3r/PrintRegion.cpp +++ b/src/libslic3r/PrintRegion.cpp @@ -1,5 +1,13 @@ +#include "Config.hpp" #include "Exception.hpp" +#include "Flow.hpp" #include "Print.hpp" +#include +#include "PrintConfig.hpp" +#include "libslic3r.h" +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/ProjectTask.cpp b/src/libslic3r/ProjectTask.cpp index fe5fd36a45..33be040999 100644 --- a/src/libslic3r/ProjectTask.cpp +++ b/src/libslic3r/ProjectTask.cpp @@ -4,6 +4,11 @@ #include "ProjectTask.hpp" +#include +#include +#include +#include +#include #include #include #include diff --git a/src/libslic3r/ProjectTask.hpp b/src/libslic3r/ProjectTask.hpp index fd9dd2db3b..47eaa37dcc 100644 --- a/src/libslic3r/ProjectTask.hpp +++ b/src/libslic3r/ProjectTask.hpp @@ -1,6 +1,7 @@ #ifndef slic3r_ProjectTask_hpp_ #define slic3r_ProjectTask_hpp_ +#include #include #include #include diff --git a/src/libslic3r/PublishSettings.cpp b/src/libslic3r/PublishSettings.cpp index 6d28cc0af3..435c8e44eb 100644 --- a/src/libslic3r/PublishSettings.cpp +++ b/src/libslic3r/PublishSettings.cpp @@ -1,5 +1,6 @@ #include "PublishSettings.hpp" +#include "Config.hpp" #include "PresetBundle.hpp" #include "Preset.hpp" #include "PrintConfig.hpp" @@ -8,8 +9,11 @@ #include #include +#include #include #include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/QuadricEdgeCollapse.cpp b/src/libslic3r/QuadricEdgeCollapse.cpp index 5d0e3c17e8..27f820e453 100644 --- a/src/libslic3r/QuadricEdgeCollapse.cpp +++ b/src/libslic3r/QuadricEdgeCollapse.cpp @@ -1,8 +1,22 @@ #include "QuadricEdgeCollapse.hpp" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include #include #include #include "MutablePriorityQueue.hpp" +#include "libslic3r.h" +#include "Point.hpp" #include +#include +#include using namespace Slic3r; diff --git a/src/libslic3r/SLA/AGGRaster.hpp b/src/libslic3r/SLA/AGGRaster.hpp index 7c8e71c2ae..52c95eae5b 100644 --- a/src/libslic3r/SLA/AGGRaster.hpp +++ b/src/libslic3r/SLA/AGGRaster.hpp @@ -1,7 +1,14 @@ #ifndef AGGRASTER_HPP #define AGGRASTER_HPP +#include +#include +#include +#include #include +#include "libslic3r/Polygon.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/libslic3r.h" #include "libslic3r/ExPolygon.hpp" // For rasterizing @@ -15,6 +22,8 @@ #include #include #include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/SLA/BoostAdapter.hpp b/src/libslic3r/SLA/BoostAdapter.hpp index 13e0465b14..d5487808a7 100644 --- a/src/libslic3r/SLA/BoostAdapter.hpp +++ b/src/libslic3r/SLA/BoostAdapter.hpp @@ -1,10 +1,22 @@ #ifndef SLA_BOOSTADAPTER_HPP #define SLA_BOOSTADAPTER_HPP +#include +#include +#include +#include "libslic3r/libslic3r.h" +#include +#include +#include +#include +#include +#include +#include #include #include #include +#include namespace boost { namespace geometry { diff --git a/src/libslic3r/SLA/Clustering.cpp b/src/libslic3r/SLA/Clustering.cpp index 41ff1d4f09..010ce5d6e1 100644 --- a/src/libslic3r/SLA/Clustering.cpp +++ b/src/libslic3r/SLA/Clustering.cpp @@ -1,8 +1,16 @@ #include "Clustering.hpp" #include "boost/geometry/index/rtree.hpp" +#include +#include +#include +#include +#include +#include #include #include +#include +#include namespace Slic3r { namespace sla { diff --git a/src/libslic3r/SLA/Clustering.hpp b/src/libslic3r/SLA/Clustering.hpp index 269ec28822..0f1e113b22 100644 --- a/src/libslic3r/SLA/Clustering.hpp +++ b/src/libslic3r/SLA/Clustering.hpp @@ -1,6 +1,11 @@ #ifndef SLA_CLUSTERING_HPP #define SLA_CLUSTERING_HPP +#include +#include +#include +#include +#include #include #include diff --git a/src/libslic3r/SLA/ConcaveHull.cpp b/src/libslic3r/SLA/ConcaveHull.cpp index 2484fda2ff..8d361fc5b5 100644 --- a/src/libslic3r/SLA/ConcaveHull.cpp +++ b/src/libslic3r/SLA/ConcaveHull.cpp @@ -1,3 +1,10 @@ +#include "libslic3r/Point.hpp" +#include "libslic3r/libslic3r.h" +#include +#include +#include "libslic3r/Polygon.hpp" +#include +#include "libslic3r/ExPolygon.hpp" #include #include @@ -5,6 +12,8 @@ #include #include +#include +#include namespace Slic3r { namespace sla { diff --git a/src/libslic3r/SLA/ConcaveHull.hpp b/src/libslic3r/SLA/ConcaveHull.hpp index dccdafd18c..5c697c2595 100644 --- a/src/libslic3r/SLA/ConcaveHull.hpp +++ b/src/libslic3r/SLA/ConcaveHull.hpp @@ -1,6 +1,10 @@ #ifndef SLA_CONCAVEHULL_HPP #define SLA_CONCAVEHULL_HPP +#include "libslic3r/Polygon.hpp" +#include +#include "libslic3r/Point.hpp" +#include "libslic3r/libslic3r.h" #include namespace Slic3r { diff --git a/src/libslic3r/SLA/Concurrency.hpp b/src/libslic3r/SLA/Concurrency.hpp index 7299101b31..35e30d88d7 100644 --- a/src/libslic3r/SLA/Concurrency.hpp +++ b/src/libslic3r/SLA/Concurrency.hpp @@ -3,6 +3,8 @@ // FIXME: Deprecated +#include "libslic3r/Execution/Execution.hpp" +#include #include #include diff --git a/src/libslic3r/SLA/Hollowing.cpp b/src/libslic3r/SLA/Hollowing.cpp index f50cdbced2..d21744a026 100644 --- a/src/libslic3r/SLA/Hollowing.cpp +++ b/src/libslic3r/SLA/Hollowing.cpp @@ -1,5 +1,20 @@ +#include "libslic3r/SLA/JobController.hpp" +#include +#include +#include "libslic3r/libslic3r.h" +#include +#include +#include "libslic3r/Point.hpp" +#include +#include +#include "libslic3r/ExPolygon.hpp" +#include +#include "libslic3r/SLA/Concurrency.hpp" #include +#include +#include #include +#include #include #include @@ -15,6 +30,8 @@ #include #include +#include +#include //! macro used to mark string used at localization, //! return same string diff --git a/src/libslic3r/SLA/Hollowing.hpp b/src/libslic3r/SLA/Hollowing.hpp index f6beaadb24..fd06f93a34 100644 --- a/src/libslic3r/SLA/Hollowing.hpp +++ b/src/libslic3r/SLA/Hollowing.hpp @@ -1,9 +1,17 @@ #ifndef SLA_HOLLOWING_HPP #define SLA_HOLLOWING_HPP +#include "libslic3r/Point.hpp" +#include +#include +#include "libslic3r/libslic3r.h" +#include "libslic3r/ExPolygon.hpp" +#include #include #include #include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/SLA/IndexedMesh.cpp b/src/libslic3r/SLA/IndexedMesh.cpp index 65d9d90b34..d17f9497fc 100644 --- a/src/libslic3r/SLA/IndexedMesh.cpp +++ b/src/libslic3r/SLA/IndexedMesh.cpp @@ -1,10 +1,24 @@ #include "IndexedMesh.hpp" +#include "libslic3r/BoundingBox.hpp" #include "Concurrency.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/libslic3r.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include #include #include +#include #include +#include #ifdef SLIC3R_HOLE_RAYCASTER #include diff --git a/src/libslic3r/SLA/IndexedMesh.hpp b/src/libslic3r/SLA/IndexedMesh.hpp index bb2dee034c..b377064115 100644 --- a/src/libslic3r/SLA/IndexedMesh.hpp +++ b/src/libslic3r/SLA/IndexedMesh.hpp @@ -1,6 +1,12 @@ #ifndef SLA_INDEXEDMESH_H #define SLA_INDEXEDMESH_H +#include +#include +#include +#include +#include +#include #include #include diff --git a/src/libslic3r/SLA/Pad.cpp b/src/libslic3r/SLA/Pad.cpp index 8726dfa55b..887676174d 100644 --- a/src/libslic3r/SLA/Pad.cpp +++ b/src/libslic3r/SLA/Pad.cpp @@ -1,3 +1,5 @@ +#include +#include #include #include #include @@ -6,6 +8,9 @@ #include "ConcaveHull.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/ExPolygon.hpp" +#include "libslic3r/TriangleMesh.hpp" #include "boost/log/trivial.hpp" #include "ClipperUtils.hpp" #include "Tesselate.hpp" @@ -19,7 +24,11 @@ #include "SVG.hpp" #include "I18N.hpp" +#include "libslic3r/libslic3r.h" #include +#include +#include +#include //! macro used to mark string used at localization, //! return same string diff --git a/src/libslic3r/SLA/RasterBase.cpp b/src/libslic3r/SLA/RasterBase.cpp index 7240b198da..dadfa23e96 100644 --- a/src/libslic3r/SLA/RasterBase.cpp +++ b/src/libslic3r/SLA/RasterBase.cpp @@ -1,13 +1,25 @@ #ifndef SLARASTER_CPP #define SLARASTER_CPP +#include +#include +#include +#include +#include #include +#include +#include #include #include // minz image write: +#include #include +#include +#include +#include +#include namespace Slic3r { namespace sla { diff --git a/src/libslic3r/SLA/RasterBase.hpp b/src/libslic3r/SLA/RasterBase.hpp index 33d39eafbd..44b7c0dccd 100644 --- a/src/libslic3r/SLA/RasterBase.hpp +++ b/src/libslic3r/SLA/RasterBase.hpp @@ -1,8 +1,13 @@ #ifndef SLA_RASTERBASE_HPP #define SLA_RASTERBASE_HPP +#include +#include +#include "libslic3r/libslic3r.h" +#include "libslic3r/Point.hpp" #include #include +#include #include #include #include diff --git a/src/libslic3r/SLA/RasterToPolygons.cpp b/src/libslic3r/SLA/RasterToPolygons.cpp index e05a721cd8..88620831d8 100644 --- a/src/libslic3r/SLA/RasterToPolygons.cpp +++ b/src/libslic3r/SLA/RasterToPolygons.cpp @@ -1,9 +1,18 @@ #include "RasterToPolygons.hpp" #include "AGGRaster.hpp" +#include "libslic3r/ExPolygon.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/Polygon.hpp" +#include "libslic3r/libslic3r.h" #include "libslic3r/MarchingSquares.hpp" #include "MTUtils.hpp" #include "ClipperUtils.hpp" +#include +#include +#include +#include +#include namespace marchsq { diff --git a/src/libslic3r/SLA/RasterToPolygons.hpp b/src/libslic3r/SLA/RasterToPolygons.hpp index 5320887c8f..1f78865603 100644 --- a/src/libslic3r/SLA/RasterToPolygons.hpp +++ b/src/libslic3r/SLA/RasterToPolygons.hpp @@ -1,6 +1,7 @@ #ifndef RASTERTOPOLYGONS_HPP #define RASTERTOPOLYGONS_HPP +#include "libslic3r/Point.hpp" #include "libslic3r/ExPolygon.hpp" namespace Slic3r { diff --git a/src/libslic3r/SLA/ReprojectPointsOnMesh.hpp b/src/libslic3r/SLA/ReprojectPointsOnMesh.hpp index 3ad7d62b1e..881a0a0e22 100644 --- a/src/libslic3r/SLA/ReprojectPointsOnMesh.hpp +++ b/src/libslic3r/SLA/ReprojectPointsOnMesh.hpp @@ -7,7 +7,9 @@ #include "IndexedMesh.hpp" #include "libslic3r/Model.hpp" +#include #include +#include namespace Slic3r { namespace sla { diff --git a/src/libslic3r/SLA/Rotfinder.cpp b/src/libslic3r/SLA/Rotfinder.cpp index 196646dc9e..8134fb1d6c 100644 --- a/src/libslic3r/SLA/Rotfinder.cpp +++ b/src/libslic3r/SLA/Rotfinder.cpp @@ -1,3 +1,10 @@ +#include +#include +#include +#include +#include +#include +#include #include #include @@ -8,12 +15,19 @@ #include #include +#include "libslic3r/Point.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/Execution/Execution.hpp" +#include "libslic3r/Model.hpp" +#include "libslic3r/Optimize/Optimizer.hpp" +#include "libslic3r/BoundingBox.hpp" #include "libslic3r/SLAPrint.hpp" #include "libslic3r/PrintConfig.hpp" #include #include +#include namespace Slic3r { namespace sla { diff --git a/src/libslic3r/SLA/Rotfinder.hpp b/src/libslic3r/SLA/Rotfinder.hpp index d632419fb3..ba0f23b310 100644 --- a/src/libslic3r/SLA/Rotfinder.hpp +++ b/src/libslic3r/SLA/Rotfinder.hpp @@ -5,6 +5,7 @@ #include #include +#include namespace Slic3r { diff --git a/src/libslic3r/SLA/SpatIndex.cpp b/src/libslic3r/SLA/SpatIndex.cpp index d95ba55bee..3e36b4943e 100644 --- a/src/libslic3r/SLA/SpatIndex.cpp +++ b/src/libslic3r/SLA/SpatIndex.cpp @@ -1,7 +1,15 @@ #include "SpatIndex.hpp" +#include "libslic3r/BoundingBox.hpp" // for concave hull merging decisions +#include +#include +#include +#include +#include #include +#include +#include #ifdef _MSC_VER #pragma warning(push) diff --git a/src/libslic3r/SLA/SpatIndex.hpp b/src/libslic3r/SLA/SpatIndex.hpp index ef059d3ae6..a35806800c 100644 --- a/src/libslic3r/SLA/SpatIndex.hpp +++ b/src/libslic3r/SLA/SpatIndex.hpp @@ -1,6 +1,9 @@ #ifndef SLA_SPATINDEX_HPP #define SLA_SPATINDEX_HPP +#include +#include +#include #include #include #include diff --git a/src/libslic3r/SLA/SupportPoint.hpp b/src/libslic3r/SLA/SupportPoint.hpp index 71849a3643..6c2cf88075 100644 --- a/src/libslic3r/SLA/SupportPoint.hpp +++ b/src/libslic3r/SLA/SupportPoint.hpp @@ -1,7 +1,11 @@ #ifndef SLA_SUPPORTPOINT_HPP #define SLA_SUPPORTPOINT_HPP +#include +#include +#include "libslic3r/libslic3r.h" #include +#include namespace Slic3r { namespace sla { diff --git a/src/libslic3r/SLA/SupportPointGenerator.cpp b/src/libslic3r/SLA/SupportPointGenerator.cpp index e3cca1324f..f63430bede 100644 --- a/src/libslic3r/SLA/SupportPointGenerator.cpp +++ b/src/libslic3r/SLA/SupportPointGenerator.cpp @@ -1,6 +1,15 @@ //#include "igl/random_points_on_mesh.h" //#include "igl/AABB.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include #include #include "SupportPointGenerator.hpp" @@ -8,6 +17,9 @@ #include "Concurrency.hpp" #include "Model.hpp" #include "ExPolygon.hpp" +#include "libslic3r/SLA/IndexedMesh.hpp" +#include "libslic3r/SLA/SupportPoint.hpp" +#include "libslic3r/Polygon.hpp" #include "SVG.hpp" #include "Point.hpp" #include "ClipperUtils.hpp" @@ -17,6 +29,9 @@ #include #include +#include +#include +#include namespace Slic3r { namespace sla { diff --git a/src/libslic3r/SLA/SupportPointGenerator.hpp b/src/libslic3r/SLA/SupportPointGenerator.hpp index 17daed9f30..e48fa05335 100644 --- a/src/libslic3r/SLA/SupportPointGenerator.hpp +++ b/src/libslic3r/SLA/SupportPointGenerator.hpp @@ -1,6 +1,13 @@ #ifndef SLA_SUPPORTPOINTGENERATOR_HPP #define SLA_SUPPORTPOINTGENERATOR_HPP +#include "libslic3r/ExPolygon.hpp" +#include +#include "libslic3r/Polygon.hpp" +#include +#include "libslic3r/libslic3r.h" +#include +#include #include #include @@ -11,6 +18,9 @@ #include #include +#include +#include +#include // #define SLA_SUPPORTPOINTGEN_DEBUG diff --git a/src/libslic3r/SLA/SupportTree.cpp b/src/libslic3r/SLA/SupportTree.cpp index a0f88ed608..4de28ca45b 100644 --- a/src/libslic3r/SLA/SupportTree.cpp +++ b/src/libslic3r/SLA/SupportTree.cpp @@ -3,6 +3,12 @@ * */ +#include "libslic3r/TriangleMesh.hpp" +#include "libslic3r/ExPolygon.hpp" +#include "libslic3r/libslic3r.h" +#include +#include +#include #include #include #include @@ -18,6 +24,8 @@ #include #include #include +#include +#include //! macro used to mark string used at localization, //! return same string diff --git a/src/libslic3r/SLA/SupportTree.hpp b/src/libslic3r/SLA/SupportTree.hpp index a5e283b0dd..7511b0aaa5 100644 --- a/src/libslic3r/SLA/SupportTree.hpp +++ b/src/libslic3r/SLA/SupportTree.hpp @@ -1,6 +1,7 @@ #ifndef SLA_SUPPORTTREE_HPP #define SLA_SUPPORTTREE_HPP +#include #include #include #include diff --git a/src/libslic3r/SLA/SupportTreeBuilder.cpp b/src/libslic3r/SLA/SupportTreeBuilder.cpp index 4080c4fc3f..635b5452d1 100644 --- a/src/libslic3r/SLA/SupportTreeBuilder.cpp +++ b/src/libslic3r/SLA/SupportTreeBuilder.cpp @@ -2,6 +2,21 @@ #define NOMINMAX #endif +#include "libslic3r/SLA/SpatIndex.hpp" +#include "libslic3r/ExPolygon.hpp" +#include "libslic3r/SLA/Pad.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/MTUtils.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/TriangleMesh.hpp" +#include +#include +#include +#include +#include +#include "libslic3r/BoundingBox.hpp" +#include "libslic3r/SLA/SupportTree.hpp" + #include #include #include diff --git a/src/libslic3r/SLA/SupportTreeBuilder.hpp b/src/libslic3r/SLA/SupportTreeBuilder.hpp index df5484e3dd..de0170d854 100644 --- a/src/libslic3r/SLA/SupportTreeBuilder.hpp +++ b/src/libslic3r/SLA/SupportTreeBuilder.hpp @@ -1,12 +1,18 @@ #ifndef SLA_SUPPORTTREEBUILDER_HPP #define SLA_SUPPORTTREEBUILDER_HPP +#include "libslic3r/Point.hpp" +#include +#include +#include "libslic3r/libslic3r.h" #include #include //#include #include #include #include +#include +#include namespace Slic3r { namespace sla { diff --git a/src/libslic3r/SLA/SupportTreeBuildsteps.cpp b/src/libslic3r/SLA/SupportTreeBuildsteps.cpp index cff92b5b89..923d0f924f 100644 --- a/src/libslic3r/SLA/SupportTreeBuildsteps.cpp +++ b/src/libslic3r/SLA/SupportTreeBuildsteps.cpp @@ -1,8 +1,31 @@ +#include "libslic3r/Optimize/Optimizer.hpp" +#include "libslic3r/SLA/SupportTree.hpp" +#include "libslic3r/SLA/IndexedMesh.hpp" +#include "libslic3r/SLA/SupportTreeBuilder.hpp" +#include "libslic3r/SLA/SupportPoint.hpp" +#include +#include +#include +#include "libslic3r/SLA/Concurrency.hpp" +#include "libslic3r/libslic3r.h" +#include +#include +#include +#include "libslic3r/Point.hpp" +#include "libslic3r/SLA/Clustering.hpp" +#include +#include +#include #include #include #include #include +#include +#include +#include +#include +#include namespace Slic3r { namespace sla { diff --git a/src/libslic3r/SLA/SupportTreeBuildsteps.hpp b/src/libslic3r/SLA/SupportTreeBuildsteps.hpp index 478e2df1fe..850f35bdeb 100644 --- a/src/libslic3r/SLA/SupportTreeBuildsteps.hpp +++ b/src/libslic3r/SLA/SupportTreeBuildsteps.hpp @@ -1,12 +1,30 @@ #ifndef SLASUPPORTTREEALGORITHM_H #define SLASUPPORTTREEALGORITHM_H +#include "libslic3r/Point.hpp" +#include +#include +#include +#include "libslic3r/libslic3r.h" +#include "libslic3r/SLA/Concurrency.hpp" +#include +#include +#include "libslic3r/SLA/SupportTree.hpp" +#include "libslic3r/SLA/IndexedMesh.hpp" +#include "libslic3r/SLA/SupportPoint.hpp" +#include "libslic3r/SLA/Pad.hpp" #include +#include +#include +#include #include #include #include #include +#include +#include +#include namespace Slic3r { namespace sla { diff --git a/src/libslic3r/SLA/SupportTreeMesher.cpp b/src/libslic3r/SLA/SupportTreeMesher.cpp index 17f57f4578..0732a7ab23 100644 --- a/src/libslic3r/SLA/SupportTreeMesher.cpp +++ b/src/libslic3r/SLA/SupportTreeMesher.cpp @@ -1,4 +1,13 @@ #include "SupportTreeMesher.hpp" +#include "libslic3r/libslic3r.h" +#include +#include +#include +#include +#include "libslic3r/Point.hpp" +#include +#include +#include "libslic3r/TriangleMesh.hpp" namespace Slic3r { namespace sla { diff --git a/src/libslic3r/SLA/SupportTreeMesher.hpp b/src/libslic3r/SLA/SupportTreeMesher.hpp index 63ccc5fce3..e914bcea36 100644 --- a/src/libslic3r/SLA/SupportTreeMesher.hpp +++ b/src/libslic3r/SLA/SupportTreeMesher.hpp @@ -1,10 +1,14 @@ #ifndef SUPPORTTREEMESHER_HPP #define SUPPORTTREEMESHER_HPP +#include "libslic3r/libslic3r.h" #include "libslic3r/Point.hpp" #include "libslic3r/SLA/SupportTreeBuilder.hpp" #include "libslic3r/TriangleMesh.hpp" +#include +#include +#include //#include "libslic3r/SLA/Contour3D.hpp" namespace Slic3r { namespace sla { diff --git a/src/libslic3r/SLAPrint.cpp b/src/libslic3r/SLAPrint.cpp index eb37ca578c..336143c764 100644 --- a/src/libslic3r/SLAPrint.cpp +++ b/src/libslic3r/SLAPrint.cpp @@ -1,17 +1,42 @@ #include "SLAPrint.hpp" +#include "PrintConfig.hpp" +#include "SLA/SupportTree.hpp" +#include "SLA/Pad.hpp" +#include "Point.hpp" +#include "Model.hpp" +#include "ObjectID.hpp" +#include "Config.hpp" +#include "PrintBase.hpp" +#include "SLA/SupportPoint.hpp" +#include "Polygon.hpp" +#include "ExPolygon.hpp" +#include "SLA/Hollowing.hpp" #include "SLAPrintSteps.hpp" #include "ClipperUtils.hpp" #include "Geometry.hpp" #include "MTUtils.hpp" #include "Thread.hpp" +#include "libslic3r.h" +#include "Utils.hpp" +#include +#include +#include +#include +#include +#include +#include +#include +#include #include #include #include #include #include +#include +#include // #define SLAPRINT_DO_BENCHMARK diff --git a/src/libslic3r/SLAPrint.hpp b/src/libslic3r/SLAPrint.hpp index 0eaa44a754..7b863f7380 100644 --- a/src/libslic3r/SLAPrint.hpp +++ b/src/libslic3r/SLAPrint.hpp @@ -1,15 +1,35 @@ #ifndef slic3r_SLAPrint_hpp_ #define slic3r_SLAPrint_hpp_ +#include +#include +#include #include +#include +#include +#include #include +#include "ObjectID.hpp" +#include +#include "ExPolygon.hpp" +#include +#include "Config.hpp" +#include +#include "Polygon.hpp" +#include #include "PrintBase.hpp" +#include "PrintConfig.hpp" +#include "SLA/Hollowing.hpp" +#include "SLA/JobController.hpp" +#include "SLA/Pad.hpp" #include "SLA/RasterBase.hpp" +#include "SLA/SupportPoint.hpp" #include "SLA/SupportTree.hpp" #include "Execution/ExecutionTBB.hpp" #include "Point.hpp" #include "MTUtils.hpp" #include "Zipper.hpp" +#include "libslic3r.h" namespace Slic3r { diff --git a/src/libslic3r/SLAPrintSteps.cpp b/src/libslic3r/SLAPrintSteps.cpp index 04c65644d0..51c2e6ef9f 100644 --- a/src/libslic3r/SLAPrintSteps.cpp +++ b/src/libslic3r/SLAPrintSteps.cpp @@ -1,3 +1,13 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include #include #include @@ -18,8 +28,23 @@ #include #include +#include +#include +#include "ExPolygon.hpp" +#include "Execution/ExecutionTBB.hpp" #include "I18N.hpp" +#include "SLAPrint.hpp" +#include "Point.hpp" +#include "libslic3r.h" +#include "SLA/Hollowing.hpp" +#include "TriangleMesh.hpp" +#include "Line.hpp" +#include "Model.hpp" +#include "SLA/SupportPoint.hpp" +#include "SLA/JobController.hpp" +#include "SLA/SupportTree.hpp" +#include "SLA/RasterBase.hpp" //! macro used to mark string used at localization, //! return same string diff --git a/src/libslic3r/SLAPrintSteps.hpp b/src/libslic3r/SLAPrintSteps.hpp index 19b64d4a98..8d1ca12179 100644 --- a/src/libslic3r/SLAPrintSteps.hpp +++ b/src/libslic3r/SLAPrintSteps.hpp @@ -1,12 +1,15 @@ #ifndef SLAPRINTSTEPS_HPP #define SLAPRINTSTEPS_HPP +#include +#include "libslic3r.h" #include #include #include #include +#include namespace Slic3r { diff --git a/src/libslic3r/SVG.cpp b/src/libslic3r/SVG.cpp index 206158edd7..ebd4343425 100644 --- a/src/libslic3r/SVG.cpp +++ b/src/libslic3r/SVG.cpp @@ -1,8 +1,28 @@ #include "SVG.hpp" +#include +#include +#include +#include +#include "BoundingBox.hpp" +#include "libslic3r.h" +#include "Line.hpp" +#include "Point.hpp" +#include +#include "ExPolygon.hpp" +#include "Polygon.hpp" +#include "Surface.hpp" +#include "Polyline.hpp" +#include "MultiPoint.hpp" +#include +#include #include #include #include +#include +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/SVG.hpp b/src/libslic3r/SVG.hpp index d677f48375..838c1cdc73 100644 --- a/src/libslic3r/SVG.hpp +++ b/src/libslic3r/SVG.hpp @@ -1,11 +1,20 @@ #ifndef slic3r_SVG_hpp_ #define slic3r_SVG_hpp_ +#include "Point.hpp" +#include "Polygon.hpp" +#include "Polyline.hpp" +#include "MultiPoint.hpp" #include "libslic3r.h" #include "ExPolygon.hpp" #include "Line.hpp" #include "TriangleMesh.hpp" #include "Surface.hpp" +#include +#include +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/Semver.cpp b/src/libslic3r/Semver.cpp index 5d36b39f72..f052ba6bdb 100644 --- a/src/libslic3r/Semver.cpp +++ b/src/libslic3r/Semver.cpp @@ -1,4 +1,6 @@ +#include "Semver.hpp" #include "libslic3r.h" +#include "libslic3r_version.h" namespace Slic3r { diff --git a/src/libslic3r/Semver.hpp b/src/libslic3r/Semver.hpp index d3683b4eb8..7c79f404ce 100644 --- a/src/libslic3r/Semver.hpp +++ b/src/libslic3r/Semver.hpp @@ -1,12 +1,17 @@ #ifndef slic3r_Semver_hpp_ #define slic3r_Semver_hpp_ +#include +#include +#include +#include #include #include #include #include #include #include +#include #include "semver/semver.h" diff --git a/src/libslic3r/Shape/TextShape.cpp b/src/libslic3r/Shape/TextShape.cpp index 4f32b9d857..cc7a7d555d 100644 --- a/src/libslic3r/Shape/TextShape.cpp +++ b/src/libslic3r/Shape/TextShape.cpp @@ -4,13 +4,36 @@ #include "TextShape.hpp" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include #include +#include #include +#include "libslic3r/Point.hpp" #include "Standard_TypeDef.hxx" #include "STEPCAFControl_Reader.hxx" #include "BRepMesh_IncrementalMesh.hxx" #include "Interface_Static.hxx" +#include "libslic3r/Utils.hpp" #include "XCAFDoc_DocumentTool.hxx" #include "XCAFDoc_ShapeTool.hxx" #include "XCAFApp_Application.hxx" diff --git a/src/libslic3r/Shape/TextShape.hpp b/src/libslic3r/Shape/TextShape.hpp index d093c2da42..28abf4d7ea 100644 --- a/src/libslic3r/Shape/TextShape.hpp +++ b/src/libslic3r/Shape/TextShape.hpp @@ -2,6 +2,9 @@ #define slic3r_Text_Shape_hpp_ #include "libslic3r/TriangleMesh.hpp" +#include +#include +#include namespace Slic3r { class TriangleMesh; diff --git a/src/libslic3r/ShortEdgeCollapse.cpp b/src/libslic3r/ShortEdgeCollapse.cpp index 3397daf55c..59637b4dae 100644 --- a/src/libslic3r/ShortEdgeCollapse.cpp +++ b/src/libslic3r/ShortEdgeCollapse.cpp @@ -1,10 +1,14 @@ #include "ShortEdgeCollapse.hpp" +#include "Point.hpp" +#include "TriangleMesh.hpp" #include "libslic3r/NormalUtils.hpp" +#include #include #include #include #include +#include namespace Slic3r { diff --git a/src/libslic3r/ShortEdgeCollapse.hpp b/src/libslic3r/ShortEdgeCollapse.hpp index e6f1822c89..f62a082828 100644 --- a/src/libslic3r/ShortEdgeCollapse.hpp +++ b/src/libslic3r/ShortEdgeCollapse.hpp @@ -2,6 +2,7 @@ #define SRC_LIBSLIC3R_SHORTEDGECOLLAPSE_HPP_ #include "libslic3r/TriangleMesh.hpp" +#include namespace Slic3r{ diff --git a/src/libslic3r/ShortestPath.cpp b/src/libslic3r/ShortestPath.cpp index 301a804753..0b31a66919 100644 --- a/src/libslic3r/ShortestPath.cpp +++ b/src/libslic3r/ShortestPath.cpp @@ -1,3 +1,18 @@ +#include "ExtrusionEntity.hpp" +#include +#include +#include +#include "Point.hpp" +#include +#include +#include +#include "ExPolygon.hpp" +#include "BoundingBox.hpp" +#include +#include "Polyline.hpp" +#include +#include "Line.hpp" +#include "libslic3r.h" #if 0 #pragma optimize("", off) #undef NDEBUG diff --git a/src/libslic3r/ShortestPath.hpp b/src/libslic3r/ShortestPath.hpp index f4ce89a16b..d8cd7a025f 100644 --- a/src/libslic3r/ShortestPath.hpp +++ b/src/libslic3r/ShortestPath.hpp @@ -1,10 +1,12 @@ #ifndef slic3r_ShortestPath_hpp_ #define slic3r_ShortestPath_hpp_ +#include "Polyline.hpp" #include "libslic3r.h" #include "ExtrusionEntity.hpp" #include "Point.hpp" +#include #include #include #include diff --git a/src/libslic3r/SlicesToTriangleMesh.cpp b/src/libslic3r/SlicesToTriangleMesh.cpp index 3b55cf066b..a536bc0d5e 100644 --- a/src/libslic3r/SlicesToTriangleMesh.cpp +++ b/src/libslic3r/SlicesToTriangleMesh.cpp @@ -1,14 +1,21 @@ +#include +#include #include #include "SlicesToTriangleMesh.hpp" //#include "libslic3r/MTUtils.hpp" +#include "Polygon.hpp" +#include "Point.hpp" +#include "TriangleMesh.hpp" +#include "Execution/Execution.hpp" #include "libslic3r/Execution/ExecutionTBB.hpp" #include "libslic3r/ClipperUtils.hpp" #include "libslic3r/Tesselate.hpp" #include #include +#include namespace Slic3r { diff --git a/src/libslic3r/SlicesToTriangleMesh.hpp b/src/libslic3r/SlicesToTriangleMesh.hpp index 57b540d9fb..f3177a7622 100644 --- a/src/libslic3r/SlicesToTriangleMesh.hpp +++ b/src/libslic3r/SlicesToTriangleMesh.hpp @@ -3,6 +3,7 @@ #include "libslic3r/TriangleMesh.hpp" #include "libslic3r/ExPolygon.hpp" +#include namespace Slic3r { diff --git a/src/libslic3r/Slicing.cpp b/src/libslic3r/Slicing.cpp index c8c37a5a79..92bdac10e3 100644 --- a/src/libslic3r/Slicing.cpp +++ b/src/libslic3r/Slicing.cpp @@ -1,5 +1,13 @@ +#include +#include +#include +#include #include +#include +#include +#include +#include "Point.hpp" #include "libslic3r.h" #include "Slicing.hpp" #include "SlicingAdaptive.hpp" diff --git a/src/libslic3r/Slicing.hpp b/src/libslic3r/Slicing.hpp index f735ec5518..59ae27c8dd 100644 --- a/src/libslic3r/Slicing.hpp +++ b/src/libslic3r/Slicing.hpp @@ -3,10 +3,12 @@ #ifndef slic3r_Slicing_hpp_ #define slic3r_Slicing_hpp_ +#include #include #include #include #include +#include #include #include "libslic3r.h" diff --git a/src/libslic3r/SlicingAdaptive.cpp b/src/libslic3r/SlicingAdaptive.cpp index 30ff67bba5..65600b4005 100644 --- a/src/libslic3r/SlicingAdaptive.cpp +++ b/src/libslic3r/SlicingAdaptive.cpp @@ -3,8 +3,14 @@ #include "TriangleMesh.hpp" #include "SlicingAdaptive.hpp" +#include #include +#include #include +#include +#include +#include +#include // Based on the work of Florens Waserfall (@platch on github) // and his paper diff --git a/src/libslic3r/SlicingAdaptive.hpp b/src/libslic3r/SlicingAdaptive.hpp index a296553d62..99479bb8b6 100644 --- a/src/libslic3r/SlicingAdaptive.hpp +++ b/src/libslic3r/SlicingAdaptive.hpp @@ -5,6 +5,9 @@ #include "Slicing.hpp" #include "admesh/stl.h" +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/StreamUtils.hpp b/src/libslic3r/StreamUtils.hpp index 78a9ac7335..d3c6823a8f 100644 --- a/src/libslic3r/StreamUtils.hpp +++ b/src/libslic3r/StreamUtils.hpp @@ -6,6 +6,7 @@ #include "Polygon.hpp" #include "Polyline.hpp" #include "ExPolygon.hpp" +#include #include #include diff --git a/src/libslic3r/Support/SupportCommon.cpp b/src/libslic3r/Support/SupportCommon.cpp index d4495cf4a2..46ed7e968c 100644 --- a/src/libslic3r/Support/SupportCommon.cpp +++ b/src/libslic3r/Support/SupportCommon.cpp @@ -13,11 +13,27 @@ #include #include +#include +#include +#include +#include +#include #include +#include +#include +#include #include "SupportCommon.hpp" +#include "libslic3r/PrintConfig.hpp" +#include "libslic3r/Polygon.hpp" +#include "libslic3r/Slicing.hpp" +#include "libslic3r/ExtrusionEntity.hpp" +#include "libslic3r/Polyline.hpp" #include "SupportLayer.hpp" #include "SupportParameters.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/Surface.hpp" +#include "libslic3r/Utils.hpp" // #define SLIC3R_DEBUG diff --git a/src/libslic3r/Support/SupportCommon.hpp b/src/libslic3r/Support/SupportCommon.hpp index 531daaa0a8..e6f5b3e1ef 100644 --- a/src/libslic3r/Support/SupportCommon.hpp +++ b/src/libslic3r/Support/SupportCommon.hpp @@ -4,8 +4,16 @@ #include "../Layer.hpp" #include "../Polygon.hpp" #include "../Print.hpp" +#include "libslic3r/PrintConfig.hpp" +#include "libslic3r/Slicing.hpp" +#include "libslic3r/ExtrusionEntity.hpp" +#include "libslic3r/Flow.hpp" +#include "libslic3r/Fill/FillBase.hpp" #include "SupportLayer.hpp" #include "SupportParameters.hpp" +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/Support/SupportLayer.hpp b/src/libslic3r/Support/SupportLayer.hpp index 64e3be99e7..46b41df35a 100644 --- a/src/libslic3r/Support/SupportLayer.hpp +++ b/src/libslic3r/Support/SupportLayer.hpp @@ -1,8 +1,12 @@ #ifndef slic3r_SupportLayer_hpp_ #define slic3r_SupportLayer_hpp_ +#include +#include #include #include +#include +#include // for Slic3r::deque #include "../libslic3r.h" #include "../ClipperUtils.hpp" diff --git a/src/libslic3r/Support/SupportMaterial.cpp b/src/libslic3r/Support/SupportMaterial.cpp index 2850160d91..ab40c155af 100644 --- a/src/libslic3r/Support/SupportMaterial.cpp +++ b/src/libslic3r/Support/SupportMaterial.cpp @@ -1,22 +1,48 @@ #include "ClipperUtils.hpp" +#include "libslic3r/ExPolygon.hpp" #include "ExtrusionEntity.hpp" #include "ExtrusionEntityCollection.hpp" +#include "libslic3r/Flow.hpp" #include "Layer.hpp" +#include "libslic3r/Polygon.hpp" +#include "libslic3r/Polyline.hpp" #include "Print.hpp" #include "SupportMaterial.hpp" +#include "libslic3r/Slicing.hpp" +#include "libslic3r/Support/SupportLayer.hpp" +#include "libslic3r/PrintConfig.hpp" #include "SupportCommon.hpp" #include "Geometry.hpp" #include "Point.hpp" #include "MutablePolygon.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/Surface.hpp" +#include "libslic3r/TriangleSelector.hpp" +#include +#include +#include +#include #include +#include +#include +#include +#include +#include +#include +#include #include #include #include +#include +#include #include #include #include +#include +#include +#include #define SUPPORT_USE_AGG_RASTERIZER diff --git a/src/libslic3r/Support/SupportMaterial.hpp b/src/libslic3r/Support/SupportMaterial.hpp index 6d5355dab1..1d5bec31b5 100644 --- a/src/libslic3r/Support/SupportMaterial.hpp +++ b/src/libslic3r/Support/SupportMaterial.hpp @@ -2,11 +2,14 @@ #define slic3r_SupportMaterial_hpp_ #include "Flow.hpp" +#include "libslic3r/Polygon.hpp" #include "PrintConfig.hpp" #include "Slicing.hpp" #include "Fill/FillBase.hpp" #include "SupportLayer.hpp" #include "SupportParameters.hpp" +#include +#include "libslic3r/libslic3r.h" namespace Slic3r { class PrintObject; diff --git a/src/libslic3r/Support/SupportParameters.hpp b/src/libslic3r/Support/SupportParameters.hpp index e9151c0c95..ebf2cc2f4e 100644 --- a/src/libslic3r/Support/SupportParameters.hpp +++ b/src/libslic3r/Support/SupportParameters.hpp @@ -1,9 +1,20 @@ #ifndef slic3r_SupportParameters_hpp_ #define slic3r_SupportParameters_hpp_ +#include #include +#include +#include +#include +#include #include "../libslic3r.h" #include "../Flow.hpp" +#include "../Layer.hpp" +#include "../Print.hpp" +#include "libslic3r/PrintConfig.hpp" +#include "libslic3r/Slicing.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/Geometry.hpp" namespace Slic3r { diff --git a/src/libslic3r/Support/SupportSpotsGenerator.cpp b/src/libslic3r/Support/SupportSpotsGenerator.cpp index 6fb4908e67..a3c312ee15 100644 --- a/src/libslic3r/Support/SupportSpotsGenerator.cpp +++ b/src/libslic3r/Support/SupportSpotsGenerator.cpp @@ -4,6 +4,7 @@ #include "ExPolygon.hpp" #include "ExtrusionEntity.hpp" #include "ExtrusionEntityCollection.hpp" +#include "libslic3r/Flow.hpp" #include "GCode/ExtrusionProcessor.hpp" #include "Line.hpp" #include "Point.hpp" @@ -20,6 +21,7 @@ #include "tbb/parallel_reduce.h" #include #include +#include #include #include #include diff --git a/src/libslic3r/Support/SupportSpotsGenerator.hpp b/src/libslic3r/Support/SupportSpotsGenerator.hpp index 615158dabb..e3c3245d47 100644 --- a/src/libslic3r/Support/SupportSpotsGenerator.hpp +++ b/src/libslic3r/Support/SupportSpotsGenerator.hpp @@ -8,6 +8,8 @@ #include "MaterialType.hpp" #include #include +#include +#include #include diff --git a/src/libslic3r/Support/TreeModelVolumes.cpp b/src/libslic3r/Support/TreeModelVolumes.cpp index e933ac3c1b..5d1a3bdb20 100644 --- a/src/libslic3r/Support/TreeModelVolumes.cpp +++ b/src/libslic3r/Support/TreeModelVolumes.cpp @@ -7,6 +7,8 @@ // CuraEngine is released under the terms of the AGPLv3 or higher. #include "TreeModelVolumes.hpp" +#include "libslic3r/Polygon.hpp" +#include "libslic3r/ExPolygon.hpp" #include "TreeSupportCommon.hpp" #include "../BuildVolume.hpp" @@ -18,13 +20,26 @@ #include "../PrintConfig.hpp" #include "../Utils.hpp" #include "../format.hpp" +#include "libslic3r/libslic3r.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include #include #include #include #include +#include +#include +#include namespace Slic3r::TreeSupport3D { diff --git a/src/libslic3r/Support/TreeModelVolumes.hpp b/src/libslic3r/Support/TreeModelVolumes.hpp index eff4cadcaf..b2c1226dfe 100644 --- a/src/libslic3r/Support/TreeModelVolumes.hpp +++ b/src/libslic3r/Support/TreeModelVolumes.hpp @@ -9,16 +9,25 @@ #ifndef slic3r_TreeModelVolumes_hpp #define slic3r_TreeModelVolumes_hpp +#include +#include +#include +#include +#include #include +#include #include #include +#include +#include #include "TreeSupportCommon.hpp" #include "../Point.hpp" #include "../Polygon.hpp" #include "../PrintConfig.hpp" +#include "libslic3r/libslic3r.h" namespace Slic3r { diff --git a/src/libslic3r/Support/TreeSupport.cpp b/src/libslic3r/Support/TreeSupport.cpp index a50b328dbe..10467012ff 100644 --- a/src/libslic3r/Support/TreeSupport.cpp +++ b/src/libslic3r/Support/TreeSupport.cpp @@ -1,6 +1,31 @@ +#include +#include +#include #include +#include +#include +#include +#include +#include +#include +#include +#include +#include #include +#include "libslic3r/Point.hpp" +#include "libslic3r/Polygon.hpp" +#include "libslic3r/Surface.hpp" +#include "libslic3r/ExPolygon.hpp" +#include "libslic3r/Line.hpp" +#include "libslic3r/PrintConfig.hpp" +#include "libslic3r/Geometry.hpp" +#include "libslic3r/TriangleSelector.hpp" +#include "libslic3r/ExtrusionEntity.hpp" +#include "libslic3r/Flow.hpp" +#include "libslic3r/Polyline.hpp" +#include "libslic3r/Support/SupportParameters.hpp" +#include "libslic3r/Utils.hpp" #include "format.hpp" #include "ClipperUtils.hpp" #include "Fill/FillBase.hpp" @@ -14,10 +39,17 @@ #include "TreeSupportCommon.hpp" #include "TreeSupport.hpp" #include "TreeSupport3D.hpp" +#include "libslic3r/libslic3r.h" #include #include +#include +#include +#include +#include +#include +#include #include #include #include @@ -26,6 +58,11 @@ #include #include +#include +#include +#include +#include +#include #ifndef M_PI #define M_PI 3.1415926535897932384626433832795 diff --git a/src/libslic3r/Support/TreeSupport.hpp b/src/libslic3r/Support/TreeSupport.hpp index bd5a154e26..e0da1f40c7 100644 --- a/src/libslic3r/Support/TreeSupport.hpp +++ b/src/libslic3r/Support/TreeSupport.hpp @@ -1,12 +1,26 @@ #ifndef TREESUPPORT_H #define TREESUPPORT_H +#include +#include #include +#include +#include +#include +#include +#include +#include #include +#include +#include #include "ExPolygon.hpp" #include "Point.hpp" +#include "libslic3r/Polygon.hpp" #include "Slicing.hpp" #include "MinimumSpanningTree.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/Support/TreeSupportCommon.hpp" +#include "libslic3r/Support/SupportParameters.hpp" #include "tbb/concurrent_unordered_map.h" #include "Flow.hpp" #include "PrintConfig.hpp" diff --git a/src/libslic3r/Support/TreeSupport3D.cpp b/src/libslic3r/Support/TreeSupport3D.cpp index c9fceabaea..09f741ec25 100644 --- a/src/libslic3r/Support/TreeSupport3D.cpp +++ b/src/libslic3r/Support/TreeSupport3D.cpp @@ -12,20 +12,47 @@ #include "BuildVolume.hpp" #include "ClipperUtils.hpp" #include "EdgeGrid.hpp" +#include "libslic3r/Exception.hpp" +#include "libslic3r/ExPolygon.hpp" #include "Fill/Fill.hpp" +#include "libslic3r/Flow.hpp" +#include "libslic3r/Fill/FillBase.hpp" #include "Layer.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/Line.hpp" #include "Print.hpp" #include "MultiPoint.hpp" #include "Polygon.hpp" #include "Polyline.hpp" #include "MutablePolygon.hpp" +#include "libslic3r/Support/TreeSupportCommon.hpp" +#include "libslic3r/PrintConfig.hpp" +#include "libslic3r/Support/TreeModelVolumes.hpp" +#include "libslic3r/Support/SupportParameters.hpp" +#include "libslic3r/Support/SupportLayer.hpp" #include "SupportCommon.hpp" +#include "libslic3r/Surface.hpp" #include "TriangleMeshSlicer.hpp" #include "TreeSupport.hpp" #include "I18N.hpp" +#include "libslic3r/libslic3r.h" +#include "libslic3r/Utils.hpp" +#include +#include +#include #include #include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include #include #include #include @@ -36,6 +63,10 @@ #include #include #include +#include +#include +#include +#include #if defined(TREE_SUPPORT_SHOW_ERRORS) && defined(_WIN32) #define TREE_SUPPORT_SHOW_ERRORS_WIN32 diff --git a/src/libslic3r/Support/TreeSupport3D.hpp b/src/libslic3r/Support/TreeSupport3D.hpp index a333edb962..65a5e22975 100644 --- a/src/libslic3r/Support/TreeSupport3D.hpp +++ b/src/libslic3r/Support/TreeSupport3D.hpp @@ -9,6 +9,8 @@ #ifndef slic3r_TreeSupport_hpp #define slic3r_TreeSupport_hpp +#include "libslic3r/Polygon.hpp" +#include "libslic3r/Layer.hpp" #include "SupportLayer.hpp" #include "TreeModelVolumes.hpp" #include "TreeSupportCommon.hpp" @@ -16,8 +18,16 @@ #include "../BoundingBox.hpp" #include "../Point.hpp" #include "../Utils.hpp" +#include "libslic3r/libslic3r.h" #include +#include +#include +#include +#include +#include +#include +#include // #define TREE_SUPPORT_SHOW_ERRORS diff --git a/src/libslic3r/Support/TreeSupportCommon.hpp b/src/libslic3r/Support/TreeSupportCommon.hpp index fb08a1a928..97a0e31eb3 100644 --- a/src/libslic3r/Support/TreeSupportCommon.hpp +++ b/src/libslic3r/Support/TreeSupportCommon.hpp @@ -11,10 +11,28 @@ #include "../libslic3r.h" #include "../Polygon.hpp" +#include "libslic3r/PrintConfig.hpp" +#include "libslic3r/Slicing.hpp" +#include "libslic3r/Print.hpp" +#include "libslic3r/Flow.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/Support/SupportParameters.hpp" +#include "libslic3r/Support/SupportLayer.hpp" #include "SupportCommon.hpp" +#include "libslic3r/Utils.hpp" #include +#include +#include +#include +#include +#include +#include +#include +#include #include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/Surface.cpp b/src/libslic3r/Surface.cpp index 58ac7294cc..cb7d0d4674 100644 --- a/src/libslic3r/Surface.cpp +++ b/src/libslic3r/Surface.cpp @@ -1,6 +1,11 @@ #include "BoundingBox.hpp" #include "Surface.hpp" +#include "Polygon.hpp" +#include "Point.hpp" +#include "ExPolygon.hpp" #include "SVG.hpp" +#include +#include "libslic3r.h" namespace Slic3r { diff --git a/src/libslic3r/Surface.hpp b/src/libslic3r/Surface.hpp index b63c283251..1849e3462a 100644 --- a/src/libslic3r/Surface.hpp +++ b/src/libslic3r/Surface.hpp @@ -1,8 +1,16 @@ #ifndef slic3r_Surface_hpp_ #define slic3r_Surface_hpp_ +#include "Polygon.hpp" +#include "Line.hpp" +#include "Point.hpp" #include "libslic3r.h" #include "ExPolygon.hpp" +#include +#include +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/SurfaceCollection.cpp b/src/libslic3r/SurfaceCollection.cpp index 83015c3e6a..47109b9965 100644 --- a/src/libslic3r/SurfaceCollection.cpp +++ b/src/libslic3r/SurfaceCollection.cpp @@ -1,8 +1,18 @@ #include "SurfaceCollection.hpp" #include "BoundingBox.hpp" +#include "ExPolygon.hpp" +#include "Polygon.hpp" +#include "Point.hpp" #include "SVG.hpp" +#include "Surface.hpp" +#include +#include +#include +#include #include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/SurfaceCollection.hpp b/src/libslic3r/SurfaceCollection.hpp index 1895516aa2..3b6316e0a4 100644 --- a/src/libslic3r/SurfaceCollection.hpp +++ b/src/libslic3r/SurfaceCollection.hpp @@ -1,9 +1,13 @@ #ifndef slic3r_SurfaceCollection_hpp_ #define slic3r_SurfaceCollection_hpp_ +#include "Polygon.hpp" +#include "ExPolygon.hpp" #include "libslic3r.h" #include "Surface.hpp" +#include #include +#include #include namespace Slic3r { diff --git a/src/libslic3r/SurfaceMesh.hpp b/src/libslic3r/SurfaceMesh.hpp index 82dff2e22d..221c584697 100644 --- a/src/libslic3r/SurfaceMesh.hpp +++ b/src/libslic3r/SurfaceMesh.hpp @@ -2,8 +2,13 @@ #define slic3r_SurfaceMesh_hpp_ #include +#include +#include +#include #include +#include +#include "Point.hpp" #include "boost/container/small_vector.hpp" namespace Slic3r { diff --git a/src/libslic3r/Tesselate.cpp b/src/libslic3r/Tesselate.cpp index febb3d0e74..be7087a311 100644 --- a/src/libslic3r/Tesselate.cpp +++ b/src/libslic3r/Tesselate.cpp @@ -1,8 +1,17 @@ #include "Tesselate.hpp" #include "ExPolygon.hpp" +#include "Point.hpp" +#include "libslic3r.h" +#include +#include +#include +#include +#include #include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/Tesselate.hpp b/src/libslic3r/Tesselate.hpp index 2dbe6caa10..f9effa242d 100644 --- a/src/libslic3r/Tesselate.hpp +++ b/src/libslic3r/Tesselate.hpp @@ -4,6 +4,7 @@ #include #include "Point.hpp" +#include "libslic3r.h" namespace Slic3r { diff --git a/src/libslic3r/TextConfiguration.hpp b/src/libslic3r/TextConfiguration.hpp index 40c8c836ac..753cec71ba 100644 --- a/src/libslic3r/TextConfiguration.hpp +++ b/src/libslic3r/TextConfiguration.hpp @@ -1,6 +1,7 @@ #ifndef slic3r_TextConfiguration_hpp_ #define slic3r_TextConfiguration_hpp_ +#include #include #include #include @@ -9,6 +10,7 @@ #include #include #include "Point.hpp" // Transform3d +#include "libslic3r.h" namespace Slic3r { diff --git a/src/libslic3r/TextureBake/TextureBakeDebug.cpp b/src/libslic3r/TextureBake/TextureBakeDebug.cpp index 9465080e21..7b3538da72 100644 --- a/src/libslic3r/TextureBake/TextureBakeDebug.cpp +++ b/src/libslic3r/TextureBake/TextureBakeDebug.cpp @@ -1,11 +1,19 @@ #include "TextureBakeDebug.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/TextureBake/TextureBakeIndex.hpp" #include +#include +#include #include +#include #include #include #include +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/TextureBake/TextureBakeDebug.hpp b/src/libslic3r/TextureBake/TextureBakeDebug.hpp index 5c6d987e44..b0cf0c1952 100644 --- a/src/libslic3r/TextureBake/TextureBakeDebug.hpp +++ b/src/libslic3r/TextureBake/TextureBakeDebug.hpp @@ -18,8 +18,10 @@ #include #include #include +#include #include +#include "libslic3r/Point.hpp" #include "TextureBakeIndex.hpp" namespace Slic3r { diff --git a/src/libslic3r/TextureBake/TextureBakeDecimate.cpp b/src/libslic3r/TextureBake/TextureBakeDecimate.cpp index ee335cff3c..c03607e99c 100644 --- a/src/libslic3r/TextureBake/TextureBakeDecimate.cpp +++ b/src/libslic3r/TextureBake/TextureBakeDecimate.cpp @@ -1,8 +1,13 @@ #include "TextureBakeDecimate.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/TextureBake/TextureBakeIndex.hpp" #include #include #include +#include +#include +#include #include #include @@ -10,6 +15,7 @@ #include #include +#include namespace Slic3r { namespace TextureBake { diff --git a/src/libslic3r/TextureBake/TextureBakeDecimate.hpp b/src/libslic3r/TextureBake/TextureBakeDecimate.hpp index 5579778050..8b31dbb642 100644 --- a/src/libslic3r/TextureBake/TextureBakeDecimate.hpp +++ b/src/libslic3r/TextureBake/TextureBakeDecimate.hpp @@ -10,6 +10,7 @@ // Flat-face harvesting: the loop keeps going past the triangle target while each collapse's error // stays under an absolute bound, so flat faces that cost nothing to remove are not left behind. +#include #include #include #include diff --git a/src/libslic3r/TextureBake/TextureBakeDisplace.cpp b/src/libslic3r/TextureBake/TextureBakeDisplace.cpp index 6e306b1c43..7dee94de99 100644 --- a/src/libslic3r/TextureBake/TextureBakeDisplace.cpp +++ b/src/libslic3r/TextureBake/TextureBakeDisplace.cpp @@ -1,11 +1,18 @@ #include "TextureBakeDisplace.hpp" +#include "libslic3r/TextureBake/TextureBakeIndex.hpp" +#include "libslic3r/Point.hpp" #include #include +#include +#include #include +#include #include #include +#include +#include namespace Slic3r { namespace TextureBake { diff --git a/src/libslic3r/TextureBake/TextureBakeDisplace.hpp b/src/libslic3r/TextureBake/TextureBakeDisplace.hpp index eee6ca0626..76e70d3bc5 100644 --- a/src/libslic3r/TextureBake/TextureBakeDisplace.hpp +++ b/src/libslic3r/TextureBake/TextureBakeDisplace.hpp @@ -13,6 +13,7 @@ #include #include +#include "libslic3r/Point.hpp" #include "TextureBakeIndex.hpp" namespace Slic3r { diff --git a/src/libslic3r/TextureBake/TextureBakeFlip.cpp b/src/libslic3r/TextureBake/TextureBakeFlip.cpp index f4d9997f71..8f7000a878 100644 --- a/src/libslic3r/TextureBake/TextureBakeFlip.cpp +++ b/src/libslic3r/TextureBake/TextureBakeFlip.cpp @@ -1,13 +1,20 @@ #include "TextureBakeFlip.hpp" +#include "libslic3r/TextureBake/TextureBakeIndex.hpp" +#include "libslic3r/TextureBake/TextureBakeDisplace.hpp" +#include "libslic3r/Point.hpp" #include #include #include +#include +#include #include #include #include #include +#include +#include namespace Slic3r { namespace TextureBake { diff --git a/src/libslic3r/TextureBake/TextureBakeFlip.hpp b/src/libslic3r/TextureBake/TextureBakeFlip.hpp index 02701bbced..a1057a344a 100644 --- a/src/libslic3r/TextureBake/TextureBakeFlip.hpp +++ b/src/libslic3r/TextureBake/TextureBakeFlip.hpp @@ -16,6 +16,7 @@ // flat regions cost nothing; a non-planar quad (a model crease) is never touched, nor is one whose // triangles belong to different source faces or straddle the painted boundary. +#include #include #include diff --git a/src/libslic3r/TextureBake/TextureBakeIndex.cpp b/src/libslic3r/TextureBake/TextureBakeIndex.cpp index ac7234774b..75839c746b 100644 --- a/src/libslic3r/TextureBake/TextureBakeIndex.cpp +++ b/src/libslic3r/TextureBake/TextureBakeIndex.cpp @@ -1,6 +1,9 @@ #include "TextureBakeIndex.hpp" +#include "libslic3r/Point.hpp" #include +#include +#include namespace Slic3r { namespace TextureBake { diff --git a/src/libslic3r/TextureBake/TextureBakeIndex.hpp b/src/libslic3r/TextureBake/TextureBakeIndex.hpp index 2b1dd72395..6fbfa4f831 100644 --- a/src/libslic3r/TextureBake/TextureBakeIndex.hpp +++ b/src/libslic3r/TextureBake/TextureBakeIndex.hpp @@ -11,7 +11,9 @@ #include #include +#include #include +#include #include #include "../Point.hpp" diff --git a/src/libslic3r/TextureBake/TextureBakeMesh.cpp b/src/libslic3r/TextureBake/TextureBakeMesh.cpp index 6f6d72218d..caf6e22d36 100644 --- a/src/libslic3r/TextureBake/TextureBakeMesh.cpp +++ b/src/libslic3r/TextureBake/TextureBakeMesh.cpp @@ -1,6 +1,11 @@ #include "TextureBakeMesh.hpp" +#include "libslic3r/TextureBake/TextureBakeIndex.hpp" +#include "libslic3r/Point.hpp" #include +#include +#include +#include namespace Slic3r { namespace TextureBake { diff --git a/src/libslic3r/TextureBake/TextureBakeMesh.hpp b/src/libslic3r/TextureBake/TextureBakeMesh.hpp index b4e3ced5fe..860aa1445d 100644 --- a/src/libslic3r/TextureBake/TextureBakeMesh.hpp +++ b/src/libslic3r/TextureBake/TextureBakeMesh.hpp @@ -5,6 +5,8 @@ #include "TextureBakeIndex.hpp" #include "../TriangleMesh.hpp" +#include +#include namespace Slic3r { namespace TextureBake { diff --git a/src/libslic3r/TextureBake/TextureBakePipeline.cpp b/src/libslic3r/TextureBake/TextureBakePipeline.cpp index 2b678905b1..b44ae837bc 100644 --- a/src/libslic3r/TextureBake/TextureBakePipeline.cpp +++ b/src/libslic3r/TextureBake/TextureBakePipeline.cpp @@ -1,8 +1,21 @@ #include "TextureBakePipeline.hpp" +#include +#include +#include +#include #include #include +#include "libslic3r/TextureBake/TextureBakeIndex.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/TextureBake/TextureBakeDisplace.hpp" +#include "libslic3r/TextureBake/TextureBakeSubdivide.hpp" +#include "libslic3r/TextureBake/TextureBakeRegularize.hpp" +#include "libslic3r/TextureBake/TextureBakeRelocate.hpp" +#include "libslic3r/TextureBake/TextureBakeFlip.hpp" +#include "libslic3r/TextureBake/TextureBakeDecimate.hpp" +#include "libslic3r/TextureBake/TextureBakeRepair.hpp" #include "TextureBakeDebug.hpp" #include @@ -11,6 +24,8 @@ #include #include +#include +#include namespace Slic3r { namespace TextureBake { diff --git a/src/libslic3r/TextureBake/TextureBakePipeline.hpp b/src/libslic3r/TextureBake/TextureBakePipeline.hpp index e230cf0d49..43429ce22f 100644 --- a/src/libslic3r/TextureBake/TextureBakePipeline.hpp +++ b/src/libslic3r/TextureBake/TextureBakePipeline.hpp @@ -13,10 +13,12 @@ // Decimation and repair are export-only - decimation drops the output-to-input face mapping a bake // needs to carry per-face data forward. +#include #include #include #include +#include "libslic3r/Point.hpp" #include "TextureBakeDecimate.hpp" #include "TextureBakeDisplace.hpp" #include "TextureBakeIndex.hpp" diff --git a/src/libslic3r/TextureBake/TextureBakeRegularize.cpp b/src/libslic3r/TextureBake/TextureBakeRegularize.cpp index 3028d8bee9..fb32eb7712 100644 --- a/src/libslic3r/TextureBake/TextureBakeRegularize.cpp +++ b/src/libslic3r/TextureBake/TextureBakeRegularize.cpp @@ -1,11 +1,18 @@ #include "TextureBakeRegularize.hpp" +#include "libslic3r/TextureBake/TextureBakeIndex.hpp" +#include "libslic3r/Point.hpp" #include #include +#include +#include +#include #include #include #include +#include +#include namespace Slic3r { namespace TextureBake { diff --git a/src/libslic3r/TextureBake/TextureBakeRegularize.hpp b/src/libslic3r/TextureBake/TextureBakeRegularize.hpp index 350666783a..b6cd5eedc3 100644 --- a/src/libslic3r/TextureBake/TextureBakeRegularize.hpp +++ b/src/libslic3r/TextureBake/TextureBakeRegularize.hpp @@ -12,6 +12,7 @@ // flattened); and the link condition must hold, or the result would be non-manifold. Boundary and // non-manifold edges are skipped outright. Rounds repeat until one achieves nothing. +#include #include #include diff --git a/src/libslic3r/TextureBake/TextureBakeRelocate.cpp b/src/libslic3r/TextureBake/TextureBakeRelocate.cpp index 5ea33b353b..405ea8e286 100644 --- a/src/libslic3r/TextureBake/TextureBakeRelocate.cpp +++ b/src/libslic3r/TextureBake/TextureBakeRelocate.cpp @@ -1,11 +1,17 @@ #include "TextureBakeRelocate.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/TextureBake/TextureBakeIndex.hpp" +#include "libslic3r/TextureBake/TextureBakeDisplace.hpp" #include #include +#include +#include #include #include #include +#include namespace Slic3r { namespace TextureBake { diff --git a/src/libslic3r/TextureBake/TextureBakeRelocate.hpp b/src/libslic3r/TextureBake/TextureBakeRelocate.hpp index cd674d03ae..36ca059dde 100644 --- a/src/libslic3r/TextureBake/TextureBakeRelocate.hpp +++ b/src/libslic3r/TextureBake/TextureBakeRelocate.hpp @@ -21,6 +21,7 @@ // Vertices in flat regions have no gradient to speak of and are left alone, so the pass costs nothing // where there is nothing to align. +#include #include #include #include diff --git a/src/libslic3r/TextureBake/TextureBakeRepair.cpp b/src/libslic3r/TextureBake/TextureBakeRepair.cpp index 438e0ea25d..49f427d461 100644 --- a/src/libslic3r/TextureBake/TextureBakeRepair.cpp +++ b/src/libslic3r/TextureBake/TextureBakeRepair.cpp @@ -1,10 +1,16 @@ #include "TextureBakeRepair.hpp" +#include "libslic3r/TextureBake/TextureBakeIndex.hpp" +#include "libslic3r/Point.hpp" #include #include #include +#include +#include #include #include +#include +#include namespace Slic3r { namespace TextureBake { diff --git a/src/libslic3r/TextureBake/TextureBakeRepair.hpp b/src/libslic3r/TextureBake/TextureBakeRepair.hpp index 35e9f50b06..07d5323059 100644 --- a/src/libslic3r/TextureBake/TextureBakeRepair.hpp +++ b/src/libslic3r/TextureBake/TextureBakeRepair.hpp @@ -7,6 +7,7 @@ // one incident face on one side, which a slicer reads as an open boundary. This splits the offending // face into a fan so every on-edge vertex becomes a real corner. +#include #include #include diff --git a/src/libslic3r/TextureBake/TextureBakeSubdivide.cpp b/src/libslic3r/TextureBake/TextureBakeSubdivide.cpp index 6b882b1fc8..967f88381a 100644 --- a/src/libslic3r/TextureBake/TextureBakeSubdivide.cpp +++ b/src/libslic3r/TextureBake/TextureBakeSubdivide.cpp @@ -1,12 +1,20 @@ #include "TextureBakeSubdivide.hpp" +#include "libslic3r/Point.hpp" +#include "libslic3r/TextureBake/TextureBakeIndex.hpp" #include #include +#include +#include +#include +#include #include #include #include #include +#include +#include namespace Slic3r { namespace TextureBake { diff --git a/src/libslic3r/TextureBake/TextureBakeSubdivide.hpp b/src/libslic3r/TextureBake/TextureBakeSubdivide.hpp index 743c74eb49..0120160345 100644 --- a/src/libslic3r/TextureBake/TextureBakeSubdivide.hpp +++ b/src/libslic3r/TextureBake/TextureBakeSubdivide.hpp @@ -8,9 +8,12 @@ // The 1->4 case is what keeps the tessellation regular - its children are similar to the parent. An // irregular one shows up after displacement as adjacent triangles tilting alternately, i.e. noise. +#include +#include #include #include +#include "libslic3r/Point.hpp" #include "TextureBakeIndex.hpp" namespace Slic3r { diff --git a/src/libslic3r/TextureDisplacement.cpp b/src/libslic3r/TextureDisplacement.cpp index 862c6c9044..46a7cb18b4 100644 --- a/src/libslic3r/TextureDisplacement.cpp +++ b/src/libslic3r/TextureDisplacement.cpp @@ -1,7 +1,10 @@ #include "TextureDisplacement.hpp" +#include +#include #include #include +#include #include #include #include @@ -11,10 +14,13 @@ #include #include #include +#include +#include #include #include #include #include +#include #include #include #include @@ -27,11 +33,16 @@ #include #include +#include +#include #include "AABBTreeIndirect.hpp" #include "MeshBoolean.hpp" #include "Model.hpp" #include "PNGReadWrite.hpp" +#include "Point.hpp" +#include "TriangleMesh.hpp" +#include "TextureBake/TextureBakeDisplace.hpp" #include "TriangleSelector.hpp" #include "TextureBake/TextureBakeDebug.hpp" #include "TextureBake/TextureBakeMesh.hpp" diff --git a/src/libslic3r/TextureDisplacement.hpp b/src/libslic3r/TextureDisplacement.hpp index e97178abca..afe6a42911 100644 --- a/src/libslic3r/TextureDisplacement.hpp +++ b/src/libslic3r/TextureDisplacement.hpp @@ -1,10 +1,13 @@ #ifndef slic3r_TextureDisplacement_hpp_ #define slic3r_TextureDisplacement_hpp_ +#include +#include #include #include #include #include +#include #include #include diff --git a/src/libslic3r/TexturePainting.cpp b/src/libslic3r/TexturePainting.cpp index 9f83f282cd..e44f870b5d 100644 --- a/src/libslic3r/TexturePainting.cpp +++ b/src/libslic3r/TexturePainting.cpp @@ -1,9 +1,15 @@ #include "TexturePainting.hpp" #include +#include #include +#include +#include #include +#include +#include #include +#include #include #include @@ -11,11 +17,15 @@ #include #include +#include +#include "Point.hpp" +#include "TextureToColor/Callbacks.hpp" #include "TextureToColor/TextureToColor.hpp" #include "TextureToColor/ColorUtils.hpp" #include "Model.hpp" +#include "TextureToColor/TriMesh.hpp" #include "TriangleMesh.hpp" #include "TriangleSelector.hpp" diff --git a/src/libslic3r/TextureToColor/CgalUtils.hpp b/src/libslic3r/TextureToColor/CgalUtils.hpp index 109d454827..1782530bcb 100644 --- a/src/libslic3r/TextureToColor/CgalUtils.hpp +++ b/src/libslic3r/TextureToColor/CgalUtils.hpp @@ -1,8 +1,10 @@ #pragma once +#include "libslic3r/Point.hpp" #include "TriMesh.hpp" #include #include #include +#include #include #include #include diff --git a/src/libslic3r/TextureToColor/ColorUtils.cpp b/src/libslic3r/TextureToColor/ColorUtils.cpp index 7127a5d364..a32b4848b2 100644 --- a/src/libslic3r/TextureToColor/ColorUtils.cpp +++ b/src/libslic3r/TextureToColor/ColorUtils.cpp @@ -1,12 +1,26 @@ #include "ColorUtils.hpp" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include #include #include #include #include #include #include +#include +#include #include +#include +#include #include #include @@ -23,11 +37,19 @@ #include #include #include +#include #include #include "CgalUtils.hpp" +#include "TriMesh.hpp" +#include "libslic3r/Point.hpp" #include "libslic3r/AABBTreeIndirect.hpp" #include +#include +#include +#include +#include +#include namespace Slic3r { namespace tex2color { namespace color_utils { diff --git a/src/libslic3r/TextureToColor/ColorUtils.hpp b/src/libslic3r/TextureToColor/ColorUtils.hpp index 05849109f4..89e6095923 100644 --- a/src/libslic3r/TextureToColor/ColorUtils.hpp +++ b/src/libslic3r/TextureToColor/ColorUtils.hpp @@ -1,7 +1,12 @@ #pragma once #include "Callbacks.hpp" +#include "libslic3r/Point.hpp" #include "TriMesh.hpp" +#include +#include +#include +#include namespace Slic3r { namespace tex2color { diff --git a/src/libslic3r/TextureToColor/Repair.hpp b/src/libslic3r/TextureToColor/Repair.hpp index 44dc30c144..092c0623fb 100644 --- a/src/libslic3r/TextureToColor/Repair.hpp +++ b/src/libslic3r/TextureToColor/Repair.hpp @@ -4,18 +4,22 @@ #include "Callbacks.hpp" #include #include +#include #include #include #include #include #include #include +#include #include #include #include #include +#include #include #include +#include namespace Slic3r { namespace tex2color { diff --git a/src/libslic3r/TextureToColor/TextureToColor.cpp b/src/libslic3r/TextureToColor/TextureToColor.cpp index e5dde36714..15a2a641af 100644 --- a/src/libslic3r/TextureToColor/TextureToColor.cpp +++ b/src/libslic3r/TextureToColor/TextureToColor.cpp @@ -1,5 +1,12 @@ #include "TextureToColor.hpp" +#include +#include +#include +#include +#include +#include +#include #include #include #include @@ -9,14 +16,20 @@ #include #include +#include "Callbacks.hpp" #include "CgalUtils.hpp" #include "ColorUtils.hpp" +#include "TriMesh.hpp" +#include "libslic3r/Point.hpp" #include "libslic3r/TriangleMesh.hpp" #include #include #include "Repair.hpp" #include "libslic3r/AABBTreeIndirect.hpp" #include +#include +#include +#include namespace Slic3r { namespace tex2color { diff --git a/src/libslic3r/TextureToColor/TextureToColor.hpp b/src/libslic3r/TextureToColor/TextureToColor.hpp index 019a113fc4..a88fe2086e 100644 --- a/src/libslic3r/TextureToColor/TextureToColor.hpp +++ b/src/libslic3r/TextureToColor/TextureToColor.hpp @@ -1,10 +1,15 @@ #pragma once #include "Callbacks.hpp" +#include "libslic3r/Point.hpp" #include "TriMesh.hpp" #include "opencv2/core.hpp" +#include +#include #include +#include #include +#include namespace Slic3r { namespace tex2color { diff --git a/src/libslic3r/TextureToColor/TriMesh.hpp b/src/libslic3r/TextureToColor/TriMesh.hpp index d557ae1d2e..63d5286ab7 100644 --- a/src/libslic3r/TextureToColor/TriMesh.hpp +++ b/src/libslic3r/TextureToColor/TriMesh.hpp @@ -1,5 +1,8 @@ #pragma once #include +#include +#include +#include #include "Point.hpp" namespace Slic3r { namespace tex2color { diff --git a/src/libslic3r/Thread.cpp b/src/libslic3r/Thread.cpp index edd7c2a3d0..066656c9ed 100644 --- a/src/libslic3r/Thread.cpp +++ b/src/libslic3r/Thread.cpp @@ -6,6 +6,14 @@ #include #endif +#include +#include +#include +#include +#include +#include +#include + #include #include #include diff --git a/src/libslic3r/Thread.hpp b/src/libslic3r/Thread.hpp index c407159072..e40cae5f26 100644 --- a/src/libslic3r/Thread.hpp +++ b/src/libslic3r/Thread.hpp @@ -1,6 +1,7 @@ #ifndef GUI_THREAD_HPP #define GUI_THREAD_HPP +#include #include #include #include diff --git a/src/libslic3r/Time.cpp b/src/libslic3r/Time.cpp index 81b9af49e2..a9f3f07352 100644 --- a/src/libslic3r/Time.cpp +++ b/src/libslic3r/Time.cpp @@ -1,6 +1,10 @@ #include "Time.hpp" #include +#include +#include +#include +#include #include #include #include @@ -8,6 +12,8 @@ #include #include #include +#include +#include #ifdef _MSC_VER #include diff --git a/src/libslic3r/Timer.cpp b/src/libslic3r/Timer.cpp index 91f3b0f09e..1a81210c58 100644 --- a/src/libslic3r/Timer.cpp +++ b/src/libslic3r/Timer.cpp @@ -1,5 +1,7 @@ #include "Timer.hpp" #include +#include +#include using namespace std::chrono; diff --git a/src/libslic3r/Timer.hpp b/src/libslic3r/Timer.hpp index 01f73a9b3e..e122c6cb1d 100644 --- a/src/libslic3r/Timer.hpp +++ b/src/libslic3r/Timer.hpp @@ -1,8 +1,10 @@ #ifndef libslic3r_Timer_hpp_ #define libslic3r_Timer_hpp_ +#include #include #include +#include namespace Slic3r { diff --git a/src/libslic3r/TriangleMesh.cpp b/src/libslic3r/TriangleMesh.cpp index 9e08e6f1e0..2f047e4e7f 100644 --- a/src/libslic3r/TriangleMesh.cpp +++ b/src/libslic3r/TriangleMesh.cpp @@ -1,5 +1,7 @@ +#include "BoundingBox.hpp" #include "Exception.hpp" #include "TriangleMesh.hpp" +#include "Polygon.hpp" #include "TriangleMeshSlicer.hpp" #include "MeshSplitImpl.hpp" #include "ClipperUtils.hpp" @@ -11,13 +13,26 @@ #include "CutUtils.hpp" #include "Utils.hpp" #include "Format/STL.hpp" +#include "libslic3r.h" +#include +#include +#include +#include +#include +#include +#include +#include #include #include +#include +#include #include #include #include #include +#include +#include #include #include #include diff --git a/src/libslic3r/TriangleMesh.hpp b/src/libslic3r/TriangleMesh.hpp index b963671ce9..8c82bac52f 100644 --- a/src/libslic3r/TriangleMesh.hpp +++ b/src/libslic3r/TriangleMesh.hpp @@ -3,6 +3,11 @@ #include "libslic3r.h" #include +#include +#include +#include +#include +#include #include #include #include "BoundingBox.hpp" diff --git a/src/libslic3r/TriangleMeshDeal.cpp b/src/libslic3r/TriangleMeshDeal.cpp index 4ea3030e51..7ecfc362d1 100644 --- a/src/libslic3r/TriangleMeshDeal.cpp +++ b/src/libslic3r/TriangleMeshDeal.cpp @@ -1,5 +1,7 @@ #include "TriangleMeshDeal.hpp" +#include "TriangleMesh.hpp" +#include #include #undef NDEBUG #include diff --git a/src/libslic3r/TriangleMeshSlicer.cpp b/src/libslic3r/TriangleMeshSlicer.cpp index 444f33c296..2bd5e94622 100644 --- a/src/libslic3r/TriangleMeshSlicer.cpp +++ b/src/libslic3r/TriangleMeshSlicer.cpp @@ -1,16 +1,29 @@ #include "ClipperUtils.hpp" +#include "ExPolygon.hpp" #include "Geometry.hpp" +#include "Point.hpp" +#include "Line.hpp" +#include "MultiPoint.hpp" +#include "Polygon.hpp" #include "Tesselate.hpp" #include "TriangleMesh.hpp" #include "TriangleMeshSlicer.hpp" #include "Utils.hpp" // BBS #include "MeshBoolean.hpp" +#include "libslic3r.h" #include +#include #include +#include +#include #include #include +#include +#include +#include +#include #include #include #include @@ -18,6 +31,7 @@ #include #include +#include #ifndef NDEBUG // #define EXPENSIVE_DEBUG_CHECKS diff --git a/src/libslic3r/TriangleMeshSlicer.hpp b/src/libslic3r/TriangleMeshSlicer.hpp index 1a78e5b7d0..aa1b020716 100644 --- a/src/libslic3r/TriangleMeshSlicer.hpp +++ b/src/libslic3r/TriangleMeshSlicer.hpp @@ -1,8 +1,14 @@ #ifndef slic3r_TriangleMeshSlicer_hpp_ #define slic3r_TriangleMeshSlicer_hpp_ +#include +#include #include +#include #include +#include + +#include "Point.hpp" #include "Polygon.hpp" #include "ExPolygon.hpp" diff --git a/src/libslic3r/TriangleSelector.cpp b/src/libslic3r/TriangleSelector.cpp index 4d6007530f..7314b00082 100644 --- a/src/libslic3r/TriangleSelector.cpp +++ b/src/libslic3r/TriangleSelector.cpp @@ -1,12 +1,31 @@ #include "TriangleSelector.hpp" +#include "Geometry.hpp" #include "Model.hpp" #include "AABBTreeIndirect.hpp" +#include "Point.hpp" +#include "libslic3r.h" +#include "Utils.hpp" +#include "TriangleMesh.hpp" +#include +#include +#include +#include #include #include +#include +#include #include +#include +#include +#include #include +#include +#include #include +#include +#include +#include #ifndef NDEBUG // #define EXPENSIVE_DEBUG_CHECKS diff --git a/src/libslic3r/TriangleSelector.hpp b/src/libslic3r/TriangleSelector.hpp index 344e88cb99..3dd2efdaf0 100644 --- a/src/libslic3r/TriangleSelector.hpp +++ b/src/libslic3r/TriangleSelector.hpp @@ -4,7 +4,18 @@ // #define PRUSASLICER_TRIANGLE_SELECTOR_DEBUG +#include +#include +#include +#include #include +#include +#include +#include +#include +#include +#include +#include #include "Point.hpp" #include "TriangleMesh.hpp" diff --git a/src/libslic3r/TriangleSetSampling.cpp b/src/libslic3r/TriangleSetSampling.cpp index bb03ff6d75..6ab4290ee6 100644 --- a/src/libslic3r/TriangleSetSampling.cpp +++ b/src/libslic3r/TriangleSetSampling.cpp @@ -1,8 +1,13 @@ #include "TriangleSetSampling.hpp" +#include +#include "Point.hpp" +#include +#include #include #include #include #include +#include namespace Slic3r { diff --git a/src/libslic3r/TriangleSetSampling.hpp b/src/libslic3r/TriangleSetSampling.hpp index 28a661d76f..ba20a932eb 100644 --- a/src/libslic3r/TriangleSetSampling.hpp +++ b/src/libslic3r/TriangleSetSampling.hpp @@ -2,6 +2,8 @@ #define SRC_LIBSLIC3R_TRIANGLESETSAMPLING_HPP_ #include +#include +#include #include "libslic3r/Point.hpp" namespace Slic3r { diff --git a/src/libslic3r/TriangulateWall.hpp b/src/libslic3r/TriangulateWall.hpp index fcdb842f9b..fcc67e29b2 100644 --- a/src/libslic3r/TriangulateWall.hpp +++ b/src/libslic3r/TriangulateWall.hpp @@ -1,7 +1,11 @@ #ifndef TRIANGULATEWALL_HPP #define TRIANGULATEWALL_HPP +#include "Point.hpp" #include "libslic3r/Polygon.hpp" +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/Triangulation.cpp b/src/libslic3r/Triangulation.cpp index f290442bf1..63a5b30fe5 100644 --- a/src/libslic3r/Triangulation.cpp +++ b/src/libslic3r/Triangulation.cpp @@ -1,10 +1,27 @@ #include "Triangulation.hpp" #include "IntersectionPoints.hpp" +#include +#include +#include +#include +#include +#include #include #include #include #include #include +#include +#include "libslic3r/Polygon.hpp" +#include "libslic3r/Point.hpp" +#include +#include "libslic3r/Line.hpp" +#include +#include +#include +#include "libslic3r/libslic3r.h" +#include "libslic3r/ExPolygon.hpp" +#include using namespace Slic3r; namespace priv{ diff --git a/src/libslic3r/Triangulation.hpp b/src/libslic3r/Triangulation.hpp index 6a168d1d20..261f76bba5 100644 --- a/src/libslic3r/Triangulation.hpp +++ b/src/libslic3r/Triangulation.hpp @@ -1,6 +1,8 @@ #ifndef libslic3r_Triangulation_hpp_ #define libslic3r_Triangulation_hpp_ +#include +#include #include #include #include diff --git a/src/libslic3r/Utils.hpp b/src/libslic3r/Utils.hpp index d142afae92..cc84b93939 100644 --- a/src/libslic3r/Utils.hpp +++ b/src/libslic3r/Utils.hpp @@ -1,9 +1,23 @@ #ifndef slic3r_Utils_hpp_ #define slic3r_Utils_hpp_ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include #include +#include #include #include +#include +#include +#include #include #include #include @@ -19,6 +33,7 @@ #include "boost/date_time/posix_time/ptime.hpp" #include +#include #include "libslic3r.h" #include "Semver.hpp" diff --git a/src/libslic3r/VariableWidth.cpp b/src/libslic3r/VariableWidth.cpp index c00fc13bdf..db8f0bc373 100644 --- a/src/libslic3r/VariableWidth.cpp +++ b/src/libslic3r/VariableWidth.cpp @@ -1,4 +1,16 @@ #include "VariableWidth.hpp" +#include "ExtrusionEntity.hpp" +#include "Polyline.hpp" +#include "Flow.hpp" +#include "Line.hpp" +#include +#include "libslic3r.h" +#include "Point.hpp" +#include +#include +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/VariableWidth.hpp b/src/libslic3r/VariableWidth.hpp index f6eca97089..7b8f1f4b0a 100644 --- a/src/libslic3r/VariableWidth.hpp +++ b/src/libslic3r/VariableWidth.hpp @@ -4,6 +4,8 @@ #include "Polygon.hpp" #include "ExtrusionEntity.hpp" #include "Flow.hpp" +#include "Polyline.hpp" +#include namespace Slic3r { ExtrusionMultiPath thick_polyline_to_multi_path(const ThickPolyline& thick_polyline, ExtrusionRole role, const Flow& flow, const float tolerance, const float merge_tolerance); diff --git a/src/libslic3r/Zipper.cpp b/src/libslic3r/Zipper.cpp index aa0c6409e7..4e7e53a1b5 100644 --- a/src/libslic3r/Zipper.cpp +++ b/src/libslic3r/Zipper.cpp @@ -1,9 +1,14 @@ +#include +#include #include #include "Exception.hpp" #include "Zipper.hpp" #include "miniz_extension.hpp" #include +#include +#include +#include #include "I18N.hpp" //! macro used to mark string used at localization, diff --git a/src/libslic3r/Zipper.hpp b/src/libslic3r/Zipper.hpp index bbaf2f05e7..dbd1fb9cc0 100644 --- a/src/libslic3r/Zipper.hpp +++ b/src/libslic3r/Zipper.hpp @@ -1,9 +1,11 @@ #ifndef ZIPPER_HPP #define ZIPPER_HPP +#include #include #include #include +#include namespace Slic3r { diff --git a/src/libslic3r/calib.cpp b/src/libslic3r/calib.cpp index 99625ca196..dd6d8592b7 100644 --- a/src/libslic3r/calib.cpp +++ b/src/libslic3r/calib.cpp @@ -1,9 +1,23 @@ #include "calib.hpp" #include "BoundingBox.hpp" #include "Config.hpp" +#include "Flow.hpp" +#include "GCodeWriter.hpp" +#include "GCode/GCodeProcessor.hpp" +#include "CustomGCode.hpp" #include "Model.hpp" #include "GCode.hpp" +#include "PrintConfig.hpp" +#include +#include "Point.hpp" +#include "libslic3r.h" #include +#include +#include +#include +#include +#include +#include namespace Slic3r { diff --git a/src/libslic3r/calib.hpp b/src/libslic3r/calib.hpp index abca5e79dc..fd22d4a08f 100644 --- a/src/libslic3r/calib.hpp +++ b/src/libslic3r/calib.hpp @@ -1,5 +1,11 @@ #pragma once +#include "Point.hpp" +#include +#include +#include #include +#include +#include #define calib_pressure_advance_dd #include "GCodeWriter.hpp" diff --git a/src/libslic3r/format.hpp b/src/libslic3r/format.hpp index c3747677b0..7f3385c3d7 100644 --- a/src/libslic3r/format.hpp +++ b/src/libslic3r/format.hpp @@ -14,6 +14,7 @@ // boost::format may convert to string, see slic3r/GUI/I18N.hpp for a "cook" function to convert wxString to UTF8. #include +#include namespace Slic3r { diff --git a/src/libslic3r/libslic3r.h b/src/libslic3r/libslic3r.h index c339da566a..bc32a8c60f 100644 --- a/src/libslic3r/libslic3r.h +++ b/src/libslic3r/libslic3r.h @@ -2,6 +2,12 @@ #define _libslic3r_h_ #include "libslic3r_version.h" +#include +#include +#include +#include +#include +#include #define SLIC3R_APP_FULL_NAME "Orca Slicer" #define GCODEVIEWER_APP_NAME "OrcaSlicer G-code Viewer" #define GCODEVIEWER_APP_KEY "OrcaSlicerGcodeViewer" diff --git a/src/libslic3r/miniz_extension.cpp b/src/libslic3r/miniz_extension.cpp index 4d9b528267..33f24a9a55 100644 --- a/src/libslic3r/miniz_extension.cpp +++ b/src/libslic3r/miniz_extension.cpp @@ -1,3 +1,8 @@ +#include +#include +#include +#include +#include #include #include @@ -6,6 +11,9 @@ #include #include +#include +#include +#include #if defined(_MSC_VER) || defined(__MINGW64__) #include "boost/nowide/cstdio.hpp" diff --git a/src/libslic3r/utils.cpp b/src/libslic3r/utils.cpp index 849d309563..6205f11219 100644 --- a/src/libslic3r/utils.cpp +++ b/src/libslic3r/utils.cpp @@ -1,11 +1,43 @@ #include "Utils.hpp" +#include "Exception.hpp" #include "I18N.hpp" #include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include #include #include #include #include +#include +#include +#include #include #include #include @@ -14,7 +46,12 @@ #include #include #include +#include +#include +#include +#include +#include "Semver.hpp" #include "format.hpp" #include "Platform.hpp" #include "Time.hpp" @@ -23,6 +60,7 @@ // (get_version_from_json) and the preset cache stamp (VendorCacheFile). #include "Preset.hpp" #include "PresetCacheFormat.hpp" +#include "libslic3r_version.h" #ifdef __APPLE__ #include "MacUtils.hpp" From a6dbf2502d0e0d6d6fcd7aa7b9089c397f3493a0 Mon Sep 17 00:00:00 2001 From: ExPikaPaka <112851715+ExPikaPaka@users.noreply.github.com> Date: Sat, 3 Oct 2026 14:06:50 +0200 Subject: [PATCH 7/7] Device tab blank for webui printers after switching language (#14547) * Save device url in all cases and load printer url after hot-reload finishes * Recreate web view from scratch as only URL fix seems not robust enough * Add the same robust browser recreation for WebViewDialog It should eliminate possible issue with blank Home and other pages in the same way as Printer page * Remove redundant fallback leftover * Fix webview reset state and replay Project info on page reload The first-show webview reset now runs only on Windows, reloads the last printer URL and resets the Project page's ready state. The Project tab replays its 3MF info whenever the page reloads, so it no longer goes blank after a theme switch or a slow first load. The Device tab no longer loads an extra time on first open, and the Home tab no longer navigates twice. NeedsRecreateOnShow() logs is_recreating_gui so one language switch shows whether the reset ever fires. * Build plugin pages on first show A language switch rebuilt every plugin page's browser while the main window was being recreated, which left plugin tabs blank on Windows. Plugin pages are now lazy pages, never prebuilt, and are removed left to right so removing pages never builds one only to destroy it. A plugin page's script now starts when its tab is first opened; messages posted before that are dropped. --------- Co-authored-by: SoftFever Co-authored-by: Noisyfox Co-authored-by: SoftFever <103989404+SoftFever@users.noreply.github.com> --- .../references/controls-dataview.md | 4 ++ .../references/orca-architecture.md | 30 ++++++++- src/slic3r/GUI/MainFrame.hpp | 3 +- src/slic3r/GUI/PrinterWebView.cpp | 62 ++++++++++++------- src/slic3r/GUI/PrinterWebView.hpp | 5 ++ src/slic3r/GUI/Project.cpp | 47 ++++++++++---- src/slic3r/GUI/Project.hpp | 5 ++ src/slic3r/GUI/WebViewDialog.cpp | 33 +++++++--- src/slic3r/GUI/WebViewDialog.hpp | 6 ++ src/slic3r/GUI/Widgets/WebView.cpp | 11 ++++ src/slic3r/GUI/Widgets/WebView.hpp | 4 ++ src/slic3r/plugin/host/PluginPages.cpp | 57 +++++++++-------- src/slic3r/plugin/host/PluginPages.hpp | 12 ++-- 13 files changed, 203 insertions(+), 76 deletions(-) diff --git a/.claude/skills/orca-wxwidgets/references/controls-dataview.md b/.claude/skills/orca-wxwidgets/references/controls-dataview.md index 0789f47d79..3671e05991 100644 --- a/.claude/skills/orca-wxwidgets/references/controls-dataview.md +++ b/.claude/skills/orca-wxwidgets/references/controls-dataview.md @@ -331,6 +331,10 @@ OrcaSlicer: integer spinners are `::SpinInput` ([below](#spininput)); progress b Contract: - A page must be created with the book as its parent and added once; the book owns and deletes it (`interface/wx/bookctrl.h:253-254, 273`). `RemovePage` detaches without deleting, and you then own it (`:324-330`). +- Removing the selected page selects the page before it (the new first page if it was first) through `SetSelection`, + so that page is shown and PAGE_CHANGING/CHANGED are sent; removing a page before the selection only shifts the + index. This is `wxBookCtrlBase::DoSetSelectionAfterRemoval` (`src/common/bookctrl.cpp:477-495` **[source]**), + called from `DoRemovePage` by `wxSimplebook`, `wxChoicebook`, `wxListbook`, `wxToolbook` and Orca's `Notebook`. - `GetSelection()` inside a `PAGE_CHANGED` handler may return the old or the new page depending on the platform; use `event.GetSelection()` (`interface/wx/bookctrl.h:160-166`). - `wxSimplebook` has no UI; switch with `ChangeSelection()`. `SetSelection()` sends PAGE_CHANGING/CHANGED diff --git a/.claude/skills/orca-wxwidgets/references/orca-architecture.md b/.claude/skills/orca-wxwidgets/references/orca-architecture.md index 801494d802..6c23122910 100644 --- a/.claude/skills/orca-wxwidgets/references/orca-architecture.md +++ b/.claude/skills/orca-wxwidgets/references/orca-architecture.md @@ -332,7 +332,9 @@ indices: pages come and go per printer and per feature flag. pages depending on the printer and on `use_printer_agents`; a removed page stays registered but is not prebuilt (its `LazyPage::in_book()` is false). - Plugin pages are appended by `PluginPages::initialize` (`plugin/host/PluginPages.hpp`) with - namespaced ids (`plugin..`) that cannot collide with `TAB_ID_*`. + namespaced ids (`plugin..`) that cannot collide with `TAB_ID_*`. Each is a + `LazyPage` with order −1, destroyed when its capability goes away. + → [Deferred construction](#deferred-construction-lazy-lazypage-stagedbuild-idlescheduler) ### Preset tabs @@ -529,6 +531,32 @@ the main frame does nothing to a panel after creating it. m_idle.add(m_diff_dialog); ``` Cite: `IdleScheduler::tick`, `docs/HLSD/deferred-page-construction.md`. +- **Rule:** A lazy page that can be destroyed while the main frame lives takes a negative order and + stays out of `m_lazy_pages`. + **Why:** `m_lazy_pages` and `PrebuildQueue` hold raw `LazyBase*` and nothing removes one + (`PrebuildQueue` has only `add` and `clear`). The queue calls `pending()` on every task each slice, + and `prebuild_pages_when_idle` reads every entry of `m_lazy_pages`, so a page destroyed while still + listed can be read after it is freed. A page only taken out of the book is fine: it stays registered + and its `pending()` is false (`MainFrame::show_device`). + ```cpp + // Right (PluginPages::create_page): order -1, and no m_lazy_pages.push_back + auto* page = new GUI::LazyPage(m_parent, name, -1, [capability](wxWindow* parent) { + return new PluginPage(parent, capability); + }); + ``` + Cite: `PluginPages::create_page`, `PluginPages::remove_page`. +- **Rule:** Remove several lazy pages from a book left to right. + **Why:** removing the selected page selects and shows the page before it + (`references/controls-dataview.md` §Book controls), and showing an unbuilt `LazyPage` while the frame + is shown builds it. In any other order the page before the selected one can be one removed next, + built only to be destroyed; left to right it is one that stays (unless the selected page is the + book's first). + ```cpp + // Right (PluginPages::shutdown): m_order is the tabs' left-to-right order + for (const PluginCapabilityId& id : std::vector(m_order)) + remove_page(id); + ``` + Cite: `PluginPages::shutdown`, `PluginPages::relayout`, `PluginPages::on_plugin_deregister`. ## Plater and Sidebar diff --git a/src/slic3r/GUI/MainFrame.hpp b/src/slic3r/GUI/MainFrame.hpp index 8c4fc58d03..8c25b31770 100644 --- a/src/slic3r/GUI/MainFrame.hpp +++ b/src/slic3r/GUI/MainFrame.hpp @@ -184,7 +184,8 @@ class MainFrame : public DPIFrame std::string m_name{ "prepare_layout" }; wxSize m_laid_out_size; } m_prepare_layout_prebuild{ *this }; - // Every LazyPage, in and out of the book; prebuild_pages_when_idle() registers them. + // Every built-in LazyPage, in and out of the book; prebuild_pages_when_idle() registers them. + // Plugin pages stay out: PluginPages destroys them at runtime. std::vector m_lazy_pages; // The latest EVT_LOAD_PRINTER_URL, applied when the web Device view is built. wxString m_printer_url; diff --git a/src/slic3r/GUI/PrinterWebView.cpp b/src/slic3r/GUI/PrinterWebView.cpp index 4ea2ba0a72..1993748cc6 100644 --- a/src/slic3r/GUI/PrinterWebView.cpp +++ b/src/slic3r/GUI/PrinterWebView.cpp @@ -119,33 +119,13 @@ PrinterWebView::PrinterWebView(wxWindow *parent) wxBoxSizer* topsizer = new wxBoxSizer(wxVERTICAL); // Create the webview - m_browser = WebView::CreateWebView(this, ""); - if (m_browser == nullptr) { - wxLogError("Could not init m_browser"); - return; - } - -#ifdef __linux__ - inject_vue_resize_workaround(m_browser); - - auto cookiesPath = boost::filesystem::path(data_dir() + "/cache/cookies.db"); - auto wv = static_cast(m_browser->GetNativeBackend()); - auto wv_ctx = webkit_web_view_get_context(wv); - auto cookieManager = webkit_web_context_get_cookie_manager(wv_ctx); - webkit_cookie_manager_set_persistent_storage(cookieManager, cookiesPath.c_str(), WEBKIT_COOKIE_PERSISTENT_STORAGE_SQLITE); -#endif - - m_browser->Bind(wxEVT_WEBVIEW_ERROR, &PrinterWebView::OnError, this); - m_browser->Bind(wxEVT_WEBVIEW_LOADED, &PrinterWebView::OnLoaded, this); - m_browser->Bind(wxEVT_WEBVIEW_NEWWINDOW, &PrinterWebView::OnNewWindow, this); - m_browser->Bind(wxEVT_WEBVIEW_SCRIPT_MESSAGE_RECEIVED, &PrinterWebView::OnScriptMessage, this); + create_browser(); + m_reset_on_show = WebView::NeedsRecreateOnShow(); SetSizer(topsizer); topsizer->Add(m_browser, wxSizerFlags().Expand().Proportion(1)); - update_mode(); - // Log backend information /* m_browser->GetUserAgent() may lead crash if (wxGetApp().get_mode() == comDevelop) { @@ -177,12 +157,44 @@ PrinterWebView::~PrinterWebView() BOOST_LOG_TRIVIAL(info) << __FUNCTION__ << " End"; } +void PrinterWebView::create_browser() +{ + m_browser = WebView::CreateWebView(this, ""); + +#ifdef __linux__ + inject_vue_resize_workaround(m_browser); + + auto cookiesPath = boost::filesystem::path(data_dir() + "/cache/cookies.db"); + auto wv = static_cast(m_browser->GetNativeBackend()); + auto wv_ctx = webkit_web_view_get_context(wv); + auto cookieManager = webkit_web_context_get_cookie_manager(wv_ctx); + webkit_cookie_manager_set_persistent_storage(cookieManager, cookiesPath.c_str(), WEBKIT_COOKIE_PERSISTENT_STORAGE_SQLITE); +#endif + + m_browser->Bind(wxEVT_WEBVIEW_ERROR, &PrinterWebView::OnError, this); + m_browser->Bind(wxEVT_WEBVIEW_LOADED, &PrinterWebView::OnLoaded, this); + m_browser->Bind(wxEVT_WEBVIEW_NEWWINDOW, &PrinterWebView::OnNewWindow, this); + m_browser->Bind(wxEVT_WEBVIEW_SCRIPT_MESSAGE_RECEIVED, &PrinterWebView::OnScriptMessage, this); + update_mode(); +} + +void PrinterWebView::reset_browser() +{ + m_browser->Destroy(); // also removes it from the sizer + create_browser(); + GetSizer()->Add(m_browser, wxSizerFlags().Expand().Proportion(1)); + Layout(); + + // OnLoaded may have cleared m_url_deferred already, so requeue the last url for Show(). + m_apikey_sent = false; + m_url_deferred = m_url; +} + void PrinterWebView::load_url(wxString& url, wxString apikey) { // this->Show(); // this->Raise(); - if (m_browser == nullptr) - return; + m_url = url; m_apikey = apikey; m_apikey_sent = false; m_handler = create_printer_webview_handler(*this); @@ -200,6 +212,8 @@ void PrinterWebView::load_url(wxString& url, wxString apikey) bool PrinterWebView::Show(bool show) { + if (show && std::exchange(m_reset_on_show, false)) + reset_browser(); if (show && !m_url_deferred.empty()) { m_browser->LoadURL(m_url_deferred); //ORCA: m_url_deferred will be cleared on load success diff --git a/src/slic3r/GUI/PrinterWebView.hpp b/src/slic3r/GUI/PrinterWebView.hpp index 9bd8ff51a8..53c4f30557 100644 --- a/src/slic3r/GUI/PrinterWebView.hpp +++ b/src/slic3r/GUI/PrinterWebView.hpp @@ -58,13 +58,18 @@ private: friend class PrinterWebViewHandler; void SendAPIKey(); + void create_browser(); + void reset_browser(); wxWebView* m_browser; long m_zoomFactor; wxString m_apikey; bool m_apikey_sent; + // Last url passed to load_url(), reloaded after reset_browser(). + wxString m_url; wxString m_url_deferred; std::unique_ptr m_handler; + bool m_reset_on_show{false}; // DECLARE_EVENT_TABLE() }; diff --git a/src/slic3r/GUI/Project.cpp b/src/slic3r/GUI/Project.cpp index 47945e1179..d8e7d6b806 100644 --- a/src/slic3r/GUI/Project.cpp +++ b/src/slic3r/GUI/Project.cpp @@ -80,16 +80,10 @@ ProjectPanel::ProjectPanel(wxWindow *parent, wxWindowID id, const wxPoint &pos, wxBoxSizer* main_sizer = new wxBoxSizer(wxVERTICAL); - m_browser = WebView::CreateWebView(this, m_project_home_url); - if (m_browser == nullptr) { - BOOST_LOG_TRIVIAL(info) << __FUNCTION__ << boost::format("load web view of project page failed"); - return; - } + create_browser(); + m_reset_on_show = WebView::NeedsRecreateOnShow(); //m_browser->Hide(); main_sizer->Add(m_browser, wxSizerFlags().Expand().Proportion(1)); - m_browser->Bind(wxEVT_WEBVIEW_NAVIGATED, &ProjectPanel::on_navigated, this); - m_browser->Bind(wxEVT_WEBVIEW_SCRIPT_MESSAGE_RECEIVED, &ProjectPanel::OnScriptMessage, this, m_browser->GetId()); - Bind(wxEVT_WEBVIEW_NAVIGATING, &ProjectPanel::onWebNavigating, this, m_browser->GetId()); Bind(EVT_PROJECT_RELOAD, &ProjectPanel::on_reload, this); @@ -117,6 +111,23 @@ void ProjectPanel::shutdown() m_reload_task.reset(); } +void ProjectPanel::create_browser() +{ + m_browser = WebView::CreateWebView(this, m_project_home_url); + m_browser->Bind(wxEVT_WEBVIEW_NAVIGATED, &ProjectPanel::on_navigated, this); + m_browser->Bind(wxEVT_WEBVIEW_SCRIPT_MESSAGE_RECEIVED, &ProjectPanel::OnScriptMessage, this, m_browser->GetId()); + m_browser->Bind(wxEVT_WEBVIEW_NAVIGATING, &ProjectPanel::onWebNavigating, this); +} + +void ProjectPanel::reset_browser() +{ + m_browser->Destroy(); // also removes it from the sizer + create_browser(); + GetSizer()->Insert(0, m_browser, wxSizerFlags().Expand().Proportion(1)); + Layout(); + m_web_init_completed.store(false, std::memory_order_release); +} + // Helper to convert newlines to
static std::string convert_newlines_to_br(const std::string& text) { std::string result = text; @@ -281,12 +292,13 @@ void ProjectPanel::on_reload(wxCommandEvent& evt) wxString strJS = wxString::Format("HandleStudio(%s)", m_Res.dump(-1, ' ', false, json::error_handler_t::ignore)); - if (m_web_init_completed.load(std::memory_order_acquire) && - !cancel_token->load(std::memory_order_acquire) && wxTheApp != nullptr && !wxGetApp().is_closing()) { + if (!cancel_token->load(std::memory_order_acquire) && wxTheApp != nullptr && !wxGetApp().is_closing()) { wxGetApp().CallAfter([this, cancel_token, strJS] { if (cancel_token->load(std::memory_order_acquire) || wxTheApp == nullptr || wxGetApp().is_closing()) return; - RunScript(strJS.ToStdString()); + m_info_script = strJS.ToStdString(); + if (m_web_init_completed.load(std::memory_order_acquire)) + RunScript(m_info_script); }); } }); @@ -327,6 +339,11 @@ void ProjectPanel::OnScriptMessage(wxWebViewEvent& evt) } else if (strCmd == "request_3mf_info") { m_web_init_completed.store(true, std::memory_order_release); + // Replay the stored info after each page load. + CallAfter([this] { + if (!m_info_script.empty()) + RunScript(m_info_script); + }); } else if (strCmd == "edit_project_info") { show_info_editor(true); @@ -383,6 +400,8 @@ void ProjectPanel::clear_model_info() wxGetApp().CallAfter([this, cancel_token, strJS] { if (cancel_token->load(std::memory_order_acquire) || wxTheApp == nullptr || wxGetApp().is_closing()) return; + // Runs after any store queued by an earlier reload pass, so stale info is never replayed. + m_info_script.clear(); RunScript(strJS.ToStdString()); }); } @@ -523,10 +542,12 @@ void ProjectPanel::RunScript(std::string content) WebView::RunScript(m_browser, content); } -bool ProjectPanel::Show(bool show) +bool ProjectPanel::Show(bool show) { + if (show && std::exchange(m_reset_on_show, false)) + reset_browser(); if (show) update_model_data(); - return wxPanel::Show(show); + return wxPanel::Show(show); } }} // namespace Slic3r::GUI diff --git a/src/slic3r/GUI/Project.hpp b/src/slic3r/GUI/Project.hpp index c7a85bce74..90e6eda1f1 100644 --- a/src/slic3r/GUI/Project.hpp +++ b/src/slic3r/GUI/Project.hpp @@ -80,9 +80,14 @@ private: AuxiliaryPanel* m_auxiliary{nullptr}; wxString m_project_home_url; wxString m_root_dir; + // Last show_3mf_info script, also sent whenever the page asks for it. + std::string m_info_script; + bool m_reset_on_show{false}; static inline std::atomic m_sequence_id{8000}; void show_info_editor(bool show); + void create_browser(); + void reset_browser(); public: diff --git a/src/slic3r/GUI/WebViewDialog.cpp b/src/slic3r/GUI/WebViewDialog.cpp index 02fc7b0877..0101c83534 100644 --- a/src/slic3r/GUI/WebViewDialog.cpp +++ b/src/slic3r/GUI/WebViewDialog.cpp @@ -62,10 +62,10 @@ namespace GUI { WebViewPanel::WebViewPanel(wxWindow *parent) : wxPanel(parent, wxID_ANY, wxDefaultPosition, wxDefaultSize) { - wxString url = file_url_from_path(boost::filesystem::path(resources_dir()) / "web/homepage/index.html"); + m_home_url = file_url_from_path(boost::filesystem::path(resources_dir()) / "web/homepage/index.html"); wxString strlang = wxGetApp().current_language_code_safe(); if (strlang != "") - url += "?lang=" + strlang; + m_home_url += "?lang=" + strlang; wxBoxSizer* topsizer = new wxBoxSizer(wxVERTICAL); @@ -109,12 +109,8 @@ WebViewPanel::WebViewPanel(wxWindow *parent) m_info = new wxInfoBar(this); topsizer->Add(m_info, wxSizerFlags().Expand()); // Create the webview - m_browser = WebView::CreateWebView(this, url); - if (m_browser == nullptr) { - wxLogError("Could not init m_browser"); - return; - } - m_browser->Hide(); + create_browser(); + m_reset_on_show = WebView::NeedsRecreateOnShow(); SetSizer(topsizer); topsizer->Add(m_browser, wxSizerFlags().Expand().Proportion(1)); @@ -264,6 +260,27 @@ WebViewPanel::~WebViewPanel() } +void WebViewPanel::create_browser() +{ + m_browser = WebView::CreateWebView(this, m_home_url); + m_browser->Hide(); +} + +void WebViewPanel::reset_browser() +{ + m_browser->Destroy(); // also removes it from the sizer + create_browser(); + GetSizer()->Add(m_browser, wxSizerFlags().Expand().Proportion(1)); + Layout(); +} + +bool WebViewPanel::Show(bool show) +{ + if (show && std::exchange(m_reset_on_show, false)) + reset_browser(); + return wxPanel::Show(show); +} + void WebViewPanel::load_url(wxString& url) { this->Show(); diff --git a/src/slic3r/GUI/WebViewDialog.hpp b/src/slic3r/GUI/WebViewDialog.hpp index 96d18f23c0..8a4ecbf35d 100644 --- a/src/slic3r/GUI/WebViewDialog.hpp +++ b/src/slic3r/GUI/WebViewDialog.hpp @@ -113,9 +113,15 @@ public: int get_model_mall_detail_url(std::string *url, std::string id); void update_mode(); + + bool Show(bool show = true) override; private: + void create_browser(); + void reset_browser(); wxWebView* m_browser; + wxString m_home_url; + bool m_reset_on_show{false}; wxButton * m_button_stop; wxTextCtrl *m_url; #if !BBL_RELEASE_TO_PUBLIC diff --git a/src/slic3r/GUI/Widgets/WebView.cpp b/src/slic3r/GUI/Widgets/WebView.cpp index 9a4d5f90b0..c446875d1f 100644 --- a/src/slic3r/GUI/Widgets/WebView.cpp +++ b/src/slic3r/GUI/Widgets/WebView.cpp @@ -381,6 +381,17 @@ void WebView::MarkScriptMessageHandlerAdded(wxWebView * webView) if (WebViewRef *ref = webview_ref(webView)) ref->m_script_handler_added = true; } + +bool WebView::NeedsRecreateOnShow() +{ + const bool recreating = Slic3r::GUI::wxGetApp().is_recreating_gui(); + BOOST_LOG_TRIVIAL(info) << __FUNCTION__ << ": is_recreating_gui = " << recreating; +#ifdef __WIN32__ + return recreating; +#else + return false; +#endif +} #if wxUSE_WEBVIEW_EDGE bool WebView::CheckWebViewRuntime() { diff --git a/src/slic3r/GUI/Widgets/WebView.hpp b/src/slic3r/GUI/Widgets/WebView.hpp index 2dc126643d..0172f3f8ac 100644 --- a/src/slic3r/GUI/Widgets/WebView.hpp +++ b/src/slic3r/GUI/Widgets/WebView.hpp @@ -23,6 +23,10 @@ public: // Marks "wx" as registered so CreateWebView's deferred add skips the duplicate. static void MarkScriptMessageHandlerAdded(wxWebView * webView); + // On Windows, a WebView2 backend created during a GUI rebuild (language switch) can come up + // ignoring every navigation. A panel that gets true here recreates its view on first Show(). + static bool NeedsRecreateOnShow(); + static void RecreateAll(); }; diff --git a/src/slic3r/plugin/host/PluginPages.cpp b/src/slic3r/plugin/host/PluginPages.cpp index 680b573bd7..36b4cd10b4 100644 --- a/src/slic3r/plugin/host/PluginPages.cpp +++ b/src/slic3r/plugin/host/PluginPages.cpp @@ -1,6 +1,7 @@ #include "PluginPages.hpp" #include "libslic3r/AppConfig.hpp" +#include "slic3r/GUI/GUI.hpp" #include "slic3r/GUI/Notebook.hpp" #include "slic3r/GUI/GUI_App.hpp" #include "slic3r/GUI/Widgets/Button.hpp" @@ -183,8 +184,10 @@ void PluginPages::initialize(Notebook* parent) void PluginPages::shutdown() { - while (!m_pages.empty()) - remove_page(m_pages.begin()->first); + // Removing the selected tab selects the tab to its left. In tab order that is a built-in tab, + // never an unbuilt plugin page that is removed next and would be built only to be destroyed. + for (const PluginCapabilityId& id : std::vector(m_order)) + remove_page(id); m_parent = nullptr; } @@ -225,8 +228,7 @@ bool PluginPages::create_page(const PluginCapabilityId& id) BOOST_LOG_TRIVIAL(error) << __FUNCTION__ << " Failed to get icon for plugin " << id.plugin_key; } - auto* page = new PluginPage(m_parent, std::move(capability)); - + wxBitmap bitmap; if (!icon.empty()) { try { boost::filesystem::path icon_path(icon); @@ -234,7 +236,7 @@ bool PluginPages::create_page(const PluginCapabilityId& id) if (extension == ".svg" || extension == ".png") icon_path.replace_extension(); - page->set_icon(create_scaled_bitmap(icon_path.string(), m_parent, 20)); + bitmap = create_scaled_bitmap(icon_path.string(), m_parent, 20); } catch (const std::exception& error) { BOOST_LOG_TRIVIAL(error) << __FUNCTION__ << " Failed to load icon for plugin " << id.plugin_key << ": " << error.what(); } catch (...) { @@ -242,7 +244,15 @@ bool PluginPages::create_page(const PluginCapabilityId& id) } } - m_pages.emplace(id, page); + // Built the first time its tab is shown, so a language switch never creates the page's browser + // while the main window is being rebuilt. Never prebuilt: the idle queue cannot drop a page + // that remove_page() destroys. + auto* page = new GUI::LazyPage(m_parent, GUI::into_u8(page_tab_id(id)), -1, + [capability = std::move(capability)](wxWindow* parent) { + return new PluginPage(parent, capability); + }); + + m_pages.emplace(id, Page{page, bitmap}); m_order.push_back(id); return true; } @@ -271,16 +281,10 @@ void PluginPages::on_plugin_register(const std::string& plugin_key) void PluginPages::on_plugin_deregister(const std::string& plugin_key) { - for (auto it = m_pages.begin(); it != m_pages.end();) { - if (it->first.plugin_key != plugin_key) { - ++it; - continue; - } - - const PluginCapabilityId id = it->first; - ++it; - remove_page(id); - } + // In tab order, as in shutdown(). + for (const PluginCapabilityId& id : std::vector(m_order)) + if (id.plugin_key == plugin_key) + remove_page(id); } void PluginPages::remove_page(const PluginCapabilityId& id) @@ -289,8 +293,10 @@ void PluginPages::remove_page(const PluginCapabilityId& id) if (it == m_pages.end()) return; - PluginPage* page = it->second; - page->detach_capability(); + GUI::LazyPage* page = it->second.page; + // Only a built page has installed a message sender on the capability. + if (PluginPage* built = page->get()) + built->detach_capability(); m_pages.erase(it); m_order.erase(std::remove(m_order.begin(), m_order.end(), id), m_order.end()); @@ -348,26 +354,27 @@ void PluginPages::relayout() bool up_to_date = page_count >= tab_ids.size(); for (size_t i = 0; up_to_date && i < tab_ids.size(); ++i) up_to_date = m_parent->GetPageName(page_count - tab_ids.size() + i) == page_tab_id(tab_ids[i]); - for (const auto& [id, page] : m_pages) { + for (const auto& [id, entry] : m_pages) { if (!up_to_date) break; const bool wanted = std::find(tab_ids.begin(), tab_ids.end(), id) != tab_ids.end(); - up_to_date = (m_parent->FindPage(page) != wxNOT_FOUND) == wanted; + up_to_date = entry.page->in_book() == wanted; } if (!up_to_date) { const wxString id_to_reselect = m_parent->GetSelectedPageName(); - for (const auto& [id, page] : m_pages) { - const int idx = m_parent->FindPage(page); + // In tab order, as in shutdown(). + for (const auto& id : m_order) { + const int idx = m_parent->FindPage(m_pages.at(id).page); if (idx != wxNOT_FOUND) m_parent->RemovePage(idx); } for (const auto& id : tab_ids) { - PluginPage* page = m_pages.at(id); - m_parent->InsertPage(m_parent->GetPageCount(), page_tab_id(id), page, wxString::FromUTF8(id.name), "", - false, page->icon()); + const Page& entry = m_pages.at(id); + m_parent->InsertPage(m_parent->GetPageCount(), page_tab_id(id), entry.page, wxString::FromUTF8(id.name), "", + false, entry.icon); } if (!id_to_reselect.empty()) diff --git a/src/slic3r/plugin/host/PluginPages.hpp b/src/slic3r/plugin/host/PluginPages.hpp index c0dd74b94d..90d8c28a03 100644 --- a/src/slic3r/plugin/host/PluginPages.hpp +++ b/src/slic3r/plugin/host/PluginPages.hpp @@ -1,5 +1,6 @@ #pragma once +#include #include #include #include @@ -29,8 +30,6 @@ public: void detach_capability(); void push_message(const std::string& message); - void set_icon(const wxBitmap& icon) { m_icon = icon; } - const wxBitmap& icon() const { return m_icon; } protected: std::optional page_html() override; @@ -41,7 +40,6 @@ private: std::shared_ptr m_cap; std::shared_ptr> m_lifetime; - wxBitmap m_icon; }; class PluginPages @@ -73,7 +71,13 @@ private: void show_overflow_menu(); static wxString page_tab_id(const PluginCapabilityId& id); - std::map m_pages; + struct Page + { + GUI::LazyPage* page{nullptr}; + wxBitmap icon; + }; + + std::map m_pages; std::vector m_order; Notebook* m_parent{nullptr};