From: eap Date: Wed, 15 Sep 2010 12:09:30 +0000 (+0000) Subject: 0020746: EDF 1274 SMESH : MergeAllNodesButNodesFromGroup feature X-Git-Tag: V5_1_5a1~48 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=ca0696b420c313e84329f824ed38c81307682309;p=modules%2Fsmesh.git 0020746: EDF 1274 SMESH : MergeAllNodesButNodesFromGroup feature ## Finds groups of ajacent nodes within Tolerance. # @param Tolerance the value of tolerance # @param SubMeshOrGroup SubMesh or Group + # @param exceptNodes list of either SubMeshes, Groups or node IDs to exclude from search # @return the list of groups of nodes # @ingroup l2_modif_trsf - def FindCoincidentNodesOnPart (self, SubMeshOrGroup, Tolerance): + def FindCoincidentNodesOnPart (self, SubMeshOrGroup, Tolerance, exceptNodes=[]): --- diff --git a/src/SMESH_SWIG/smeshDC.py b/src/SMESH_SWIG/smeshDC.py index d8e0dde74..170c9664a 100644 --- a/src/SMESH_SWIG/smeshDC.py +++ b/src/SMESH_SWIG/smeshDC.py @@ -3571,10 +3571,17 @@ class Mesh: ## Finds groups of ajacent nodes within Tolerance. # @param Tolerance the value of tolerance # @param SubMeshOrGroup SubMesh or Group + # @param exceptNodes list of either SubMeshes, Groups or node IDs to exclude from search # @return the list of groups of nodes # @ingroup l2_modif_trsf - def FindCoincidentNodesOnPart (self, SubMeshOrGroup, Tolerance): - return self.editor.FindCoincidentNodesOnPart(SubMeshOrGroup, Tolerance) + def FindCoincidentNodesOnPart (self, SubMeshOrGroup, Tolerance, exceptNodes=[]): + if (isinstance( SubMeshOrGroup, Mesh )): + SubMeshOrGroup = SubMeshOrGroup.GetMesh() + if not isinstance( ExceptSubMeshOrGroups, list): + ExceptSubMeshOrGroups = [ ExceptSubMeshOrGroups ] + if ExceptSubMeshOrGroups and isinstance( ExceptSubMeshOrGroups[0], int): + ExceptSubMeshOrGroups = [ self.editor.MakeIDSource( ExceptSubMeshOrGroups, SMESH.NODE)] + return self.editor.FindCoincidentNodesOnPartBut(SubMeshOrGroup, Tolerance,ExceptSubMeshOrGroups) ## Merges nodes # @param GroupsOfNodes the list of groups of nodes