summaryrefslogtreecommitdiff
path: root/gerber/render
AgeCommit message (Collapse)AuthorFilesLines
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-09-29Add more layer hints as seen in the wildHamilton Kibbe1-1/+1
2016-01-28Cleanup, rendering fixes.Hamilton Kibbe4-102/+113
fixed rendering of tented vias fixed rendering of semi-transparent layers fixed file type detection issues added some examples
2016-01-21Add support for mirrored renderingHamilton Kibbe2-12/+18
- 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-21Fix a bunch of rendering bugs.Hamilton Kibbe3-119/+148
- '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-01Refactor a littleHamilton Kibbe3-58/+65
pulled all rendering stuff out of the pcb/layer objects
2015-12-22Python3 fixHamilton Kibbe1-2/+2
2015-12-22Add PCB interfaceHamilton Kibbe3-40/+75
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-20Allow renderer to write to memory per #38Hamilton Kibbe2-7/+29
Some updates to rendering colors/themes
2015-12-20Clean up negative render codeHamilton Kibbe1-76/+69
2015-12-19Allow negative render of soldermask per #50Hamilton Kibbe3-40/+152
Update example code and rendering to show change
2015-11-15Remove svgwrite backendPaulo Henrique Silva2-131/+0
We moved the functionality to cairo backend, it can write png and svg and maybe more (pdfs?)
2015-10-10Allow files to be read from strings per #37Hamilton Kibbe2-0/+7
Adds a loads() method to the top level module which generates a GerberFile or ExcellonFile from a string
2015-08-09Add support for arcs in regions.Hamilton Kibbe1-5/+17
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-07-25Fix windows permission errorHamilton Kibbe1-1/+3
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-22Fix multiple layer issue in cairo-unification branch (see #33)Hamilton Kibbe1-10/+13
2015-07-09Fix arcs and ackground paintingPaulo Henrique Silva1-1/+5
2015-07-09Initial patch to unify our render towards cairoPaulo Henrique Silva2-37/+59
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-03-05Fix parsing for multiline ipc-d-356 recordsHamilton Kibbe2-2/+16
2015-02-25Convert py3k's map object to tuple explicitly.hbc1-1/+1
2015-02-20Fix arc width per comment in #12Hamilton Kibbe2-2/+2
2015-02-18Fixing more relative import statementsPhilipp Klaus1-2/+2
2015-02-15Fix cairo image sizeHamilton Kibbe1-1/+8
2015-02-15Add cairo example code, and use example-generated image in readmeHamilton Kibbe1-5/+7
2015-02-15Tests and bugfixesHamilton Kibbe1-1/+1
2015-02-13Fix rendering for line with rectangular aperture per #12. Still need to do ↵Hamilton Kibbe2-6/+17
the same for arcs.
2015-02-12Update line primitive to take aperture parameterHamilton Kibbe2-14/+26
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-08Remove unused filePaulo Henrique Silva1-76/+0
2015-02-02More tests and bugfixesHamilton Kibbe1-67/+63
2014-10-28Add arc rendering and testsHamilton Kibbe2-1/+33
2014-10-27Fix rendering of 0-width lines (e.g. board outlines) in SVG and Cairo rendererHamilton Kibbe2-63/+13
2014-10-26removed dead codeHamilton Kibbe1-60/+4
2014-10-26cairo workingHamilton Kibbe3-115/+106
2014-10-26cairo supportHamilton Kibbe1-0/+156
2014-10-18Refactor renderingHamilton Kibbe2-569/+154
2014-10-13Add SVG transparencyHamilton Kibbe1-28/+44
2014-10-12update docs and example imagesHamilton Kibbe2-1/+25
2014-10-10Working region fills and level polarity. Renders Altium-generated gerbers ↵Hamilton Kibbe2-10/+35
like a champ!
2014-10-10doc updateHamilton Kibbe1-1/+99
2014-10-09doc updateHamilton Kibbe1-0/+6
2014-10-09doc updateHamilton Kibbe1-40/+187
2014-10-09Doc updateHamilton Kibbe2-3/+91
2014-10-09Add mode statement parsingHamilton Kibbe1-2/+12
2014-10-08start arcHamilton Kibbe3-45/+88
2014-10-08Update readme and exampleHamilton Kibbe1-2/+4
2014-10-07Fix resolve errorHamilton Kibbe1-1/+3
2014-10-06Fix import errorHamilton Kibbe1-1/+1
2014-09-30tests updateHamilton Kibbe2-1/+1
2014-09-28added ExcellonFile classHamilton Kibbe3-37/+34
2014-09-28Added excellon support and refactored projectHamilton Kibbe4-0/+390