Commit graph

104 commits

Author SHA1 Message Date
Hamilton Kibbe
b85021d9b8 Merge pull request #68 from jmargeta/cairo_python_3_fix
Fix Cairo backend for svg saving and Python 3
2017-06-12 07:58:59 -04:00
Hamilton Kibbe
f7a719e6f7 Fix error when unpacking colors in cairo backend 2017-06-12 07:58:06 -04:00
Jan Margeta
7873999926 Fix Cairo backend for svg saving and Python 3 2017-04-15 15:29:58 +02:00
Hamilton Kibbe
19a8fb0048 Add max_width and max_height arguments to 2016-12-13 20:22:54 -05:00
Hamilton Kibbe
7c4ec8a768 Clip context to axis- and pixel- aligned bounds before rendering primitives. Significantly speeds up render 2016-12-13 00:01:05 -05:00
Hamilton Kibbe
0ae5c48a65 Fix rs274x output bugs 2016-11-18 08:10:32 -05:00
Hamilton Kibbe
5696fc7064 Fix a bunch of bugs in rendering that showed up when rendering the gerbv test suite 2016-11-18 08:09:03 -05:00
Hamilton Kibbe
60d08dc8ad Merge upstream change 2016-11-07 21:20:26 -05:00
Girts Folkmanis
369ac7b2a3 cairo_backend.py: use BytesIO instead of StringIO
This fixes a crash in cairocffi on Python3, and should be compatible
with both python2 and python3. In python2, byte strings are just
strings. In python3, when getting binary data, the user probably wants
a byte string instead of a regular string.
2016-11-07 17:11:07 -08:00
Hamilton Kibbe
6db0658e23 Fix tests on python3 2016-11-06 15:08:00 -05:00
Hamilton Kibbe
d7a0f3ad2b Remove debug print" 2016-11-06 14:58:32 -05:00
Hamilton Kibbe
422c86bcc6 Merge upstream changes 2016-11-06 14:44:40 -05:00
Hamilton Kibbe
724c2b3bce Finish Merge, most tests passing 2016-11-05 20:56:47 -04:00
Hamilton Kibbe
0fedaedb6e Add more layer hints as seen in the wild 2016-09-29 19:43:28 -04:00
Hamilton Kibbe
5af19af190 Commit partial merge so I can work on the plane 2016-09-24 02:28:36 +08:00
Garret Fick
8d5e782ccf Fix multiple problems with the merge. There are still errors, but I will intentionally leave them because future merges might resolve them 2016-08-06 09:51:58 +08:00
Hamilton Kibbe
8cd842a41a Manually mere rendering changes 2016-08-06 09:40:40 +08:00
Garret Fick
965d3ce23b Add more tests for rendering to PNG. Start adding tests for rendering to Gerber format. Changed definition of no hole to use None instead of 0 so we can differentiate when writing to Gerber format. Makde polygon use hole diameter instead of hole radius to match other primitives 2016-07-24 22:08:31 +08:00
Garret Fick
7cd6acf126 Add many render tests based on the Umaco gerger specification. Fix multiple rendering bugs, especially related to holes in flashed apertures 2016-07-24 17:08:47 +08:00
Garret Fick
b0e13cc596 Merge in 6a005436b4 2016-07-20 23:37:18 +08:00
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
9b0d3b1122 Fix issue with chaning region mode via flash. Add options for controlling output from rendered gerber 2016-07-10 15:07:17 +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
Garret Fick
ea97d9d037 Fix issue with switching between ROUT and normal drill modes 2016-05-28 17:03:40 +08:00
Garret Fick
3fc296918e Use the known macro statement to render. Fix thermal not setting rotation 2016-05-28 13:06:08 +08:00
Garret Fick
c9c1313d59 Fix units statement. Keep track of original macro statement in the AMGroup 2016-05-28 12:36:31 +08:00
Garret Fick
d1d112f2f1 Merge pull request #3 from qaulau/patch-2
Update cairo_backend.py
2016-05-19 23:28:02 +08:00
Garret Fick
74c638c718 Fix issue where did not always switch into the G01 mode after G03 when the point was unchanged 2016-05-19 23:19:28 +08:00
Garret Fick
7fda8eb9f5 Don't render null items 2016-05-08 22:13:08 +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
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
acde19f205 Support for the G85 slot statement 2016-03-26 15:59:42 +08:00
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