Merge branch 'master' into cam-topo-new
This commit is contained in:
commit
4f2ccd2049
7 changed files with 12 additions and 7 deletions
1
notes.md
1
notes.md
|
|
@ -102,6 +102,7 @@
|
||||||
* `F` ease-in and ease-out especially on tab cut-out start/stop
|
* `F` ease-in and ease-out especially on tab cut-out start/stop
|
||||||
* `F` maintain several part orientations + op chains in a single profile
|
* `F` maintain several part orientations + op chains in a single profile
|
||||||
|
|
||||||
|
* `P` improve parser - do not require spaced tokens and support implied G0 / G1
|
||||||
* `P` inner corner arc moves
|
* `P` inner corner arc moves
|
||||||
* `P` log Z interpolation for contour XYZ moves
|
* `P` log Z interpolation for contour XYZ moves
|
||||||
* `P` option to start with the smallest poly by area on layer change
|
* `P` option to start with the smallest poly by area on layer change
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "grid-apps",
|
"name": "grid-apps",
|
||||||
"version": "3.8.9D",
|
"version": "3.8.10D",
|
||||||
"description": "grid.space 3d slice & modeling tools",
|
"description": "grid.space 3d slice & modeling tools",
|
||||||
"author": "Stewart Allen <sa@grid.space>",
|
"author": "Stewart Allen <sa@grid.space>",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
|
|
|
||||||
|
|
@ -958,14 +958,14 @@ class OpTrace extends CamOp {
|
||||||
poly2polyEmit(polys, newPoint(0,0,0), (poly, index, count, spoint) => {
|
poly2polyEmit(polys, newPoint(0,0,0), (poly, index, count, spoint) => {
|
||||||
routed.push(poly);
|
routed.push(poly);
|
||||||
});
|
});
|
||||||
for (let poly of routed) {
|
for (let poly of POLY.nest(routed)) {
|
||||||
let offdist = 0;
|
let offdist = 0;
|
||||||
switch (offset) {
|
switch (offset) {
|
||||||
case "outside": offdist = toolDiam / 2; break;
|
case "outside": offdist = toolDiam / 2; break;
|
||||||
case "inside": offdist = -toolDiam / 2; break;
|
case "inside": offdist = -toolDiam / 2; break;
|
||||||
}
|
}
|
||||||
if (offdist) {
|
if (offdist) {
|
||||||
let pnew = POLY.offset([poly], offdist);
|
let pnew = POLY.offset([poly], offdist, { minArea: 0 });
|
||||||
if (pnew) {
|
if (pnew) {
|
||||||
poly = POLY.setZ(pnew, poly.getZ());
|
poly = POLY.setZ(pnew, poly.getZ());
|
||||||
} else {
|
} else {
|
||||||
|
|
|
||||||
|
|
@ -475,7 +475,10 @@ class Print {
|
||||||
newlayer = true;
|
newlayer = true;
|
||||||
autolayer = false;
|
autolayer = false;
|
||||||
}
|
}
|
||||||
line = line.split(";")[0].split(" ").filter(v => v);
|
// if (["X","Y","Z"].indexOf(line.charAt(0)) >= 0) {
|
||||||
|
// line = `G0${line}`;
|
||||||
|
// }
|
||||||
|
line = line.trim().split(";")[0].split(" ").filter(v => v);
|
||||||
let cmd = line.shift();
|
let cmd = line.shift();
|
||||||
if (!cmd) return;
|
if (!cmd) return;
|
||||||
if (cmd.charAt(0) === 'T') {
|
if (cmd.charAt(0) === 'T') {
|
||||||
|
|
@ -486,6 +489,7 @@ class Print {
|
||||||
xoff.Y = -ext[pos].extOffsetY;
|
xoff.Y = -ext[pos].extOffsetY;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
pos.E = 0.0;
|
pos.E = 0.0;
|
||||||
switch (cmd) {
|
switch (cmd) {
|
||||||
case 'M82':
|
case 'M82':
|
||||||
|
|
|
||||||
|
|
@ -15,7 +15,7 @@ gapp.main("main.kiri", [], (root) => {
|
||||||
const modfns = root.kirimod = ( root.kirimod || [] );
|
const modfns = root.kirimod = ( root.kirimod || [] );
|
||||||
|
|
||||||
const kiri = root.kiri = {
|
const kiri = root.kiri = {
|
||||||
beta: 3809,
|
beta: 3810,
|
||||||
driver: {}, // driver modules
|
driver: {}, // driver modules
|
||||||
load(fn) {
|
load(fn) {
|
||||||
modfns.push(fn);
|
modfns.push(fn);
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
let terms = {
|
let terms = {
|
||||||
COPYRIGHT: "Copyright (C) Stewart Allen <sa@grid.space> - All Rights Reserved",
|
COPYRIGHT: "Copyright (C) Stewart Allen <sa@grid.space> - All Rights Reserved",
|
||||||
LICENSE: "See the license.md file included with the source distribution",
|
LICENSE: "See the license.md file included with the source distribution",
|
||||||
VERSION: (is_self ? self : this).debug_version || "3.8.D9"
|
VERSION: (is_self ? self : this).debug_version || "3.8.D10"
|
||||||
};
|
};
|
||||||
|
|
||||||
if (typeof(module) === 'object') {
|
if (typeof(module) === 'object') {
|
||||||
|
|
|
||||||
|
|
@ -677,7 +677,7 @@ self.kiri.lang['en-us'] = {
|
||||||
ou_depf_s: "depth first",
|
ou_depf_s: "depth first",
|
||||||
ou_depf_l: ["optimize pocket cuts","with depth priority"],
|
ou_depf_l: ["optimize pocket cuts","with depth priority"],
|
||||||
ou_toin_s: "tool init",
|
ou_toin_s: "tool init",
|
||||||
ou_toin_l: "emit tool change with first operation",
|
ou_toin_l: "add tool change with first operation. when disabled, the gcode assumes the first tool is loaded and offset probed",
|
||||||
ou_forz_s: "force z max",
|
ou_forz_s: "force z max",
|
||||||
ou_forz_l: "all moves between pockets will go to z max (above stock). this is usually required if you are not performing a roughing operation before pocketing operations.",
|
ou_forz_l: "all moves between pockets will go to z max (above stock). this is usually required if you are not performing a roughing operation before pocketing operations.",
|
||||||
ou_z1st_s: "first z max",
|
ou_z1st_s: "first z max",
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue