42 lines
1.3 KiB
Python
42 lines
1.3 KiB
Python
from build123d import *
|
|
|
|
orange = import_step("./OrangePi-Box.step")
|
|
orange = orange.rotate(Axis.X, -90).move(Location((0, 0, 37)))
|
|
|
|
dlugosc = 112.80
|
|
szerokosc = 87.80
|
|
wysokosc = 54
|
|
scianka = 3
|
|
|
|
|
|
# with BuildPart() as box:
|
|
# Box(dlugosc, szerokosc, wysokosc)
|
|
# front = box.faces().sort_by(Axis.Y)[0]
|
|
# front_left_edge_vertex = box.faces().sort_by(Axis.Y)[0].edges().filter_by(Axis.Z).sort_by(Axis.X)[0].vertices()[0]
|
|
# with BuildSketch(front) as s1:
|
|
# with Locations((5, 0, 0)):
|
|
# test = Rectangle(11.68, 17.84, align=(Align.MIN, Align.MAX, Align.CENTER))
|
|
# extrude(amount=-scianka, mode=Mode.SUBTRACT)
|
|
|
|
# show_object(box, name="box")
|
|
# # debug(orange)
|
|
# debug(front_left_edge_vertex, name="vertex")
|
|
# debug(s1.sketch)
|
|
# debug(test, name="test")
|
|
|
|
|
|
with BuildPart() as box:
|
|
with BuildSketch() as s1:
|
|
Rectangle(dlugosc, szerokosc)
|
|
extrude(amount=wysokosc)
|
|
offset(amount=-scianka, openings=box.faces().sort_by(Axis.Z)[-1])
|
|
front = box.faces().sort_by(Axis.Y)[0]
|
|
front_left_edge_vertex = box.faces().sort_by(Axis.Y)[0].edges().filter_by(Axis.Z).sort_by(Axis.X)[0].vertices()[0]
|
|
with BuildSketch(front) as s2:
|
|
with Locations((front_left_edge_vertex.X, 0, 0)):
|
|
Rectangle(30, 20, align=(Align.MIN, Align.MIN, Align.CENTER))
|
|
|
|
show_object(box)
|
|
debug(s2.sketch)
|
|
debug(orange)
|