From: vsr Date: Wed, 22 Aug 2012 11:59:04 +0000 (+0000) Subject: 0021308: EDF 1923 SMESH: Remove hard-coded dependency of the external mesh plugins... X-Git-Tag: V6_6_0a1~4 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=14597469b0bd896401a29b3e37348ea852ac965b;p=plugins%2Fghs3dprlplugin.git 0021308: EDF 1923 SMESH: Remove hard-coded dependency of the external mesh plugins from the SMESH module * Improve documentation for meshing plug-ins (in particular, dynamically added methods) --- diff --git a/doc/salome/gui/GHS3DPRLPLUGIN/Makefile.am b/doc/salome/gui/GHS3DPRLPLUGIN/Makefile.am index ef5f90d..8001ed3 100755 --- a/doc/salome/gui/GHS3DPRLPLUGIN/Makefile.am +++ b/doc/salome/gui/GHS3DPRLPLUGIN/Makefile.am @@ -23,16 +23,15 @@ EXTRA_DIST += images input static/footer.html static/doxygen.css guidocdir = $(docdir)/gui/GHS3DPRLPLUGIN guidoc_DATA = images/head.png +DOC_PYTHONPATH=$(prefix)/bin/salome:$(SMESH_ROOT_DIR)/bin/salome:$(SMESH_ROOT_DIR)/lib/python$(PYTHON_VERSION)/site-packages/salome:$(MED_ROOT_DIR)/lib/python$(PYTHON_VERSION)/site-packages/salome:$(GEOM_ROOT_DIR)/bin/salome:$(GEOM_ROOT_DIR)/lib/python$(PYTHON_VERSION)/site-packages/salome:$(KERNEL_ROOT_DIR)/bin/salome:$(KERNEL_ROOT_DIR)/lib/python$(PYTHON_VERSION)/site-packages/salome:$(OMNIORB_ROOT)/lib/python$(PYTHON_VERSION)/site-packages:$(OMNIORB_ROOT)/lib64/python$(PYTHON_VERSION)/site-packages +DOC_SMESH_MeshersList=GHS3DPRLPlugin -usr_docs: doxyfile - echo "===========================================" ; \ - echo "Generating Python interface documentation"; \ - echo "===========================================" ; \ - $(DOXYGEN) doxyfile_py \ - echo "===========================================" ; \ - echo "Generating GUI documentation" ; \ - echo "===========================================" ; \ - $(DOXYGEN) doxyfile ; +smesh.py: $(top_srcdir)/src/GHS3DPRLPlugin/GHS3DPRLPluginDC.py + @PYTHONPATH=$(DOC_PYTHONPATH):${PYTHONPATH} SMESH_MeshersList=$(DOC_SMESH_MeshersList) $(PYTHON) $(SMESH_ROOT_DIR)/bin/salome/collect_mesh_methods.py -d -o $@ GHS3DPRLPlugin + +usr_docs: doxyfile_py doxyfile smesh.py + @$(DOXYGEN) doxyfile_py ; \ + $(DOXYGEN) doxyfile docs: usr_docs diff --git a/doc/salome/gui/GHS3DPRLPLUGIN/doxyfile_py.in b/doc/salome/gui/GHS3DPRLPLUGIN/doxyfile_py.in index a085321..149060c 100755 --- a/doc/salome/gui/GHS3DPRLPLUGIN/doxyfile_py.in +++ b/doc/salome/gui/GHS3DPRLPLUGIN/doxyfile_py.in @@ -96,7 +96,7 @@ EXAMPLE_RECURSIVE = NO #--------------------------------------------------------------------------- #Input related options #--------------------------------------------------------------------------- -INPUT = @top_srcdir@/src/GHS3DPRLPlugin/GHS3DPRLPluginDC.py +INPUT = @top_srcdir@/src/GHS3DPRLPlugin/GHS3DPRLPluginDC.py smesh.py FILE_PATTERNS = IMAGE_PATH = @srcdir@/images RECURSIVE = NO @@ -156,4 +156,4 @@ DOT_CLEANUP = YES #External reference options #--------------------------------------------------------------------------- GENERATE_TAGFILE = ghs3dprlpluginpy_doc.tag -SEARCHENGINE = YES \ No newline at end of file +SEARCHENGINE = YES diff --git a/doc/salome/gui/GHS3DPRLPLUGIN/input/ghs3dprlplugin_python_interface.doc b/doc/salome/gui/GHS3DPRLPLUGIN/input/ghs3dprlplugin_python_interface.doc index d1591e1..8ef266e 100644 --- a/doc/salome/gui/GHS3DPRLPLUGIN/input/ghs3dprlplugin_python_interface.doc +++ b/doc/salome/gui/GHS3DPRLPLUGIN/input/ghs3dprlplugin_python_interface.doc @@ -2,8 +2,8 @@ \page ghs3dprlplugin_python_interface_page Python Interface -Python package \ref GHS3DPRLPluginDC "GHS3DPRLPlugin" defines several classes, destined for creation of the 3D meshes. +Python package GHS3DPRLPluginDC defines several classes, destined for creation of the 3D meshes. -Documentation for GHS3DPRLPlugin package is available in linear form grouped by classes, declared in the GHS3DPRLPluginDC.py file. +GHS3DPRL meshing plugin dynamically adds several methods to the smesh.Mesh class to create meshing algorithms. */ diff --git a/doc/salome/gui/GHS3DPRLPLUGIN/input/index.doc b/doc/salome/gui/GHS3DPRLPLUGIN/input/index.doc index 9f0df8a..e743708 100644 --- a/doc/salome/gui/GHS3DPRLPLUGIN/input/index.doc +++ b/doc/salome/gui/GHS3DPRLPLUGIN/input/index.doc @@ -2,17 +2,13 @@ \mainpage Introduction to GHS3DPRLPLUGIN +\b GHS3DPRLPLUGIN plugin is destined for: +- Meshing 3D geometric entities: volumes are split into tetrahedral (pyramidal) elements. +- Generating 3D meshes from 2D meshes, working without geometrical objects. + \note GHS3DPRLPLUGIN plugin used GHS3D commercial mesher and require a license to be used within the Mesh module. -\n \b GHS3DPRLPLUGIN plugin is destined for: - - - To manage parameters of the GHS3DPRLPLUGIN use \subpage ghs3dprl_hypo_page. Also all GHS3DPRLPLUGIN functionalities are accessible via diff --git a/src/GHS3DPRLPlugin/GHS3DPRLPluginDC.py b/src/GHS3DPRLPlugin/GHS3DPRLPluginDC.py index b9bb2a3..690b9b9 100644 --- a/src/GHS3DPRLPlugin/GHS3DPRLPluginDC.py +++ b/src/GHS3DPRLPlugin/GHS3DPRLPluginDC.py @@ -17,6 +17,10 @@ # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # +## +# @package GHS3DPRLPluginDC +# Python API for the GHS3DPRL meshing plug-in module. + from smesh import Mesh_Algorithm, AssureGeomPublished # import GHS3DPRLPlugin module if possible @@ -33,47 +37,79 @@ None_Optimization, Light_Optimization, Medium_Optimization, Strong_Optimization # V4.1 (partialy redefines V3.1). Issue 0020574 None_Optimization, Light_Optimization, Standard_Optimization, StandardPlus_Optimization, Strong_Optimization = 0,1,2,3,4 +#---------------------------- +# Mesh algo type identifiers +#---------------------------- + +## Algorithm type: GHS3DPRL tetrahedron 3D algorithm, see GHS3DPRL_Algorithm GHS3DPRL = "GHS3DPRL_3D" +#---------------------------- +# Algorithms +#---------------------------- ## Tetrahedron GHS3DPRL 3D algorithm -# It is created by calling Mesh.Tetrahedron( GHS3DPRL, geom=0 ) # +# It is created by calling smesh.Mesh.Tetrahedron( smesh.GHS3DPRL, geom=0 ) class GHS3DPRL_Algorithm(Mesh_Algorithm): + ## name of the dynamic method in smesh.Mesh class + # @internal meshMethod = "Tetrahedron" + ## type of algorithm used with helper function in smesh.Mesh class + # @internal algoType = GHS3DPRL + ## doc string of the method in smesh.Mesh class + # @internal + docHelper = "Creates tetrahedron 3D algorithm for volumes" ## Private constructor. + # @param mesh parent mesh object algorithm is assigned to + # @param geom geometry (shape/sub-shape) algorithm is assigned to; + # if it is @c 0 (default), the algorithm is assigned to the main shape def __init__(self, mesh, geom=0): Mesh_Algorithm.__init__(self) if none_optimization: print "Warning: GHS3DPRLPlugin module unavailable" self.Create(mesh, geom, self.algoType, "libGHS3DPRLEngine.so") + pass ## Defines hypothesis having several parameters - # + # @return hypothesis object def Parameters(self): if not self.params: self.params = self.Hypothesis("GHS3DPRL_Parameters", [], "libGHS3DPRLEngine.so", UseExisting=0) + pass return self.params ## To keep working files or remove them. Log file remains in case of errors anyway. + # @param toKeep "keep working files" flag value def SetKeepFiles(self, toKeep): self.Parameters().SetKeepFiles(toKeep) + pass ## Sets MED files name and path. + # @param value MED file name def SetMEDName(self, value): self.Parameters().SetMEDName(value) + pass ## Sets the number of partition of the initial mesh + # @param value number of partition value def SetNbPart(self, value): self.Parameters().SetNbPart(value) + pass ## When big mesh, start tepal in background + # @param value "background mode" flag value def SetBackground(self, value): self.Parameters().SetBackground(value) + pass ## To mesh "holes" in a solid or not. Default is to mesh. + # @param toMesh "mesh holes" flag value def SetToMeshHoles(self, toMesh): self.Parameters().SetToMeshHoles(toMesh) + pass + + pass # end of GHS3DPRL_Algorithm class