fix type 1 thin wall

This commit is contained in:
Stewart Allen 2025-02-23 10:52:29 -05:00
commit 382e0cd5d7
3 changed files with 5 additions and 1 deletions

View file

@ -111,17 +111,21 @@ function thin_type_1(params) {
let { z, top, count, top_poly, offsetN, last, gaps } = params;
top.thin_fill = [];
top.fill_sparse = [];
let layers = POLY.inset(top_poly, offsetN, count, z, true);
last = layers.last().mid;
top.shells = layers.map(r => r.mid).flat();
top.gaps = layers.map(r => r.gap).flat();
let off = offsetN;
let min = off * 0.75;
let max = off * 4;
for (let poly of layers.map(r => r.gap).flat()) {
let centers = poly.centers(off/2, z, min, max, {lines:false});
top.fill_sparse.appendAll(centers);
}
return { last, gaps };
}

View file

@ -1000,7 +1000,6 @@ function doRender(slice, isSynth, params, opt = {}) {
if (slice.tops) // missing for supports
slice.tops.forEach(top => {
console.log({ render: top });
if (isThin) output
.setLayer('part', Color.part)
.addPolys([top.poly]);

View file

@ -155,6 +155,7 @@ class Slice {
let top = new Top(data.poly);
top.thin_fill = data.thin_fill ? data.thin_fill.map(p => base.newPoint(p.x,p.y,p.z)) : undefined;
top.fill_lines = data.fill_lines;
top.fill_sparse = data.fill_sparse;
top.fill_off = data.fill_off;
top.last = data.last;
top.gaps = data.gaps;