summaryrefslogtreecommitdiff
path: root/gerbonara/gerber/aperture_macros
diff options
context:
space:
mode:
authorjaseg <git@jaseg.de>2022-01-22 19:26:48 +0100
committerjaseg <git@jaseg.de>2022-01-22 19:26:48 +0100
commit242f4033c661d70c0d2722050370307f4d9b678a (patch)
tree9076a1d0f45a76c49a465f74903071671006b6de /gerbonara/gerber/aperture_macros
parent7cf41c6a72e52a63b4f4d4497732a72d6623eec8 (diff)
downloadgerbonara-242f4033c661d70c0d2722050370307f4d9b678a.tar.gz
gerbonara-242f4033c661d70c0d2722050370307f4d9b678a.tar.bz2
gerbonara-242f4033c661d70c0d2722050370307f4d9b678a.zip
Make excellon tests pass
Diffstat (limited to 'gerbonara/gerber/aperture_macros')
-rw-r--r--gerbonara/gerber/aperture_macros/parse.py6
-rw-r--r--gerbonara/gerber/aperture_macros/primitive.py4
2 files changed, 5 insertions, 5 deletions
diff --git a/gerbonara/gerber/aperture_macros/parse.py b/gerbonara/gerber/aperture_macros/parse.py
index 43af309..c1aa2d0 100644
--- a/gerbonara/gerber/aperture_macros/parse.py
+++ b/gerbonara/gerber/aperture_macros/parse.py
@@ -121,10 +121,10 @@ class ApertureMacro:
def to_graphic_primitives(self, offset, rotation, parameters : [float], unit=None):
variables = dict(self.variables)
- for number, value in enumerate(parameters):
- if i in variables:
+ for number, value in enumerate(parameters, start=1):
+ if number in variables:
raise SyntaxError(f'Re-definition of aperture macro variable {i} through parameter {value}')
- variables[i] = value
+ variables[number] = value
for primitive in self.primitives:
yield from primitive.to_graphic_primitives(offset, rotation, variables, unit)
diff --git a/gerbonara/gerber/aperture_macros/primitive.py b/gerbonara/gerber/aperture_macros/primitive.py
index 4de19c4..76268d2 100644
--- a/gerbonara/gerber/aperture_macros/primitive.py
+++ b/gerbonara/gerber/aperture_macros/primitive.py
@@ -232,9 +232,9 @@ class Outline(Primitive):
bound_radii = [None] * len(bound_coords)
rotation += deg_to_rad(calc.rotation)
- bound_coords = [ rotate_point(*p, rotation, 0, 0) for p in bound_coords ]
+ bound_coords = [ gp.rotate_point(*p, rotation, 0, 0) for p in bound_coords ]
- return gp.ArcPoly(bound_coords, bound_radii, polarity_dark=calc.exposure)
+ return [gp.ArcPoly(bound_coords, bound_radii, polarity_dark=calc.exposure)]
def dilate(self, offset, unit):
# we would need a whole polygon offset/clipping library here