diff --git a/resources/profiles/BBL/machine/Bambu Lab A1 mini 0.4 nozzle.json b/resources/profiles/BBL/machine/Bambu Lab A1 mini 0.4 nozzle.json index e7e5cc1ec4..abab5660a1 100644 --- a/resources/profiles/BBL/machine/Bambu Lab A1 mini 0.4 nozzle.json +++ b/resources/profiles/BBL/machine/Bambu Lab A1 mini 0.4 nozzle.json @@ -12,6 +12,7 @@ "printer_variant": "0.4", "auxiliary_fan": "0", "bed_exclude_area": [], + "best_object_pos": "0.7x0.5", "default_filament_profile": [ "Bambu PLA Basic @BBL A1M" ], diff --git a/src/libslic3r/Arrange.cpp b/src/libslic3r/Arrange.cpp index 838850a59d..83544a5d37 100644 --- a/src/libslic3r/Arrange.cpp +++ b/src/libslic3r/Arrange.cpp @@ -217,8 +217,14 @@ void update_selected_items_axis_align(ArrangePolygons& selected, const DynamicPr double b = m11 / m00 - cx * cy; double c = m02 / m00 - cy * cy; - angle = std::atan2(2 * b, (a - c)) / 2; - validResult = true; + //if a and c are close, there is no dominant axis, then do not rotate + if (std::abs(a) < 1.5*std::abs(c) && std::abs(c) < 1.5*std::abs(a)) { + validResult = false; + } + else { + angle = std::atan2(2 * b, (a - c)) / 2; + validResult = true; + } } } if (validResult) { ap.rotation += (PI / 2 - angle); }