add filament re-engage visualization
This commit is contained in:
parent
f28885e26e
commit
4fa91e3146
2 changed files with 16 additions and 5 deletions
7
notes.md
7
notes.md
|
|
@ -23,24 +23,21 @@
|
|||
|
||||
* `F` 2D image import
|
||||
* `F` detect and report slow framerates
|
||||
* `F` implement an in-app bug reporting system. add workspace to export option.
|
||||
* `F` implement an in-app bug reporting system
|
||||
* `P` improve decimation speed by avoiding in/out of Point?
|
||||
* `P` duplicate objects should share same slice data unless rotated or scaled
|
||||
* `P` worker state cache cleanup and organization
|
||||
* `P` client/worker interface normalization and cleanup
|
||||
* `C` improve path line caps
|
||||
|
||||
# FDM
|
||||
|
||||
* `B` dwell / extrude engage reversed?
|
||||
* `B` fix adaptive slicing with multi-extruder
|
||||
* `B` fix supports with grouped parts
|
||||
* `B` sparse infill should follow polys it intersects
|
||||
* `B` sparse infill should follow polys between intersect points
|
||||
* `B` multi-extruder rendering of raft fails to offset the rest of the print
|
||||
* `B` multi-extruder purge blocks fail to generate properly for rafts
|
||||
* `F` control for size of purge block (with 0=disabled)
|
||||
* `F` add separate fill speed control
|
||||
* `F` control shell order (in/out or out/in)
|
||||
* `F` manual support addition / control
|
||||
* `F` control layer start position
|
||||
* `F` polishing and other non-planar work
|
||||
|
|
|
|||
|
|
@ -444,6 +444,7 @@
|
|||
let lastEnd = null;
|
||||
let lastOut = null;
|
||||
let current = null;
|
||||
let retracted = false;
|
||||
|
||||
function color(point) {
|
||||
return FDM.rateToColor(point.speed, maxspd);
|
||||
|
|
@ -454,6 +455,7 @@
|
|||
const moves = [];
|
||||
const heads = [];
|
||||
const retracts = [];
|
||||
const engages = [];
|
||||
const output = new KIRI.Render();
|
||||
layers.push(output);
|
||||
|
||||
|
|
@ -471,8 +473,13 @@
|
|||
let emits = 0;
|
||||
|
||||
level.forEach((out,oi) => {
|
||||
if (retracted && out.emit) {
|
||||
retracted = false;
|
||||
engages.push(lastOut.point);
|
||||
}
|
||||
if (out.retract) {
|
||||
retracts.push(out.point);
|
||||
retracted = true;
|
||||
}
|
||||
if (!out.point) {
|
||||
// in cam mode, these are drilling or dwell ops
|
||||
|
|
@ -526,6 +533,13 @@
|
|||
return newPolygon().centerCircle(point, 0.2, 16).setZ(point.z + 0.01);
|
||||
}), { outline: true });
|
||||
}
|
||||
if (engages.length) {
|
||||
output
|
||||
.setLayer('engage', { line: 0x005500, face: 0x00ff00, opacity: 0.5 }, true)
|
||||
.addAreas(engages.map(point => {
|
||||
return newPolygon().centerCircle(point, 0.2, 16).setZ(point.z + 0.01);
|
||||
}), { outline: true });
|
||||
}
|
||||
if (heads.length) {
|
||||
output
|
||||
.setLayer('arrows', { face: moveColor, line: 0x555555, opacity: 0.5 }, true)
|
||||
|
|
|
|||
Loading…
Reference in a new issue