X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=doc%2Fsalome%2Fexamples%2Ftransforming_meshes_ex06.py;h=964449fe3b137cd8b4f7170f8cb36cc7d6ad8803;hb=d9f4b53e489dd5857db264ede6acded7b076c9f1;hp=1d973dadb6546d3272457a48ec50cbe6c555b685;hpb=d5029840731bccaa1718e65f0abf3b19198c7293;p=modules%2Fsmesh.git diff --git a/doc/salome/examples/transforming_meshes_ex06.py b/doc/salome/examples/transforming_meshes_ex06.py index 1d973dadb..964449fe3 100644 --- a/doc/salome/examples/transforming_meshes_ex06.py +++ b/doc/salome/examples/transforming_meshes_ex06.py @@ -2,12 +2,11 @@ import salome -salome.salome_init() -import GEOM +salome.salome_init_without_session() from salome.geom import geomBuilder geompy = geomBuilder.New() -import SMESH, SALOMEDS +import SMESH from salome.smesh import smeshBuilder smesh = smeshBuilder.New() @@ -43,6 +42,9 @@ algo2D.LengthFromEdges() trias.Compute() +# create a group of all triangles currently present in the mesh +faceTriGroup = trias.Group( face1, "face triangles" ) + # create a path mesh circlemesh = smesh.Mesh(circle, "Path mesh") algo = circlemesh.Segment() @@ -50,14 +52,19 @@ algo.NumberOfSegments(10) circlemesh.Compute() # extrusion of the mesh -trias.ExtrusionAlongPath([], circlemesh, circle, - 1, 0, [], 0, SMESH.PointStruct(0, 0, 0)) +trias.ExtrusionAlongPath([], circlemesh, circle, 1, MakeGroups=True ) + +# get a group "opposite" to faceTriGroup within the generated prismatic mesh +oppositeGroup = trias.GetGroupByName( faceTriGroup.GetName() + "_top" )[0] + +# get edges of the groups +edgeGroup = trias.CreateDimGroup([ faceTriGroup, oppositeGroup ], SMESH.EDGE, "face edges") -# merge nodes +# merge nodes of the groups only print("Number of nodes before MergeNodes:", end=' ') trias.NbNodes() tolerance = 0.001 -array_of_nodes_groups = trias.FindCoincidentNodes(tolerance) +array_of_nodes_groups = trias.FindCoincidentNodesOnPart([faceTriGroup, oppositeGroup], tolerance) trias.MergeNodes(array_of_nodes_groups) @@ -65,16 +72,15 @@ print("Number of nodes after MergeNodes:", trias.NbNodes()) print("") print("Number of elements before MergeEqualElements:") print("Edges : ", trias.NbEdges()) -print("Triangles : ", trias.NbTriangles()) -print("Quadrangles: ", trias.NbQuadrangles()) +print("Faces : ", trias.NbFaces()) print("Volumes : ", trias.NbVolumes()) -# merge elements -trias.MergeEqualElements() +# merge elements of the groups +equalFaces = trias.FindEqualElements( [faceTriGroup, oppositeGroup, edgeGroup] ) +trias.MergeElements( equalFaces ) print("Number of elements after MergeEqualElements:") print("Edges : ", trias.NbEdges()) -print("Triangles : ", trias.NbTriangles()) -print("Quadrangles: ", trias.NbQuadrangles()) +print("Faces : ", trias.NbFaces()) print("Volumes : ", trias.NbVolumes()) salome.sg.updateObjBrowser()