diff options
author | Paulo Henrique Silva <ph.silva@gmail.com> | 2015-11-23 16:02:16 -0200 |
---|---|---|
committer | Garret Fick <garret@ficksworkshop.com> | 2016-05-28 12:39:05 +0800 |
commit | 49dadd46ee62a863b75087e9ed8f0590183bd525 (patch) | |
tree | 160016571390f386c7b4524c3034752cbe6a5eed /gerber | |
parent | c9c1313d598d5afa8cb387a2cfcd4a4281086e01 (diff) | |
download | gerbonara-49dadd46ee62a863b75087e9ed8f0590183bd525.tar.gz gerbonara-49dadd46ee62a863b75087e9ed8f0590183bd525.tar.bz2 gerbonara-49dadd46ee62a863b75087e9ed8f0590183bd525.zip |
Fix AMParamStmt to_gerber to write changes back.
AMParamStmt was not calling to_gerber on each of its primitives
on his own to_gerber method. That way primitives that changes after reading,
such as when you call to_inch/to_metric was failing because it was
writing only the original macro back.
Diffstat (limited to 'gerber')
-rw-r--r-- | gerber/gerber_statements.py | 2 | ||||
-rw-r--r-- | gerber/tests/test_gerber_statements.py | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/gerber/gerber_statements.py b/gerber/gerber_statements.py index b171a7f..725febf 100644 --- a/gerber/gerber_statements.py +++ b/gerber/gerber_statements.py @@ -440,7 +440,7 @@ class AMParamStmt(ParamStmt): primitive.to_metric() def to_gerber(self, settings=None): - return '%AM{0}*{1}*%'.format(self.name, self.macro) + return '%AM{0}*{1}%'.format(self.name, "".join([primitive.to_gerber() for primitive in self.primitives])) def __str__(self): return '<Aperture Macro %s: %s>' % (self.name, self.macro) diff --git a/gerber/tests/test_gerber_statements.py b/gerber/tests/test_gerber_statements.py index b5c20b1..79ce76b 100644 --- a/gerber/tests/test_gerber_statements.py +++ b/gerber/tests/test_gerber_statements.py @@ -446,11 +446,11 @@ def testAMParamStmt_conversion(): def test_AMParamStmt_dump(): name = 'POLYGON' - macro = '5,1,8,25.4,25.4,25.4,0' + macro = '5,1,8,25.4,25.4,25.4,0.0' s = AMParamStmt.from_dict({'param': 'AM', 'name': name, 'macro': macro }) s.build() - assert_equal(s.to_gerber(), '%AMPOLYGON*5,1,8,25.4,25.4,25.4,0*%') + assert_equal(s.to_gerber(), '%AMPOLYGON*5,1,8,25.4,25.4,25.4,0.0*%') def test_AMParamStmt_string(): name = 'POLYGON' |