summaryrefslogtreecommitdiff
path: root/gerber/am_read.py
AgeCommit message (Collapse)AuthorFilesLines
2015-03-05Fix tests for macros with no variables.Paulo Henrique Silva1-5/+12
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 Silva1-0/+229
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.