feat: add trash_belt_hook
This commit is contained in:
@@ -110,6 +110,43 @@ def build_mop_handle():
|
|||||||
|
|
||||||
return mop_handle
|
return mop_handle
|
||||||
|
|
||||||
|
def build_trash_belt_hook(
|
||||||
|
belt_width: float = 37.5,
|
||||||
|
belt_thickness: float = 6.6,
|
||||||
|
|
||||||
|
clip_thickness: float = 5,
|
||||||
|
|
||||||
|
hook_width: float = 40,
|
||||||
|
|
||||||
|
hook_height: float = 9,
|
||||||
|
hook_thickness: float = 13.5,
|
||||||
|
hook_chamfer: float = 10,
|
||||||
|
|
||||||
|
hook_tip_offset: float = 15,
|
||||||
|
hook_tip_thickness_p: float = 0.2,
|
||||||
|
hook_tip_width_p: float = 0.3,
|
||||||
|
):
|
||||||
|
with BuildPart() as trash_belt_hook:
|
||||||
|
with BuildSketch(Plane.YZ):
|
||||||
|
SlotOverall(belt_width, belt_thickness, 90)
|
||||||
|
offset(amount=clip_thickness)
|
||||||
|
offset(amount=-clip_thickness, mode=Mode.SUBTRACT)
|
||||||
|
extrude(amount=hook_width / 2, both=True)
|
||||||
|
|
||||||
|
pln = Plane(trash_belt_hook.faces().sort_by(Axis.Y)[-1].offset(hook_height)).rotated((-45, 0, 0))
|
||||||
|
with BuildSketch(pln) as hook_s:
|
||||||
|
Rectangle(hook_thickness, hook_width)
|
||||||
|
chamfer(hook_s.vertices().group_by(Axis.X)[0], hook_chamfer)
|
||||||
|
extrude(until=Until.PREVIOUS)
|
||||||
|
|
||||||
|
with BuildSketch(pln.offset(hook_tip_offset)) as hook_tip:
|
||||||
|
Rectangle(hook_thickness * hook_tip_thickness_p, hook_width * hook_tip_width_p)
|
||||||
|
chamfer(hook_tip.vertices().group_by(Axis.X)[0], hook_chamfer * hook_tip_thickness_p)
|
||||||
|
loft([hook_s.sketch, hook_tip.sketch])
|
||||||
|
|
||||||
|
|
||||||
|
return trash_belt_hook
|
||||||
|
|
||||||
|
|
||||||
mop_scraper_holder_top = build_mop_scraper_holder(15)
|
mop_scraper_holder_top = build_mop_scraper_holder(15)
|
||||||
assert mop_scraper_holder_top.part is not None
|
assert mop_scraper_holder_top.part is not None
|
||||||
@@ -122,3 +159,7 @@ export_step(mop_scraper_holder_bottom.part, "mop_scraper_holder_bottom.step")
|
|||||||
mop_handle = build_mop_handle()
|
mop_handle = build_mop_handle()
|
||||||
assert mop_handle.part is not None
|
assert mop_handle.part is not None
|
||||||
export_step(mop_handle.part, "mop_handle.step")
|
export_step(mop_handle.part, "mop_handle.step")
|
||||||
|
|
||||||
|
trash_belt_hook = build_trash_belt_hook()
|
||||||
|
assert trash_belt_hook.part is not None
|
||||||
|
export_step(trash_belt_hook.part, "trash_belt_hook.step")
|
||||||
|
|||||||
Reference in New Issue
Block a user