23 lines
746 B
Python
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) |