mirror of
https://github.com/gumyr/build123d.git
synced 2025-12-06 10:41:20 -08:00
28 lines
893 B
Python
28 lines
893 B
Python
from build123d import *
|
|
|
|
height, width, thickness, padding = 60, 80, 10, 12
|
|
screw_shaft_radius, screw_head_radius, screw_head_height = 1.5, 3, 3
|
|
bearing_axle_radius, bearing_radius, bearing_thickness = 4, 11, 7
|
|
|
|
# Build pillow block as an extruded sketch with counter bore holes
|
|
plan = Rectangle(width, height)
|
|
plan = fillet(*plan.vertices(), radius=5, target=plan)
|
|
pillow_block = extrude(plan, thickness)
|
|
|
|
plane = Plane(pillow_block.faces().sort_by().last)
|
|
|
|
pillow_block -= plane * CounterBoreHole(
|
|
bearing_axle_radius, bearing_radius, bearing_thickness, height
|
|
)
|
|
for loc in GridLocations(width - 2 * padding, height - 2 * padding, 2, 2):
|
|
pillow_block -= (
|
|
plane
|
|
* loc
|
|
* CounterBoreHole(
|
|
screw_shaft_radius, screw_head_radius, screw_head_height, height
|
|
)
|
|
)
|
|
|
|
# Render the part
|
|
if "show_object" in locals():
|
|
show_object(pillow_block)
|