Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2015-07-06 | Add tool path optimization example | Hamilton Kibbe | 1 | -10/+25 | |
Add example demonstrating use of tsp-solver with pcb-tools to optimize tool paths in an excellon file. This is based on @koppi's script in #30 | |||||
2015-06-11 | Python 3 fix | Hamilton Kibbe | 1 | -3/+3 | |
remove dict itervalues() calls | |||||
2015-06-11 | Add keys to statements for linking to primitives. Add some API features to ↵ | Hamilton Kibbe | 5 | -80/+185 | |
ExcellonFile, such as getting a tool path length and changing tool parameters. Excellonfiles write method generates statements based on the drill hits in the hits member, so drill hits in a generated file can be re-ordered by re-ordering the drill hits in ExcellonFile.hits. see #30 | |||||
2015-06-01 | Fix IPC-D-356 parser. Handle too-long reference designators exported by ↵ | Hamilton Kibbe | 2 | -33/+47 | |
eagle per #28. | |||||
2015-05-21 | G70/G71 are now interpreted as MOParamStmt. | Paulo Henrique Silva | 1 | -2/+4 | |
Got a bunch of metric files with no MOMM but only G71, this should be pretty mush harmless. | |||||
2015-05-21 | Fix multiline read of mixed statements (%XXX*% followed by DNN*) | Paulo Henrique Silva | 3 | -1/+20 | |
We now check if there is a %XXX*% command inside the line before considering it a multiline statement. | |||||
2015-05-21 | Fix ADD statement parsing for concatened statements. | Paulo Henrique Silva | 2 | -3464/+7 | |
ADDxxx param statements were too greedy on the mofidiers and were matching more than it should in cases where there are no newlines after the statement like: '%ADD12C,0.305*%%LPD*%', in a single line. The '%' was not exluded form modifiers so it got confused with the %LPD*% concatened. top_copper.GTL example was changed to be in a single line now with no spaces at all and it works well. | |||||
2015-05-20 | Add support for PCBmodE generated files. | Paulo Henrique Silva | 2 | -1/+19 | |
PCBmodE uses a standard but probably undefined behaviour issue on Gerber where it defines circle apertures with a single modifier but leaves a trilling 'X' after it. 'X' is modifiers separator but when there is only one modifier the behaviour is undefined. For parsing we are just ignoring blank modifiers. Test updated to catch this case. | |||||
2015-05-16 | Add checks to ensure statement unit conversions are idempotent | Hamilton Kibbe | 6 | -89/+379 | |
2015-04-27 | Allow 3 digits on Excellon tool selection | Paulo Henrique Silva | 2 | -2/+10 | |
Fritzing uses more than 2 digits for tool in their Excellons. To comply with that, I check specifically for 3 or less digits and use as tool number, more than that we treat as the standard (2 for tool and 2 for compensation index) | |||||
2015-04-26 | Refactor primitive unit conversion and add regression coverage to tests | Hamilton Kibbe | 2 | -280/+414 | |
2015-04-24 | Fix indentation after PR #26 | Paulo Henrique Silva | 1 | -2/+2 | |
2015-04-24 | Fix for #25. Checking was happening at the gerber/excellon file level, but I ↵ | Hamilton Kibbe | 4 | -136/+241 | |
added units checking at the primitive level so the use case shown in the example is covered. Might want to throw a bunch more assertions in the test code (i started doing a few) to cover multiple calls to unit conversion functions | |||||
2015-04-23 | Fix Gerber generation for coord blocks with implicit op code | Paulo Henrique Silva | 1 | -0/+3 | |
2015-04-14 | Fix AM statement test | Paulo Henrique Silva | 1 | -2/+2 | |
2015-04-14 | AMStatement are used as is when gerbers are generated | Paulo Henrique Silva | 1 | -2/+2 | |
2015-04-13 | Fix issue where D01 and D03 are implicit. | Paulo Henrique Silva | 1 | -4/+7 | |
Based on code from @rdprescott. | |||||
2015-04-07 | (really) Fix parsing for AM macros with zero modifiers | Paulo Henrique Silva | 1 | -1/+1 | |
2015-04-07 | Fix CoordStmt with missing i/j offsets | Paulo Henrique Silva | 1 | -2/+4 | |
2015-04-07 | Fix CommentStmt for multi-line comments | Paulo Henrique Silva | 1 | -1/+5 | |
2015-04-07 | Add some deprecated but still found statements | Paulo Henrique Silva | 2 | -6/+57 | |
2015-04-07 | Small change on __str__ for SF Statement | Paulo Henrique Silva | 2 | -2/+2 | |
2015-04-07 | Fix parsing for AM macros with zero modifiers | Paulo Henrique Silva | 1 | -2/+2 | |
2015-04-07 | Add unspecified FS D leading zeros format | Paulo Henrique Silva | 3 | -14/+21 | |
FS D leading zero format (probably form Direct) is an unspecified coordinate format where all numbers are specified with both leading and trailing zeros. | |||||
2015-04-07 | Fix Excellon repeat command | Paulo Henrique Silva | 3 | -14/+23 | |
2015-04-07 | Allowance for weird case modifier with no zero after period | Paulo Henrique Silva | 1 | -1/+3 | |
2015-03-06 | fix tests | Hamilton Kibbe | 1 | -9/+13 | |
2015-03-06 | add rest of altium-supported ipc-d-356 statements | Hamilton Kibbe | 1 | -25/+109 | |
2015-03-06 | Add support for unary minus operator on macro parsing | Paulo Henrique Silva | 1 | -1/+15 | |
2015-03-05 | Fix parsing for multiline ipc-d-356 records | Hamilton Kibbe | 8 | -55/+218 | |
2015-03-05 | Merge pull request #23 from curtacircuitos/macro-parse-eval | Hamilton Kibbe | 6 | -47/+418 | |
Add aperture macro parsing and evaluation. | |||||
2015-03-05 | More py3 fixes | Paulo Henrique Silva | 1 | -3/+3 | |
2015-03-05 | Fix for py3 | Paulo Henrique Silva | 2 | -2/+2 | |
2015-03-05 | Fix tests for macros with no variables. | Paulo Henrique Silva | 5 | -33/+45 | |
All AM*Primitive classes now handles float for all but the code modifiers. This simplifies the reading/parsing. | |||||
2015-03-03 | Add aperture macro parsing and evaluation. | Paulo Henrique Silva | 5 | -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-28 | `sys.stderr.write()` instead of `print >> sys.stderr, "..."` | Philipp Klaus | 1 | -1/+1 | |
2015-02-25 | Convert py3k's map object to tuple explicitly. | hbc | 1 | -1/+1 | |
2015-02-21 | Merge pull request #20 from curtacircuitos/ipc-d-356 | Paulo Henrique Silva | 4 | -2/+559 | |
Add IPC-D-356 Netlist Parsing | |||||
2015-02-20 | Add IPC-D-356 Netlist Parsing | Hamilton Kibbe | 4 | -2/+559 | |
2015-02-20 | Fix floating point equality test | Paulo Henrique Silva | 1 | -2/+2 | |
2015-02-20 | Fix size test, board is slight out of origin, so size does change now that ↵ | Paulo Henrique Silva | 1 | -2/+2 | |
we properly handle non-zero origins | |||||
2015-02-20 | Fix GerberFile.bounds when board origin is negative | Paulo Henrique Silva | 1 | -13/+10 | |
2015-02-20 | Fix arc width per comment in #12 | Hamilton Kibbe | 2 | -2/+2 | |
2015-02-18 | Doc update | Hamilton Kibbe | 1 | -10/+10 | |
2015-02-18 | Add offset operation | Hamilton Kibbe | 9 | -67/+348 | |
2015-02-18 | Python 3 tests passing | Hamilton Kibbe | 7 | -15/+14 | |
2015-02-18 | accidentially changed import order in 7ace94b | Philipp Klaus | 1 | -1/+1 | |
2015-02-18 | Fixing more relative import statements | Philipp Klaus | 2 | -5/+5 | |
2015-02-18 | Make gerber.render a package & fix more relative import statements | Philipp Klaus | 5 | -6/+6 | |
2015-02-18 | Python3 needs print() | Philipp Klaus | 1 | -1/+1 | |