diff --git a/src/kiri-mode/fdm/client.js b/src/kiri-mode/fdm/client.js index ab961ee1..3c173f70 100644 --- a/src/kiri-mode/fdm/client.js +++ b/src/kiri-mode/fdm/client.js @@ -132,29 +132,18 @@ FDM.init = function(kiri, api) { }; } } - api.event.on("function.animate", (mode) => { - if (!isFdmMode) { + if (!(isFdmMode && lastView === VIEWS.PREVIEW)) { return; } - if (!api.conf.get().controller.danger) { - return; - } - let pct = 0; - let int = setInterval(() => { - if (pct <= 1) { - api.const.STACKS.setFraction(pct); - pct += 0.05; - } else { - api.const.STACKS.setFraction(1); - clearTimeout(int); - } - }, 50); - // let slider = $('top-slider'); - // slider.style.display = 'flex'; - // slider.oninput = slider.onchange = (ev) => { - // api.const.STACKS.setFraction(parseInt(ev.target.value)/100); - // }; + let slider = $('top-slider'); + slider.style.display = 'flex'; + slider.oninput = slider.onchange = (ev) => { + api.const.STACKS.setFraction(parseInt(ev.target.value)/1000); + api.space.update(); + }; + $('anim-slider').value = 500; + api.const.STACKS.setFraction(0.5); }); api.event.on("mode.set", mode => { isFdmMode = mode === 'FDM'; @@ -166,6 +155,7 @@ FDM.init = function(kiri, api) { updateVisiblity(); }); api.event.on("view.set", view => { + $('top-slider').style.display = 'none'; lastView = view; updateVisiblity(); filterSynth(); diff --git a/src/kiri-mode/fdm/prepare.js b/src/kiri-mode/fdm/prepare.js index edebbac1..2eb11feb 100644 --- a/src/kiri-mode/fdm/prepare.js +++ b/src/kiri-mode/fdm/prepare.js @@ -1171,7 +1171,7 @@ function slicePrintPath(print, slice, startPoint, offset, output, opt = {}) { lastIndex = -1, raft = opt.raft || false, flow = opt.flow || 1, - near = opt.near || false, + near = opt.near || (antiBacklash ? false : true), fast = opt.fast || false, fill = (opt.fill >= 0 ? opt.fill : fillMult) * flow, thinDist = near ? thinWall : thinWall; @@ -1182,7 +1182,7 @@ function slicePrintPath(print, slice, startPoint, offset, output, opt = {}) { found = false; mindist = Infinity; - // use next nearest line strategy + // use next nearest line endpoint strategy if (near) for (let i=0; i∞ + +
+ +
@@ -594,11 +598,6 @@ - -
- -
-