diff --git a/src/Mod/Fem/PyObjects/_FemConstraintSelfWeight.py b/src/Mod/Fem/PyObjects/_FemConstraintSelfWeight.py index e590dc8cd1..0006101c97 100644 --- a/src/Mod/Fem/PyObjects/_FemConstraintSelfWeight.py +++ b/src/Mod/Fem/PyObjects/_FemConstraintSelfWeight.py @@ -38,7 +38,7 @@ class _FemConstraintSelfWeight: obj.Gravity_y = 0.0 obj.Gravity_z = -1.0 obj.Proxy = self - self.Type = "FemConstraintSelfWeight" + self.Type = "Fem::ConstraintSelfWeight" def execute(self, obj): return diff --git a/src/Mod/Fem/PyObjects/_FemElementFluid1D.py b/src/Mod/Fem/PyObjects/_FemElementFluid1D.py index fd11e76dfd..aed662ef63 100644 --- a/src/Mod/Fem/PyObjects/_FemElementFluid1D.py +++ b/src/Mod/Fem/PyObjects/_FemElementFluid1D.py @@ -116,7 +116,7 @@ class _FemElementFluid1D: obj.InletFlowRateActive = False obj.OutletFlowRateActive = False obj.Proxy = self - self.Type = "FemElementFluid1D" + self.Type = "Fem::FemElementFluid1D" def execute(self, obj): return diff --git a/src/Mod/Fem/PyObjects/_FemElementGeometry1D.py b/src/Mod/Fem/PyObjects/_FemElementGeometry1D.py index 2f1d0aa170..afb1adf55d 100644 --- a/src/Mod/Fem/PyObjects/_FemElementGeometry1D.py +++ b/src/Mod/Fem/PyObjects/_FemElementGeometry1D.py @@ -44,7 +44,7 @@ class _FemElementGeometry1D: obj.SectionType = _FemElementGeometry1D.known_beam_types obj.SectionType = 'Rectangular' obj.Proxy = self - self.Type = "FemElementGeometry1D" + self.Type = "Fem::FemElementGeometry1D" def execute(self, obj): return diff --git a/src/Mod/Fem/PyObjects/_FemElementGeometry2D.py b/src/Mod/Fem/PyObjects/_FemElementGeometry2D.py index 1152c9eb40..ff6d525b63 100644 --- a/src/Mod/Fem/PyObjects/_FemElementGeometry2D.py +++ b/src/Mod/Fem/PyObjects/_FemElementGeometry2D.py @@ -34,7 +34,7 @@ class _FemElementGeometry2D: obj.addProperty("App::PropertyLength", "Thickness", "ShellThickness", "set thickness of the shell elements") obj.addProperty("App::PropertyLinkSubList", "References", "ShellThickness", "List of shell thickness shapes") obj.Proxy = self - self.Type = "FemElementGeometry2D" + self.Type = "Fem::FemElementGeometry2D" def execute(self, obj): return diff --git a/src/Mod/Fem/PyObjects/_FemMaterial.py b/src/Mod/Fem/PyObjects/_FemMaterial.py index 3e97f2a77c..9a3a952217 100644 --- a/src/Mod/Fem/PyObjects/_FemMaterial.py +++ b/src/Mod/Fem/PyObjects/_FemMaterial.py @@ -35,7 +35,7 @@ class _FemMaterial: obj.addProperty("App::PropertyEnumeration", "Category", "Material", "Material type: fluid or solid") obj.Category = ['Solid', 'Fluid'] # used in TaskPanel obj.Proxy = self - self.Type = "FemMaterial" + self.Type = "Fem::Material" def execute(self, obj): return diff --git a/src/Mod/Fem/PyObjects/_FemMaterialMechanicalNonlinear.py b/src/Mod/Fem/PyObjects/_FemMaterialMechanicalNonlinear.py index f818e36a2b..bc0c9881c5 100644 --- a/src/Mod/Fem/PyObjects/_FemMaterialMechanicalNonlinear.py +++ b/src/Mod/Fem/PyObjects/_FemMaterialMechanicalNonlinear.py @@ -32,7 +32,7 @@ class _FemMaterialMechanicalNonlinear: "The FemMaterialMechanicalNonlinear object" def __init__(self, obj): obj.Proxy = self - self.Type = "FemMaterialMechanicalNonlinear" + self.Type = "Fem::MaterialMechanicalNonlinear" obj.addProperty("App::PropertyLink", "LinearBaseMaterial", "Base", "Set the linear material the nonlinear builds upon.") diff --git a/src/Mod/Fem/PyObjects/_FemMeshBoundaryLayer.py b/src/Mod/Fem/PyObjects/_FemMeshBoundaryLayer.py index 17d759a33d..48fe799e6b 100644 --- a/src/Mod/Fem/PyObjects/_FemMeshBoundaryLayer.py +++ b/src/Mod/Fem/PyObjects/_FemMeshBoundaryLayer.py @@ -31,7 +31,7 @@ __url__ = "http://www.freecadweb.org" class _FemMeshBoundaryLayer: "The FemMeshBoundaryLayer object" def __init__(self, obj): - self.Type = "FemMeshBoundaryLayer" + self.Type = "Fem::FemMeshBoundaryLayer" self.Object = obj # keep a ref to the DocObj for nonGui usage obj.Proxy = self # link between App::DocumentObject to this object diff --git a/src/Mod/Fem/PyObjects/_FemMeshGmsh.py b/src/Mod/Fem/PyObjects/_FemMeshGmsh.py index d1ed847dd1..a20220add7 100644 --- a/src/Mod/Fem/PyObjects/_FemMeshGmsh.py +++ b/src/Mod/Fem/PyObjects/_FemMeshGmsh.py @@ -39,7 +39,7 @@ class _FemMeshGmsh(): known_mesh_algorithm_3D = ['Automatic', 'Delaunay', 'New Delaunay', 'Frontal', 'Frontal Delaunay', 'Frontal Hex', 'MMG3D', 'R-tree'] def __init__(self, obj): - self.Type = "FemMeshGmsh" + self.Type = "Fem::FemMeshGmsh" self.Object = obj # keep a ref to the DocObj for nonGui usage obj.Proxy = self # link between App::DocumentObject to this object diff --git a/src/Mod/Fem/PyObjects/_FemMeshGroup.py b/src/Mod/Fem/PyObjects/_FemMeshGroup.py index 84380dac6a..40afdf2b98 100644 --- a/src/Mod/Fem/PyObjects/_FemMeshGroup.py +++ b/src/Mod/Fem/PyObjects/_FemMeshGroup.py @@ -34,7 +34,7 @@ class _FemMeshGroup: obj.addProperty("App::PropertyBool", "UseLabel", "MeshGroupProperties", "The identifier used for export (True: Label, False: Name)") obj.addProperty("App::PropertyLinkSubList", "References", "MeshGroupShapes", "List of FEM mesh group shapes") obj.Proxy = self - self.Type = "FemMeshGroup" + self.Type = "Fem::FemMeshGroup" def execute(self, obj): return diff --git a/src/Mod/Fem/PyObjects/_FemMeshRegion.py b/src/Mod/Fem/PyObjects/_FemMeshRegion.py index 49f7e1dde1..b851302d31 100644 --- a/src/Mod/Fem/PyObjects/_FemMeshRegion.py +++ b/src/Mod/Fem/PyObjects/_FemMeshRegion.py @@ -34,7 +34,7 @@ class _FemMeshRegion: obj.addProperty("App::PropertyLength", "CharacteristicLength", "MeshRegionProperties", "set characteristic length of FEM elements for this region") obj.addProperty("App::PropertyLinkSubList", "References", "MeshRegionShapes", "List of FEM mesh region shapes") obj.Proxy = self - self.Type = "FemMeshRegion" + self.Type = "Fem::FemMeshRegion" def execute(self, obj): return diff --git a/src/Mod/Fem/PyObjects/_FemMeshResult.py b/src/Mod/Fem/PyObjects/_FemMeshResult.py index 1e2f94c991..1fd69cfc2c 100644 --- a/src/Mod/Fem/PyObjects/_FemMeshResult.py +++ b/src/Mod/Fem/PyObjects/_FemMeshResult.py @@ -33,7 +33,7 @@ class _FemMeshResult(): """ def __init__(self, obj): - self.Type = "FemMeshResult" + self.Type = "Fem::FemMeshResult" self.Object = obj # keep a ref to the DocObj for nonGui usage obj.Proxy = self # link between App::DocumentObject to this object diff --git a/src/Mod/Fem/PyObjects/_FemResultMechanical.py b/src/Mod/Fem/PyObjects/_FemResultMechanical.py index 45f7cf9e44..1571ef0a60 100644 --- a/src/Mod/Fem/PyObjects/_FemResultMechanical.py +++ b/src/Mod/Fem/PyObjects/_FemResultMechanical.py @@ -33,7 +33,7 @@ class _FemResultMechanical(): """The Fem::_FemResultMechanical's Proxy python type, add result specific properties """ def __init__(self, obj): - self.Type = "FemResultMechanical" + self.Type = "Fem::FemResultMechanical" self.Object = obj # keep a ref to the DocObj for nonGui usage obj.Proxy = self # link between App::DocumentObject to this object diff --git a/src/Mod/Fem/PyObjects/_FemSolverCalculix.py b/src/Mod/Fem/PyObjects/_FemSolverCalculix.py index fa37ccdf75..e936656ab9 100644 --- a/src/Mod/Fem/PyObjects/_FemSolverCalculix.py +++ b/src/Mod/Fem/PyObjects/_FemSolverCalculix.py @@ -35,7 +35,7 @@ class _FemSolverCalculix(): """The Fem::FemSolver's Proxy python type, add solver specific properties """ def __init__(self, obj): - self.Type = "FemSolverCalculix" + self.Type = "Fem::FemSolverCalculix" self.Object = obj # keep a ref to the DocObj for nonGui usage obj.Proxy = self # link between App::DocumentObject to this object diff --git a/src/Mod/Fem/femcommands/commands.py b/src/Mod/Fem/femcommands/commands.py index 819e59b044..31a21e25be 100644 --- a/src/Mod/Fem/femcommands/commands.py +++ b/src/Mod/Fem/femcommands/commands.py @@ -559,7 +559,7 @@ class _CommandFemSolverCalculix(CommandManager): if use_old_solver_frame_work and not use_new_solver_frame_work: has_nonlinear_material_obj = False for m in self.active_analysis.Group: - if hasattr(m, "Proxy") and m.Proxy.Type == "FemMaterialMechanicalNonlinear": + if hasattr(m, "Proxy") and m.Proxy.Type == "Fem::MaterialMechanicalNonlinear": has_nonlinear_material_obj = True FreeCAD.ActiveDocument.openTransaction("Create SolverCalculix") FreeCADGui.addModule("ObjectsFem") diff --git a/src/Mod/Fem/femcommands/manager.py b/src/Mod/Fem/femcommands/manager.py index be1bf26c16..97f4f2ba42 100644 --- a/src/Mod/Fem/femcommands/manager.py +++ b/src/Mod/Fem/femcommands/manager.py @@ -116,7 +116,7 @@ class CommandManager(object): def gmsh_femmesh_selected(self): sel = FreeCADGui.Selection.getSelection() - if len(sel) == 1 and hasattr(sel[0], "Proxy") and sel[0].Proxy.Type == "FemMeshGmsh": + if len(sel) == 1 and hasattr(sel[0], "Proxy") and sel[0].Proxy.Type == "Fem::FemMeshGmsh": self.selobj = sel[0] return True else: @@ -140,7 +140,7 @@ class CommandManager(object): def has_no_nonlinear_material(self): "check if an nonlinear material exists which is already based on the selected material" for o in FreeCAD.ActiveDocument.Objects: - if hasattr(o, "Proxy") and o.Proxy is not None and o.Proxy.Type == "FemMaterialMechanicalNonlinear" and o.LinearBaseMaterial == self.selobj: + if hasattr(o, "Proxy") and o.Proxy is not None and o.Proxy.Type == "Fem::MaterialMechanicalNonlinear" and o.LinearBaseMaterial == self.selobj: # FreeCAD.Console.PrintError(o.Name + ' is based on the selected material: ' + self.selobj + '. Only one nonlinear object for each material allowed.\n') return False return True diff --git a/src/Mod/Fem/femmesh/meshtools.py b/src/Mod/Fem/femmesh/meshtools.py index a98420d246..a67d298379 100644 --- a/src/Mod/Fem/femmesh/meshtools.py +++ b/src/Mod/Fem/femmesh/meshtools.py @@ -400,13 +400,13 @@ def get_femelement_sets_from_group_data(femmesh, fem_objects): def get_elset_short_name(obj, i): - if hasattr(obj, "Proxy") and obj.Proxy.Type == 'FemMaterial': + if hasattr(obj, "Proxy") and obj.Proxy.Type == 'Fem::Material': return 'Mat' + str(i) - elif hasattr(obj, "Proxy") and obj.Proxy.Type == 'FemElementGeometry1D': + elif hasattr(obj, "Proxy") and obj.Proxy.Type == 'Fem::FemElementGeometry1D': return 'Beam' + str(i) - elif hasattr(obj, "Proxy") and obj.Proxy.Type == 'FemElementFluid1D': + elif hasattr(obj, "Proxy") and obj.Proxy.Type == 'Fem::FemElementFluid1D': return 'Fluid' + str(i) - elif hasattr(obj, "Proxy") and obj.Proxy.Type == 'FemElementGeometry2D': + elif hasattr(obj, "Proxy") and obj.Proxy.Type == 'Fem::FemElementGeometry2D': return 'Shell' + str(i) else: print('Error: ', obj.Name, ' --> ', obj.Proxy.Type) diff --git a/src/Mod/Fem/femresult/resulttools.py b/src/Mod/Fem/femresult/resulttools.py index 29a0005d8c..3ece17fc3d 100644 --- a/src/Mod/Fem/femresult/resulttools.py +++ b/src/Mod/Fem/femresult/resulttools.py @@ -35,7 +35,7 @@ import FreeCAD def purge_results(analysis): for m in analysis.Group: if (m.isDerivedFrom('Fem::FemResultObject')): - if m.Mesh and hasattr(m.Mesh, "Proxy") and m.Mesh.Proxy.Type == "FemMeshResult": + if m.Mesh and hasattr(m.Mesh, "Proxy") and m.Mesh.Proxy.Type == "Fem::FemMeshResult": analysis.Document.removeObject(m.Mesh.Name) analysis.Document.removeObject(m.Name) FreeCAD.ActiveDocument.recompute() diff --git a/src/Mod/Fem/femsolver/calculix/tasks.py b/src/Mod/Fem/femsolver/calculix/tasks.py index ec814cac53..4cfcc3f15a 100644 --- a/src/Mod/Fem/femsolver/calculix/tasks.py +++ b/src/Mod/Fem/femsolver/calculix/tasks.py @@ -184,7 +184,7 @@ class _Container(object): material_linear_dict = {} material_linear_dict['Object'] = m self.materials_linear.append(material_linear_dict) - elif hasattr(m, "Proxy") and m.Proxy.Type == "FemMaterialMechanicalNonlinear": + elif hasattr(m, "Proxy") and m.Proxy.Type == "Fem::MaterialMechanicalNonlinear": material_nonlinear_dict = {} material_nonlinear_dict['Object'] = m self.materials_nonlinear.append(material_nonlinear_dict) @@ -192,7 +192,7 @@ class _Container(object): fixed_constraint_dict = {} fixed_constraint_dict['Object'] = m self.fixed_constraints.append(fixed_constraint_dict) - elif hasattr(m, "Proxy") and m.Proxy.Type == "FemConstraintSelfWeight": + elif hasattr(m, "Proxy") and m.Proxy.Type == "Fem::ConstraintSelfWeight": selfweight_dict = {} selfweight_dict['Object'] = m self.selfweight_constraints.append(selfweight_dict) @@ -234,15 +234,15 @@ class _Container(object): transform_constraint_dict = {} transform_constraint_dict['Object'] = m self.transform_constraints.append(transform_constraint_dict) - elif hasattr(m, "Proxy") and m.Proxy.Type == "FemElementGeometry1D": + elif hasattr(m, "Proxy") and m.Proxy.Type == "Fem::FemElementGeometry1D": beam_section_dict = {} beam_section_dict['Object'] = m self.beam_sections.append(beam_section_dict) - elif hasattr(m, "Proxy") and m.Proxy.Type == "FemElementFluid1D": + elif hasattr(m, "Proxy") and m.Proxy.Type == "Fem::FemElementFluid1D": fluid_section_dict = {} fluid_section_dict['Object'] = m self.fluid_sections.append(fluid_section_dict) - elif hasattr(m, "Proxy") and m.Proxy.Type == "FemElementGeometry2D": + elif hasattr(m, "Proxy") and m.Proxy.Type == "Fem::FemElementGeometry2D": shell_thickness_dict = {} shell_thickness_dict['Object'] = m self.shell_thicknesses.append(shell_thickness_dict) diff --git a/src/Mod/Fem/femsolver/z88/tasks.py b/src/Mod/Fem/femsolver/z88/tasks.py index aef787be87..d5ab8849cc 100644 --- a/src/Mod/Fem/femsolver/z88/tasks.py +++ b/src/Mod/Fem/femsolver/z88/tasks.py @@ -182,7 +182,7 @@ class _Container(object): material_linear_dict = {} material_linear_dict['Object'] = m self.materials_linear.append(material_linear_dict) - elif hasattr(m, "Proxy") and m.Proxy.Type == "FemMaterialMechanicalNonlinear": + elif hasattr(m, "Proxy") and m.Proxy.Type == "Fem::MaterialMechanicalNonlinear": material_nonlinear_dict = {} material_nonlinear_dict['Object'] = m self.materials_nonlinear.append(material_nonlinear_dict) @@ -190,7 +190,7 @@ class _Container(object): fixed_constraint_dict = {} fixed_constraint_dict['Object'] = m self.fixed_constraints.append(fixed_constraint_dict) - elif hasattr(m, "Proxy") and m.Proxy.Type == "FemConstraintSelfWeight": + elif hasattr(m, "Proxy") and m.Proxy.Type == "Fem::ConstraintSelfWeight": selfweight_dict = {} selfweight_dict['Object'] = m self.selfweight_constraints.append(selfweight_dict) @@ -232,15 +232,15 @@ class _Container(object): transform_constraint_dict = {} transform_constraint_dict['Object'] = m self.transform_constraints.append(transform_constraint_dict) - elif hasattr(m, "Proxy") and m.Proxy.Type == "FemElementGeometry1D": + elif hasattr(m, "Proxy") and m.Proxy.Type == "Fem::FemElementGeometry1D": beam_section_dict = {} beam_section_dict['Object'] = m self.beam_sections.append(beam_section_dict) - elif hasattr(m, "Proxy") and m.Proxy.Type == "FemElementFluid1D": + elif hasattr(m, "Proxy") and m.Proxy.Type == "Fem::FemElementFluid1D": fluid_section_dict = {} fluid_section_dict['Object'] = m self.fluid_sections.append(fluid_section_dict) - elif hasattr(m, "Proxy") and m.Proxy.Type == "FemElementGeometry2D": + elif hasattr(m, "Proxy") and m.Proxy.Type == "Fem::FemElementGeometry2D": shell_thickness_dict = {} shell_thickness_dict['Object'] = m self.shell_thicknesses.append(shell_thickness_dict) diff --git a/src/Mod/Fem/femtools/ccxtools.py b/src/Mod/Fem/femtools/ccxtools.py index cd33505317..b6c051003e 100644 --- a/src/Mod/Fem/femtools/ccxtools.py +++ b/src/Mod/Fem/femtools/ccxtools.py @@ -89,7 +89,7 @@ class FemToolsCcx(QtCore.QRunnable, QtCore.QObject): def purge_results(self): for m in self.analysis.Group: if (m.isDerivedFrom('Fem::FemResultObject')): - if m.Mesh and hasattr(m.Mesh, "Proxy") and m.Mesh.Proxy.Type == "FemMeshResult": + if m.Mesh and hasattr(m.Mesh, "Proxy") and m.Mesh.Proxy.Type == "Fem::FemMeshResult": self.analysis.Document.removeObject(m.Mesh.Name) self.analysis.Document.removeObject(m.Name) FreeCAD.ActiveDocument.recompute() @@ -224,7 +224,7 @@ class FemToolsCcx(QtCore.QRunnable, QtCore.QObject): material_linear_dict = {} material_linear_dict['Object'] = m self.materials_linear.append(material_linear_dict) - elif hasattr(m, "Proxy") and m.Proxy.Type == "FemMaterialMechanicalNonlinear": + elif hasattr(m, "Proxy") and m.Proxy.Type == "Fem::MaterialMechanicalNonlinear": material_nonlinear_dict = {} material_nonlinear_dict['Object'] = m self.materials_nonlinear.append(material_nonlinear_dict) @@ -232,7 +232,7 @@ class FemToolsCcx(QtCore.QRunnable, QtCore.QObject): fixed_constraint_dict = {} fixed_constraint_dict['Object'] = m self.fixed_constraints.append(fixed_constraint_dict) - elif hasattr(m, "Proxy") and m.Proxy.Type == "FemConstraintSelfWeight": + elif hasattr(m, "Proxy") and m.Proxy.Type == "Fem::ConstraintSelfWeight": selfweight_dict = {} selfweight_dict['Object'] = m self.selfweight_constraints.append(selfweight_dict) @@ -273,15 +273,15 @@ class FemToolsCcx(QtCore.QRunnable, QtCore.QObject): transform_constraint_dict = {} transform_constraint_dict['Object'] = m self.transform_constraints.append(transform_constraint_dict) - elif hasattr(m, "Proxy") and m.Proxy.Type == "FemElementGeometry1D": + elif hasattr(m, "Proxy") and m.Proxy.Type == "Fem::FemElementGeometry1D": beam_section_dict = {} beam_section_dict['Object'] = m self.beam_sections.append(beam_section_dict) - elif hasattr(m, "Proxy") and m.Proxy.Type == "FemElementFluid1D": + elif hasattr(m, "Proxy") and m.Proxy.Type == "Fem::FemElementFluid1D": fluid_section_dict = {} fluid_section_dict['Object'] = m self.fluid_sections.append(fluid_section_dict) - elif hasattr(m, "Proxy") and m.Proxy.Type == "FemElementGeometry2D": + elif hasattr(m, "Proxy") and m.Proxy.Type == "Fem::FemElementGeometry2D": shell_thickness_dict = {} shell_thickness_dict['Object'] = m self.shell_thicknesses.append(shell_thickness_dict)