enable more range parameters. localize
This commit is contained in:
parent
edf6b6671f
commit
b172e29054
5 changed files with 54 additions and 28 deletions
|
|
@ -495,13 +495,12 @@
|
||||||
*/
|
*/
|
||||||
PRO.slicePrintPath = function(slice, startPoint, offset, output, opt = {}) {
|
PRO.slicePrintPath = function(slice, startPoint, offset, output, opt = {}) {
|
||||||
// console.log({slicePrintPath: slice.index, ext:slice.extruder});
|
// console.log({slicePrintPath: slice.index, ext:slice.extruder});
|
||||||
|
|
||||||
let i,
|
let i,
|
||||||
preout = [],
|
preout = [],
|
||||||
scope = this,
|
scope = this,
|
||||||
settings = this.settings,
|
settings = this.settings,
|
||||||
device = settings.device,
|
device = settings.device,
|
||||||
process = settings.process,
|
process = opt.params || settings.process,
|
||||||
extruder = slice.extruder || 0,
|
extruder = slice.extruder || 0,
|
||||||
nozzleSize = device.extruders[extruder].extNozzle,
|
nozzleSize = device.extruders[extruder].extNozzle,
|
||||||
firstLayer = opt.first || false,
|
firstLayer = opt.first || false,
|
||||||
|
|
|
||||||
|
|
@ -8,19 +8,14 @@
|
||||||
BASE = self.base,
|
BASE = self.base,
|
||||||
UTIL = BASE.util,
|
UTIL = BASE.util,
|
||||||
FDM = KIRI.driver.FDM,
|
FDM = KIRI.driver.FDM,
|
||||||
SPACE, API, VIEWS, PROC, UI, UC,
|
SPACE, API, VIEWS, LANG, PROC, UI, UC,
|
||||||
p1, p2, iw,
|
p1, p2, iw,
|
||||||
lastMode, lastView, lastPillar,
|
lastMode, lastView, lastPillar,
|
||||||
isFdmMode = false,
|
isFdmMode = false,
|
||||||
addingSupports = false,
|
addingSupports = false,
|
||||||
alert = [],
|
alert = [],
|
||||||
boxes = {},
|
boxes = {},
|
||||||
func = {},
|
func = {};
|
||||||
rangeVars = {
|
|
||||||
"sliceShells": "shell count",
|
|
||||||
"sliceFillType": "fill type",
|
|
||||||
"sliceFillSparse": "fill fraction"
|
|
||||||
};
|
|
||||||
|
|
||||||
FDM.init = function(kiri, api) {
|
FDM.init = function(kiri, api) {
|
||||||
UI = api.ui;
|
UI = api.ui;
|
||||||
|
|
@ -28,8 +23,35 @@
|
||||||
API = api;
|
API = api;
|
||||||
SPACE = api.const.SPACE;
|
SPACE = api.const.SPACE;
|
||||||
VIEWS = api.const.VIEWS;
|
VIEWS = api.const.VIEWS;
|
||||||
|
LANG = KIRI.lang.current;
|
||||||
PROC = Object.keys(kiri.conf.defaults.fdm.p);
|
PROC = Object.keys(kiri.conf.defaults.fdm.p);
|
||||||
|
|
||||||
|
let rangeVars = {
|
||||||
|
"sliceShells": LANG.sl_shel_s,
|
||||||
|
"sliceFillType": LANG.fi_type,
|
||||||
|
"sliceFillSparse": LANG.fi_pcnt_s,
|
||||||
|
"sliceShellOrder": LANG.sl_ordr_s,
|
||||||
|
"outputTemp": LANG.ou_nozl_s,
|
||||||
|
"outputBedTemp": LANG.ou_bedd_s,
|
||||||
|
"outputFeedrate": LANG.ou_feed_s,
|
||||||
|
"outputFinishrate": LANG.ou_fini_s,
|
||||||
|
"outputShellMult": LANG.ou_shml_s,
|
||||||
|
"outputFillMult": LANG.ou_flml_s,
|
||||||
|
"outputSparseMult": LANG.ou_spml_s,
|
||||||
|
"outputRetractDist": LANG.ad_rdst_s,
|
||||||
|
"outputRetractSpeed": LANG.outputRetractSpeed,
|
||||||
|
"outputRetractWipe": LANG.ad_wpln_s,
|
||||||
|
"outputRetractDwell": LANG.ad_rdwl_s,
|
||||||
|
"outputShortPoly": LANG.ad_spol_s,
|
||||||
|
"outputMinSpeed": LANG.ad_mins_s,
|
||||||
|
"outputCoastDist": LANG.ad_scst_s,
|
||||||
|
"sliceSupportDensity": LANG.sp_dens_s,
|
||||||
|
"sliceSupportOffset": LANG.sp_offs_s,
|
||||||
|
"sliceSolidMinArea": LANG.ad_msol_s,
|
||||||
|
"sliceLayerStart": LANG.sl_strt_s,
|
||||||
|
"zHopDistance": LANG.ad_zhop_s
|
||||||
|
};
|
||||||
|
|
||||||
for (let key of Object.keys(rangeVars)) {
|
for (let key of Object.keys(rangeVars)) {
|
||||||
UI[key].range = true;
|
UI[key].range = true;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,7 @@
|
||||||
// slice, // src/mode/fdm/slice.js
|
// slice, // src/mode/fdm/slice.js
|
||||||
// prepare, // src/mode/fdm/prepare.js
|
// prepare, // src/mode/fdm/prepare.js
|
||||||
// export, // src/mode/fdm/export.js
|
// export, // src/mode/fdm/export.js
|
||||||
|
getRangeParameters,
|
||||||
fixExtruders
|
fixExtruders
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -28,6 +29,23 @@
|
||||||
return settings;
|
return settings;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function getRangeParameters(settings, index) {
|
||||||
|
let ranges = settings.process.ranges;
|
||||||
|
if (!(ranges && ranges.length)) {
|
||||||
|
return settings.process;
|
||||||
|
}
|
||||||
|
let params = Object.clone(settings.process);
|
||||||
|
for (let range of ranges) {
|
||||||
|
if (index >= range.lo && index <= range.hi) {
|
||||||
|
for (let [key,value] of Object.entries(range.fields)) {
|
||||||
|
params[key] = value;
|
||||||
|
params._range = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return params;
|
||||||
|
}
|
||||||
|
|
||||||
// customer gcode post function for XYZ daVinci Mini W
|
// customer gcode post function for XYZ daVinci Mini W
|
||||||
self.kiri_fdm_xyz_mini_w = function(gcode, options) {
|
self.kiri_fdm_xyz_mini_w = function(gcode, options) {
|
||||||
return btoa("; filename = kirimoto.gcode\n; machine = dv1MW0A000\n" + gcode);
|
return btoa("; filename = kirimoto.gcode\n; machine = dv1MW0A000\n" + gcode);
|
||||||
|
|
|
||||||
|
|
@ -10,7 +10,8 @@
|
||||||
POLY = BASE.polygons,
|
POLY = BASE.polygons,
|
||||||
FDM = KIRI.driver.FDM,
|
FDM = KIRI.driver.FDM,
|
||||||
newPoint = BASE.newPoint,
|
newPoint = BASE.newPoint,
|
||||||
newPolygon = BASE.newPolygon;
|
newPolygon = BASE.newPolygon,
|
||||||
|
getRangeParameters = FDM.getRangeParameters;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* DRIVER PRINT CONTRACT
|
* DRIVER PRINT CONTRACT
|
||||||
|
|
@ -379,6 +380,7 @@
|
||||||
return a.dst - b.dst;
|
return a.dst - b.dst;
|
||||||
});
|
});
|
||||||
let { z, slice, offset } = order[0];
|
let { z, slice, offset } = order[0];
|
||||||
|
let params = getRangeParameters(settings, slice.index);
|
||||||
slice.prep = true;
|
slice.prep = true;
|
||||||
// retract between widgets or layers (when set)
|
// retract between widgets or layers (when set)
|
||||||
if (layerout.length && slice.widget !== lastWidget) {
|
if (layerout.length && slice.widget !== lastWidget) {
|
||||||
|
|
@ -401,6 +403,7 @@
|
||||||
offset,
|
offset,
|
||||||
layerout,
|
layerout,
|
||||||
{
|
{
|
||||||
|
params, // range parameters
|
||||||
first: slice.index === 0,
|
first: slice.index === 0,
|
||||||
support: slice.widget.support,
|
support: slice.widget.support,
|
||||||
onBelt: slice.onbelt,
|
onBelt: slice.onbelt,
|
||||||
|
|
|
||||||
|
|
@ -24,7 +24,8 @@
|
||||||
support: { check: 0xaa5533, face: 0xaa5533, line: 0xaa5533, opacity: 1 }
|
support: { check: 0xaa5533, face: 0xaa5533, line: 0xaa5533, opacity: 1 }
|
||||||
},
|
},
|
||||||
PROTO = Object.clone(COLOR),
|
PROTO = Object.clone(COLOR),
|
||||||
bwcomp = (1 / Math.cos(Math.PI/4));
|
bwcomp = (1 / Math.cos(Math.PI/4)),
|
||||||
|
getRangeParameters = FDM.getRangeParameters;
|
||||||
|
|
||||||
let isThin = false; // force line rendering
|
let isThin = false; // force line rendering
|
||||||
let isFlat = false; // force flat rendering
|
let isFlat = false; // force flat rendering
|
||||||
|
|
@ -42,23 +43,6 @@
|
||||||
return opt;
|
return opt;
|
||||||
}
|
}
|
||||||
|
|
||||||
function getRangeParameters(settings, index) {
|
|
||||||
let ranges = settings.process.ranges;
|
|
||||||
if (!(ranges && ranges.length)) {
|
|
||||||
return settings.process;
|
|
||||||
}
|
|
||||||
let params = Object.clone(settings.process);
|
|
||||||
for (let range of ranges) {
|
|
||||||
if (index >= range.lo && index <= range.hi) {
|
|
||||||
for (let [key,value] of Object.entries(range.fields)) {
|
|
||||||
params[key] = value;
|
|
||||||
params._range = true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return params;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* DRIVER SLICE CONTRACT
|
* DRIVER SLICE CONTRACT
|
||||||
*
|
*
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue