mirror of
https://github.com/OrcaSlicer/OrcaSlicer.git
synced 2026-07-22 18:32:16 +00:00
FIX: Top surface bridging fail on 3DHC & FL infill
Add 45 degree angle offset when processing the bridge. Need to raise infill_direction to invalidate posPrepareInfill jira: 6774 Change-Id: I5e6bef3aa814b01c5f30398ac745937a67e3ef4c (cherry picked from commit 7b12cab10b88f432a11414f8caa1c6427777a1ba)
This commit is contained in:
@@ -196,7 +196,7 @@ void FillFlippingLine ::_fill_surface_single(
|
||||
coord_t line_spacing = coord_t(scale_(this->spacing) / params.density);
|
||||
|
||||
// reduce density
|
||||
if (params.density < 0.999) line_spacing *= 1.5;
|
||||
if (params.density < 0.999) line_spacing *= 1.08;
|
||||
|
||||
bb.merge(align_to_grid(bb.min, Point(line_spacing * 4, line_spacing * 4)));
|
||||
|
||||
|
||||
@@ -2333,9 +2333,17 @@ void PrintObject::bridge_over_infill()
|
||||
};
|
||||
|
||||
// LAMBDA do determine optimal bridging angle
|
||||
auto determine_bridging_angle = [](const Polygons &bridged_area, const Lines &anchors, InfillPattern dominant_pattern) {
|
||||
auto determine_bridging_angle = [](const Polygons &bridged_area, const Lines &anchors, InfillPattern dominant_pattern, double infill_direction) {
|
||||
AABBTreeLines::LinesDistancer<Line> lines_tree(anchors);
|
||||
|
||||
// Check it the infill that require a fixed infill angle.
|
||||
switch (dominant_pattern) {
|
||||
case ip3DHoneycomb:
|
||||
case ipFlippingLine:
|
||||
return (infill_direction + 45.0) * 2.0 * M_PI / 360.;
|
||||
default: break;
|
||||
}
|
||||
|
||||
std::map<double, int> counted_directions;
|
||||
for (const Polygon &p : bridged_area) {
|
||||
double acc_distance = 0;
|
||||
|
||||
Reference in New Issue
Block a user