pass base.config updates to minions

This commit is contained in:
Stewart Allen 2021-06-21 02:12:25 -04:00
commit 830cf2d6ac
4 changed files with 24 additions and 31 deletions

View file

@ -185,6 +185,15 @@
settings.ver = CVER; settings.ver = CVER;
} }
// fixup old/new detail settings
let detail = settings.controller.detail;
settings.controller.detail = {
"best": "100",
"good": "75",
"fair": "50",
"poor": "25"
}[detail] || detail;
fill_cull_once(settings, template); fill_cull_once(settings, template);
fill_cull_once(settings.device, default_dev); fill_cull_once(settings.device, default_dev);
fill_cull_once(settings.process, default_pro); fill_cull_once(settings.process, default_pro);
@ -676,7 +685,7 @@
exportLocal: false, exportLocal: false,
exportPreview: false, exportPreview: false,
decimate: true, decimate: true,
detail: "100", detail: "75",
animesh: "200", animesh: "200",
healMesh: false, healMesh: false,
threaded: false, threaded: false,

View file

@ -28,6 +28,14 @@ function reply(msg, direct) {
} }
const funcs = { const funcs = {
config: data => {
if (data.base) {
Object.assign(BASE.config, data.base);
} else {
console.log({invalid: data});
}
},
union: (data, seq) => { union: (data, seq) => {
if (!(data.polys && data.polys.length)) { if (!(data.polys && data.polys.length)) {
reply({ seq, union: CODEC.encode([]) }); reply({ seq, union: CODEC.encode([]) });

View file

@ -484,6 +484,12 @@ KIRI.worker = {
} else { } else {
console.log({invalid:data}); console.log({invalid:data});
} }
for (let minion of minions) {
minion.postMessage({
cmd: "config",
base: data.base
});
}
send.done({config: update}); send.done({config: update});
}, },

View file

@ -126,28 +126,6 @@
firstSliceHeight = sliceMinHeight || sliceHeight; firstSliceHeight = sliceMinHeight || sliceHeight;
} }
// const slicer = new KIRI.slicer2(widget.getPoints(), { });
// const levels = slicer.interval(sliceHeight, {
// zlist: true,
// zline: true,
// boff: spro.firstSliceHeight || spro.sliceHeight
// });
// const slices = [];
// let last;
// slicer.slice(levels, { genso: true, each: (data, idx, tot, time) => {
// const slice = data.slice;
// if (last) {
// slice.down = last;
// last.up = slice;
// }
// last = slice;
// slice.index = idx;
// slice.height = spro.firstSliceHeight || spro.sliceHeight;
// slices.push(slice);
// onupdate((idx / tot) * 0.5);
// } });
// onSliceDone(slices);
SLICER.sliceWidget(widget, { SLICER.sliceWidget(widget, {
height: sliceHeight, height: sliceHeight,
minHeight: sliceMinHeight, minHeight: sliceMinHeight,
@ -646,15 +624,9 @@
function doShells(slice, count, offsetN, fillOffset, opt = {}, promises) { function doShells(slice, count, offsetN, fillOffset, opt = {}, promises) {
let offset1 = offsetN / 2; let offset1 = offsetN / 2;
if (slice.index === 0) {
// console.log({slice_top_0: top_poly, count});
// segment polygon
}
if (promises) { if (promises) {
let oldtops = slice.tops; let oldtops = slice.tops;
let newtops = slice.tops = []; let newtops = slice.tops = [];
oldtops.old = true;
for (let top of oldtops) { for (let top of oldtops) {
promises.push( promises.push(
new Promise((resolve, reject) => { new Promise((resolve, reject) => {
@ -670,7 +642,6 @@
}) })
); );
} }
newtops.new = true;
} else { } else {
for (let top of slice.tops) { for (let top of slice.tops) {
doTopShells(slice.z, top, count, offset1, offsetN, fillOffset, opt); doTopShells(slice.z, top, count, offset1, offsetN, fillOffset, opt);
@ -1055,7 +1026,6 @@
* @return {boolean} true if filled, false if not * @return {boolean} true if filled, false if not
*/ */
function doSolidsFill(slice, spacing, angle, minArea, fillQ) { function doSolidsFill(slice, spacing, angle, minArea, fillQ) {
let minarea = minArea || 1, let minarea = minArea || 1,
tops = slice.tops, tops = slice.tops,
solids = slice.solids; solids = slice.solids;