diff options
author | Hamilton Kibbe <hamilton.kibbe@gmail.com> | 2016-11-06 14:44:40 -0500 |
---|---|---|
committer | Hamilton Kibbe <hamilton.kibbe@gmail.com> | 2016-11-06 14:44:40 -0500 |
commit | 422c86bcc684ea94515862b0dd3a39ce0f4bd86f (patch) | |
tree | a1efe6504e40083e61dcbe412c243fd8c00628f3 /examples | |
parent | ede065e6d16e1e4ffe970c8b13945139b3f4bcb2 (diff) | |
parent | 22e668c75f24174d2090443ed98e804b3737bd84 (diff) | |
download | gerbonara-422c86bcc684ea94515862b0dd3a39ce0f4bd86f.tar.gz gerbonara-422c86bcc684ea94515862b0dd3a39ce0f4bd86f.tar.bz2 gerbonara-422c86bcc684ea94515862b0dd3a39ce0f4bd86f.zip |
Merge upstream changes
Diffstat (limited to 'examples')
-rw-r--r-- | examples/cairo_bottom.png | bin | 0 -> 42847 bytes | |||
-rw-r--r-- | examples/cairo_example.png | bin | 104184 -> 100397 bytes | |||
-rw-r--r-- | examples/cairo_example.py | 60 | ||||
-rw-r--r-- | examples/pcb_bottom.png | bin | 39174 -> 36992 bytes | |||
-rw-r--r-- | examples/pcb_example.py | 22 | ||||
-rw-r--r-- | examples/pcb_top.png | bin | 98827 -> 92371 bytes | |||
-rw-r--r-- | examples/pcb_transparent_copper.png | bin | 0 -> 85285 bytes |
7 files changed, 51 insertions, 31 deletions
diff --git a/examples/cairo_bottom.png b/examples/cairo_bottom.png Binary files differnew file mode 100644 index 0000000..03e40e7 --- /dev/null +++ b/examples/cairo_bottom.png diff --git a/examples/cairo_example.png b/examples/cairo_example.png Binary files differindex 671de5c..76e3bff 100644 --- a/examples/cairo_example.png +++ b/examples/cairo_example.png diff --git a/examples/cairo_example.py b/examples/cairo_example.py index 14a7037..fcd7a44 100644 --- a/examples/cairo_example.py +++ b/examples/cairo_example.py @@ -24,46 +24,54 @@ a .png file. """ import os -from gerber import read -from gerber.render import GerberCairoContext, theme +from gerber import load_layer +from gerber.render import GerberCairoContext, RenderSettings, theme GERBER_FOLDER = os.path.abspath(os.path.join(os.path.dirname(__file__), 'gerbers')) # Open the gerber files -copper = read(os.path.join(GERBER_FOLDER, 'copper.GTL')) -mask = read(os.path.join(GERBER_FOLDER, 'soldermask.GTS')) -silk = read(os.path.join(GERBER_FOLDER, 'silkscreen.GTO')) -drill = read(os.path.join(GERBER_FOLDER, 'ncdrill.DRD')) +copper = load_layer(os.path.join(GERBER_FOLDER, 'copper.GTL')) +mask = load_layer(os.path.join(GERBER_FOLDER, 'soldermask.GTS')) +silk = load_layer(os.path.join(GERBER_FOLDER, 'silkscreen.GTO')) +drill = load_layer(os.path.join(GERBER_FOLDER, 'ncdrill.DRD')) # Create a new drawing context ctx = GerberCairoContext() -# Set opacity and color for copper layer -ctx.alpha = 1.0 -ctx.color = theme.COLORS['hasl copper'] - -# Draw the copper layer -copper.render(ctx) - -# Set opacity and color for soldermask layer -ctx.alpha = 0.75 -ctx.color = theme.COLORS['green soldermask'] +# Draw the copper layer. render_layer() uses the default color scheme for the +# layer, based on the layer type. Copper layers are rendered as +ctx.render_layer(copper) # Draw the soldermask layer -mask.render(ctx, invert=True) +ctx.render_layer(mask) -# Set opacity and color for silkscreen layer -ctx.alpha = 1.0 -ctx.color = theme.COLORS['white'] -# Draw the silkscreen layer -silk.render(ctx) +# The default style can be overridden by passing a RenderSettings instance to +# render_layer(). +# First, create a settings object: +our_settings = RenderSettings(color=theme.COLORS['white'], alpha=0.85) -# Set opacity for drill layer -ctx.alpha = 1.0 -ctx.color = theme.COLORS['black'] -drill.render(ctx) +# Draw the silkscreen layer, and specify the rendering settings to use +ctx.render_layer(silk, settings=our_settings) + +# Draw the drill layer +ctx.render_layer(drill) # Write output to png file ctx.dump(os.path.join(os.path.dirname(__file__), 'cairo_example.png')) + +# Load the bottom layers +copper = load_layer(os.path.join(GERBER_FOLDER, 'bottom_copper.GBL')) +mask = load_layer(os.path.join(GERBER_FOLDER, 'bottom_mask.GBS')) + +# Clear the drawing +ctx.clear() + +# Render bottom layers +ctx.render_layer(copper) +ctx.render_layer(mask) +ctx.render_layer(drill) + +# Write png file +ctx.dump(os.path.join(os.path.dirname(__file__), 'cairo_bottom.png')) diff --git a/examples/pcb_bottom.png b/examples/pcb_bottom.png Binary files differindex 1e8c369..1834c06 100644 --- a/examples/pcb_bottom.png +++ b/examples/pcb_bottom.png diff --git a/examples/pcb_example.py b/examples/pcb_example.py index bba030e..e6a56fc 100644 --- a/examples/pcb_example.py +++ b/examples/pcb_example.py @@ -1,7 +1,7 @@ #! /usr/bin/env python # -*- coding: utf-8 -*- -# Copyright 2015 Hamilton Kibbe <ham@hamiltonkib.be> +# Copyright 2016 Hamilton Kibbe <ham@hamiltonkib.be> # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -31,10 +31,22 @@ GERBER_FOLDER = os.path.abspath(os.path.join(os.path.dirname(__file__), 'gerbers # Create a new drawing context ctx = GerberCairoContext() -# Create a new PCB +# Create a new PCB instance pcb = PCB.from_directory(GERBER_FOLDER) -# Render PCB -ctx.render_layers(pcb.top_layers, os.path.join(os.path.dirname(__file__), 'pcb_top.png',), theme.THEMES['OSH Park']) -ctx.render_layers(pcb.bottom_layers, os.path.join(os.path.dirname(__file__), 'pcb_bottom.png'), theme.THEMES['OSH Park']) +# Render PCB top view +ctx.render_layers(pcb.top_layers, + os.path.join(os.path.dirname(__file__), 'pcb_top.png',), + theme.THEMES['OSH Park']) + +# Render PCB bottom view +ctx.render_layers(pcb.bottom_layers, + os.path.join(os.path.dirname(__file__), 'pcb_bottom.png'), + theme.THEMES['OSH Park']) + +# Render copper layers only +ctx.render_layers(pcb.copper_layers + pcb.drill_layers, + os.path.join(os.path.dirname(__file__), + 'pcb_transparent_copper.png'), + theme.THEMES['Transparent Copper']) diff --git a/examples/pcb_top.png b/examples/pcb_top.png Binary files differindex 60bc245..b6b65d0 100644 --- a/examples/pcb_top.png +++ b/examples/pcb_top.png diff --git a/examples/pcb_transparent_copper.png b/examples/pcb_transparent_copper.png Binary files differnew file mode 100644 index 0000000..9aa0f0c --- /dev/null +++ b/examples/pcb_transparent_copper.png |