mirror of
https://github.com/Doodle3D/Doodle3D-Slicer.git
synced 2024-11-22 05:37:55 +01:00
fix slicing single walled paths
This commit is contained in:
parent
60fb966ccb
commit
d63754dbd0
@ -82,12 +82,12 @@ export default function optimizePaths(slices) {
|
||||
}
|
||||
|
||||
function optimizeShape(shape, start) {
|
||||
const inputPaths = shape.mapToLower();
|
||||
const inputPaths = shape.mapToLower().filter(path => path.length > 0);
|
||||
const optimizedPaths = [];
|
||||
const donePaths = [];
|
||||
|
||||
while (optimizedPaths.length !== inputPaths.length) {
|
||||
let minLength = false;
|
||||
let minLength = Infinity;
|
||||
let reverse;
|
||||
let minPath;
|
||||
let offset;
|
||||
@ -101,7 +101,7 @@ function optimizeShape(shape, start) {
|
||||
if (shape.closed) {
|
||||
for (let j = 0; j < path.length; j += 1) {
|
||||
const length = distanceTo(path[j], start);
|
||||
if (minLength === false || length < minLength) {
|
||||
if (length < minLength) {
|
||||
minPath = path;
|
||||
minLength = length;
|
||||
offset = j;
|
||||
@ -110,7 +110,7 @@ function optimizeShape(shape, start) {
|
||||
}
|
||||
} else {
|
||||
const lengthToStart = distanceTo(path[0], start);
|
||||
if (minLength === false || lengthToStart < minLength) {
|
||||
if (lengthToStart < minLength) {
|
||||
minPath = path;
|
||||
minLength = lengthToStart;
|
||||
reverse = false;
|
||||
|
Loading…
Reference in New Issue
Block a user