Commit graph

39 commits

Author SHA1 Message Date
Garret Fick
e8327fda79 Manually merge change 5430fa6738 2016-07-20 23:26:51 +08:00
Garret Fick
76a49ec8e7 Manually merge change 6f876edd09 2016-07-20 23:20:15 +08:00
Garret Fick
34f20ee90f Manually merge af5541ac93 2016-07-17 21:04:15 +08:00
Garret Fick
f0585baefa Create first test that renders and validates the the rendered PNG is correct. 2016-07-17 13:14:54 +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
ccb6eb7a76 Add support for polygon apertures 2016-06-25 16:46:44 +08:00
Garret Fick
b01c4822b6 Render aperture macros with clear regions 2016-06-25 12:27:28 +08:00
Qau Lau
199a0f3d3c Update cairo_backend.py
If cairo  module import error use cairocffi
2016-04-08 20:02:04 +08:00
Garret Fick
acde19f205 Support for the G85 slot statement 2016-03-26 15:59:42 +08:00
Garret Fick
96bdd0f59d Keep track of quadrant mode so we can draw full circles 2016-01-31 15:24:57 +08:00
Garret Fick
83ae0670d1 More stability fixes for poorly constructed files 2016-01-08 00:19:47 +08:00
Garret Fick
f61eee807f Render polygon flashes 2015-12-30 18:44:07 +08:00
Garret Fick
4a815bf25d First time any macro renders 2015-12-30 14:05:00 +08:00
Hamilton Kibbe
5430fa6738 Python3 fix 2015-12-22 10:18:51 -05:00
Hamilton Kibbe
6f876edd09 Add PCB interface
this incorporates some of @chintal's layers.py changes
PCB.from_directory() simplifies loading of multiple gerbers
the PCB() class should be pretty helpful going forward...

the context classes could use some cleaning up, although I'd like to wait until the freecad stuff gets merged, that way we can try to refactor the context base to support more use cases
2015-12-22 02:47:23 -05:00
Hamilton Kibbe
af5541ac93 Allow renderer to write to memory per #38
Some updates to rendering colors/themes
2015-12-20 23:54:20 -05:00
Hamilton Kibbe
60c5906b29 Clean up negative render code 2015-12-20 15:24:20 -05: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
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
Garret Fick
8eede187f3 More fixes to work with cairo 2015-11-23 22:22:30 +08:00
Garret Fick
d5f382f4b4 Render with cairo instead of cairocffi - I would like to make it use either, but for now, using the one that works with wxpython 2015-11-23 16:17:31 +08: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
cb2fa34e88 Add support for arcs in regions.
This fixes the circular cutout issue described in #32.  Regions were previously stored as a collection of points, now they are stored as a collection of line and arc primitives.
2015-08-09 15:11:13 -04:00
Hamilton Kibbe
d4a8705708 Fix windows permission error
per #33
the issue was trying to re-open the temporary file. it works on everything but windows. I've changed it to seek to the beginning and read from the file without re-opening, which should fix the issue.
2015-07-25 09:48:58 -04:00
Hamilton Kibbe
39726e3936 Fix multiple layer issue in cairo-unification branch (see #33) 2015-07-22 22:13:09 -04:00
Paulo Henrique Silva
b3f6ec558c Fix arcs and ackground painting 2015-07-09 04:05:15 -03:00
Paulo Henrique Silva
5aaf18889c Initial patch to unify our render towards cairo
This branch allows a pure cairo based render for both PNG and SVG.

Cairo backend is mostly the same but with improved support for
configurable scale, orientation and inverted color drawing.

API is not yet final.
2015-07-09 03:54:47 -03:00
Hamilton Kibbe
68619d4d5a Fix parsing for multiline ipc-d-356 records 2015-03-05 22:42:42 -05:00
Hamilton Kibbe
d830375c4c Fix arc width per comment in #12 2015-02-20 10:07:26 -05:00
Hamilton Kibbe
d63bf0d68a Fix cairo image size 2015-02-15 13:29:50 -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
5e23d07bcb Fix rendering for line with rectangular aperture per #12. Still need to do the same for arcs. 2015-02-13 09:37:27 -05:00
Hamilton Kibbe
8f69c1dfa2 Update line primitive to take aperture parameter
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-12 11:28:50 -05:00
Hamilton Kibbe
f5abd5b0bd Add arc rendering and tests 2014-10-28 22:11:43 -04:00
Hamilton Kibbe
95de179bb0 Fix rendering of 0-width lines (e.g. board outlines) in SVG and Cairo renderer 2014-10-27 08:29:43 -04:00
Hamilton Kibbe
c08cdf84bc removed dead code 2014-10-26 22:40:55 -04:00
Hamilton Kibbe
0437e4198a cairo working 2014-10-26 22:36:47 -04:00
Hamilton Kibbe
b5f8451c8f cairo support 2014-10-26 22:36:47 -04:00