additional layer of bounds checking for moves outside part. bump rev 2.4.D12

This commit is contained in:
Stewart Allen 2020-12-04 09:41:39 -05:00
commit 4c4626232b
4 changed files with 10 additions and 4 deletions

View file

@ -561,9 +561,15 @@
}
// add shadow perimeter to terrain to catch outside moves off part
let shadowOff = POLY.offset(shadowTop.tops, minToolDiam / 2);
let tabpoly = tabs ? tabs.map(tab => tab.poly) : [];
let allpoly = POLY.union([...shadowTop.tops, ...tabpoly], 0, true);
let shadowOff = POLY.offset(allpoly, [minToolDiam/2,maxToolDiam/2], { count: 2, flat: true });
terrain.forEach(level => level.tops.appendAll(shadowOff));
// let dslice = KIRI.newSlice(-1);
// dslice.output().setLayer("shadowOff", { line: 0xff0000 }).addPolys(shadowOff);
// sliceAll.push(dslice);
widget.terrain = terrain;
widget.minToolDiam = minToolDiam;
widget.maxToolDiam = maxToolDiam;