FreeCAD_assembly3/__init__.py
2017-10-31 04:08:23 +08:00

32 lines
1.0 KiB
Python

import FreeCAD, FreeCADGui, Part
from asm3 import proxy,utils,gui,solver,constraint,system,assembly
from asm3.utils import logger
try:
from asm3 import sys_slvs
except ImportError as e:
logger.error('failed to import slvs: {}'.format(e))
try:
from asm3 import sys_sympy
except ImportError as e:
logger.error('failed to import sympy: {}'.format(e))
def test():
from asm3.assembly import Assembly
doc = FreeCAD.newDocument()
cylinder1 = doc.addObject('Part::Cylinder','cylinder1')
cylinder1.Visibility = False
asm1 = Assembly.make(doc)
asm1.Proxy.getPartGroup().setLink({-1:cylinder1})
cylinder2 = doc.addObject('Part::Cylinder','cylinder2')
cylinder2.Visibility = False
asm2 = Assembly.make(doc)
asm2.Placement.Base.z = -20
asm2.Proxy.getPartGroup().setLink({-1:cylinder2})
doc.recompute()
FreeCADGui.SendMsgToActiveView("ViewFit")
asm = Assembly.make(doc)
asm.Proxy.getPartGroup().setLink((asm1,asm2))
asm1.Visibility = False
asm2.Visibility = False