mirror of
https://github.com/SoftFever/OrcaSlicer.git
synced 2025-07-11 08:47:52 -06:00
Wrong bridge detection result (#4651)
process_external_surfaces before discover_horizontal_shells
This commit is contained in:
parent
d601e9d544
commit
f626e4dd27
1 changed files with 11 additions and 11 deletions
|
@ -451,6 +451,17 @@ void PrintObject::prepare_infill()
|
||||||
} // for each region
|
} // for each region
|
||||||
#endif /* SLIC3R_DEBUG_SLICE_PROCESSING */
|
#endif /* SLIC3R_DEBUG_SLICE_PROCESSING */
|
||||||
|
|
||||||
|
// this will detect bridges and reverse bridges
|
||||||
|
// and rearrange top/bottom/internal surfaces
|
||||||
|
// It produces enlarged overlapping bridging areas.
|
||||||
|
//
|
||||||
|
// 1) stBottomBridge / stBottom infill is grown by 3mm and clipped by the total infill area. Bridges are detected. The areas may overlap.
|
||||||
|
// 2) stTop is grown by 3mm and clipped by the grown bottom areas. The areas may overlap.
|
||||||
|
// 3) Clip the internal surfaces by the grown top/bottom surfaces.
|
||||||
|
// 4) Merge surfaces with the same style. This will mostly get rid of the overlaps.
|
||||||
|
//FIXME This does not likely merge surfaces, which are supported by a material with different colors, but same properties.
|
||||||
|
this->process_external_surfaces();
|
||||||
|
m_print->throw_if_canceled();
|
||||||
|
|
||||||
// Debugging output.
|
// Debugging output.
|
||||||
#ifdef SLIC3R_DEBUG_SLICE_PROCESSING
|
#ifdef SLIC3R_DEBUG_SLICE_PROCESSING
|
||||||
|
@ -474,17 +485,6 @@ void PrintObject::prepare_infill()
|
||||||
this->discover_horizontal_shells();
|
this->discover_horizontal_shells();
|
||||||
m_print->throw_if_canceled();
|
m_print->throw_if_canceled();
|
||||||
|
|
||||||
// this will detect bridges and reverse bridges
|
|
||||||
// and rearrange top/bottom/internal surfaces
|
|
||||||
// It produces enlarged overlapping bridging areas.
|
|
||||||
//
|
|
||||||
// 1) stBottomBridge / stBottom infill is grown by 3mm and clipped by the total infill area. Bridges are detected. The areas may overlap.
|
|
||||||
// 2) stTop is grown by 3mm and clipped by the grown bottom areas. The areas may overlap.
|
|
||||||
// 3) Clip the internal surfaces by the grown top/bottom surfaces.
|
|
||||||
// 4) Merge surfaces with the same style. This will mostly get rid of the overlaps.
|
|
||||||
//FIXME This does not likely merge surfaces, which are supported by a material with different colors, but same properties.
|
|
||||||
this->process_external_surfaces();
|
|
||||||
m_print->throw_if_canceled();
|
|
||||||
|
|
||||||
#ifdef SLIC3R_DEBUG_SLICE_PROCESSING
|
#ifdef SLIC3R_DEBUG_SLICE_PROCESSING
|
||||||
for (size_t region_id = 0; region_id < this->num_printing_regions(); ++ region_id) {
|
for (size_t region_id = 0; region_id < this->num_printing_regions(); ++ region_id) {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue