From 8c85db3cfea0aaa524d08f586bcd14c37bdf20a8 Mon Sep 17 00:00:00 2001 From: Bernd Hahnebach Date: Sun, 31 Dec 2017 12:22:45 +0100 Subject: [PATCH] FEM: make objects module, less code duplication on imports --- src/Mod/Fem/ObjectsFem.py | 146 +++++++++++++++++++------------------- 1 file changed, 73 insertions(+), 73 deletions(-) diff --git a/src/Mod/Fem/ObjectsFem.py b/src/Mod/Fem/ObjectsFem.py index 08e92abd5e..2cfd78d46d 100644 --- a/src/Mod/Fem/ObjectsFem.py +++ b/src/Mod/Fem/ObjectsFem.py @@ -47,11 +47,11 @@ def makeConstraintBearing(doc, name="ConstraintBearing"): def makeConstraintBodyHeatSource(doc, name="ConstraintBodyHeatSource"): '''makeConstraintBodyHeatSource(document, [name]): makes a Fem ConstraintBodyHeatSource object''' obj = doc.addObject("Fem::ConstraintPython", name) - import PyObjects._FemConstraintBodyHeatSource - PyObjects._FemConstraintBodyHeatSource.Proxy(obj) + from PyObjects import _FemConstraintBodyHeatSource + _FemConstraintBodyHeatSource.Proxy(obj) if FreeCAD.GuiUp: - import PyGui._ViewProviderFemConstraintBodyHeatSource - PyGui._ViewProviderFemConstraintBodyHeatSource.ViewProxy(obj.ViewObject) + from PyGui import _ViewProviderFemConstraintBodyHeatSource + _ViewProviderFemConstraintBodyHeatSource.ViewProxy(obj.ViewObject) return obj @@ -70,11 +70,11 @@ def makeConstraintDisplacement(doc, name="ConstraintDisplacement"): def makeConstraintElectrostaticPotential(doc, name="ConstraintElectrostaticPotential"): '''makeConstraintElectrostaticPotential(document, [name]): makes a Fem ElectrostaticPotential object''' obj = doc.addObject("Fem::ConstraintPython", name) - import PyObjects._FemConstraintElectrostaticPotential - PyObjects._FemConstraintElectrostaticPotential.Proxy(obj) + from PyObjects import _FemConstraintElectrostaticPotential + _FemConstraintElectrostaticPotential.Proxy(obj) if FreeCAD.GuiUp: - import PyGui._ViewProviderFemConstraintElectrostaticPotential - PyGui._ViewProviderFemConstraintElectrostaticPotential.ViewProxy(obj.ViewObject) + from PyGui import _ViewProviderFemConstraintElectrostaticPotential + _ViewProviderFemConstraintElectrostaticPotential.ViewProxy(obj.ViewObject) return obj @@ -87,11 +87,11 @@ def makeConstraintFixed(doc, name="ConstraintFixed"): def makeConstraintFlowVelocity(doc, name="ConstraintFlowVelocity"): '''makeConstraintFlowVelocity(document, [name]): makes a Fem ConstraintFlowVelocity object''' obj = doc.addObject("Fem::ConstraintPython", name) - import PyObjects._FemConstraintFlowVelocity - PyObjects._FemConstraintFlowVelocity.Proxy(obj) + from PyObjects import _FemConstraintFlowVelocity + _FemConstraintFlowVelocity.Proxy(obj) if FreeCAD.GuiUp: - import PyGui._ViewProviderFemConstraintFlowVelocity - PyGui._ViewProviderFemConstraintFlowVelocity.ViewProxy(obj.ViewObject) + from PyGui import _ViewProviderFemConstraintFlowVelocity + _ViewProviderFemConstraintFlowVelocity.ViewProxy(obj.ViewObject) return obj @@ -122,11 +122,11 @@ def makeConstraintHeatflux(doc, name="ConstraintHeatflux"): def makeConstraintInitialFlowVelocity(doc, name="ConstraintInitialFlowVelocity"): '''makeConstraintInitialFlowVelocity(document, [name]): makes a Fem ConstraintInitialFlowVelocity object''' obj = doc.addObject("Fem::ConstraintPython", name) - import PyObjects._FemConstraintInitialFlowVelocity - PyObjects._FemConstraintInitialFlowVelocity.Proxy(obj) + from PyObjects import _FemConstraintInitialFlowVelocity + _FemConstraintInitialFlowVelocity.Proxy(obj) if FreeCAD.GuiUp: - import PyGui._ViewProviderFemConstraintInitialFlowVelocity - PyGui._ViewProviderFemConstraintInitialFlowVelocity.ViewProxy(obj.ViewObject) + from PyGui import _ViewProviderFemConstraintInitialFlowVelocity + _ViewProviderFemConstraintInitialFlowVelocity.ViewProxy(obj.ViewObject) return obj @@ -157,11 +157,11 @@ def makeConstraintPulley(doc, name="ConstraintPulley"): def makeConstraintSelfWeight(doc, name="ConstraintSelfWeight"): '''makeConstraintSelfWeight(document, [name]): creates an self weight object to define a gravity load''' obj = doc.addObject("Fem::ConstraintPython", name) - import PyObjects._FemConstraintSelfWeight - PyObjects._FemConstraintSelfWeight._FemConstraintSelfWeight(obj) + from PyObjects import _FemConstraintSelfWeight + _FemConstraintSelfWeight._FemConstraintSelfWeight(obj) if FreeCAD.GuiUp: - import PyGui._ViewProviderFemConstraintSelfWeight - PyGui._ViewProviderFemConstraintSelfWeight._ViewProviderFemConstraintSelfWeight(obj.ViewObject) + from PyGui import _ViewProviderFemConstraintSelfWeight + _ViewProviderFemConstraintSelfWeight._ViewProviderFemConstraintSelfWeight(obj.ViewObject) return obj @@ -181,20 +181,20 @@ def makeConstraintTransform(doc, name="ConstraintTransform"): def makeElementFluid1D(doc, name="ElementFluid1D"): '''makeElementFluid1D(document, [name]): creates an 1D fluid element object to define 1D flow''' obj = doc.addObject("Fem::FeaturePython", name) - import PyObjects._FemElementFluid1D - PyObjects._FemElementFluid1D._FemElementFluid1D(obj) + from PyObjects import _FemElementFluid1D + _FemElementFluid1D._FemElementFluid1D(obj) if FreeCAD.GuiUp: - import PyGui._ViewProviderFemElementFluid1D - PyGui._ViewProviderFemElementFluid1D._ViewProviderFemElementFluid1D(obj.ViewObject) + from PyGui import _ViewProviderFemElementFluid1D + _ViewProviderFemElementFluid1D._ViewProviderFemElementFluid1D(obj.ViewObject) return obj def makeElementGeometry1D(doc, sectiontype='Rectangular', width=10.0, height=25.0, name="ElementGeometry1D"): '''makeElementGeometry1D(document, [width], [height], [name]): creates an 1D geometry element object to define a cross section''' obj = doc.addObject("Fem::FeaturePython", name) - import PyObjects._FemElementGeometry1D - PyObjects._FemElementGeometry1D._FemElementGeometry1D(obj) - sec_types = PyObjects._FemElementGeometry1D._FemElementGeometry1D.known_beam_types + from PyObjects import _FemElementGeometry1D + _FemElementGeometry1D._FemElementGeometry1D(obj) + sec_types = _FemElementGeometry1D._FemElementGeometry1D.known_beam_types if sectiontype not in sec_types: FreeCAD.Console.PrintError("Section type is not known. Set to " + sec_types[0] + " \n") obj.SectionType = sec_types[0] @@ -206,20 +206,20 @@ def makeElementGeometry1D(doc, sectiontype='Rectangular', width=10.0, height=25. obj.PipeDiameter = height obj.PipeThickness = width if FreeCAD.GuiUp: - import PyGui._ViewProviderFemElementGeometry1D - PyGui._ViewProviderFemElementGeometry1D._ViewProviderFemElementGeometry1D(obj.ViewObject) + from PyGui import _ViewProviderFemElementGeometry1D + _ViewProviderFemElementGeometry1D._ViewProviderFemElementGeometry1D(obj.ViewObject) return obj def makeElementGeometry2D(doc, thickness=20.0, name="ElementGeometry2D"): '''makeElementGeometry2D(document, [thickness], [name]): creates an 2D geometry element object to define a plate thickness''' obj = doc.addObject("Fem::FeaturePython", name) - import PyObjects._FemElementGeometry2D - PyObjects._FemElementGeometry2D._FemElementGeometry2D(obj) + from PyObjects import _FemElementGeometry2D + _FemElementGeometry2D._FemElementGeometry2D(obj) obj.Thickness = thickness if FreeCAD.GuiUp: - import PyGui._ViewProviderFemElementGeometry2D - PyGui._ViewProviderFemElementGeometry2D._ViewProviderFemElementGeometry2D(obj.ViewObject) + from PyGui import _ViewProviderFemElementGeometry2D + _ViewProviderFemElementGeometry2D._ViewProviderFemElementGeometry2D(obj.ViewObject) return obj @@ -227,12 +227,12 @@ def makeElementGeometry2D(doc, thickness=20.0, name="ElementGeometry2D"): def makeMaterialFluid(doc, name="FluidMaterial"): '''makeMaterialFluid(document, [name]): makes a FEM Material for fluid''' obj = doc.addObject("App::MaterialObjectPython", name) - import PyObjects._FemMaterial - PyObjects._FemMaterial._FemMaterial(obj) + from PyObjects import _FemMaterial + _FemMaterial._FemMaterial(obj) obj.Category = 'Fluid' if FreeCAD.GuiUp: - import PyGui._ViewProviderFemMaterial - PyGui._ViewProviderFemMaterial._ViewProviderFemMaterial(obj.ViewObject) + from PyGui import _ViewProviderFemMaterial + _ViewProviderFemMaterial._ViewProviderFemMaterial(obj.ViewObject) # doc.recompute() return obj @@ -240,24 +240,24 @@ def makeMaterialFluid(doc, name="FluidMaterial"): def makeMaterialMechanicalNonlinear(doc, base_material, name="MechanicalMaterialNonlinear"): '''makeMaterialMechanicalNonlinear(document, base_material, [name]): creates a nonlinear material object''' obj = doc.addObject("Fem::FeaturePython", name) - import PyObjects._FemMaterialMechanicalNonlinear - PyObjects._FemMaterialMechanicalNonlinear._FemMaterialMechanicalNonlinear(obj) + from PyObjects import _FemMaterialMechanicalNonlinear + _FemMaterialMechanicalNonlinear._FemMaterialMechanicalNonlinear(obj) obj.LinearBaseMaterial = base_material if FreeCAD.GuiUp: - import PyGui._ViewProviderFemMaterialMechanicalNonlinear - PyGui._ViewProviderFemMaterialMechanicalNonlinear._ViewProviderFemMaterialMechanicalNonlinear(obj.ViewObject) + from PyGui import _ViewProviderFemMaterialMechanicalNonlinear + _ViewProviderFemMaterialMechanicalNonlinear._ViewProviderFemMaterialMechanicalNonlinear(obj.ViewObject) return obj def makeMaterialSolid(doc, name="MechanicalSolidMaterial"): '''makeMaterialSolid(document, [name]): makes a FEM Material for solid''' obj = doc.addObject("App::MaterialObjectPython", name) - import PyObjects._FemMaterial - PyObjects._FemMaterial._FemMaterial(obj) + from PyObjects import _FemMaterial + _FemMaterial._FemMaterial(obj) obj.Category = 'Solid' if FreeCAD.GuiUp: - import PyGui._ViewProviderFemMaterial - PyGui._ViewProviderFemMaterial._ViewProviderFemMaterial(obj.ViewObject) + from PyGui import _ViewProviderFemMaterial + _ViewProviderFemMaterial._ViewProviderFemMaterial(obj.ViewObject) # doc.recompute() return obj @@ -266,35 +266,35 @@ def makeMaterialSolid(doc, name="MechanicalSolidMaterial"): def makeMeshBoundaryLayer(doc, base_mesh, name="MeshBoundaryLayer"): '''makeMeshBoundaryLayer(document, base_mesh, [name]): creates a FEM mesh BoundaryLayer object to define boundary layer properties''' obj = doc.addObject("Fem::FeaturePython", name) - import PyObjects._FemMeshBoundaryLayer - PyObjects._FemMeshBoundaryLayer._FemMeshBoundaryLayer(obj) + from PyObjects import _FemMeshBoundaryLayer + _FemMeshBoundaryLayer._FemMeshBoundaryLayer(obj) # obj.BaseMesh = base_mesh # App::PropertyLinkList does not support append, we will use a temporary list to append the mesh BoundaryLayer obj. to the list tmplist = base_mesh.MeshBoundaryLayerList tmplist.append(obj) base_mesh.MeshBoundaryLayerList = tmplist if FreeCAD.GuiUp: - import PyGui._ViewProviderFemMeshBoundaryLayer - PyGui._ViewProviderFemMeshBoundaryLayer._ViewProviderFemMeshBoundaryLayer(obj.ViewObject) + from PyGui import _ViewProviderFemMeshBoundaryLayer + _ViewProviderFemMeshBoundaryLayer._ViewProviderFemMeshBoundaryLayer(obj.ViewObject) return obj def makeMeshGmsh(doc, name="FEMMeshGmsh"): '''makeMeshGmsh(document, [name]): makes a Gmsh FEM mesh object''' obj = doc.addObject("Fem::FemMeshObjectPython", name) - import PyObjects._FemMeshGmsh - PyObjects._FemMeshGmsh._FemMeshGmsh(obj) + from PyObjects import _FemMeshGmsh + _FemMeshGmsh._FemMeshGmsh(obj) if FreeCAD.GuiUp: - import PyGui._ViewProviderFemMeshGmsh - PyGui._ViewProviderFemMeshGmsh._ViewProviderFemMeshGmsh(obj.ViewObject) + from PyGui import _ViewProviderFemMeshGmsh + _ViewProviderFemMeshGmsh._ViewProviderFemMeshGmsh(obj.ViewObject) return obj def makeMeshGroup(doc, base_mesh, use_label=False, name="FEMMeshGroup"): '''makeMeshGroup(document, base_mesh, [use_label], [name]): creates a FEM mesh region object to define properties for a region of a FEM mesh''' obj = doc.addObject("Fem::FeaturePython", name) - import PyObjects._FemMeshGroup - PyObjects._FemMeshGroup._FemMeshGroup(obj) + from PyObjects import _FemMeshGroup + _FemMeshGroup._FemMeshGroup(obj) obj.UseLabel = use_label # obj.BaseMesh = base_mesh # App::PropertyLinkList does not support append, we will use a temporary list to append the mesh group obj. to the list @@ -302,8 +302,8 @@ def makeMeshGroup(doc, base_mesh, use_label=False, name="FEMMeshGroup"): tmplist.append(obj) base_mesh.MeshGroupList = tmplist if FreeCAD.GuiUp: - import PyGui._ViewProviderFemMeshGroup - PyGui._ViewProviderFemMeshGroup._ViewProviderFemMeshGroup(obj.ViewObject) + from PyGui import _ViewProviderFemMeshGroup + _ViewProviderFemMeshGroup._ViewProviderFemMeshGroup(obj.ViewObject) return obj @@ -316,8 +316,8 @@ def makeMeshNetgen(doc, name="FEMMeshNetgen"): def makeMeshRegion(doc, base_mesh, element_length=0.0, name="FEMMeshRegion"): '''makeMeshRegion(document, base_mesh, [element_length], [name]): creates a FEM mesh region object to define properties for a region of a FEM mesh''' obj = doc.addObject("Fem::FeaturePython", name) - import PyObjects._FemMeshRegion - PyObjects._FemMeshRegion._FemMeshRegion(obj) + from PyObjects import _FemMeshRegion + _FemMeshRegion._FemMeshRegion(obj) obj.CharacteristicLength = element_length # obj.BaseMesh = base_mesh # App::PropertyLinkList does not support append, we will use a temporary list to append the mesh region obj. to the list @@ -325,19 +325,19 @@ def makeMeshRegion(doc, base_mesh, element_length=0.0, name="FEMMeshRegion"): tmplist.append(obj) base_mesh.MeshRegionList = tmplist if FreeCAD.GuiUp: - import PyGui._ViewProviderFemMeshRegion - PyGui._ViewProviderFemMeshRegion._ViewProviderFemMeshRegion(obj.ViewObject) + from PyGui import _ViewProviderFemMeshRegion + _ViewProviderFemMeshRegion._ViewProviderFemMeshRegion(obj.ViewObject) return obj def makeMeshResult(doc, name="FEMMeshResult"): '''makeMeshResult(document, name): makes a Fem MeshResult object''' obj = doc.addObject("Fem::FemMeshObjectPython", name) - import PyObjects._FemMeshResult - PyObjects._FemMeshResult._FemMeshResult(obj) + from PyObjects import _FemMeshResult + _FemMeshResult._FemMeshResult(obj) if FreeCAD.GuiUp: - import PyGui._ViewProviderFemMeshResult - PyGui._ViewProviderFemMeshResult._ViewProviderFemMeshResult(obj.ViewObject) + from PyGui import _ViewProviderFemMeshResult + _ViewProviderFemMeshResult._ViewProviderFemMeshResult(obj.ViewObject) return obj @@ -345,11 +345,11 @@ def makeMeshResult(doc, name="FEMMeshResult"): def makeResultMechanical(doc, name="MechanicalResult"): '''makeResultMechanical(document, [name]): creates an mechanical result object to hold FEM results''' obj = doc.addObject('Fem::FemResultObjectPython', name) - import PyObjects._FemResultMechanical - PyObjects._FemResultMechanical._FemResultMechanical(obj) + from PyObjects import _FemResultMechanical + _FemResultMechanical._FemResultMechanical(obj) if FreeCAD.GuiUp: - import PyGui._ViewProviderFemResultMechanical - PyGui._ViewProviderFemResultMechanical._ViewProviderFemResultMechanical(obj.ViewObject) + from PyGui import _ViewProviderFemResultMechanical + _ViewProviderFemResultMechanical._ViewProviderFemResultMechanical(obj.ViewObject) return obj @@ -387,11 +387,11 @@ def makeEquationHeat(doc, base_solver): def makeSolverCalculixCcxTools(doc, name="CalculiXccxTools"): '''makeSolverCalculixCcxTools(document, [name]): makes a Calculix solver object for the ccx tools module''' obj = doc.addObject("Fem::FemSolverObjectPython", name) - import PyObjects._FemSolverCalculix - PyObjects._FemSolverCalculix._FemSolverCalculix(obj) + from PyObjects import _FemSolverCalculix + _FemSolverCalculix._FemSolverCalculix(obj) if FreeCAD.GuiUp: - import PyGui._ViewProviderFemSolverCalculix - PyGui._ViewProviderFemSolverCalculix._ViewProviderFemSolverCalculix(obj.ViewObject) + from PyGui import _ViewProviderFemSolverCalculix + _ViewProviderFemSolverCalculix._ViewProviderFemSolverCalculix(obj.ViewObject) return obj