build123d/examples/intersecting_pipes_algebra.py
2023-03-20 22:00:35 +01:00

18 lines
513 B
Python

from build123d import *
from build123d.part_operations import *
import alg123d as ad
pipes = Rot(10, 20, 30) * Box(10, 10, 10)
for plane in [Plane(f) for f in pipes.faces()]:
pipe = plane * Circle(4)
pipes -= extrude(pipe, amount=-5)
pipe = plane * Circle(4.5)
pipe -= plane * Circle(4)
last = pipes.edges()
pipes += extrude(pipe, amount=10)
pipes = ad.fillet(pipes, pipes.edges() - last, radius=0.2)
if "show_object" in locals():
show_object(pipes, name="intersecting pipes")