update sla device with resolution. add halot sky device
This commit is contained in:
parent
790b1f5869
commit
ed9ddfd83e
10 changed files with 48 additions and 14 deletions
|
|
@ -96,9 +96,9 @@
|
||||||
"outputFeedrate": 30,
|
"outputFeedrate": 30,
|
||||||
"outputFinishrate": 30,
|
"outputFinishrate": 30,
|
||||||
"outputSeekrate": 80,
|
"outputSeekrate": 80,
|
||||||
"outputShellMult": 1.1,
|
"outputShellMult": 1.15,
|
||||||
"outputFillMult": 1.1,
|
"outputFillMult": 1.15,
|
||||||
"outputSparseMult": 1.1,
|
"outputSparseMult": 1.15,
|
||||||
"outputFanLayer": 0,
|
"outputFanLayer": 0,
|
||||||
"outputRetractDist": 6,
|
"outputRetractDist": 6,
|
||||||
"outputRetractSpeed": 70,
|
"outputRetractSpeed": 70,
|
||||||
|
|
@ -149,9 +149,9 @@
|
||||||
"outputFeedrate": 30,
|
"outputFeedrate": 30,
|
||||||
"outputFinishrate": 30,
|
"outputFinishrate": 30,
|
||||||
"outputSeekrate": 80,
|
"outputSeekrate": 80,
|
||||||
"outputShellMult": 1.1,
|
"outputShellMult": 1.15,
|
||||||
"outputFillMult": 1.1,
|
"outputFillMult": 1.15,
|
||||||
"outputSparseMult": 1.1,
|
"outputSparseMult": 1.15,
|
||||||
"outputFanLayer": 0,
|
"outputFanLayer": 0,
|
||||||
"outputRetractDist": 6,
|
"outputRetractDist": 6,
|
||||||
"outputRetractSpeed": 70,
|
"outputRetractSpeed": 70,
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,8 @@
|
||||||
"bed_width": 120.96,
|
"bed_width": 120.96,
|
||||||
"bed_depth": 68.04,
|
"bed_depth": 68.04,
|
||||||
"bed_height": 1,
|
"bed_height": 1,
|
||||||
"max_height": 150
|
"max_height": 150,
|
||||||
|
"resolution_x": 2560,
|
||||||
|
"resolution_y": 1440
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
12
src/dev/sla/Creality.Halot.Sky
Normal file
12
src/dev/sla/Creality.Halot.Sky
Normal file
|
|
@ -0,0 +1,12 @@
|
||||||
|
{
|
||||||
|
"no_clone": true,
|
||||||
|
"cmd":{},
|
||||||
|
"settings":{
|
||||||
|
"bed_width": 192,
|
||||||
|
"bed_depth": 120,
|
||||||
|
"bed_height": 1,
|
||||||
|
"max_height": 200,
|
||||||
|
"resolution_x": 3840,
|
||||||
|
"resolution_y": 2400
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -115,6 +115,8 @@
|
||||||
bedDepth: valueOf(set.bed_depth, 175),
|
bedDepth: valueOf(set.bed_depth, 175),
|
||||||
bedRound: valueOf(set.bed_circle, false),
|
bedRound: valueOf(set.bed_circle, false),
|
||||||
bedBelt: valueOf(set.bed_belt, false),
|
bedBelt: valueOf(set.bed_belt, false),
|
||||||
|
resolutionX: valueOf(set.resolution_x, 1600),
|
||||||
|
resolutionY: valueOf(set.resolution_y, 900),
|
||||||
deviceZMax: valueOf(set.z_move_max, 0),
|
deviceZMax: valueOf(set.z_move_max, 0),
|
||||||
maxHeight: valueOf(set.build_height, 150),
|
maxHeight: valueOf(set.build_height, 150),
|
||||||
originCenter: valueOf(set.origin_center, false),
|
originCenter: valueOf(set.origin_center, false),
|
||||||
|
|
@ -397,7 +399,9 @@
|
||||||
bedWidth: 150,
|
bedWidth: 150,
|
||||||
bedDepth: 150,
|
bedDepth: 150,
|
||||||
bedHeight: 1.5,
|
bedHeight: 1.5,
|
||||||
maxHeight: 150
|
maxHeight: 150,
|
||||||
|
resolutionX: 1600,
|
||||||
|
resolutionY: 900
|
||||||
},
|
},
|
||||||
// process defaults SLA:Process
|
// process defaults SLA:Process
|
||||||
p:{
|
p:{
|
||||||
|
|
|
||||||
|
|
@ -764,6 +764,8 @@
|
||||||
UI.bedDepth,
|
UI.bedDepth,
|
||||||
UI.bedWidth,
|
UI.bedWidth,
|
||||||
UI.maxHeight,
|
UI.maxHeight,
|
||||||
|
UI.resolutionX,
|
||||||
|
UI.resolutionY,
|
||||||
UI.deviceOrigin,
|
UI.deviceOrigin,
|
||||||
UI.deviceRound,
|
UI.deviceRound,
|
||||||
UI.deviceBelt,
|
UI.deviceBelt,
|
||||||
|
|
@ -1575,11 +1577,13 @@
|
||||||
bedWidth: UC.newInput(LANG.dv_bedw_s, {title:LANG.dv_bedw_l, convert:UC.toFloat, size:6, units:true, round:2}),
|
bedWidth: UC.newInput(LANG.dv_bedw_s, {title:LANG.dv_bedw_l, convert:UC.toFloat, size:6, units:true, round:2}),
|
||||||
bedDepth: UC.newInput(LANG.dv_bedd_s, {title:LANG.dv_bedd_l, convert:UC.toFloat, size:6, units:true, round:2}),
|
bedDepth: UC.newInput(LANG.dv_bedd_s, {title:LANG.dv_bedd_l, convert:UC.toFloat, size:6, units:true, round:2}),
|
||||||
maxHeight: UC.newInput(LANG.dv_bedh_s, {title:LANG.dv_bedh_l, convert:UC.toFloat, size:6, modes:FDM_SLA}),
|
maxHeight: UC.newInput(LANG.dv_bedh_s, {title:LANG.dv_bedh_l, convert:UC.toFloat, size:6, modes:FDM_SLA}),
|
||||||
|
resolutionX: UC.newInput(LANG.dv_rezx_s, {title:LANG.dv_rezx_l, convert:UC.toInt, size:6, modes:SLA}),
|
||||||
|
resolutionY: UC.newInput(LANG.dv_rezy_s, {title:LANG.dv_rezy_l, convert:UC.toInt, size:6, modes:SLA}),
|
||||||
spindleMax: UC.newInput(LANG.dv_spmx_s, {title:LANG.dv_spmx_l, convert:UC.toInt, size: 6, modes:CAM}),
|
spindleMax: UC.newInput(LANG.dv_spmx_s, {title:LANG.dv_spmx_l, convert:UC.toInt, size: 6, modes:CAM}),
|
||||||
deviceZMax: UC.newInput(LANG.dv_zmax_s, {title:LANG.dv_zmax_l, convert:UC.toInt, size: 6, modes:FDM}),
|
deviceZMax: UC.newInput(LANG.dv_zmax_s, {title:LANG.dv_zmax_l, convert:UC.toInt, size: 6, modes:FDM}),
|
||||||
fdmSep: UC.newBlank({class:"pop-sep", modes:FDM}),
|
fdmSep: UC.newBlank({class:"pop-sep", modes:FDM}),
|
||||||
fwRetract: UC.newBoolean(LANG.dv_retr_s, onBooleanClick, {title:LANG.dv_retr_l, modes:FDM}),
|
fwRetract: UC.newBoolean(LANG.dv_retr_s, onBooleanClick, {title:LANG.dv_retr_l, modes:FDM}),
|
||||||
deviceOrigin: UC.newBoolean(LANG.dv_orgc_s, onBooleanClick, {title:LANG.dv_orgc_l, modes:FDM_LASER_SLA}),
|
deviceOrigin: UC.newBoolean(LANG.dv_orgc_s, onBooleanClick, {title:LANG.dv_orgc_l, modes:FDM_LASER}),
|
||||||
deviceRound: UC.newBoolean(LANG.dv_bedc_s, onBooleanClick, {title:LANG.dv_bedc_l, modes:FDM, trigger:true, show:isNotBelt}),
|
deviceRound: UC.newBoolean(LANG.dv_bedc_s, onBooleanClick, {title:LANG.dv_bedc_l, modes:FDM, trigger:true, show:isNotBelt}),
|
||||||
deviceBelt: UC.newBoolean(LANG.dv_belt_s, onBooleanClick, {title:LANG.dv_belt_l, modes:FDM, trigger:true, show:() => !UI.deviceRound.checked}),
|
deviceBelt: UC.newBoolean(LANG.dv_belt_s, onBooleanClick, {title:LANG.dv_belt_l, modes:FDM, trigger:true, show:() => !UI.deviceRound.checked}),
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1271,7 +1271,7 @@
|
||||||
for (let [k,v] of Object.entries(consts)) {
|
for (let [k,v] of Object.entries(consts)) {
|
||||||
eva.push(`let ${k} = "${v}";`);
|
eva.push(`let ${k} = "${v}";`);
|
||||||
}
|
}
|
||||||
eva.push(`function range(a,b) { return (a + (layer / layers) * (b-a)).round(3) }`)
|
eva.push(`function range(a,b) { return (a + (layer / layers) * (b-a)).round(4) }`)
|
||||||
eva.push(`try {( ${tok} )} catch (e) {console.log(e);0}`);
|
eva.push(`try {( ${tok} )} catch (e) {console.log(e);0}`);
|
||||||
let scr = eva.join('');
|
let scr = eva.join('');
|
||||||
let evl = eval(`{ ${scr} }`);
|
let evl = eval(`{ ${scr} }`);
|
||||||
|
|
|
||||||
|
|
@ -1034,10 +1034,10 @@
|
||||||
* 'expand' is used for top offsets in SLA mode
|
* 'expand' is used for top offsets in SLA mode
|
||||||
*/
|
*/
|
||||||
function doDiff(slice, minArea, options = {}) {
|
function doDiff(slice, minArea, options = {}) {
|
||||||
|
const { sla, fakedown } = options;
|
||||||
if (slice.index === 0 && !fakedown) {
|
if (slice.index === 0 && !fakedown) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
const { sla, fakedown } = options;
|
|
||||||
const top = slice,
|
const top = slice,
|
||||||
down = slice.down || (fakedown ? newSlice(-1) : null),
|
down = slice.down || (fakedown ? newSlice(-1) : null),
|
||||||
topInner = sla ? top.topPolys() : top.topInners(),
|
topInner = sla ? top.topPolys() : top.topInners(),
|
||||||
|
|
|
||||||
|
|
@ -22,8 +22,8 @@
|
||||||
process = settings.process,
|
process = settings.process,
|
||||||
output = print.output,
|
output = print.output,
|
||||||
layermax = 0,
|
layermax = 0,
|
||||||
width = 2560,
|
width = device.resolutionX,
|
||||||
height = 1440,
|
height = device.resolutionY,
|
||||||
width2 = width/2,
|
width2 = width/2,
|
||||||
height2 = height/2,
|
height2 = height/2,
|
||||||
scaleX = width / device.bedWidth,
|
scaleX = width / device.bedWidth,
|
||||||
|
|
@ -75,6 +75,9 @@
|
||||||
case 'Anycubic.Photon.S':
|
case 'Anycubic.Photon.S':
|
||||||
exp_func = generatePhotons;
|
exp_func = generatePhotons;
|
||||||
break;
|
break;
|
||||||
|
case 'Creality.Halot.Sky':
|
||||||
|
exp_func = generateCXDLP;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
let file = exp_func(print, {
|
let file = exp_func(print, {
|
||||||
|
|
@ -96,6 +99,10 @@
|
||||||
console.log('print.export', Date.now() - mark);
|
console.log('print.export', Date.now() - mark);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
function generateCXDLP(print, conf, progress) {
|
||||||
|
console.log({generateCXDLP: print, conf, progress});
|
||||||
|
}
|
||||||
|
|
||||||
function generatePhoton(print, conf, progress) {
|
function generatePhoton(print, conf, progress) {
|
||||||
let printset = print.settings,
|
let printset = print.settings,
|
||||||
process = printset.process,
|
process = printset.process,
|
||||||
|
|
|
||||||
|
|
@ -50,7 +50,8 @@
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
let b64 = atob(self.worker.snap);
|
let sws = self.worker.snap.url;
|
||||||
|
let b64 = atob(sws.substring(sws.indexOf(',') + 1));
|
||||||
let bin = Uint8Array.from(b64, c => c.charCodeAt(0));
|
let bin = Uint8Array.from(b64, c => c.charCodeAt(0));
|
||||||
let img = new png.PNG();
|
let img = new png.PNG();
|
||||||
img.parse(bin, (err, data) => {
|
img.parse(bin, (err, data) => {
|
||||||
|
|
|
||||||
|
|
@ -93,6 +93,10 @@ kiri.lang['en-us'] = {
|
||||||
dv_bedd_l: "workspace units",
|
dv_bedd_l: "workspace units",
|
||||||
dv_bedh_s: "height",
|
dv_bedh_s: "height",
|
||||||
dv_bedh_l: ["max build height","in workspace units"],
|
dv_bedh_l: ["max build height","in workspace units"],
|
||||||
|
dv_rezx_s: "resolution X",
|
||||||
|
dv_rezx_l: ["x resolution"],
|
||||||
|
dv_rezy_s: "resolution Y",
|
||||||
|
dv_rezy_l: ["y resolution"],
|
||||||
dv_zmax_s: "Z axis speed limit",
|
dv_zmax_s: "Z axis speed limit",
|
||||||
dv_zmax_l: ["maximum Z axis speed","in millimeters / second","0 to disable"],
|
dv_zmax_l: ["maximum Z axis speed","in millimeters / second","0 to disable"],
|
||||||
dv_spmx_s: "max spindle",
|
dv_spmx_s: "max spindle",
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue