FEM: package feminterface, move all import and export modules in new package feminterface

This commit is contained in:
Bernd Hahnebach
2017-12-06 23:46:37 +01:00
parent 65735ec96f
commit 55052cc9aa
22 changed files with 66 additions and 54 deletions

View File

@@ -69,19 +69,6 @@ SET(Mod_SRCS
SOURCE_GROUP("Module" FILES ${Mod_SRCS})
SET(FemScripts_SRCS
convert2TetGen.py
importCcxDatResults.py
importCcxFrdResults.py
readFenicsXML.py
writeFenicsXML.py
readFenicsXDMF.py
writeFenicsXDMF.py
importFenicsMesh.py
importInpMesh.py
importToolsFem.py
importVTKResults.py
importZ88Mesh.py
importZ88O2Results.py
Init.py
InitGui.py
FemGmshTools.py
@@ -118,6 +105,23 @@ SET(FemObjectsScripts_SRCS
PyObjects/_FemMaterial.py
)
SET(FemInterfaces_SRCS
feminterface/__init__.py
feminterface/convert2TetGen.py
feminterface/importCcxDatResults.py
feminterface/importCcxFrdResults.py
feminterface/importFenicsMesh.py
feminterface/importInpMesh.py
feminterface/importToolsFem.py
feminterface/importVTKResults.py
feminterface/importZ88Mesh.py
feminterface/importZ88O2Results.py
feminterface/readFenicsXDMF.py
feminterface/readFenicsXML.py
feminterface/writeFenicsXDMF.py
feminterface/writeFenicsXML.py
)
SET(FemSolver_SRCS
femsolver/__init__.py
femsolver/solverbase.py
@@ -384,6 +388,7 @@ fc_target_copy_resource(Fem
Init.py
${FemScripts_SRCS}
${FemObjectsScripts_SRCS}
${FemInterfaces_SRCS}
${FemGuiScripts_SRCS}
${FemTests_SRCS}
${FemTestsElmer_SRCS}

View File

@@ -17,19 +17,6 @@ endif(BUILD_GUI)
# changes on the file list here needs to be made in App/CMakeLists.txt as well
INSTALL(
FILES
convert2TetGen.py
importCcxDatResults.py
importCcxFrdResults.py
readFenicsXML.py
writeFenicsXML.py
readFenicsXDMF.py
writeFenicsXDMF.py
importFenicsMesh.py
importInpMesh.py
importToolsFem.py
importVTKResults.py
importZ88Mesh.py
importZ88O2Results.py
Init.py
InitGui.py
FemGmshTools.py
@@ -70,6 +57,26 @@ INSTALL(
Mod/Fem/PyObjects
)
INSTALL(
FILES
feminterface/__init__.py
feminterface/convert2TetGen.py
feminterface/importCcxDatResults.py
feminterface/importCcxFrdResults.py
feminterface/importFenicsMesh.py
feminterface/importInpMesh.py
feminterface/importToolsFem.py
feminterface/importVTKResults.py
feminterface/importZ88Mesh.py
feminterface/importZ88O2Results.py
feminterface/readFenicsXDMF.py
feminterface/readFenicsXML.py
feminterface/writeFenicsXDMF.py
feminterface/writeFenicsXML.py
DESTINATION
Mod/Fem/feminterface
)
INSTALL(
FILES
femsolver/__init__.py

View File

@@ -761,7 +761,7 @@ class FemToolsCcx(QtCore.QRunnable, QtCore.QObject):
# @param self The python object self
def load_results_ccxfrd(self):
import os
import importCcxFrdResults
import feminterface.importCcxFrdResults as importCcxFrdResults
frd_result_file = os.path.splitext(self.inp_file_name)[0] + '.frd'
if os.path.isfile(frd_result_file):
result_name_prefix = 'CalculiX_' + self.solver.AnalysisType + '_'
@@ -779,7 +779,7 @@ class FemToolsCcx(QtCore.QRunnable, QtCore.QObject):
# @param self The python object self
def load_results_ccxdat(self):
import os
import importCcxDatResults
import feminterface.importCcxDatResults as importCcxDatResults
dat_result_file = os.path.splitext(self.inp_file_name)[0] + '.dat'
if os.path.isfile(dat_result_file):
mode_frequencies = importCcxDatResults.import_dat(dat_result_file, self.analysis)

View File

@@ -27,19 +27,19 @@
import FreeCAD
FreeCAD.addExportType("TetGen file (*.poly)", "convert2TetGen")
FreeCAD.addExportType("TetGen file (*.poly)", "feminterface.convert2TetGen")
FreeCAD.addImportType("FEM formats (*.unv *.med *.dat *.bdf)", "Fem")
if("BUILD_FEM_VTK" in FreeCAD.__cmake__):
FreeCAD.addImportType("FEM CFD Unstructure Mesh (*.vtk *.vtu)", "Fem")
FreeCAD.addExportType("FEM CFD Unstructure Mesh (*.vtk *.vtu)", "Fem")
FreeCAD.addImportType("FEM results (*.vtk *.vtu)", "importVTKResults")
FreeCAD.addExportType("FEM CFD Result in VTK format (*.vtk *.vtu)", "importVTKResults")
FreeCAD.addImportType("FEM results (*.vtk *.vtu)", "feminterface.importVTKResults")
FreeCAD.addExportType("FEM CFD Result in VTK format (*.vtk *.vtu)", "feminterface.importVTKResults")
FreeCAD.addExportType("FEM formats (*.unv *.med *.dat *.inp)", "Fem")
FreeCAD.addImportType("CalculiX result (*.frd)", "importCcxFrdResults")
FreeCAD.addImportType("Fenics mesh file (*.xml *.xdmf)", "importFenicsMesh")
FreeCAD.addExportType("Fenics mesh file (*.xml *.xdmf)", "importFenicsMesh")
FreeCAD.addImportType("Mesh from Calculix/Abaqus input file (*.inp)", "importInpMesh")
FreeCAD.addImportType("Z88 mesh (i1) file (*.txt)", "importZ88Mesh")
FreeCAD.addExportType("Z88 mesh (i1) file (*.txt)", "importZ88Mesh")
FreeCAD.addImportType("Z88 displacement (o2) result file (*.txt)", "importZ88O2Results")
FreeCAD.addImportType("CalculiX result (*.frd)", "feminterface.importCcxFrdResults")
FreeCAD.addImportType("Fenics mesh file (*.xml *.xdmf)", "feminterface.importFenicsMesh")
FreeCAD.addExportType("Fenics mesh file (*.xml *.xdmf)", "feminterface.importFenicsMesh")
FreeCAD.addImportType("Mesh from Calculix/Abaqus input file (*.inp)", "feminterface.importInpMesh")
FreeCAD.addImportType("Z88 mesh (i1) file (*.txt)", "feminterface.importZ88Mesh")
FreeCAD.addExportType("Z88 mesh (i1) file (*.txt)", "feminterface.importZ88Mesh")
FreeCAD.addImportType("Z88 displacement (o2) result file (*.txt)", "feminterface.importZ88O2Results")

View File

@@ -168,7 +168,7 @@ class FemTest(unittest.TestCase):
def test_read_frd_massflow_networkpressure(self):
# read data from frd file
frd_file = test_file_dir + 'Flow1D_thermomech.frd'
import importCcxFrdResults
import feminterface.importCcxFrdResults as importCcxFrdResults
frd_content = importCcxFrdResults.readResult(frd_file)
# do something with the read data

View File

View File

@@ -61,7 +61,7 @@ def insert(filename, docname):
########## module specific methods ##########
def importFrd(filename, analysis=None, result_name_prefix=None):
import importToolsFem
from . import importToolsFem
import ObjectsFem
if result_name_prefix is None:
result_name_prefix = ''

View File

@@ -33,12 +33,12 @@ from PySide import QtGui, QtCore
import FreeCAD
import FreeCADGui
import importToolsFem
import os
import readFenicsXML
import writeFenicsXML
import writeFenicsXDMF
from . import importToolsFem
from . import readFenicsXML
from . import writeFenicsXML
from . import writeFenicsXDMF
# Template copied from importZ88Mesh.py. Thanks Bernd!

View File

@@ -64,7 +64,7 @@ def import_inp(filename):
"create imported objects in FreeCAD, currently only FemMesh"
m = read_inp(filename)
import importToolsFem
from . import importToolsFem
mesh = importToolsFem.make_femmesh(m)
mesh_name = os.path.splitext(os.path.basename(filename))[0]
mesh_object = FreeCAD.ActiveDocument.addObject('Fem::FemMeshObject', mesh_name)

View File

@@ -87,7 +87,7 @@ def importVTK(filename, analysis=None, result_name_prefix=None):
# workaround for the DisplacementLengths (They should have been calculated by Fem.readResult)
if not result_obj.DisplacementLengths:
import importToolsFem
from . import importToolsFem
result_obj.DisplacementLengths = importToolsFem.calculate_disp_abs(result_obj.DisplacementVectors)
if analysis:

View File

@@ -85,7 +85,7 @@ def import_z88_mesh(filename, analysis=None):
'''
mesh_data = read_z88_mesh(filename)
mesh_name = os.path.basename(os.path.splitext(filename)[0])
import importToolsFem
from . import importToolsFem
femmesh = importToolsFem.make_femmesh(mesh_data)
if femmesh:
mesh_object = FreeCAD.ActiveDocument.addObject('Fem::FemMeshObject', mesh_name)

View File

@@ -64,14 +64,14 @@ def insert(filename, docname):
def import_z88_disp(filename, analysis=None, result_name_prefix=None):
'''insert a FreeCAD FEM mechanical result object in the ActiveDocument
pure usage:
import importZ88O2Results
import feminterfaces.importZ88O2Results as importZ88O2Results
disp_file = '/pathtofile/z88o2.txt'
importZ88O2Results.import_z88_disp(disp_file)
the z888i1.txt FEMMesh file needs to be in the same directory as z88o2.txt (ahh, make a new document first ;-))
'''
import importZ88Mesh
import importToolsFem
from . import importZ88Mesh
from . import importToolsFem
import ObjectsFem
if result_name_prefix is None:
result_name_prefix = ''

View File

@@ -33,8 +33,8 @@ import os.path
import FreeCAD as App
import FemUtils
import importCcxFrdResults
import importCcxDatResults
import feminterface.importCcxFrdResults as importCcxFrdResults
import feminterface.importCcxDatResults as importCcxDatResults
from .. import run
from .. import settings

View File

@@ -32,7 +32,7 @@ import os.path
import FreeCAD as App
import FemUtils
import importZ88O2Results
import feminterface.importZ88O2Results as importZ88O2Results
from .. import run
from .. import settings

View File

@@ -29,7 +29,7 @@ __url__ = "http://www.freecadweb.org"
import FreeCAD
import FemMeshTools
import importZ88Mesh
import feminterface.importZ88Mesh as importZ88Mesh
import FemInputWriter