FEM: add modules to migrate old FEM app and gui objects

This commit is contained in:
Bernd Hahnebach
2020-05-16 07:39:06 +02:00
parent bb0d9435f1
commit ac8ffcb9f4
5 changed files with 649 additions and 0 deletions

View File

@@ -229,6 +229,8 @@ SET(FemTools_SRCS
femtools/femutils.py
femtools/geomtools.py
femtools/membertools.py
femtools/migrate_app.py
femtools/migrate_gui.py
femtools/tokrules.py
)

View File

@@ -40,8 +40,16 @@ __author__ = "Juergen Riegel, Bernd Hahnebach"
__url__ = "http://www.freecadweb.org"
# imports to get flake8 quired
import sys
import FreeCAD
# needed imports
from femtools.migrate_app import FemMigrateApp
# migrate old FEM App objects
sys.meta_path.append(FemMigrateApp())
# add FEM unit tests
FreeCAD.__unit_test__ += ["TestFem"]

View File

@@ -38,10 +38,18 @@ __author__ = "Juergen Riegel, Bernd Hahnebach"
__url__ = "http://www.freecadweb.org"
# imports to get flake8 quired
import sys
import FreeCAD
import FreeCADGui
from FreeCADGui import Workbench
# needed imports
from femtools.migrate_gui import FemMigrateGui
# migrate old FEM Gui objects
sys.meta_path.append(FemMigrateGui())
class FemWorkbench(Workbench):
"Fem workbench object"

View File

