mirror of
https://github.com/gumyr/build123d.git
synced 2025-12-06 02:30:55 -08:00
47 lines
1.7 KiB
Python
47 lines
1.7 KiB
Python
"""
|
|
Too Tall Toby Party Pack 01-08 Tie Plate
|
|
"""
|
|
|
|
from build123d import *
|
|
from ocp_vscode import *
|
|
|
|
densa = 7800 / 1e6 # carbon steel density g/mm^3
|
|
densb = 2700 / 1e6 # aluminum alloy
|
|
densc = 1020 / 1e6 # ABS
|
|
|
|
with BuildPart() as p:
|
|
with BuildSketch() as s1:
|
|
Rectangle(188 / 2 - 33, 162, align=(Align.MIN, Align.CENTER))
|
|
with Locations((188 / 2 - 33, 0)):
|
|
SlotOverall(190, 33 * 2, rotation=90)
|
|
mirror(about=Plane.YZ)
|
|
with GridLocations(188 - 2 * 33, 190 - 2 * 33, 2, 2):
|
|
Circle(29 / 2, mode=Mode.SUBTRACT)
|
|
Circle(84 / 2, mode=Mode.SUBTRACT)
|
|
extrude(amount=16)
|
|
|
|
with BuildPart() as p2:
|
|
with BuildSketch(Plane.XZ) as s2:
|
|
with BuildLine() as l1:
|
|
l1 = Polyline(
|
|
(222 / 2 + 14 - 40 - 40, 0),
|
|
(222 / 2 + 14 - 40, -35 + 16),
|
|
(222 / 2 + 14, -35 + 16),
|
|
(222 / 2 + 14, -35 + 16 + 30),
|
|
(222 / 2 + 14 - 40 - 40, -35 + 16 + 30),
|
|
close=True,
|
|
)
|
|
make_face()
|
|
with Locations((222 / 2, -35 + 16 + 14)):
|
|
Circle(11 / 2, mode=Mode.SUBTRACT)
|
|
extrude(amount=20 / 2, both=True)
|
|
with BuildSketch() as s3:
|
|
with Locations(l1 @ 0):
|
|
Rectangle(40 + 40, 8, align=(Align.MIN, Align.CENTER))
|
|
with Locations((40, 0)):
|
|
Rectangle(40, 20, align=(Align.MIN, Align.CENTER))
|
|
extrude(amount=30, both=True, mode=Mode.INTERSECT)
|
|
mirror(about=Plane.YZ)
|
|
|
|
show(p)
|
|
print(f"\npart mass = {p.part.volume*densa:0.2f}")
|