cadquery
cadquery copied to clipboard
How to constrain an object with an object added to a different assembly?
import cadquery as cq
# create an assembly
assmebly1 = cq.Assembly(name="assembly1")
# add box to assembly1
box = cq.Workplane().box(1, 1, 1)
assmebly1.add(box, name="box1", color=cq.Color("green"))
assmebly1.add(box, name="box2", color=cq.Color("yellow"))
assmebly1.constrain("box1@faces@<X", "box2@faces@<X", "Axis", param=0.0)
assmebly1.constrain("box1@faces@<Y", "box2@faces@<Y", "Axis", param=0.0)
assmebly1.constrain("box1@faces@<Z", "box2@faces@<Z", "PointInPlane", param=10.0)
assmebly1.solve()
assmebly2 = cq.Assembly(name="assembly2")
# add box to assembly2
assmebly2.add(box, name="box3", color=cq.Color("purple"))
# -----> how to constrain box3 in assembly2 with box1 from assembly1?
# I should not add box1 to assembly2
# assmebly2.solve()
https://github.com/user-attachments/assets/5d9a8685-ba41-4578-b74b-65e0d071fc67