summaryrefslogtreecommitdiff
path: root/gerber
AgeCommit message (Collapse)AuthorFilesLines
2019-11-25Merge branch 'master' into outlinePaulo Henrique Silva2-5/+10
2019-08-01Update excellon_statements.pyC4dmium1-5/+6
2019-08-01Update utils.pyC4dmium1-0/+4
2019-05-11Add hook for outline layer to PCB classChintalagiri Shashank1-0/+6
2019-03-02fix reversed layer bugHamilton Kibbe1-1/+1
2019-02-03Make primitives with unset level polarity inherit from regionjaseg3-17/+17
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-01-26Merge pull request #92 from curtacircuitos/subclass-bugfixHamilton Kibbe6-67/+86
Fix hard requirement of cairo per #83, and add stubs for required sub…
2019-01-26Merge pull request #91 from cejpmart/patch-1Hamilton Kibbe1-1/+2
IPC356: Do not crash on record type 367
2019-01-26IPC356: Do not crash on record type 367Martin Cejp1-1/+2
2018-07-06Fix cairo matrix clone op to not use copy.copyjaseg1-1/+1
For some reason, copy.copy would barf saying it can't deepcopy cairo matrices.
2018-06-27Merge pull request #87 from ju5t/full-filename-regexHamilton Kibbe2-4/+4
Match full filename instead of the base name
2018-06-26Match full filename instead of the base nameju5t2-4/+4
Regular expressions only matched the base name. This matches the entire filename which allows for more advanced regular expressions.
2018-06-25Skip subdirectories during importju5t1-0/+3
If a directory contains subdirectories from_directory throws an exception.
2018-06-05Fix hard requirement of cairo per #83, and add stubs for required subclass ↵Hamilton Kibbe6-67/+86
methods to GerberContext per #84
2017-11-25Use positional arguments for cairo.Context.arcjaseg1-21/+5
cairocffi 0.6 does not support keyword args.
2017-11-25Add hole support to ADParamStmt.rectjaseg1-2/+6
2017-11-22Merge pull request #76 from ju5t/guess-layerHamilton Kibbe3-14/+236
Check gerber content for layer hints
2017-11-14Fix bounding box calculation for Slot primitives per #77Hamilton Kibbe1-3/+6
2017-11-14Add test that reproduces #77Hamilton Kibbe1-0/+14
2017-11-01Fix error in slot rendering from #77Hamilton Kibbe1-0/+1
2017-11-01Check gerber content for layer hintsju5t3-14/+236
2017-09-16Implement quickhull to remove scipy dependencyKliment Yanev1-3/+112
2017-07-04Fix handling of multi-line strings per #66Hamilton Kibbe2-890/+928
2017-07-04Merge pull request #67 from jmargeta/python_3_fixHamilton Kibbe1-1/+1
Add GerberParser fix for Python 3.x
2017-07-04Remove rest of mixed unpack/kwarg syntax to fix #72Hamilton Kibbe1-9/+9
2017-06-12Merge pull request #71 from tomacorp/layer_bounds_argHamilton Kibbe1-2/+5
Added bounds argument to render_layer()
2017-06-12Merge pull request #69 from jmargeta/sweep_angle_toleranceHamilton Kibbe1-4/+7
Add tolerance to center finding
2017-06-12Merge pull request #68 from jmargeta/cairo_python_3_fixHamilton Kibbe2-2/+40
Fix Cairo backend for svg saving and Python 3
2017-06-12Fix error when unpacking colors in cairo backendHamilton Kibbe1-2/+2
2017-05-24Added bounds argument to render_layer()Tom Anderson1-2/+5
2017-04-15Add tolerance to center findingJan Margeta1-4/+7
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-15Fix Cairo backend for svg saving and Python 3Jan Margeta2-2/+40
2017-04-15Replace sys.maxint with sys.maxsizeJan Margeta1-1/+1
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
2016-12-13Add max_width and max_height arguments toHamilton Kibbe1-2/+22
2016-12-13Clip context to axis- and pixel- aligned bounds before rendering primitives. ↵Hamilton Kibbe1-563/+610
Significantly speeds up render
2016-12-01(#61) Add regex option to discover layer classesju5t2-12/+49
2016-11-18Fix drill testsHamilton Kibbe1-6/+6
2016-11-18Clean up rs274x output testsHamilton Kibbe1-19/+19
2016-11-18Add more tests for primitivesHamilton Kibbe1-12/+87
2016-11-18Fix rs274x output bugsHamilton Kibbe1-19/+32
2016-11-18Fix a bunch of bugs in rendering that showed up when rendering the gerbv ↵Hamilton Kibbe1-183/+305
test suite
2016-11-18Finish adding square hole support, fix some primitive calculations, etc.Hamilton Kibbe3-132/+222
2016-11-18Add support for IF (Include File) rs274x commandHamilton Kibbe1-2/+24
2016-11-18Add support for square holes in basic primitivesHamilton Kibbe1-5/+19
2016-11-18Excellon updateHamilton Kibbe4-93/+242
2016-11-07Merge upstream changeHamilton Kibbe1-6/+3
2016-11-07cairo_backend.py: use BytesIO instead of StringIOGirts Folkmanis1-6/+3
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-06Fix tests on python3Hamilton Kibbe2-4/+2
2016-11-06Remove debug print"Hamilton Kibbe1-1/+0
2016-11-06temporarily disable tests faillin g on CIHamilton Kibbe1-5/+5