@@ -0,0 +1,316 @@
# ***************************************************************************
# * Copyright (c) 2020 Bernd Hahnebach <bernd@bimstatik.org> *
# * *
# * This file is part of the FreeCAD CAx development system. *
# * *
# * This program is free software; you can redistribute it and/or modify *
# * it under the terms of the GNU Lesser General Public License (LGPL) *
# * as published by the Free Software Foundation; either version 2 of *
# * the License, or (at your option) any later version. *
# * for detail see the LICENCE text file. *
# * *
# * This program is distributed in the hope that it will be useful, *
# * but WITHOUT ANY WARRANTY; without even the implied warranty of *
# * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
# * GNU Library General Public License for more details. *
# * *
# * You should have received a copy of the GNU Library General Public *
# * License along with this program; if not, write to the Free Software *
# * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 *
# * USA *
# * *
# ***************************************************************************
""" Class and methods to migrate old FEM App objects
TODO more information
"""
__title__ = "migrate app"
__author__ = "Bernd Hahnebach"
__url__ = "http://www.freecadweb.org"
class FemMigrateApp(object):
def find_module(self, fullname, path):
if fullname == "PyObjects":
return self
if fullname == "PyObjects._FemConstraintBodyHeatSource":
return self
if fullname == "PyObjects._FemConstraintElectrostaticPotential":
return self
if fullname == "PyObjects._FemConstraintFlowVelocity":
return self
if fullname == "PyObjects._FemConstraintInitialFlowVelocity":
return self
if fullname == "PyObjects._FemConstraintSelfWeight":
return self
if fullname == "PyObjects._FemElementFluid1D":
return self
if fullname == "PyObjects._FemElementGeometry1D":
return self
if fullname == "PyObjects._FemElementGeometry2D":
return self
if fullname == "PyObjects._FemElementRotation1D":
return self
if fullname == "PyObjects._FemMaterial":
return self
if fullname == "PyObjects._FemMaterialMechanicalNonlinear":
return self
if fullname == "PyObjects._FemMeshBoundaryLayer":
return self
if fullname == "PyObjects._FemMeshGmsh":
return self
if fullname == "PyObjects._FemMeshGroup":
return self
if fullname == "PyObjects._FemMeshRegion":
return self
if fullname == "PyObjects._FemMeshResult":
return self
if fullname == "PyObjects._FemResultMechanical":
return self
if fullname == "PyObjects._FemSolverCalculix":
return self
if fullname == "PyObjects._FemBeamSection":
return self
if fullname == "PyObjects._FemFluidSection":
return self
if fullname == "PyObjects._FemShellThickness":
return self
if fullname == "_FemBeamSection":
return self
if fullname == "_FemConstraintSelfWeight":
return self
if fullname == "_FemMaterial":
return self
if fullname == "_FemMaterialMechanicalNonlinear":
return self
if fullname == "_FemMeshGmsh":
return self
if fullname == "_FemMeshGroup":
return self
if fullname == "_FemMeshRegion":
return self
if fullname == "_FemResultMechanical":
return self
if fullname == "_FemShellThickness":
return self
if fullname == "_FemSolverCalculix":
return self
if fullname == "_FemSolverZ88":
return self
if fullname == "_FemMechanicalResult":
return self
if fullname == "FemResult":
return self
if fullname == "_MechanicalMaterial":
return self
if fullname == "FemBeamSection":
return self
if fullname == "FemShellThickness":
return self
if fullname == "MechanicalMaterial":
return self
return None
def create_module(self, spec):
return None
def exec_module(self, module):
return self.load_module(module)
def load_module(self, module):
if module.__name__ == "PyObjects":
module.__path__ = "PyObjects"
if module.__name__ == "PyObjects._FemConstraintBodyHeatSource":
import femobjects._FemConstraintBodyHeatSource
module._FemConstraintBodyHeatSource = femobjects._FemConstraintBodyHeatSource.Proxy
if module.__name__ == "PyObjects._FemConstraintElectrostaticPotential":
import femobjects._FemConstraintElectrostaticPotential
module._FemConstraintElectrostaticPotential = femobjects._FemConstraintElectrostaticPotential.Proxy
if module.__name__ == "PyObjects._FemConstraintFlowVelocity":
import femobjects._FemConstraintFlowVelocity
module._FemConstraintFlowVelocity = femobjects._FemConstraintFlowVelocity.Proxy
if module.__name__ == "PyObjects._FemConstraintInitialFlowVelocity":
import femobjects._FemConstraintInitialFlowVelocity
module._FemConstraintInitialFlowVelocity = femobjects._FemConstraintInitialFlowVelocity.Proxy
if module.__name__ == "PyObjects._FemConstraintSelfWeight":
import femobjects._FemConstraintSelfWeight
module._FemConstraintSelfWeight = femobjects._FemConstraintSelfWeight._FemConstraintSelfWeight
if module.__name__ == "PyObjects._FemElementFluid1D":
import femobjects._FemElementFluid1D
module._FemElementFluid1D = femobjects._FemElementFluid1D._FemElementFluid1D
if module.__name__ == "PyObjects._FemElementGeometry1D":
import femobjects._FemElementGeometry1D
module._FemElementGeometry1D = femobjects._FemElementGeometry1D._FemElementGeometry1D
if module.__name__ == "PyObjects._FemElementGeometry2D":
import femobjects._FemElementGeometry2D
module._FemElementGeometry2D = femobjects._FemElementGeometry2D._FemElementGeometry2D
if module.__name__ == "PyObjects._FemElementRotation1D":
import femobjects._FemElementRotation1D
module._FemElementRotation1D = femobjects._FemElementRotation1D._FemElementRotation1D
if module.__name__ == "PyObjects._FemMaterial":
import femobjects._FemMaterial
module._FemMaterial = femobjects._FemMaterial._FemMaterial
if module.__name__ == "PyObjects._FemMaterialMechanicalNonlinear":
import femobjects._FemMaterialMechanicalNonlinear
module._FemMaterialMechanicalNonlinear = femobjects._FemMaterialMechanicalNonlinear._FemMaterialMechanicalNonlinear
if module.__name__ == "PyObjects._FemMeshBoundaryLayer":
import femobjects._FemMeshBoundaryLayer
module._FemMeshBoundaryLayer = femobjects._FemMeshBoundaryLayer._FemMeshBoundaryLayer
if module.__name__ == "PyObjects._FemMeshGmsh":
import femobjects._FemMeshGmsh
module._FemMeshGmsh = femobjects._FemMeshGmsh._FemMeshGmsh
if module.__name__ == "PyObjects._FemMeshGroup":
import femobjects._FemMeshGroup
module._FemMeshGroup = femobjects._FemMeshGroup._FemMeshGroup
if module.__name__ == "PyObjects._FemMeshRegion":
import femobjects._FemMeshRegion
module._FemMeshRegion = femobjects._FemMeshRegion._FemMeshRegion
if module.__name__ == "PyObjects._FemMeshResult":
import femobjects._FemMeshResult
module._FemMeshResult = femobjects._FemMeshResult._FemMeshResult
if module.__name__ == "PyObjects._FemResultMechanical":
import femobjects._FemResultMechanical
module._FemResultMechanical = femobjects._FemResultMechanical._FemResultMechanical
if module.__name__ == "PyObjects._FemSolverCalculix":
import femobjects._FemSolverCalculix
module._FemSolverCalculix = femobjects._FemSolverCalculix._FemSolverCalculix
if module.__name__ == "PyObjects._FemBeamSection":
import femobjects._FemElementGeometry1D
module._FemBeamSection = femobjects._FemElementGeometry1D._FemElementGeometry1D
if module.__name__ == "PyObjects._FemFluidSection":
import femobjects._FemElementFluid1D
module._FemFluidSection = femobjects._FemElementFluid1D._FemElementFluid1D
if module.__name__ == "PyObjects._FemShellThickness":
import femobjects._FemElementGeometry2D
module._FemShellThickness = femobjects._FemElementGeometry2D._FemElementGeometry2D
if module.__name__ == "_FemBeamSection":
import femobjects._FemElementGeometry1D
module._FemBeamSection = femobjects._FemElementGeometry1D._FemElementGeometry1D
if module.__name__ == "_FemConstraintSelfWeight":
import femobjects._FemConstraintSelfWeight
module._FemConstraintSelfWeight = femobjects._FemConstraintSelfWeight._FemConstraintSelfWeight
if module.__name__ == "_FemMaterial":
import femobjects._FemMaterial
module._FemMaterial = femobjects._FemMaterial._FemMaterial
if module.__name__ == "_FemMaterialMechanicalNonlinear":
import femobjects._FemMaterialMechanicalNonlinear
module._FemMaterialMechanicalNonlinear = femobjects._FemMaterialMechanicalNonlinear._FemMaterialMechanicalNonlinear
if module.__name__ == "_FemMeshGmsh":
import femobjects._FemMeshGmsh
module._FemMeshGmsh = femobjects._FemMeshGmsh._FemMeshGmsh
if module.__name__ == "_FemMeshGroup":
import femobjects._FemMeshGroup
module._FemMeshGroup = femobjects._FemMeshGroup._FemMeshGroup
if module.__name__ == "_FemMeshRegion":
import femobjects._FemMeshRegion
module._FemMeshRegion = femobjects._FemMeshRegion._FemMeshRegion
if module.__name__ == "_FemResultMechanical":
import femobjects._FemResultMechanical
module._FemResultMechanical = femobjects._FemResultMechanical._FemResultMechanical
if module.__name__ == "_FemShellThickness":
import femobjects._FemElementGeometry2D
module._FemShellThickness = femobjects._FemElementGeometry2D._FemElementGeometry2D
if module.__name__ == "_FemSolverCalculix":
import femobjects._FemSolverCalculix
module._FemSolverCalculix = femobjects._FemSolverCalculix._FemSolverCalculix
if module.__name__ == "_FemSolverZ88":
import femsolver.z88.solver
module._FemSolverZ88 = femsolver.z88.solver.Proxy
if module.__name__ == "_FemMechanicalResult":
import femobjects._FemResultMechanical
module._FemMechanicalResult = femobjects._FemResultMechanical._FemResultMechanical
if module.__name__ == "FemResult":
import femobjects._FemResultMechanical
module.FemResult = femobjects._FemResultMechanical._FemResultMechanical
if module.__name__ == "_MechanicalMaterial":
import femobjects._FemMaterial
module._MechanicalMaterial = femobjects._FemMaterial._FemMaterial
if module.__name__ == "FemBeamSection":
import femobjects._FemElementGeometry1D
module._FemBeamSection = femobjects._FemElementGeometry1D._FemElementGeometry1D
if module.__name__ == "FemShellThickness":
import femobjects._FemElementGeometry2D
module._FemShellThickness = femobjects._FemElementGeometry2D._FemElementGeometry2D
if module.__name__ == "MechanicalMaterial":
import femobjects._FemMaterial
module._MechanicalMaterial = femobjects._FemMaterial._FemMaterial
return None
"""
possible entries in the old files:
(the class name in the old file does not matter, we ever only had one class per module)
third big moving
from PyObjects to femobjects, following the parent commit
https://github.com/berndhahnebach/FreeCAD_bhb/tree/07ae0e56c4/src/Mod/Fem/PyObjects
module="PyObjects._FemConstraintBodyHeatSource"
module="PyObjects._FemConstraintElectrostaticPotential"
module="PyObjects._FemConstraintFlowVelocity"
module="PyObjects._FemConstraintInitialFlowVelocity"
module="PyObjects._FemConstraintSelfWeight"
module="PyObjects._FemElementFluid1D"
module="PyObjects._FemElementGeometry1D"
module="PyObjects._FemElementGeometry2D"
module="PyObjects._FemElementRotation1D"
module="PyObjects._FemMaterial"
module="PyObjects._FemMaterialMechanicalNonlinear"
module="PyObjects._FemMeshBoundaryLayer"
module="PyObjects._FemMeshGmsh"
module="PyObjects._FemMeshGroup"
module="PyObjects._FemMeshRegion"
module="PyObjects._FemMeshResult"
module="PyObjects._FemResultMechanical"
module="PyObjects._FemSolverCalculix"
renamed between the second and third big moveings
module="PyObjects._FemBeamSection"
module="PyObjects._FemFluidSection"
module="PyObjects._FemShellThickness"
second big moveing
into PyObjects, following the parent commit
https://github.com/berndhahnebach/FreeCAD_bhb/tree/7f884e8bff/src/Mod/Fem
module="_FemBeamSection"
module="_FemConstraintSelfWeight"
module="_FemMaterial"
module="_FemMaterialMechanicalNonlinear."
module="_FemMeshGmsh"
module="_FemMeshGroup"
module="_FemMeshRegion"
module="_FemResultMechanical"
module="_FemShellThickness"
module="_FemSolverCalculix"
module="_FemSolverZ88"
renamed between the first and second big moveings
module="_FemMechanicalResult"
module="FemResult"
module="_MechanicalMaterial"
first big moving
split modules from one module into make, obj class, vp class, command
new obj class module names had a _
following the parent commit of the first split commit
https://github.com/berndhahnebach/FreeCAD_bhb/tree/c3328d6b4e/src/Mod/Fem
in this modules there where object class and viewprovider class together
module="FemBeamSection"
module="FemShellThickness"
module="MechanicalAnalysis" # TODO
module="MechanicalMaterial"
"""

