allow top/bottom layers to be modified in ranges
This commit is contained in:
parent
b657f66770
commit
d8bb38757d
2 changed files with 8 additions and 4 deletions
|
|
@ -43,6 +43,8 @@ FDM.init = function(kiri, api) {
|
||||||
"sliceFillGrow": LANG.fi_grow_s,
|
"sliceFillGrow": LANG.fi_grow_s,
|
||||||
"sliceSolidRate": LANG.ou_fini_s,
|
"sliceSolidRate": LANG.ou_fini_s,
|
||||||
"sliceSolidMinArea": LANG.ad_msol_s,
|
"sliceSolidMinArea": LANG.ad_msol_s,
|
||||||
|
"sliceTopLayers": LANG.sl_ltop_s,
|
||||||
|
"sliceBottomLayers": LANG.sl_lbot_s,
|
||||||
"firstLayerRate": LANG.fl_rate_s,
|
"firstLayerRate": LANG.fl_rate_s,
|
||||||
"firstLayerPrintMult": LANG.fl_mult_s,
|
"firstLayerPrintMult": LANG.fl_mult_s,
|
||||||
"firstLayerFanSpeed": LANG.ou_fans_s,
|
"firstLayerFanSpeed": LANG.ou_fans_s,
|
||||||
|
|
|
||||||
|
|
@ -110,7 +110,6 @@ FDM.slice = function(settings, widget, onupdate, ondone) {
|
||||||
useAssembly = controller.assembly,
|
useAssembly = controller.assembly,
|
||||||
isConcurrent = controller.threaded && kiri.minions.concurrent,
|
isConcurrent = controller.threaded && kiri.minions.concurrent,
|
||||||
topLayers = process.sliceTopLayers || 0,
|
topLayers = process.sliceTopLayers || 0,
|
||||||
solidLayers = process.sliceSolidLayers || 0,
|
|
||||||
bottomLayers = process.sliceBottomLayers || 0,
|
bottomLayers = process.sliceBottomLayers || 0,
|
||||||
vaseMode = process.sliceFillType === 'vase' && !isSynth,
|
vaseMode = process.sliceFillType === 'vase' && !isSynth,
|
||||||
metadata = widget.anno,
|
metadata = widget.anno,
|
||||||
|
|
@ -699,7 +698,7 @@ FDM.slice = function(settings, widget, onupdate, ondone) {
|
||||||
// layer boolean diffs need to be computed to find flat areas to fill
|
// layer boolean diffs need to be computed to find flat areas to fill
|
||||||
// and overhangs that need to be supported. these are stored in flats
|
// and overhangs that need to be supported. these are stored in flats
|
||||||
// and bridges, projected up/down, and merged into an array of solids
|
// and bridges, projected up/down, and merged into an array of solids
|
||||||
if ((topLayers || bottomLayers || solidLayers) && !vaseMode && !isSynth) {
|
if (!vaseMode && !isSynth) {
|
||||||
profileStart("delta");
|
profileStart("delta");
|
||||||
forSlices(0.2, 0.34, slice => {
|
forSlices(0.2, 0.34, slice => {
|
||||||
let params = slice.params || process;
|
let params = slice.params || process;
|
||||||
|
|
@ -710,8 +709,11 @@ FDM.slice = function(settings, widget, onupdate, ondone) {
|
||||||
profileEnd();
|
profileEnd();
|
||||||
profileStart("delta-project");
|
profileStart("delta-project");
|
||||||
forSlices(0.34, 0.35, slice => {
|
forSlices(0.34, 0.35, slice => {
|
||||||
if (solidLayers || topLayers) projectFlats(slice, solidLayers || topLayers);
|
let params = slice.params || process;
|
||||||
if (solidLayers || bottomLayers) projectBridges(slice, solidLayers || bottomLayers);
|
topLayers = params.sliceTopLayers || 0;
|
||||||
|
bottomLayers = params.sliceBottomLayers || 0;
|
||||||
|
if (topLayers) projectFlats(slice, topLayers);
|
||||||
|
if (bottomLayers) projectBridges(slice, bottomLayers);
|
||||||
}, "layer deltas");
|
}, "layer deltas");
|
||||||
profileEnd();
|
profileEnd();
|
||||||
profileStart("solid-fill")
|
profileStart("solid-fill")
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue