X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=src%2FSMESH_PY%2Fsmeshstudytools.py;h=a043765799c6872dff1abbb53f15badbb03d5c47;hp=7b83e570e25e0dc5339059e417d7d205dad53bb8;hb=d7d0fd87e0cceb57b0c5e32f0712842763c7437c;hpb=ef59152514df17c64ad01c8abab01331618a1fc4 diff --git a/src/SMESH_PY/smeshstudytools.py b/src/SMESH_PY/smeshstudytools.py index 7b83e570e..a04376579 100644 --- a/src/SMESH_PY/smeshstudytools.py +++ b/src/SMESH_PY/smeshstudytools.py @@ -1,11 +1,11 @@ # -*- coding: utf-8 -*- # -# Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE +# Copyright (C) 2007-2014 CEA/DEN, EDF R&D, OPEN CASCADE # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public # License as published by the Free Software Foundation; either -# version 2.1 of the License. +# version 2.1 of the License, or (at your option) any later version. # # This library is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -18,6 +18,16 @@ # # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # + +## \package smeshstudytools Python API to access SMESH objects in the study. + +## \defgroup smeshstudytools Accessing SMESH object in the study +# \{ +# \details +# Module \b smeshstudytools provides a new class SMeshStudyTools to facilitate the +# use of mesh objects in Salome study. +# \} + """ This module provides a new class :class:`SMeshStudyTools` to facilitate the use of mesh objects in Salome study. @@ -31,6 +41,15 @@ from salome.kernel.deprecation import is_called_by_sphinx if not is_called_by_sphinx(): from salome.gui import helper +## This class provides several methods to manipulate mesh objects in Salome +# study. The parameter \em studyEditor defines a \b StudyEditor +# object used to access the study. If \b None, the method returns a +# \b StudyEditor object on the current study. +# +# \b editor +# This instance attribute contains the underlying \b StudyEditor object. +# It can be used to access the study but the attribute itself should not be modified. +# \ingroup smeshstudytools class SMeshStudyTools: """ This class provides several methods to manipulate mesh objects in Salome @@ -56,13 +75,18 @@ class SMeshStudyTools: self.editor = studyEditor self.smeshGui = None + ## This function updates the tools so that it works on the + # specified study. def updateStudy(self, studyId=None): """ This function updates the tools so that it works on the specified study. """ self.editor = getStudyEditor(studyId) - + + ## Get the mesh item owning the mesh group \em meshGroupItem. + # \param meshGroupItem (SObject) mesh group belonging to the searched mesh. + # \return The SObject corresponding to the mesh, or None if it was not found. def getMeshFromGroup(self, meshGroupItem): """ Get the mesh item owning the mesh group `meshGroupItem`. @@ -81,32 +105,38 @@ class SMeshStudyTools: meshItem = salome.ObjectToSObject(meshObj) return meshItem - + ## Returns the MESH object currently selected in the active study. def getMeshObjectSelected(self): - ''' + """ Returns the MESH object currently selected in the active study. - ''' + """ sobject, entry = helper.getSObjectSelected() meshObject = self.getMeshObjectFromEntry(entry) return meshObject + ## Returns the MESH object associated to the specified entry, + # (the entry is the identifier of an item in the objects browser). def getMeshObjectFromEntry(self, entry): - ''' + """ Returns the MESH object associated to the specified entry, (the entry is the identifier of an item in the objects browser). - ''' + """ if entry is None: return None - import smesh - smesh.SetCurrentStudy(self.editor.study) + import SMESH + from salome.smesh import smeshBuilder + smesh = smeshBuilder.New(self.editor.study) + meshObject=smesh.IDToObject(entry) return meshObject - + + ## Returns the SMESH object associated to the specified \em SObject, + # (the SObject is an item in the objects browser). def getMeshObjectFromSObject(self, sobject): - ''' + """ Returns the SMESH object associated to the specified SObject, (the SObject is an item in the objects browser). - ''' + """ if sobject is None: return None @@ -114,11 +144,13 @@ class SMeshStudyTools: meshObject = obj._narrow(SMESH.SMESH_Mesh) return meshObject + ## Display the SMESH object associated to the specified \em entry + # (the entry is the identifier of an item in the objects browser). def displayMeshObjectFromEntry(self,entry): - ''' + """ Display the SMESH object associated to the specified entry (the entry is the identifier of an item in the objects browser). - ''' + """ if self.smeshGui is None: self.smeshGui = salome.ImportComponentGUI("SMESH") @@ -153,13 +185,17 @@ class SMeshStudyTools: def TEST_createBoxMesh(): theStudy = helper.getActiveStudy() - import geompy - geompy.init_geom(theStudy) + import GEOM + from salome.geom import geomBuilder + geompy = geomBuilder.New(theStudy) + box = geompy.MakeBoxDXDYDZ(200, 200, 200) - import smesh, SMESH, SALOMEDS - smesh.SetCurrentStudy(theStudy) - import StdMeshers + import SMESH, SALOMEDS + from salome.smesh import smeshBuilder + smesh = smeshBuilder.New(theStudy) + + from salome.StdMeshers import StdMeshersBuilder boxmesh = smesh.Mesh(box) Regular_1D = boxmesh.Segment() Nb_Segments_1 = Regular_1D.NumberOfSegments(15)