Garret Fick
d12f6385a4
Basic rendering of excellon works, but still has issues
2016-03-24 00:10:34 +08:00
Garret Fick
97924d188b
More robust writing, even for bad files. Remove accidentally added imports
2016-03-05 16:26:30 +08:00
Garret Fick
0f1d1c3a29
Remove some testing code from gerber writer. More implementation for excellon writer - not working yet
2016-03-05 14:56:08 +08:00
Garret Fick
9735547568
Make rendering more robust for bad gerber files
2016-03-05 10:28:38 +08:00
Garret Fick
7f47aea332
Write polygons to macros
2016-03-05 10:04:58 +08:00
Garret Fick
7b88509c4a
Make writer resilient to similar macro defs
2016-03-05 09:24:54 +08:00
Garret Fick
20a9af279a
More rendering of AMGroup to statements
2016-03-01 00:06:14 +08:00
Garret Fick
223a010831
Fix critical issue with rotatin points (when the angle is zero the y would be flipped). Render AM with outline to gerber
2016-02-27 18:18:04 +08:00
Garret Fick
29c0d82bf5
RS274X backend for rendering. Incompelte still
2016-02-27 15:24:36 +08:00
Garret Fick
96bdd0f59d
Keep track of quadrant mode so we can draw full circles
2016-01-31 15:24:57 +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
Hamilton Kibbe
66a0d09e72
Add support for mirrored rendering
...
- The default theme now renders the bottom layers mirrored.
- see https://github.com/curtacircuitos/pcb-tools/blob/master/examples/pcb_bottom.png
for an example.
2016-01-21 04:39:55 -05: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
83ae0670d1
More stability fixes for poorly constructed files
2016-01-08 00:19:47 +08:00
Hamilton Kibbe
6a005436b4
Refactor a little
...
pulled all rendering stuff out of the pcb/layer objects
2016-01-01 12:25:38 -05:00
Garret Fick
f61eee807f
Render polygon flashes
2015-12-30 18:44:07 +08:00
Garret Fick
96692b2221
Render primitives for some aperture macros
2015-12-30 15:32:44 +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
Paulo Henrique Silva
7e2e469f5e
Remove svgwrite backend
...
We moved the functionality to cairo backend, it can write png and svg and maybe more (pdfs?)
2015-11-15 22:31:42 -02: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
hbc
feb5b3d571
Convert py3k's map object to tuple explicitly.
2015-02-25 09:39:53 +08:00
Hamilton Kibbe
d830375c4c
Fix arc width per comment in #12
2015-02-20 10:07:26 -05:00
Philipp Klaus
e6fa61c82b
Fixing more relative import statements
2015-02-18 16:14:46 +01: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
5cf1fa74b4
Tests and bugfixes
2015-02-15 02:20:02 -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
Paulo Henrique Silva
d7a453e5ab
Remove unused file
2015-02-08 00:28:17 -02:00
Hamilton Kibbe
d98d23f8b5
More tests and bugfixes
2015-02-02 00:43:08 -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