diff options
author | meril <merill@free.fr> | 2019-01-08 19:40:16 +0300 |
---|---|---|
committer | meril <merill@free.fr> | 2019-01-08 19:40:16 +0300 |
commit | b91b4760329f3b2851e1be44c6297c465a01f35b (patch) | |
tree | 543385d2bfb15f740bb7a3dad9d231ed4477615b | |
parent | 3704ea1fb2cd24e62179c49f88765296f8a671ff (diff) |
bugfix
-rw-r--r-- | src/libslic3r/Fill/FillRectilinear.cpp | 2 | ||||
-rw-r--r-- | src/libslic3r/Fill/FillRectilinear2.cpp | 2 | ||||
-rw-r--r-- | src/libslic3r/Fill/FillRectilinear3.cpp | 4 | ||||
-rw-r--r-- | src/libslic3r/GCode.cpp | 5 | ||||
-rw-r--r-- | src/libslic3r/PrintConfig.cpp | 4 | ||||
-rw-r--r-- | src/libslic3r/PrintConfig.hpp | 2 |
6 files changed, 10 insertions, 9 deletions
diff --git a/src/libslic3r/Fill/FillRectilinear.cpp b/src/libslic3r/Fill/FillRectilinear.cpp index 205eb1b66..2d53bbef0 100644 --- a/src/libslic3r/Fill/FillRectilinear.cpp +++ b/src/libslic3r/Fill/FillRectilinear.cpp @@ -18,7 +18,7 @@ void FillRectilinear::_fill_surface_single( expolygon.rotate(- direction.first); this->_min_spacing = scale_(this->spacing); - assert(params.density > 0.0001f && params.density <= 1.f); + assert(params.density > 0.0001f); this->_line_spacing = coord_t(coordf_t(this->_min_spacing) / params.density); this->_diagonal_distance = this->_line_spacing * 2; this->_line_oscillation = this->_line_spacing - this->_min_spacing; // only for Line infill diff --git a/src/libslic3r/Fill/FillRectilinear2.cpp b/src/libslic3r/Fill/FillRectilinear2.cpp index 6034e3ef6..545428b03 100644 --- a/src/libslic3r/Fill/FillRectilinear2.cpp +++ b/src/libslic3r/Fill/FillRectilinear2.cpp @@ -773,7 +773,7 @@ bool FillRectilinear2::fill_surface_by_lines(const Surface *surface, const FillP std::pair<float, Point> rotate_vector = this->_infill_direction(surface); rotate_vector.first += angleBase; - assert(params.density > 0.0001f && params.density <= 1.f); + assert(params.density > 0.0001f); coord_t line_spacing = coord_t(scale_(this->spacing) / params.density); // On the polygons of poly_with_offset, the infill lines will be connected. diff --git a/src/libslic3r/Fill/FillRectilinear3.cpp b/src/libslic3r/Fill/FillRectilinear3.cpp index 8a0b90ead..d682d0cdd 100644 --- a/src/libslic3r/Fill/FillRectilinear3.cpp +++ b/src/libslic3r/Fill/FillRectilinear3.cpp @@ -380,7 +380,7 @@ static bool prepare_infill_hatching_segments( out.direction.rotate(out.angle + 0.5 * M_PI); out.segs.clear(); - assert(params.density > 0.0001f && params.density <= 1.f); + assert(params.density > 0.0001f); coord_t line_spacing = coord_t(scale_(fill_dir_params.spacing) / params.density); // Bounding box around the source contour, aligned with out.angle. @@ -1531,7 +1531,7 @@ static bool fill_hatching_segments_legacy( bool FillRectilinear3::fill_surface_by_lines(const Surface *surface, const FillParams ¶ms, std::vector<FillDirParams> &fill_dir_params, Polylines &polylines_out) { - assert(params.density > 0.0001f && params.density <= 1.f); + assert(params.density > 0.0001f); const float INFILL_OVERLAP_OVER_SPACING = 0.45f; assert(INFILL_OVERLAP_OVER_SPACING > 0 && INFILL_OVERLAP_OVER_SPACING < 0.5f); diff --git a/src/libslic3r/GCode.cpp b/src/libslic3r/GCode.cpp index 739c918c1..b32190084 100644 --- a/src/libslic3r/GCode.cpp +++ b/src/libslic3r/GCode.cpp @@ -279,7 +279,7 @@ std::string WipeTowerIntegration::rotate_wipe_tower_moves(const std::string& gco std::string WipeTowerIntegration::prime(GCode &gcodegen) { - assert(m_layer_idx == 0); + //assert(m_layer_idx == 0); std::string gcode; if (&m_priming != nullptr && ! m_priming.extrusions.empty()) { @@ -931,6 +931,7 @@ void GCode::_do_export(Print &print, FILE *file) m_wipe_tower.reset(new WipeTowerIntegration(print.config(), *print.wipe_tower_data().priming.get(), print.wipe_tower_data().tool_changes, *print.wipe_tower_data().final_purge.get())); _write(file, m_writer.travel_to_z(first_layer_height + m_config.z_offset.value, "Move to the first layer height")); if (print.config().single_extruder_multi_material_priming) { + //m_wipe_tower->next_layer(); _write(file, m_wipe_tower->prime(*this)); // Verify, whether the print overaps the priming extrusions. BoundingBoxf bbox_print(get_print_extrusions_extents(print)); @@ -2665,7 +2666,7 @@ std::string GCode::retract(bool toolchange) methods even if we performed wipe, since this will ensure the entire retraction length is honored in case wipe path was too short. */ gcode += toolchange ? m_writer.retract_for_toolchange() : m_writer.retract(); - if (toolchange || !this->m_config.retract_lift_not_last_layer.value || !(this->m_last_extrusion_role == ExtrusionRole::erTopSolidInfill)) + if (toolchange || !this->m_config.retract_lift_not_last_layer.get_at(m_writer.extruder()->id()) || !(this->m_last_extrusion_role == ExtrusionRole::erTopSolidInfill)) if (m_writer.extruder()->retract_length() > 0 || m_config.use_firmware_retraction) gcode += m_writer.lift(); diff --git a/src/libslic3r/PrintConfig.cpp b/src/libslic3r/PrintConfig.cpp index 625613213..f0d62bb88 100644 --- a/src/libslic3r/PrintConfig.cpp +++ b/src/libslic3r/PrintConfig.cpp @@ -1823,12 +1823,12 @@ void PrintConfigDef::init_fff_params() def->mode = comAdvanced; def->default_value = new ConfigOptionFloats { 0. }; - def = this->add("retract_lift_not_last_layer", coBool); + def = this->add("retract_lift_not_last_layer", coBools); def->label = L("Not on top"); def->category = L("Support material"); def->tooltip = L("Select this option to not use the z-lift on a top surface."); def->mode = comAdvanced; - def->default_value = new ConfigOptionBool(false); + def->default_value = new ConfigOptionBools { false }; def = this->add("retract_restart_extra", coFloats); def->label = L("Extra length on restart"); diff --git a/src/libslic3r/PrintConfig.hpp b/src/libslic3r/PrintConfig.hpp index b96176fe5..b5b290d39 100644 --- a/src/libslic3r/PrintConfig.hpp +++ b/src/libslic3r/PrintConfig.hpp @@ -677,7 +677,7 @@ public: ConfigOptionFloats retract_lift; ConfigOptionFloats retract_lift_above; ConfigOptionFloats retract_lift_below; - ConfigOptionBool retract_lift_not_last_layer; + ConfigOptionBools retract_lift_not_last_layer; ConfigOptionFloats retract_restart_extra; ConfigOptionFloats retract_restart_extra_toolchange; ConfigOptionFloats retract_speed; |