summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gerber/gerber_statements.py4
-rw-r--r--gerber/render/rs274x_backend.py2
2 files changed, 6 insertions, 0 deletions
diff --git a/gerber/gerber_statements.py b/gerber/gerber_statements.py
index aa25d0a..119df9d 100644
--- a/gerber/gerber_statements.py
+++ b/gerber/gerber_statements.py
@@ -888,6 +888,10 @@ class CoordStmt(Statement):
return cls(func, point[0], point[1], None, None, CoordStmt.OP_DRAW, None)
@classmethod
+ def mode(cls, func):
+ return cls(func, None, None, None, None, None, None)
+
+ @classmethod
def arc(cls, func, point, center):
return cls(func, point[0], point[1], center[0], center[1], CoordStmt.OP_DRAW, None)
diff --git a/gerber/render/rs274x_backend.py b/gerber/render/rs274x_backend.py
index 48a55e7..3dc8c1a 100644
--- a/gerber/render/rs274x_backend.py
+++ b/gerber/render/rs274x_backend.py
@@ -169,6 +169,8 @@ class Rs274xContext(GerberContext):
if point[0] != None or point[1] != None:
self.body.append(CoordStmt.line(func, self._simplify_point(line.end)))
self._pos = line.end
+ elif func:
+ self.body.append(CoordStmt.mode(func))
def _render_arc(self, arc, color):