summaryrefslogtreecommitdiff
path: root/gerber
AgeCommit message (Collapse)AuthorFilesLines
2015-03-05More py3 fixesPaulo Henrique Silva1-3/+3
2015-03-05Fix for py3Paulo Henrique Silva2-2/+2
2015-03-05Fix tests for macros with no variables.Paulo Henrique Silva5-33/+45
All AM*Primitive classes now handles float for all but the code modifiers. This simplifies the reading/parsing.
2015-03-03Add aperture macro parsing and evaluation.Paulo Henrique Silva5-31/+390
Aperture macros can get complex with arithmetical operations, variables and variables substitution. Current pcb-tools code just read each macro block as an independent unit, this cannot deal with variables that get changed after used. This patch splits the task in two: first we parse all macro content and creates a bytecode representation of all operations. This bytecode representation will be executed when an AD command is issues passing the required parameters. Parsing is heavily based on gerbv using a Shunting Yard approach to math parsing. Integration with rs274x.py code is not finished as I need to figure out how to integrate the final macro primitives with the graphical primitives already in use.
2015-02-21Merge pull request #20 from curtacircuitos/ipc-d-356Paulo Henrique Silva4-2/+559
Add IPC-D-356 Netlist Parsing
2015-02-20Add IPC-D-356 Netlist ParsingHamilton Kibbe4-2/+559
2015-02-20Fix floating point equality testPaulo Henrique Silva1-2/+2
2015-02-20Fix size test, board is slight out of origin, so size does change now that ↵Paulo Henrique Silva1-2/+2
we properly handle non-zero origins
2015-02-20Fix GerberFile.bounds when board origin is negativePaulo Henrique Silva1-13/+10
2015-02-20Fix arc width per comment in #12Hamilton Kibbe2-2/+2
2015-02-18Doc updateHamilton Kibbe1-10/+10
2015-02-18Add offset operationHamilton Kibbe9-67/+348
2015-02-18Python 3 tests passingHamilton Kibbe7-15/+14
2015-02-18accidentially changed import order in 7ace94bPhilipp Klaus1-1/+1
2015-02-18Fixing more relative import statementsPhilipp Klaus2-5/+5
2015-02-18Make gerber.render a package & fix more relative import statementsPhilipp Klaus5-6/+6
2015-02-18Python3 needs print()Philipp Klaus1-1/+1
2015-02-18Get unit conversion working for Gerber/Excellon filesHamilton Kibbe16-94/+859
Started operations module for file operations/transforms
2015-02-15Fix cairo image sizeHamilton Kibbe1-1/+8
2015-02-15Add cairo example code, and use example-generated image in readmeHamilton Kibbe4-8/+17
2015-02-15Tests and bugfixesHamilton Kibbe10-63/+393
2015-02-13Fix rendering for line with rectangular aperture per #12. Still need to do ↵Hamilton Kibbe5-27/+108
the same for arcs.
2015-02-12Update line primitive to take aperture parameterHamilton Kibbe5-51/+63
This fixes the exception referenced in #12. Still need to add rendering code for rectangle aperture lines and arcs. Rectangle strokes will be drawn as polygons by the rendering backends.
2015-02-09Tests and bugfixesHamilton Kibbe4-30/+202
2015-02-09Add aperture macro statement testsHamilton Kibbe3-88/+393
2015-02-08Fix write_gerber_value bugHamilton Kibbe2-0/+8
2015-02-08add rest of aperture macro primitivesHamilton Kibbe2-77/+1
2015-02-08Add rest of Aperture Macro PrimitivesHamilton Kibbe1-134/+571
2015-02-08Fix copy-paste error on ASParamStmtPaulo Henrique Silva1-1/+1
2015-02-08Remove unused filePaulo Henrique Silva1-76/+0
2015-02-02Added some Aperture Macro Primitives. Moved AM primitives to seperate fileHamilton Kibbe3-75/+426
2015-02-02testsHamilton Kibbe7-46/+240
2015-02-02More tests and bugfixesHamilton Kibbe9-110/+235
2015-02-01Added primitives and testsHamilton Kibbe3-28/+318
2015-01-26merge upstream changesHamilton Kibbe3-2/+4
2015-01-26Added some testsHamilton Kibbe4-2/+126
2015-01-25...oopsHamilton Kibbe1-1/+0
2015-01-25Changed zeros/zero suppression conventions to match file format specsHamilton Kibbe6-39/+141
2015-01-23Fix tests for leading zero suppressionHamilton Kibbe1-6/+6
2015-01-15Add Repeat Hole Stmt and fix UnitStmt parsingPaulo Henrique Silva2-3/+25
* Repeat hole support (with no real parsing, just a copy) * Fix UnitStmt to works even when a ,TZ or ,LZ information is not provided.
2015-01-14Many additions to Excellon parsing/creation.Paulo Henrique Silva3-56/+144
CAUTION: the original code used zero_suppression flags in the opposite sense as Gerber functions. This patch changes it to behave just like Gerber code. * Add metric/inch conversion support * Add settings context variable to to_gerber just like Gerber code. * Add some missing Excellon values. Tests are not entirely updated.
2015-01-14Fix for cases whee the coordinate precision is decreased.Paulo Henrique Silva1-2/+5
If we parse a file with 5.5 INCH format and ask to write it back as 2.4 INCH we are going to loose precision and write_gerber_value was not handling these cases write.
2015-01-14Fix Mirror (deprecated) param generationPaulo Henrique Silva1-1/+1
2015-01-14Refactor AM aperture handling and add unit conversion supportPaulo Henrique Silva2-9/+129
* Add support to convert between metric/impertial * AM primitives are now properly created and can be converted between metric/imperial. (only Outline primitive is supported, no rendering yet)
2015-01-13Fix region primitive creationPaulo Henrique Silva1-1/+1
2014-12-15Fix parsing for OrCAD.Paulo Henrique Silva2-154/+327
* Modify the way we parse parameters to allow more than one parameter in a single line as in the following example: %FSLAX55Y55*MOIN*% %IR0*IPPOS*OFA0.00000B0.00000*MIA0B0*SFA1.00000B1.00000*% (this is from OrCAD 16 default output) * Add missing deprecated parameters. * Change API to use given FileSettings on output. This allows us to use pcb-tools to convert between FS formats.
2014-12-15Fix parsing for very short (less 20 lines) files.Paulo Henrique Silva1-2/+7
2014-12-05add ipc2581 primitivesHamilton Kibbe3-20/+94
2014-11-10Bunch of small fixes to improve Gerber read/write.Paulo Henrique Silva6-42/+53
2014-10-28Add arc rendering and testsHamilton Kibbe5-8/+179