74 lines
1.9 KiB
Python
Executable file
74 lines
1.9 KiB
Python
Executable file
#!/usr/bin/env python
|
|
import sys, os
|
|
from gerber import load_layer
|
|
from gerber.render import RenderSettings, theme
|
|
from gerber.render.cairo_backend import GerberCairoContext
|
|
|
|
os.chdir(os.path.dirname(__file__))
|
|
|
|
def putstr(text):
|
|
sys.stdout.write(text)
|
|
sys.stdout.flush()
|
|
|
|
putstr('loading ')
|
|
copper = load_layer('outputs/panelized.GTL')
|
|
putstr('.')
|
|
mask = load_layer('outputs/panelized.GTS')
|
|
putstr('.')
|
|
silk = load_layer('outputs/panelized.GTO')
|
|
putstr('.')
|
|
drill = load_layer('outputs/panelized.TXT')
|
|
putstr('.')
|
|
outline = load_layer('outputs/panelized-fill.GML')
|
|
putstr('. end\n')
|
|
|
|
putstr('drawing ')
|
|
ctx = GerberCairoContext(scale=20)
|
|
putstr('.')
|
|
|
|
metal_settings = RenderSettings(color=(30.0/255.0, 119.0/255.0, 93/255.0))
|
|
bg_settings = RenderSettings(color=(30.0/300.0, 110.0/300.0, 93/300.0))
|
|
ctx.render_layer(copper, settings=metal_settings, bgsettings=bg_settings)
|
|
putstr('.')
|
|
|
|
copper_settings = RenderSettings(color=(0.7*1.2, 0.5*1.2, 0.1*1.2))
|
|
ctx.render_layer(mask, settings=copper_settings)
|
|
putstr('.')
|
|
|
|
our_settings = RenderSettings(color=theme.COLORS['white'], alpha=0.80)
|
|
ctx.render_layer(silk, settings=our_settings)
|
|
putstr('.')
|
|
|
|
ctx.render_layer(outline)
|
|
putstr('.')
|
|
ctx.render_layer(drill)
|
|
putstr('. end\n')
|
|
|
|
putstr('dumping ... ')
|
|
ctx.dump('outputs/board-top.png')
|
|
putstr('end \n')
|
|
|
|
ctx.clear()
|
|
putstr('loading bottom ')
|
|
copper = load_layer('outputs/panelized.GBL')
|
|
putstr('.')
|
|
mask = load_layer('outputs/panelized.GBS')
|
|
putstr('.')
|
|
silk = load_layer('outputs/panelized.GBO')
|
|
putstr('. end\n')
|
|
|
|
putstr('drawing bottom ')
|
|
ctx.render_layer(copper, settings=metal_settings, bgsettings=bg_settings)
|
|
putstr('.')
|
|
ctx.render_layer(mask, settings=copper_settings)
|
|
putstr('.')
|
|
ctx.render_layer(silk, settings=our_settings)
|
|
putstr('.')
|
|
ctx.render_layer(outline)
|
|
putstr('.')
|
|
ctx.render_layer(drill)
|
|
putstr('. end\n')
|
|
|
|
putstr('dumping bottom ...')
|
|
ctx.dump('outputs/board-bottom.png')
|
|
putstr(' end\n')
|