| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| |
|
| |
|
| | #include <SMESH_Version.h> |
| |
|
| | #include <Base/Console.h> |
| | #include <Base/Interpreter.h> |
| | #include <CXX/Extensions.hxx> |
| |
|
| | #include "FemAnalysis.h" |
| | #include "FemConstraintBearing.h" |
| | #include "FemConstraintContact.h" |
| | #include "FemConstraintDisplacement.h" |
| | #include "FemConstraintFixed.h" |
| | #include "FemConstraintFluidBoundary.h" |
| | #include "FemConstraintForce.h" |
| | #include "FemConstraintGear.h" |
| | #include "FemConstraintHeatflux.h" |
| | #include "FemConstraintInitialTemperature.h" |
| | #include "FemConstraintPlaneRotation.h" |
| | #include "FemConstraintPressure.h" |
| | #include "FemConstraintPulley.h" |
| | #include "FemConstraintRigidBody.h" |
| | #include "FemConstraintSpring.h" |
| | #include "FemConstraintTemperature.h" |
| | #include "FemConstraintTransform.h" |
| | #include "FemMesh.h" |
| | #include "FemMeshObject.h" |
| | #include "FemMeshProperty.h" |
| | #include "FemMeshPy.h" |
| | #include "FemMeshShapeNetgenObject.h" |
| | #include "FemMeshShapeObject.h" |
| | #include "FemResultObject.h" |
| | #include "FemSetElementNodesObject.h" |
| | #include "FemSetElementsObject.h" |
| | #include "FemSetFacesObject.h" |
| | #include "FemSetGeometryObject.h" |
| | #include "FemSetNodesObject.h" |
| | #include "FemSolverObject.h" |
| | #include "HypothesisPy.h" |
| |
|
| | #ifdef FC_USE_VTK |
| | # include "FemPostFilter.h" |
| | # include "FemPostFunction.h" |
| | # include "FemPostPipeline.h" |
| | # include "FemPostBranchFilter.h" |
| | # include "PropertyPostDataObject.h" |
| | #endif |
| |
|
| |
|
| | namespace Fem |
| | { |
| | extern PyObject* initModule(); |
| | } |
| |
|
| | |
| | PyMOD_INIT_FUNC(Fem) |
| | { |
| | |
| | try { |
| | Base::Interpreter().loadModule("Part"); |
| | } |
| | catch (const Base::Exception& e) { |
| | PyErr_SetString(PyExc_ImportError, e.what()); |
| | PyMOD_Return(nullptr); |
| | } |
| | PyObject* femModule = Fem::initModule(); |
| | Base::Console().log("Loading FEM module… done\n"); |
| |
|
| | |
| | Fem::StdMeshers_Arithmetic1DPy ::init_type(femModule); |
| | Fem::StdMeshers_AutomaticLengthPy ::init_type(femModule); |
| | Fem::StdMeshers_NotConformAllowedPy ::init_type(femModule); |
| | Fem::StdMeshers_MaxLengthPy ::init_type(femModule); |
| | Fem::StdMeshers_LocalLengthPy ::init_type(femModule); |
| | Fem::StdMeshers_QuadranglePreferencePy ::init_type(femModule); |
| | Fem::StdMeshers_Quadrangle_2DPy ::init_type(femModule); |
| | Fem::StdMeshers_MaxElementAreaPy ::init_type(femModule); |
| | Fem::StdMeshers_Regular_1DPy ::init_type(femModule); |
| | Fem::StdMeshers_UseExisting_1DPy ::init_type(femModule); |
| | Fem::StdMeshers_UseExisting_2DPy ::init_type(femModule); |
| | Fem::StdMeshers_CompositeSegment_1DPy ::init_type(femModule); |
| | Fem::StdMeshers_Deflection1DPy ::init_type(femModule); |
| | Fem::StdMeshers_LayerDistributionPy ::init_type(femModule); |
| | Fem::StdMeshers_LengthFromEdgesPy ::init_type(femModule); |
| | Fem::StdMeshers_MaxElementVolumePy ::init_type(femModule); |
| | #if SMESH_VERSION_MAJOR <= 9 && SMESH_VERSION_MINOR < 10 |
| | Fem::StdMeshers_MEFISTO_2DPy ::init_type(femModule); |
| | #endif |
| | Fem::StdMeshers_NumberOfLayersPy ::init_type(femModule); |
| | Fem::StdMeshers_NumberOfSegmentsPy ::init_type(femModule); |
| | Fem::StdMeshers_Prism_3DPy ::init_type(femModule); |
| | Fem::StdMeshers_Projection_1DPy ::init_type(femModule); |
| | Fem::StdMeshers_Projection_2DPy ::init_type(femModule); |
| | Fem::StdMeshers_Projection_3DPy ::init_type(femModule); |
| | Fem::StdMeshers_ProjectionSource1DPy ::init_type(femModule); |
| | Fem::StdMeshers_ProjectionSource2DPy ::init_type(femModule); |
| | Fem::StdMeshers_ProjectionSource3DPy ::init_type(femModule); |
| | Fem::StdMeshers_QuadraticMeshPy ::init_type(femModule); |
| | Fem::StdMeshers_RadialPrism_3DPy ::init_type(femModule); |
| | Fem::StdMeshers_SegmentAroundVertex_0DPy ::init_type(femModule); |
| | Fem::StdMeshers_SegmentLengthAroundVertexPy ::init_type(femModule); |
| | Fem::StdMeshers_StartEndLengthPy ::init_type(femModule); |
| | Fem::StdMeshers_Hexa_3DPy ::init_type(femModule); |
| |
|
| | |
| | Base::Interpreter().addType(&Fem::FemMeshPy::Type,femModule,"FemMesh"); |
| |
|
| |
|
| | |
| | |
| | |
| |
|
| | Fem::DocumentObject ::init(); |
| | Fem::FeaturePython ::init(); |
| |
|
| | Fem::FemAnalysis ::init(); |
| | Fem::FemAnalysisPython ::init(); |
| |
|
| | Fem::Constraint ::init(); |
| | Fem::ConstraintPython ::init(); |
| |
|
| | Fem::ConstraintBearing ::init(); |
| | Fem::ConstraintContact ::init(); |
| | Fem::ConstraintDisplacement ::init(); |
| | Fem::ConstraintFixed ::init(); |
| | Fem::ConstraintRigidBody ::init(); |
| | Fem::ConstraintFluidBoundary ::init(); |
| | Fem::ConstraintForce ::init(); |
| | Fem::ConstraintGear ::init(); |
| | Fem::ConstraintHeatflux ::init(); |
| | Fem::ConstraintInitialTemperature ::init(); |
| | Fem::ConstraintPlaneRotation ::init(); |
| | Fem::ConstraintPressure ::init(); |
| | Fem::ConstraintPulley ::init(); |
| | Fem::ConstraintTemperature ::init(); |
| | Fem::ConstraintTransform ::init(); |
| | Fem::ConstraintSpring ::init(); |
| |
|
| | Fem::FemMesh ::init(); |
| | Fem::FemMeshObject ::init(); |
| | Fem::FemMeshObjectPython ::init(); |
| | Fem::FemMeshShapeBaseObject ::init(); |
| | Fem::FemMeshShapeBaseObjectPython ::init(); |
| | Fem::FemMeshShapeObject ::init(); |
| | Fem::FemMeshShapeNetgenObject ::init(); |
| | Fem::PropertyFemMesh ::init(); |
| |
|
| | Fem::FemResultObject ::init(); |
| | Fem::FemResultObjectPython ::init(); |
| |
|
| | Fem::FemSetObject ::init(); |
| | Fem::FemSetElementNodesObject ::init(); |
| | Fem::FemSetElementsObject ::init(); |
| | Fem::FemSetFacesObject ::init(); |
| | Fem::FemSetGeometryObject ::init(); |
| | Fem::FemSetNodesObject ::init(); |
| |
|
| | Fem::FemSolverObject ::init(); |
| | Fem::FemSolverObjectPython ::init(); |
| |
|
| | #ifdef FC_USE_VTK |
| | Fem::FemPostSmoothFilterExtension ::init(); |
| |
|
| | Fem::FemPostObject ::init(); |
| | Fem::FemPostGroupExtension ::init(); |
| | Fem::FemPostPipeline ::init(); |
| | Fem::FemPostFilter ::init(); |
| | Fem::FemPostBranchFilter ::init(); |
| | Fem::FemPostCalculatorFilter ::init(); |
| | Fem::FemPostClipFilter ::init(); |
| | Fem::FemPostContoursFilter ::init(); |
| | Fem::FemPostCutFilter ::init(); |
| | Fem::FemPostDataAlongLineFilter ::init(); |
| | Fem::FemPostDataAtPointFilter ::init(); |
| | Fem::FemPostScalarClipFilter ::init(); |
| | Fem::FemPostWarpVectorFilter ::init(); |
| |
|
| | Fem::FemPostFunction ::init(); |
| | Fem::FemPostFunctionProvider ::init(); |
| | Fem::FemPostBoxFunction ::init(); |
| | Fem::FemPostCylinderFunction ::init(); |
| | Fem::FemPostPlaneFunction ::init(); |
| | Fem::FemPostSphereFunction ::init(); |
| |
|
| | Fem::PropertyPostDataObject ::init(); |
| |
|
| | Fem::PostFilterPython ::init(); |
| | #endif |
| | |
| |
|
| | PyMOD_Return(femModule); |
| | } |
| |
|