34 lines
1 KiB
Python
34 lines
1 KiB
Python
from build123d import *
|
|
from ocp_vscode import show
|
|
|
|
length, width, thickness, fontsz, fontht = 80.0, 60.0, 10.0, 25.0, 4.0
|
|
|
|
ex34 = Box(length, width, thickness)
|
|
plane = Plane(ex34.faces().sort_by().last)
|
|
ex34_sk = plane * Text("Hello", font_size=fontsz, align=(Align.CENTER, Align.MIN))
|
|
ex34 += extrude(ex34_sk, amount=fontht)
|
|
ex34_sk2 = plane * Text("World", font_size=fontsz, align=(Align.CENTER, Align.MAX))
|
|
ex34 -= extrude(ex34_sk2, amount=-fontht)
|
|
|
|
LENGTH=100
|
|
HEIGHT=30
|
|
THICKNESS=1.3
|
|
TEXT_THICKNESS=0.8
|
|
FONT_SIZE=20
|
|
FONT="assets/dovahkiin-font/DovahkiinBold-ME3Y.ttf"
|
|
# FONT="Arial"
|
|
TEXT="Brady"
|
|
EXTRUDE_TEXT=False
|
|
|
|
sign = Box(LENGTH,HEIGHT,THICKNESS)
|
|
front_plane = Plane(sign.faces().sort_by().last)
|
|
sign_text = front_plane * Text(TEXT, font_size=FONT_SIZE, font_path=FONT, align=(Align.CENTER, Align.CENTER))
|
|
if EXTRUDE_TEXT:
|
|
sign += extrude(sign_text, amount=TEXT_THICKNESS)
|
|
else:
|
|
sign -= extrude(sign_text, amount=-TEXT_THICKNESS)
|
|
|
|
if __name__ == "__main__":
|
|
show(sign)
|
|
export_stl(sign, "./sign.stl")
|
|
|