identify holes in arrange step
This commit is contained in:
parent
7bee55b9c7
commit
756e0dccb5
5 changed files with 151 additions and 46 deletions
|
|
@ -81,6 +81,21 @@ kiri.load(api => {
|
|||
// console.log({clear_traces: true});
|
||||
});
|
||||
};
|
||||
|
||||
//0 or less diameter means select all holes
|
||||
CAM.holes = function(ondone, diam) {
|
||||
kiri.client.sync();
|
||||
const settings = api.conf.get();
|
||||
const widgets = api.widgets.map();
|
||||
kiri.client.send("cam_holes", { settings, diam }, output => {
|
||||
let res = kiri.codec.decode(output)
|
||||
|
||||
console.log("output from driver",res)
|
||||
|
||||
ondone(res);
|
||||
});
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
if (kiri.worker) {
|
||||
|
|
@ -143,6 +158,22 @@ kiri.load(api => {
|
|||
}
|
||||
send.done({});
|
||||
};
|
||||
|
||||
kiri.worker.cam_holes = async function(data, send) {
|
||||
const { settings, diam } = data;
|
||||
const widgets = Object.values(kiri.worker.cache);
|
||||
const fresh = [];
|
||||
for (let widget of widgets) {
|
||||
if (await CAM.holes(settings, widget, diam)) {
|
||||
fresh.push(widget);
|
||||
}
|
||||
}
|
||||
// const fresh = widgets.filter(widget => CAM.traces(settings, widget, single));
|
||||
send.done(kiri.codec.encode(fresh.map(widget => { return {
|
||||
id: widget.id,
|
||||
holes: widget.holes,
|
||||
} } )));
|
||||
}
|
||||
}
|
||||
|
||||
});
|
||||
|
|
|
|||
Loading…
Reference in a new issue