Wykres commitów

66 Commity (5a5ba2b709f01b2100cd767a25a41737541ad53c)

Autor SHA1 Wiadomość Data
Hamilton Kibbe 7ad6c3f6ac Fix handling of multi-line strings per #66 2017-07-04 02:11:52 -04:00
Hamilton Kibbe 41a7b90dff Excellon update 2016-11-18 07:55:43 -05:00
Hamilton Kibbe 422c86bcc6 Merge upstream changes 2016-11-06 14:44:40 -05:00
Hamilton Kibbe 5af19af190 Commit partial merge so I can work on the plane 2016-09-24 02:28:36 +08:00
Hamilton Kibbe 8cd842a41a Manually mere rendering changes 2016-08-06 09:40:40 +08:00
Garret Fick 0dded38353 Merge in negative soldermask. Still required further changes to support negatives for shapes that dont exist in the merge source 2016-07-17 10:42:03 +08:00
Garret Fick 52c6d4928a Fix most broken tests so that I can safely merge into changes with known expected test result 2016-07-16 15:49:48 +08:00
Garret Fick 7a79d1504e Setup .gitignore for Eclipse. Start creating doc strings 2016-07-16 14:22:38 +08:00
Garret Fick 10c7075ad5 Allow G85 for invalid files 2016-07-11 23:18:15 +08:00
Garret Fick 7e06f3a2f5 Workaround for bad excellon files that don't correctly set the mode 2016-07-10 15:41:31 +08:00
Garret Fick 8f4b439efc Rout mode doesn't need to specify G01 every time 2016-06-06 22:26:06 +08:00
Garret Fick f1f07d74c4 Offset of drill hit and slots 2016-05-10 23:16:51 +08:00
Garret Fick 2eac1e427c Fix converting values for excellon files. Give error for incremental mode 2016-04-05 22:40:12 +08:00
Garret Fick 288f49955e Actually fix the rout rendering to be correct 2016-03-27 14:24:11 +08:00
Garret Fick 25515b8ec7 Correctly render M15 slot holes 2016-03-26 18:18:16 +08:00
Garret Fick acde19f205 Support for the G85 slot statement 2016-03-26 15:59:42 +08:00
Garret Fick 7053d320f0 Better detection of plated tools 2016-03-13 14:27:09 +08:00
Garret Fick e84f131720 Add support for more excellon formats. Dont consider line width when determinging region bounding box 2016-01-31 14:17:35 +08:00
Hamilton Kibbe 5df38c014f Cleanup, rendering fixes.
fixed rendering of tented vias
fixed rendering of semi-transparent layers
fixed file type detection issues
added some examples
2016-01-28 12:19:03 -05:00
Paulo Henrique Silva b9f1b106c3 Excellon format detection uses ExcelonFile.bounds now
Long term we should have only one .bounds method. But ExcellonParser right
now is not correct for cases with two drills in the same line
(it will report one dimension being zero)
2016-01-25 12:42:12 -02:00
Hamilton Kibbe 5476da8aa3 Fix a bunch of rendering bugs.
- 'clear' polarity primitives no longer erase background
  - Added aperture macro support for polygons
  - Added aperture macro rendring support
  - Renderer now creates a new surface for each layer and merges them instead of working
    directly on a single surface
  - Updated examples accordingly
2016-01-21 03:57:44 -05:00
Garret Fick 60784dfa21 Skip over a strange excellon statement 2016-01-16 18:33:40 +08:00
Garret Fick 2e42d1a470 Support KiCad format statement where FMAT,2 is 2:4 with inch 2015-12-30 16:11:25 +08:00
Hamilton Kibbe 1cb269131b Allow negative render of soldermask per #50
Update example code and rendering to show change
2015-12-19 21:54:29 -05:00
Garret Fick 4e838df32a Parse misc nc drill files 2015-12-19 11:44:12 +08:00
Garret Fick 206f4c57ab Fix drawing arcs. Dont crash for arcs with rectangular apertures. Fix crash with board size of zero for only one drill 2015-12-16 18:59:25 +08:00
Garret Fick d69f50e0f6 Make the hit accessible from the drawable Hit, fix crash with cario drawing rect 2015-12-02 12:44:30 +08:00
Paulo Henrique Silva 6e29b9bcae Use Python's universal newlines to open files 2015-11-15 22:28:56 -02:00
Paulo Henrique Silva cead702f4d Add fix to work with excellon with no tool definition.
I found out that Proteus generate some strange Excellon without any tool definition.
Gerbv renders it correctly and after digging in I found the heuristic that they use
to "guess" the tool diameter. This change replicates this behavior on pcb-tools.
2015-11-13 13:18:50 -02:00
Paulo Henrique Silva 9ca75f991a Improve Excellon parsing coverage
Add some not so used codes that were generating unknown stmt.
2015-11-13 03:31:32 -02:00
Hamilton Kibbe 10d9028e1f Python 3 fix 2015-10-10 17:02:45 -04:00
Hamilton Kibbe dd63b169f1 Allow files to be read from strings per #37
Adds a loads() method to the top level module which generates a GerberFile or ExcellonFile from a string
2015-10-10 16:51:21 -04:00
Hamilton Kibbe 15254a5bb7 Add tool path optimization example
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-07-06 12:13:59 -04:00
Hamilton Kibbe ec2ca92da6 Python 3 fix
remove dict itervalues() calls
2015-06-11 14:00:40 -04:00
Hamilton Kibbe 94f3976915 Add keys to statements for linking to primitives. Add some API features to 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-11 11:20:56 -04:00
Hamilton Kibbe 8ec3077be9 Add checks to ensure statement unit conversions are idempotent 2015-05-16 09:45:34 -04:00
Hamilton Kibbe 390838fc8b Fix for #25. Checking was happening at the gerber/excellon file level, but I 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-24 10:54:13 -04:00
Paulo Henrique Silva b9b20a9644 Fix Excellon repeat command 2015-04-07 18:17:25 -03:00
Hamilton Kibbe 5966d7830b Add offset operation 2015-02-18 23:13:23 -05:00
Hamilton Kibbe e71d7a24b5 Python 3 tests passing 2015-02-18 21:14:30 -05:00
Hamilton Kibbe 288ac27084 Get unit conversion working for Gerber/Excellon files
Started operations module for file operations/transforms
2015-02-18 04:31:23 -05:00
Hamilton Kibbe bfe1484160 Add cairo example code, and use example-generated image in readme 2015-02-15 03:29:47 -05:00
Hamilton Kibbe 5cf1fa74b4 Tests and bugfixes 2015-02-15 02:20:02 -05:00
Hamilton Kibbe 939f782728 ...oops 2015-01-25 14:22:27 -05:00
Hamilton Kibbe b495d51354 Changed zeros/zero suppression conventions to match file format specs 2015-01-25 14:19:48 -05:00
Paulo Henrique Silva 0f36084aad Add Repeat Hole Stmt and fix UnitStmt parsing
* 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-15 05:01:40 -02:00
Paulo Henrique Silva 137c73f3e4 Many additions to Excellon parsing/creation.
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-14 14:33:00 -02:00
Hamilton Kibbe 254f3e5184 Merge changes from upstream 2014-10-26 17:20:47 -04:00
Hamilton Kibbe 18e3b87625 Test update 2014-10-19 22:23:00 -04:00
Hamilton Kibbe 6d2db67e6d Refactor rendering 2014-10-18 01:44:51 -04:00