From 318c04ade988f99f1aeb2c43a584dd9427c7c53d Mon Sep 17 00:00:00 2001 From: Stewart Allen Date: Sun, 22 Feb 2026 17:41:28 -0500 Subject: [PATCH 1/3] post-process svg polys to clean up colinear and invalid points --- src/load/svg.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/load/svg.js b/src/load/svg.js index 8024b6f83..f3519afa5 100644 --- a/src/load/svg.js +++ b/src/load/svg.js @@ -44,7 +44,7 @@ export function parse(text, opt = { }) { if (points.length < 3) { continue; } - let poly = newPolygon().addPoints(points.map(p => newPoint(p.x, -p.y, 0))); + let poly = newPolygon().addPoints(points.map(p => newPoint(p.x, -p.y, 0))).clean(); if (poly.appearsClosed()) poly.points.pop(); if (type === 'polyline') poly.setOpen(true); poly._svg = { width, miter }; From 27575b598650e81442c2d413cc1a9bd1b3be5742 Mon Sep 17 00:00:00 2001 From: natekfl Date: Tue, 10 Mar 2026 22:20:59 -0400 Subject: [PATCH 2/3] Improve routing between areas for CAM area operations --- src/kiri/mode/cam/work/op-area.js | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/kiri/mode/cam/work/op-area.js b/src/kiri/mode/cam/work/op-area.js index 4c42ee5c2..abf4c8ab1 100644 --- a/src/kiri/mode/cam/work/op-area.js +++ b/src/kiri/mode/cam/work/op-area.js @@ -471,7 +471,8 @@ class OpArea extends CamOp { while (areas?.length) { let min = { dist: Infinity, - area: undefined + area: undefined, + point: undefined }; for (let area of areas.filter(p => !p.used)) { @@ -486,12 +487,14 @@ class OpArea extends CamOp { if (find.distance < min.dist) { min.area = area; min.dist = find.distance; + min.point = find.point } } // if we have a next-closest top poly, pocket that if (min.area) { min.area.used = true; + printPoint = min.point; pocket({ cutdir: op.ov_conv, depthFirst: process.camDepthFirst, From 4cdb51f49d91b1482ac1ee2db7b3b1809948ef9a Mon Sep 17 00:00:00 2001 From: Olivier Date: Mon, 30 Mar 2026 12:27:12 +0200 Subject: [PATCH 3/3] fix dwell time unit in Makera.Carvera.Air spindle macro --- src/kiri/dev/cam/Makera.Carvera.Air.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/kiri/dev/cam/Makera.Carvera.Air.json b/src/kiri/dev/cam/Makera.Carvera.Air.json index 8474dd185..eba7c3cc2 100644 --- a/src/kiri/dev/cam/Makera.Carvera.Air.json +++ b/src/kiri/dev/cam/Makera.Carvera.Air.json @@ -19,11 +19,11 @@ "M30 ; program end" ], "gcodeDwell": [ - "G4 P{time} ; dwell for {time}ms" + "G4 P{time} ; dwell for {time}s" ], "gcodeSpindle": [ "M3 S{spindle}", - "G4 P4000" + "G4 P4 ; pause during 4 seconds" ], "gcodeChange": [ "M6 T{tool} ; change tool to '{tool_name}'"