Files
hvst/assembly.py
2021-02-12 22:34:01 +01:00

23 lines
746 B
Python

from cadquery import *
w = 10
d = 10
h = 10
part1 = Workplane().box(2*w,2*d,h)
part2 = Workplane().box(w,d,2*h)
part3 = Workplane().box(w,d,3*h)
assy = (
Assembly(part1, name='part1',loc=Location(Vector(-w,0,h/2)))
.add(part2, name='part2',color=Color(0,0,1,0.5))
.add(part3, name='part3',color=Color("red"))
.constrain('part1@faces@>Z','part3@faces@<Z','Axis')
.constrain('part1@faces@>Z','part2@faces@<Z','Axis')
.constrain('part1@faces@>Y','part3@faces@<Y','Axis')
.constrain('part1@faces@>Y','part2@faces@<Y','Axis')
.constrain('part1@vertices@>(-1,-1,1)','part3@vertices@>(-1,-1,-1)','Point')
.constrain('part1@vertices@>(1,-1,-1)','part2@vertices@>(-1,-1,-1)','Point')
.solve()
)
show_object(assy)