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