fix output order for slices with shells touching the belt
This commit is contained in:
parent
1e4c06b747
commit
8be93cb3c9
4 changed files with 21 additions and 17 deletions
|
|
@ -71,11 +71,11 @@
|
||||||
"sliceMinHeight": 0,
|
"sliceMinHeight": 0,
|
||||||
"sliceSupportDensity": 0.25,
|
"sliceSupportDensity": 0.25,
|
||||||
"sliceSupportOffset": 0.4,
|
"sliceSupportOffset": 0.4,
|
||||||
"sliceSupportGap": 1,
|
"sliceSupportGap": 0,
|
||||||
"sliceSupportSize": 6,
|
"sliceSupportSize": 6,
|
||||||
"sliceSupportArea": 0.5,
|
"sliceSupportArea": 0.25,
|
||||||
"sliceSupportExtra": 0,
|
"sliceSupportExtra": 0,
|
||||||
"sliceSupportAngle": 2,
|
"sliceSupportAngle": 1,
|
||||||
"sliceSupportNozzle": 0,
|
"sliceSupportNozzle": 0,
|
||||||
"sliceSolidMinArea": 10,
|
"sliceSolidMinArea": 10,
|
||||||
"sliceSolidLayers": 3,
|
"sliceSolidLayers": 3,
|
||||||
|
|
@ -85,10 +85,12 @@
|
||||||
"firstLayerPrintMult": 1.15,
|
"firstLayerPrintMult": 1.15,
|
||||||
"firstLayerYOffset": 0,
|
"firstLayerYOffset": 0,
|
||||||
"firstLayerBrim": 0,
|
"firstLayerBrim": 0,
|
||||||
"firstLayerBeltLead": 3,
|
"firstLayerBeltLead": 0,
|
||||||
|
"firstLayerFanSpeed": 0,
|
||||||
"outputTemp": 210,
|
"outputTemp": 210,
|
||||||
"outputFanMax": 255,
|
"outputFanMax": 255,
|
||||||
"outputBedTemp": 60,
|
"outputBedTemp": 60,
|
||||||
|
"outputFanSpeed": 255,
|
||||||
"outputFeedrate": 50,
|
"outputFeedrate": 50,
|
||||||
"outputFinishrate": 50,
|
"outputFinishrate": 50,
|
||||||
"outputSeekrate": 80,
|
"outputSeekrate": 80,
|
||||||
|
|
@ -96,14 +98,15 @@
|
||||||
"outputFillMult": 1.25,
|
"outputFillMult": 1.25,
|
||||||
"outputSparseMult": 1.25,
|
"outputSparseMult": 1.25,
|
||||||
"outputFanLayer": 0,
|
"outputFanLayer": 0,
|
||||||
"outputRetractDist": 4,
|
"outputRetractDist": 4.5,
|
||||||
"outputRetractSpeed": 30,
|
"outputRetractSpeed": 50,
|
||||||
"outputRetractDwell": 30,
|
"outputRetractWipe": 1,
|
||||||
"outputShortPoly": 100.0,
|
"outputRetractDwell": 25,
|
||||||
|
"outputShortPoly": 60.0,
|
||||||
"outputMinSpeed": 10.0,
|
"outputMinSpeed": 10.0,
|
||||||
"outputCoastDist": 0.1,
|
"outputCoastDist": 0.1,
|
||||||
"outputWipeDistance": 0,
|
"outputWipeDistance": 1,
|
||||||
"outputLayerRetract": true,
|
"outputLayerRetract": false,
|
||||||
"detectThinWalls": true,
|
"detectThinWalls": true,
|
||||||
"zHopDistance": 0,
|
"zHopDistance": 0,
|
||||||
"antiBacklash": 0
|
"antiBacklash": 0
|
||||||
|
|
|
||||||
|
|
@ -845,7 +845,7 @@
|
||||||
// and enforce optimal shell order (outer first)
|
// and enforce optimal shell order (outer first)
|
||||||
if (isBelt && opt.onBelt) {
|
if (isBelt && opt.onBelt) {
|
||||||
startPoint = startClone;
|
startPoint = startClone;
|
||||||
shellOrder = 1;
|
shellOrder = -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
// top object
|
// top object
|
||||||
|
|
|
||||||
|
|
@ -314,10 +314,11 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
// todo remove b/c this is now calculated at slice time
|
||||||
// flag slices as being on or off the bed / belt
|
// flag slices as being on or off the bed / belt
|
||||||
for (let slice of widget.slices) {
|
// for (let slice of widget.slices) {
|
||||||
slice.onbelt = Math.abs(minby - slice.minby) < 0.01;
|
// slice.onbelt = Math.abs(minby - slice.minby) < 0.01;
|
||||||
}
|
// }
|
||||||
} else {
|
} else {
|
||||||
// when rafts used this is non-zero
|
// when rafts used this is non-zero
|
||||||
offset.z = zoff;
|
offset.z = zoff;
|
||||||
|
|
@ -410,7 +411,7 @@
|
||||||
params, // range parameters
|
params, // range parameters
|
||||||
first: slice.index === 0,
|
first: slice.index === 0,
|
||||||
support: slice.widget.support,
|
support: slice.widget.support,
|
||||||
onBelt: slice.onbelt,
|
onBelt: slice.belt.touch,
|
||||||
pretract: (wipeDist) => {
|
pretract: (wipeDist) => {
|
||||||
if (lastLayer && lastLayer.length) {
|
if (lastLayer && lastLayer.length) {
|
||||||
let lastOut = lastLayer.last();
|
let lastOut = lastLayer.last();
|
||||||
|
|
|
||||||
|
|
@ -299,7 +299,7 @@
|
||||||
}, "offsets");
|
}, "offsets");
|
||||||
|
|
||||||
// add lead in when specified in belt mode
|
// add lead in when specified in belt mode
|
||||||
if (!isSynth && isBelt && spro.firstLayerBeltLead) {
|
if (!isSynth && isBelt) {
|
||||||
let wb = widget.bounds;
|
let wb = widget.bounds;
|
||||||
// find adjusted zero point from slices
|
// find adjusted zero point from slices
|
||||||
let smin = Infinity;
|
let smin = Infinity;
|
||||||
|
|
@ -336,7 +336,7 @@
|
||||||
while (start.up && start.topShells().length === 0) {
|
while (start.up && start.topShells().length === 0) {
|
||||||
start = start.up;
|
start = start.up;
|
||||||
}
|
}
|
||||||
while (start && offset >= sliceHeight) {
|
while (offset && start && offset >= sliceHeight) {
|
||||||
let addto = start.down;
|
let addto = start.down;
|
||||||
if (!addto) {
|
if (!addto) {
|
||||||
addto = newSlice(start.z - sliceHeight);
|
addto = newSlice(start.z - sliceHeight);
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue