Chintalagiri Shashank
37dfd86368
Add hook for outline layer to PCB class
2019-05-11 04:03:59 +05:30
Hamilton Kibbe
2601ae8eab
fix reversed layer bug
2019-03-02 10:41:37 -05:00
jaseg
a7a5981e0e
Make primitives with unset level polarity inherit from region
...
This fixes region rendering with programatically generated primitives
such that clear level polarity works in an intuitive way. This is useful
for e.g. cutouts in regions. Before, the renderer would set level
polarity twice, both when starting the region and then again once for
each region primitive (line or arc). The problem was that the primitives
in a region with "clear" polarity would when constructed with unset
polarity default to "dark". Thus the renderer would emit something like
LPC (clear polarity) -> G36 (start region) -> LPD (dark polarity) ->
{lines...} instead of LPC -> G36 -> {lines...}.
After this commit, Line and Arc will retain None as level polarity when
created with unset level polarity, and region rendering will override
None with the region's polarity. Outside regions, the old dark default
remains unchanged.
Note on verification: Somehow, gEDA gerbv would still render the broken
regions the way one would have intended, but other viewers (KiCAD
gerbview, the online EasyEDA one and whatever JLC uses to make their
silkscreens) would not.
2019-02-03 14:37:26 +09:00
Hamilton Kibbe
f59d78b7fe
Merge pull request #92 from curtacircuitos/subclass-bugfix
...
Fix hard requirement of cairo per #83 , and add stubs for required sub…
2019-01-26 13:52:32 -05:00
Hamilton Kibbe
292f74dee9
Merge pull request #91 from cejpmart/patch-1
...
IPC356: Do not crash on record type 367
2019-01-26 13:48:05 -05:00
Martin Cejp
e002975249
IPC356: Do not crash on record type 367
2019-01-26 16:07:45 +01:00
jaseg
17924398fa
Fix cairo matrix clone op to not use copy.copy
...
For some reason, copy.copy would barf saying it can't deepcopy cairo
matrices.
2018-07-06 19:57:01 +02:00
Hamilton Kibbe
7c20bd3699
Merge pull request #87 from ju5t/full-filename-regex
...
Match full filename instead of the base name
2018-06-27 12:31:00 -05:00
ju5t
8dd8a87fc0
Match full filename instead of the base name
...
Regular expressions only matched the base name. This matches the
entire filename which allows for more advanced regular expressions.
2018-06-26 22:17:45 +02:00
ju5t
7cd3d53252
Skip subdirectories during import
...
If a directory contains subdirectories from_directory throws an
exception.
2018-06-25 09:43:23 +02:00
Hamilton Kibbe
5245fb9256
Fix hard requirement of cairo per #83 , and add stubs for required subclass methods to GerberContext per #84
2018-06-05 08:57:37 -04:00
jaseg
e5597e84a8
Use positional arguments for cairo.Context.arc
...
cairocffi 0.6 does not support keyword args.
2017-11-25 16:15:00 +01:00
jaseg
b87629c2ae
Add hole support to ADParamStmt.rect
2017-11-25 16:14:23 +01:00
Hamilton Kibbe
fa9f2c3a74
Merge pull request #76 from ju5t/guess-layer
...
Check gerber content for layer hints
2017-11-22 11:15:13 -05:00
Hamilton Kibbe
c2ed707b52
Fix bounding box calculation for Slot primitives per #77
2017-11-14 09:15:06 -05:00
Hamilton Kibbe
ca6c819ca8
Add test that reproduces #77
2017-11-14 09:11:49 -05:00
Hamilton Kibbe
e12a04fc16
Fix error in slot rendering from #77
2017-11-01 16:09:06 -04:00
ju5t
9ae238bf7a
Check gerber content for layer hints
2017-11-01 16:23:22 +01:00
Kliment Yanev
a08ecc922d
Implement quickhull to remove scipy dependency
2017-09-16 14:48:44 +02:00
Hamilton Kibbe
7ad6c3f6ac
Fix handling of multi-line strings per #66
2017-07-04 02:11:52 -04:00
Hamilton Kibbe
ea0643dcf4
Merge pull request #67 from jmargeta/python_3_fix
...
Add GerberParser fix for Python 3.x
2017-07-04 01:31:32 -04:00
Hamilton Kibbe
e754f59468
Remove rest of mixed unpack/kwarg syntax to fix #72
2017-07-04 01:22:47 -04:00
Hamilton Kibbe
8def119980
Merge pull request #71 from tomacorp/layer_bounds_arg
...
Added bounds argument to render_layer()
2017-06-12 08:02:59 -04:00
Hamilton Kibbe
872c2db250
Merge pull request #69 from jmargeta/sweep_angle_tolerance
...
Add tolerance to center finding
2017-06-12 07:59:39 -04:00
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
Tom Anderson
e0b45108d2
Added bounds argument to render_layer()
2017-05-24 09:42:23 -07:00
Jan Margeta
dd1676ad8a
Add tolerance to center finding
...
In some cases, the computation of valid sweep angle hit numerical limits
and no centers are found.
This commit adds a small amount of tolerance.
2017-04-15 15:40:55 +02:00
Jan Margeta
7873999926
Fix Cairo backend for svg saving and Python 3
2017-04-15 15:29:58 +02:00
Jan Margeta
5b67c82abc
Replace sys.maxint with sys.maxsize
...
In Python 3, sys.maxint was removed, however its current use
can be safely substituted with sys.maxsize (also in Python 2)
See also: https://docs.python.org/3.1/whatsnew/3.0.html#integers
2017-04-15 11:13:31 +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
ju5t
ffeaf788f0
( #61 ) Add regex option to discover layer classes
2016-12-01 21:08:17 +01:00
Hamilton Kibbe
e07ccc805f
Fix drill tests
2016-11-18 08:14:26 -05:00
Hamilton Kibbe
389c273a87
Clean up rs274x output tests
2016-11-18 08:12:55 -05:00
Hamilton Kibbe
33e8494318
Add more tests for primitives
2016-11-18 08:11:56 -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
a7f1f6ef0f
Finish adding square hole support, fix some primitive calculations, etc.
2016-11-18 08:05:57 -05:00
Hamilton Kibbe
6b672e98ff
Add support for IF (Include File) rs274x command
2016-11-18 08:02:22 -05:00
Hamilton Kibbe
c70ece73ea
Add support for square holes in basic primitives
2016-11-18 07:56:51 -05:00
Hamilton Kibbe
41a7b90dff
Excellon update
2016-11-18 07:55:43 -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
56c3c88c57
temporarily disable tests faillin g on CI
2016-11-06 14:55:59 -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
22e668c75f
Fix tests
2016-11-05 18:30:21 -04:00