View File

@@ -0,0 +1,315 @@
# ***************************************************************************
# * Copyright (c) 2020 Bernd Hahnebach <bernd@bimstatik.org> *
# * *
# * This file is part of the FreeCAD CAx development system. *
# * *
# * This program is free software; you can redistribute it and/or modify *
# * it under the terms of the GNU Lesser General Public License (LGPL) *
# * as published by the Free Software Foundation; either version 2 of *
# * the License, or (at your option) any later version. *
# * for detail see the LICENCE text file. *
# * *
# * This program is distributed in the hope that it will be useful, *
# * but WITHOUT ANY WARRANTY; without even the implied warranty of *
# * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
# * GNU Library General Public License for more details. *
# * *
# * You should have received a copy of the GNU Library General Public *
# * License along with this program; if not, write to the Free Software *
# * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 *
# * USA *
# * *
# ***************************************************************************
""" Class and methods to migrate old FEM Gui objects
TODO more information
"""
__title__ = "migrate gui"
__author__ = "Bernd Hahnebach"
__url__ = "http://www.freecadweb.org"
class FemMigrateGui(object):
def find_module(self, fullname, path):
if fullname == "PyGui":
return self
if fullname == "PyGui._ViewProviderFemConstraintBodyHeatSource":
return self
if fullname == "PyGui._ViewProviderFemConstraintElectrostaticPotential":
return self
if fullname == "PyGui._ViewProviderFemConstraintFlowVelocity":
return self
if fullname == "PyGui._ViewProviderFemConstraintSelfWeight":
return self
if fullname == "PyGui._ViewProviderFemElementFluid1D":
return self
if fullname == "PyGui._ViewProviderFemElementGeometry1D":
return self
if fullname == "PyGui._ViewProviderFemElementGeometry2D":
return self
if fullname == "PyGui._ViewProviderFemElementRotation1D":
return self
if fullname == "PyGui._ViewProviderFemMaterial":
return self
if fullname == "PyGui._ViewProviderFemMaterialMechanicalNonlinear":
return self
if fullname == "PyGui._ViewProviderFemMeshBoundaryLayer":
return self
if fullname == "PyGui._ViewProviderFemMeshGmsh":
return self
if fullname == "PyGui._ViewProviderFemMeshGroup":
return self
if fullname == "PyGui._ViewProviderFemMeshRegion":
return self
if fullname == "PyGui._ViewProviderFemMeshResult":
return self
if fullname == "PyGui._ViewProviderFemResultMechanical":
return self
if fullname == "PyGui._ViewProviderFemSolverCalculix":
return self
if fullname == "PyGui._ViewProviderFemBeamSection":
return self
if fullname == "PyGui._ViewProviderFemFluidSection":
return self
if fullname == "PyGui._ViewProviderFemShellThickness":
return self
if fullname == "_ViewProviderFemBeamSection":
return self
if fullname == "_FemConstraintSelfWeight":
return self
if fullname == "_ViewProviderFemMaterial":
return self
if fullname == "_ViewProviderFemMaterialMechanicalNonlinear":
return self
if fullname == "_ViewProviderFemMeshGmsh":
return self
if fullname == "_ViewProviderFemMeshGroup":
return self
if fullname == "_ViewProviderFemMeshRegion":
return self
if fullname == "_ViewProviderFemResultMechanical":
return self
if fullname == "_ViewProviderFemShellThickness":
return self
if fullname == "_ViewProviderFemSolverCalculix":
return self
if fullname == "_ViewProviderFemSolverZ88":
return self
if fullname == "_ViewProviderFemMechanicalResult":
return self
if fullname == "ViewProviderFemResult":
return self
if fullname == "_ViewProviderMechanicalMaterial":
return self
if fullname == "FemBeamSection":
return self
if fullname == "FemShellThickness":
return self
if fullname == "MechanicalMaterial":
return self
return None
def create_module(self, spec):
return None
def exec_module(self, module):
return self.load_module(module)
def load_module(self, module):
if module.__name__ == "PyGui":
module.__path__ = "PyGui"
if module.__name__ == "PyGui._ViewProviderFemConstraintBodyHeatSource":
import femguiobjects._ViewProviderFemConstraintBodyHeatSource
module._ViewProviderFemConstraintBodyHeatSource = femguiobjects._ViewProviderFemConstraintBodyHeatSource.ViewProxy
if module.__name__ == "PyGui._ViewProviderFemConstraintElectrostaticPotential":
import femguiobjects._ViewProviderFemConstraintElectrostaticPotential
module._ViewProviderFemConstraintElectrostaticPotential = femguiobjects._ViewProviderFemConstraintElectrostaticPotential.ViewProxy
if module.__name__ == "PyGui._ViewProviderFemConstraintFlowVelocity":
import femguiobjects._ViewProviderFemConstraintFlowVelocity
module._ViewProviderFemConstraintFlowVelocity = femguiobjects._ViewProviderFemConstraintFlowVelocity.ViewProxy
if module.__name__ == "PyGui._ViewProviderFemConstraintInitialFlowVelocity":
import femguiobjects._ViewProviderFemConstraintInitialFlowVelocity
module._ViewProviderFemConstraintInitialFlowVelocity = femguiobjects._ViewProviderFemConstraintInitialFlowVelocity.ViewProxy
if module.__name__ == "PyGui._ViewProviderFemConstraintSelfWeight":
import femguiobjects._ViewProviderFemConstraintSelfWeight
module._ViewProviderFemConstraintSelfWeight = femguiobjects._ViewProviderFemConstraintSelfWeight._ViewProviderFemConstraintSelfWeight
if module.__name__ == "PyGui._ViewProviderFemElementFluid1D":
import femguiobjects._ViewProviderFemElementFluid1D
module._ViewProviderFemElementFluid1D = femguiobjects._ViewProviderFemElementFluid1D._ViewProviderFemElementFluid1D
if module.__name__ == "PyGui._ViewProviderFemElementGeometry1D":
import femguiobjects._ViewProviderFemElementGeometry1D
module._ViewProviderFemElementGeometry1D = femguiobjects._ViewProviderFemElementGeometry1D._ViewProviderFemElementGeometry1D
if module.__name__ == "PyGui._ViewProviderFemElementGeometry2D":
import femguiobjects._ViewProviderFemElementGeometry2D
module._ViewProviderFemElementGeometry2D = femguiobjects._ViewProviderFemElementGeometry2D._ViewProviderFemElementGeometry2D
if module.__name__ == "PyGui._ViewProviderFemElementRotation1D":
import femguiobjects._ViewProviderFemElementRotation1D
module._ViewProviderFemElementRotation1D = femguiobjects._ViewProviderFemElementRotation1D._ViewProviderFemElementRotation1D
if module.__name__ == "PyGui._ViewProviderFemMaterial":
import femguiobjects._ViewProviderFemMaterial
module._ViewProviderFemMaterial = femguiobjects._ViewProviderFemMaterial._ViewProviderFemMaterial
if module.__name__ == "PyGui._ViewProviderFemMaterialMechanicalNonlinear":
import femguiobjects._ViewProviderFemMaterialMechanicalNonlinear
module._ViewProviderFemMaterialMechanicalNonlinear = femguiobjects._ViewProviderFemMaterialMechanicalNonlinear._ViewProviderFemMaterialMechanicalNonlinear
if module.__name__ == "PyGui._ViewProviderFemMeshBoundaryLayer":
import femguiobjects._ViewProviderFemMeshBoundaryLayer
module._ViewProviderFemMeshBoundaryLayer = femguiobjects._ViewProviderFemMeshBoundaryLayer._ViewProviderFemMeshBoundaryLayer
if module.__name__ == "PyGui._ViewProviderFemMeshGmsh":
import femguiobjects._ViewProviderFemMeshGmsh
module._ViewProviderFemMeshGmsh = femguiobjects._ViewProviderFemMeshGmsh._ViewProviderFemMeshGmsh
if module.__name__ == "PyGui._ViewProviderFemMeshGroup":
import femguiobjects._ViewProviderFemMeshGroup
module._ViewProviderFemMeshGroup = femguiobjects._ViewProviderFemMeshGroup._ViewProviderFemMeshGroup
if module.__name__ == "PyGui._ViewProviderFemMeshRegion":
import femguiobjects._ViewProviderFemMeshRegion
module._ViewProviderFemMeshRegion = femguiobjects._ViewProviderFemMeshRegion._ViewProviderFemMeshRegion
if module.__name__ == "PyGui._ViewProviderFemMeshResult":
import femguiobjects._ViewProviderFemMeshResult
module._ViewProviderFemMeshResult = femguiobjects._ViewProviderFemMeshResult._ViewProviderFemMeshResult
if module.__name__ == "PyGui._ViewProviderFemResultMechanical":
import femguiobjects._ViewProviderFemResultMechanical
module._ViewProviderFemResultMechanical = femguiobjects._ViewProviderFemResultMechanical._ViewProviderFemResultMechanical
if module.__name__ == "PyGui._ViewProviderFemSolverCalculix":
import femguiobjects._ViewProviderFemSolverCalculix
module._ViewProviderFemSolverCalculix = femguiobjects._ViewProviderFemSolverCalculix._ViewProviderFemSolverCalculix
if module.__name__ == "PyGui._ViewProviderFemBeamSection":
import femguiobjects._ViewProviderFemElementGeometry1D
module._ViewProviderFemBeamSection = femguiobjects._ViewProviderFemElementGeometry1D._ViewProviderFemElementGeometry1D
if module.__name__ == "PyGui._ViewProviderFemFluidSection":
import femguiobjects._ViewProviderFemElementFluid1D
module._ViewProviderFemFluidSection = femguiobjects._ViewProviderFemElementFluid1D._ViewProviderFemElementFluid1D
if module.__name__ == "PyGui._ViewProviderFemShellThickness":
import femguiobjects._ViewProviderFemElementGeometry2D
module._ViewProviderFemShellThickness = femguiobjects._ViewProviderFemElementGeometry2D._ViewProviderFemElementGeometry2D
if module.__name__ == "_ViewProviderFemBeamSection":
import femguiobjects._ViewProviderFemElementGeometry1D
module._ViewProviderFemBeamSection = femguiobjects._ViewProviderFemElementGeometry1D._ViewProviderFemElementGeometry1D
if module.__name__ == "_ViewProviderFemConstraintSelfWeight":
import femguiobjects._ViewProviderFemConstraintSelfWeight
module._ViewProviderFemConstraintSelfWeight = femguiobjects._ViewProviderFemConstraintSelfWeight._ViewProviderFemConstraintSelfWeight
if module.__name__ == "_ViewProviderFemMaterial":
import femguiobjects._ViewProviderFemMaterial
module._ViewProviderFemMaterial = femguiobjects._ViewProviderFemMaterial._ViewProviderFemMaterial
if module.__name__ == "_ViewProviderFemMaterialMechanicalNonlinear":
import femguiobjects._ViewProviderFemMaterialMechanicalNonlinear
module._ViewProviderFemMaterialMechanicalNonlinear = femguiobjects._ViewProviderFemMaterialMechanicalNonlinear._ViewProviderFemMaterialMechanicalNonlinear
if module.__name__ == "_ViewProviderFemMeshGmsh":
import femguiobjects._ViewProviderFemMeshGmsh
module._ViewProviderFemMeshGmsh = femguiobjects._ViewProviderFemMeshGmsh._ViewProviderFemMeshGmsh
if module.__name__ == "_ViewProviderFemMeshGroup":
import femguiobjects._ViewProviderFemMeshGroup
module._ViewProviderFemMeshGroup = femguiobjects._ViewProviderFemMeshGroup._ViewProviderFemMeshGroup
if module.__name__ == "_ViewProviderFemMeshRegion":
import femguiobjects._ViewProviderFemMeshRegion
module._ViewProviderFemMeshRegion = femguiobjects._ViewProviderFemMeshRegion._ViewProviderFemMeshRegion
if module.__name__ == "_ViewProviderFemResultMechanical":
import femguiobjects._ViewProviderFemResultMechanical
module._ViewProviderFemResultMechanical = femguiobjects._ViewProviderFemResultMechanical._ViewProviderFemResultMechanical
if module.__name__ == "_ViewProviderFemShellThickness":
import femguiobjects._ViewProviderFemElementGeometry2D
module._ViewProviderFemShellThickness = femguiobjects._ViewProviderFemElementGeometry2D._ViewProviderFemElementGeometry2D
if module.__name__ == "_ViewProviderFemSolverCalculix":
import femguiobjects._ViewProviderFemSolverCalculix
module._ViewProviderFemSolverCalculix = femguiobjects._ViewProviderFemSolverCalculix._ViewProviderFemSolverCalculix
if module.__name__ == "_ViewProviderFemSolverZ88":
import femsolver.z88.solver
module._ViewProviderFemSolverZ88 = femsolver.z88.solver.ViewProxy
if module.__name__ == "_ViewProviderFemMechanicalResult":
import femguiobjects._ViewProviderFemResultMechanical
module._ViewProviderFemMechanicalResult = femguiobjects._ViewProviderFemResultMechanical._ViewProviderFemResultMechanical
if module.__name__ == "ViewProviderFemResult":
import femguiobjects._ViewProviderFemResultMechanical
module.ViewProviderFemResult = femguiobjects._ViewProviderFemResultMechanical._ViewProviderFemResultMechanical
if module.__name__ == "_ViewProviderMechanicalMaterial":
import femguiobjects._ViewProviderFemMaterial
module._ViewProviderMechanicalMaterial = femguiobjects._ViewProviderFemMaterial._ViewProviderFemMaterial
if module.__name__ == "FemBeamSection":
import femguiobjects._ViewProviderFemElementGeometry1D
module._ViewProviderFemBeamSection = femguiobjects._ViewProviderFemElementGeometry1D._ViewProviderFemElementGeometry1D
if module.__name__ == "FemShellThickness":
import femguiobjects._ViewProviderFemElementGeometry2D
module._ViewProviderFemShellThickness = femguiobjects._ViewProviderFemElementGeometry2D._ViewProviderFemElementGeometry2D
if module.__name__ == "MechanicalMaterial":
import femguiobjects._ViewProviderFemMaterial
module._ViewProviderMechanicalMaterial = femguiobjects._ViewProviderFemMaterial._ViewProviderFemMaterial
return None
"""
possible entries in the old files:
(the class name in the old file does not matter, we ever only had one class per module)
third big moving
from PyGui to femguiobjects, following the parent commit
https://github.com/berndhahnebach/FreeCAD_bhb/tree/07ae0e56c4/src/Mod/Fem/PyGui
module="PyGui._ViewProviderFemConstraintBodyHeatSource"
module="PyGui._ViewProviderFemConstraintElectrostaticPotential"
module="PyGui._ViewProviderFemConstraintFlowVelocity"
module="PyGui._ViewProviderFemConstraintInitialFlowVelocity"
module="PyGui._ViewProviderFemConstraintSelfWeight"
module="PyGui._ViewProviderFemElementFluid1D"
module="PyGui._ViewProviderFemElementGeometry1D"
module="PyGui._ViewProviderFemElementGeometry2D"
module="PyGui._ViewProviderFemElementRotation1D"
module="PyGui._ViewProviderFemMaterial"
module="PyGui._ViewProviderFemMaterialMechanicalNonlinear"
module="PyGui._ViewProviderFemMeshBoundaryLayer"
module="PyGui._ViewProviderFemMeshGmsh"
module="PyGui._ViewProviderFemMeshGroup"
module="PyGui._ViewProviderFemMeshRegion"
module="PyGui._ViewProviderFemMeshResult"
module="PyGui._ViewProviderFemResultMechanical"
module="PyGui._ViewProviderFemSolverCalculix"
renamed between the second and third big moveings
module="PyGui._ViewProviderFemBeamSection"
module="PyGui._ViewProviderFemFluidSection"
module="PyGui._ViewProviderFemShellThickness"
second big moveing
into PyObjects, following the parent commit
https://github.com/berndhahnebach/FreeCAD_bhb/tree/7f884e8bff/src/Mod/Fem
module="_ViewProviderFemBeamSection"
module="_ViewProviderFemConstraintSelfWeight"
module="_ViewProviderFemMaterial"
module="_ViewProviderFemMaterialMechanicalNonlinear"
module="_ViewProviderFemMeshGmsh"
module="_ViewProviderFemMeshGroup"
module="_ViewProviderFemMeshRegion"
module="_ViewProviderFemResultMechanical"
module="_ViewProviderFemShellThickness"
module="_ViewProviderFemSolverCalculix"
module="_ViewProviderFemSolverZ88"
renamed between the first and second big moveings
module="_ViewProviderFemMechanicalResult"
module="ViewProviderFemResult"
module="_ViewProviderMechanicalMaterial"
first big moving
split modules from one module into make, obj class, vp class, command
new obj class module names had a _
following the parent commit of the first split commit
https://github.com/berndhahnebach/FreeCAD_bhb/tree/c3328d6b4e/src/Mod/Fem
in this modules there where object class and viewprovider class together
module="FemBeamSection"
module="FemShellThickness"
module="MechanicalAnalysis" # TODO
module="MechanicalMaterial"
"""