From 40a4850f97df5bd6fc02a40623f28a3a4f84c470 Mon Sep 17 00:00:00 2001 From: Bernd Hahnebach Date: Thu, 26 Sep 2019 09:29:35 +0200 Subject: [PATCH] FEM: frd reader, fix analysis identifier --- src/Mod/Fem/feminout/importCcxFrdResults.py | 15 ++++++--------- src/Mod/Fem/femtest/app/test_ccxtools.py | 4 ++++ 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/src/Mod/Fem/feminout/importCcxFrdResults.py b/src/Mod/Fem/feminout/importCcxFrdResults.py index fc4a5cd4bf..b3cf822ed5 100644 --- a/src/Mod/Fem/feminout/importCcxFrdResults.py +++ b/src/Mod/Fem/feminout/importCcxFrdResults.py @@ -33,6 +33,7 @@ __url__ = "http://www.freecadweb.org" import FreeCAD from FreeCAD import Console import os +import Fem # ********* generic FreeCAD import and export methods ********* @@ -67,18 +68,14 @@ def insert( def importFrd( filename, analysis=None, - result_name_prefix=None + result_name_prefix="" ): from . import importToolsFem import ObjectsFem - if result_name_prefix is None: - result_name_prefix = "" + m = read_frd_result(filename) result_mesh_object = None if len(m["Nodes"]) > 0: - if analysis: - analysis_object = analysis - mesh = importToolsFem.make_femmesh(m) result_mesh_object = ObjectsFem.makeMeshResult( FreeCAD.ActiveDocument, @@ -120,7 +117,7 @@ def importFrd( res_obj.Mesh = result_mesh_object res_obj = importToolsFem.fill_femresult_mechanical(res_obj, result_set) if analysis: - analysis_object.addObject(res_obj) + analysis.addObject(res_obj) # complementary result object calculations import femresult.resulttools as restools @@ -178,12 +175,12 @@ def importFrd( ) Console.PrintMessage(error_message) if analysis: - analysis_object.addObject(result_mesh_object) + analysis.addObject(result_mesh_object) if FreeCAD.GuiUp: if analysis: import FemGui - FemGui.setActiveAnalysis(analysis_object) + FemGui.setActiveAnalysis(analysis) FreeCAD.ActiveDocument.recompute() else: diff --git a/src/Mod/Fem/femtest/app/test_ccxtools.py b/src/Mod/Fem/femtest/app/test_ccxtools.py index ffbddf0a6e..caa20875f2 100644 --- a/src/Mod/Fem/femtest/app/test_ccxtools.py +++ b/src/Mod/Fem/femtest/app/test_ccxtools.py @@ -79,6 +79,8 @@ class TestCcxTools(unittest.TestCase): analysis = self.active_doc.Analysis solver_object = self.active_doc.CalculiXccxTools + fcc_print("Analysis {}".format(type(analysis))) + fcc_print("Analysis {}".format(analysis.TypeId)) static_analysis_dir = testtools.get_unit_test_tmp_dir( self.temp_dir, @@ -86,6 +88,8 @@ class TestCcxTools(unittest.TestCase): ) fea = ccxtools.FemToolsCcx(analysis, solver_object, test_mode=True) fea.update_objects() + fcc_print("fea Analysis {}".format(type(fea.analysis))) + fcc_print("fea Analysis {}".format(fea.analysis.TypeId)) fcc_print("Setting up working directory {}".format(static_analysis_dir)) fea.setup_working_dir(static_analysis_dir)