mirror of
https://git.mirrors.martin98.com/https://github.com/SoftFever/OrcaSlicer.git
synced 2025-08-16 18:15:57 +08:00
Prevent crashes from edge cases when slicing complex small model with "big" fuzzy skin is used
This commit is contained in:
parent
afabd955ac
commit
d88dda8131
@ -405,6 +405,7 @@ static ExtrusionEntityCollection traverse_loops(const PerimeterGenerator &perime
|
||||
|
||||
// Reapply the nearest point search for starting point.
|
||||
// We allow polyline reversal because Clipper may have randomly reversed polylines during clipping.
|
||||
if(paths.empty()) continue;
|
||||
chain_and_reorder_extrusion_paths(paths, &paths.front().first_point());
|
||||
// smothing the overhang degree
|
||||
// merge small path between paths which have same overhang degree
|
||||
|
@ -1042,6 +1042,7 @@ std::vector<std::pair<size_t, bool>> chain_extrusion_paths(std::vector<Extrusion
|
||||
void reorder_extrusion_paths(std::vector<ExtrusionPath> &extrusion_paths, const std::vector<std::pair<size_t, bool>> &chain)
|
||||
{
|
||||
assert(extrusion_paths.size() == chain.size());
|
||||
if(extrusion_paths.empty()) return;
|
||||
std::vector<ExtrusionPath> out;
|
||||
out.reserve(extrusion_paths.size());
|
||||
for (const std::pair<size_t, bool> &idx : chain) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user