diff --git a/src/Mod/Arch/importDAE.py b/src/Mod/Arch/importDAE.py index 92f9f52fa..123adadae 100644 --- a/src/Mod/Arch/importDAE.py +++ b/src/Mod/Arch/importDAE.py @@ -51,6 +51,17 @@ def open(filename): read(filename) return doc +def insert(filename,docname): + "called when freecad wants to import a file" + if not checkCollada(): return + try: + doc = FreeCAD.getDocument(docname) + except: + doc = FreeCAD.newDocument(docname) + FreeCAD.ActiveDocument = doc + read(filename) + return doc + def decode(name): "decodes encoded strings" try: diff --git a/src/Mod/Arch/importIFC.py b/src/Mod/Arch/importIFC.py index 87dd09796..f4a8f8392 100644 --- a/src/Mod/Arch/importIFC.py +++ b/src/Mod/Arch/importIFC.py @@ -54,6 +54,24 @@ def open(filename): read(filename) return doc +def insert(filename,docname): + "called when freecad wants to import a file" + try: + doc = FreeCAD.getDocument(docname) + except: + doc = FreeCAD.newDocument(docname) + FreeCAD.ActiveDocument = doc + global createIfcGroups, useIfcOpenShell, importIfcFurniture + createIfcGroups = useIfcOpenShell = importIfcFurniture = False + p = FreeCAD.ParamGet("User parameter:BaseApp/Preferences/Mod/Arch") + useIfcOpenShell = p.GetBool("useIfcOpenShell") + createIfcGroups = p.GetBool("createIfcGroups") + importIfcFurniture = p.GetBool("importIfcFurniture") + if not importIfcFurniture: + SKIP.append("IfcFurnishingElement") + read(filename) + return doc + def decode(name): "decodes encoded strings" try: