Skip to content

Commit

Permalink
move to better layers
Browse files Browse the repository at this point in the history
  • Loading branch information
jackhumbert committed Dec 1, 2017
1 parent 9eb6dc1 commit e670213
Showing 1 changed file with 28 additions and 6 deletions.
34 changes: 28 additions & 6 deletions tools/png2lbr.py
Original file line number Diff line number Diff line change
Expand Up @@ -106,8 +106,27 @@
</package>
</packages>
<symbols>
<symbol name="%(name)s">
<text x="0" y="0" size="1.778" layer="94" align="center">%(name)s</text>
<wire x1="-12.7" y1="2.54" x2="12.7" y2="2.54" width="0.254" layer="94"/>
<wire x1="12.7" y1="2.54" x2="12.7" y2="-2.54" width="0.254" layer="94"/>
<wire x1="12.7" y1="-2.54" x2="-12.7" y2="-2.54" width="0.254" layer="94"/>
<wire x1="-12.7" y1="-2.54" x2="-12.7" y2="2.54" width="0.254" layer="94"/>
</symbol>
</symbols>
<devicesets>
<deviceset name="%(name)s" prefix="%(name)s">
<gates>
<gate name="G$1" symbol="%(name)s" x="0" y="0"/>
</gates>
<devices>
<device name="" package="%(name)s">
<technologies>
<technology name=""/>
</technologies>
</device>
</devices>
</deviceset>
</devicesets>
</library>
</drawing>
Expand Down Expand Up @@ -209,13 +228,16 @@ def render_path_to_layer(path, fp_type, layer, scale_factor):

def conv_image_to_module(name, scale_factor):

module = header % {"name": name}
module = header % {"name": name.upper()}

front_image = Image.open("%s_front.png" % name).transpose(Image.FLIP_TOP_BOTTOM)
print("Reading image from \"%s_front.png\"" % name)

front_image_red, front_image_green, front_image_blue, front_image_alpha = front_image.split()

# Soldermask needs to be inverted
front_image_red = ImageOps.invert(front_image_red)
front_image_red = Image.composite(front_image_red, front_image_alpha, front_image_alpha)
front_image_red = front_image_red.point(lambda i: 0 if i < 127 else 1)
red_array = np.array(front_image_red)
bmp_red = potrace.Bitmap(red_array)
Expand Down Expand Up @@ -244,8 +266,8 @@ def conv_image_to_module(name, scale_factor):
# print("Generating Outline layer from front alpha channel")
# module += render_path_to_layer(path_alpha, "line", "20", scale_factor)

print("Generating Top layer from front red channel")
module += render_path_to_layer(path_red, "poly", "1", scale_factor)
print("Generating tKeepout layer from front red channel")
module += render_path_to_layer(path_red, "poly", "39", scale_factor)
print("Generating tStop layer from front green channel")
module += render_path_to_layer(path_green, "poly", "29", scale_factor)
print("Generating tPlace layer from front blue channel")
Expand Down Expand Up @@ -275,16 +297,16 @@ def conv_image_to_module(name, scale_factor):
bmp_blue = potrace.Bitmap(blue_array)
path_blue = bmp_blue.trace(alphamax = 0.0, opttolerance = 50)

print("Generating Bottom layer from back red channel")
module += render_path_to_layer(path_red, "poly", "16", scale_factor)
print("Generating bKeepout layer from back red channel")
module += render_path_to_layer(path_red, "poly", "40", scale_factor)
print("Generating bStop layer from back green channel")
module += render_path_to_layer(path_green, "poly", "30", scale_factor)
print("Generating bPlace layer from back blue channel")
module += render_path_to_layer(path_blue, "poly", "22", scale_factor)
except IOError:
pass

module += footer % {"name": name}
module += footer % {"name": name.upper()}
return module, (w * 25.4 / scale_factor, h * 25.4 / scale_factor)


Expand Down

0 comments on commit e670213

Please sign in to comment.