From da43b9ecc2d489670c55de87365c4ab13eaf5b2b Mon Sep 17 00:00:00 2001 From: Yorik van Havre Date: Fri, 27 Apr 2012 17:59:15 -0300 Subject: [PATCH] Added insert functions to Arch DAE and IFC importers --- src/Mod/Arch/importDAE.py | 11 +++++++++++ src/Mod/Arch/importIFC.py | 18 ++++++++++++++++++ 2 files changed, 29 insertions(+) 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: