fix multi-widget slice / export layout in sla mode
This commit is contained in:
parent
e2705b6b7e
commit
858f4c7bc0
5 changed files with 57 additions and 1 deletions
|
|
@ -231,6 +231,7 @@ let gs_kiri_sla = exports;
|
|||
let traces = POLY.flatten(slice.gatherTraces([]));
|
||||
let polys = slice.solids.unioned;
|
||||
polys.forEach(poly => {
|
||||
poly.move(widget.track.pos);
|
||||
ctx.beginPath();
|
||||
polyout(poly.setClockwise(), ctx);
|
||||
if (poly.inner) {
|
||||
|
|
@ -332,6 +333,7 @@ let gs_kiri_sla = exports;
|
|||
}
|
||||
let polys = slice.solids.unioned;
|
||||
polys.forEach(poly => {
|
||||
poly = poly.clone(true).move(widget.track.pos);
|
||||
layer.poly(poly, 0x010101, true);
|
||||
layer.solid(poly, 0x00bbee);
|
||||
count++;
|
||||
|
|
|
|||
|
|
@ -1468,7 +1468,7 @@ var gs_kiri_init = exports;
|
|||
slaBasePeelDist: UC.newInput('peel distance', {title:'peel distance\nin millimeters', convert:UC.toFloat, modes:SLA}),
|
||||
slaBasePeelLiftRate: UC.newInput('peel lift rate', {title:'peel lift speed\nin mm/sec', convert:UC.toFloat, modes:SLA}),
|
||||
|
||||
slaFill: UC.newGroup('infill', null, {modes:SLA, group:"sla-first"}),
|
||||
slaFill: UC.newGroup('infill', null, {modes:SLA, group:"sla-infill"}),
|
||||
slaFillDensity: UC.newInput('density', {title:'percent infill\n0.0-1.0', convert:UC.toFloat, bound:UC.bound(0,1), modes:SLA}),
|
||||
slaFillLine: UC.newInput('line width', {title:'hatch line width\nin millimeters', convert:UC.toFloat, bound:UC.bound(0,5), modes:SLA}),
|
||||
|
||||
|
|
|
|||
|
|
@ -96,6 +96,7 @@ KIRI.work = {
|
|||
settings: settings,
|
||||
vertices: vertices,
|
||||
position: widget.mesh.position,
|
||||
tracking: widget.track,
|
||||
snapshot: snapshot
|
||||
}, function(reply) {
|
||||
if (reply.done || reply.error) delete slicing[widget.id];
|
||||
|
|
|
|||
|
|
@ -38,6 +38,7 @@ let dispatch = {
|
|||
let settings = data.settings,
|
||||
vertices = new Float32Array(data.vertices),
|
||||
position = data.position,
|
||||
tracking = data.tracking,
|
||||
points = Widget.verticesToPoints(vertices);
|
||||
|
||||
send.data({update:0.05, updateStatus:"slicing"});
|
||||
|
|
@ -50,6 +51,7 @@ let dispatch = {
|
|||
cache[data.id] = widget;
|
||||
|
||||
// fake mesh object to satisfy printing
|
||||
widget.track = tracking;
|
||||
widget.mesh = {
|
||||
widget: widget,
|
||||
position: position
|
||||
|
|
|
|||
51
web/kiri/filter/FDM/Anycubic.i3.Mega
Normal file
51
web/kiri/filter/FDM/Anycubic.i3.Mega
Normal file
|
|
@ -0,0 +1,51 @@
|
|||
{
|
||||
"pre":[
|
||||
"M105 ; update temperature",
|
||||
"M104 S{temp} T{tool}",
|
||||
"M140 S{bed_temp} T{tool}",
|
||||
"M109 S{temp} T{tool}",
|
||||
"M190 S{bed_temp} T{tool}",
|
||||
"M105 ; update temperature",
|
||||
"G21 ; set metric values",
|
||||
"G90 ; set absolute positioning",
|
||||
"M82 ; set extruder to absolute mode",
|
||||
"M107 ; turn off fan",
|
||||
"G28 X0 Y0 ; move X/Y to min",
|
||||
"G28 Z0 ; move Z to min",
|
||||
"G1 Z15.0 F100 ; move the platform down 15mm",
|
||||
"G92 E0 ; zero extruder",
|
||||
"G1 F200 E3 ; extrude 3mm of feed stock",
|
||||
"G92 E0 ; zero extruder",
|
||||
"G1 F100 ; set default feed rate",
|
||||
"G0 Y20 ; wipe move to Y20",
|
||||
"G92 E0 ; zero extruder",
|
||||
"M117 Printing..."
|
||||
],
|
||||
"post":[
|
||||
"M107 ; turn off fan",
|
||||
"M104 S0 T{tool} ; turn off extruder",
|
||||
"M140 S0 T{tool} ; turn off bed",
|
||||
"G1 Z{z_max} F1200 ; drop bed",
|
||||
"G28 X0 Y0 ; home XY axes",
|
||||
"M84 ; disable stepper motors"
|
||||
],
|
||||
"extruders":[
|
||||
{
|
||||
"nozzle": 0.4,
|
||||
"filament": 1.75,
|
||||
"offset_x": 0,
|
||||
"offset_y": 0,
|
||||
"select": [ "T0" ]
|
||||
}
|
||||
],
|
||||
"cmd":{
|
||||
"fan_power": "M106 S{fan_speed}"
|
||||
},
|
||||
"settings":{
|
||||
"origin_center": false,
|
||||
"extrude_abs": true,
|
||||
"bed_width": 210,
|
||||
"bed_depth": 210,
|
||||
"build_height": 205
|
||||
}
|
||||
}
|
||||
Loading…
Reference in a new issue