From 48b1714b352339f14ca1b36eb4bbb9a19df88653 Mon Sep 17 00:00:00 2001 From: eap Date: Wed, 7 Nov 2012 13:48:46 +0000 Subject: [PATCH] 0021680: EDF 2288 SMESH: creation of 0D elements from other elements +

Add 0D Element on Element Nodes

--- .../gui/SMESH/input/tui_modifying_meshes.doc | 56 +++++++++++++++++-- 1 file changed, 52 insertions(+), 4 deletions(-) diff --git a/doc/salome/gui/SMESH/input/tui_modifying_meshes.doc b/doc/salome/gui/SMESH/input/tui_modifying_meshes.doc index 922d15969..977ff6e86 100644 --- a/doc/salome/gui/SMESH/input/tui_modifying_meshes.doc +++ b/doc/salome/gui/SMESH/input/tui_modifying_meshes.doc @@ -11,9 +11,9 @@

Add Node

\code -import SMESH_mechanic +import smesh -mesh = SMESH_mechanic.mesh +mesh = smesh.Mesh() # add node new_id = mesh.AddNode(50, 10, 0) @@ -27,9 +27,9 @@ else: print "New Node has been added with ID ", new_id

Add 0D Element

\code -import SMESH_mechanic +import smesh -mesh = SMESH_mechanic.mesh +mesh = smesh.Mesh() # add node node_id = mesh.AddNode(50, 10, 0) @@ -42,6 +42,54 @@ if new_id == 0: print "KO node addition." else: print "New 0D Element has been added with ID ", new_id \endcode +
+\anchor tui_add_0DElement_on_all_nodes +

Add 0D Element on Element Nodes

+ +\code +import smesh, SMESH, geompy + +# create a geometry +box = geompy.MakeBoxDXDYDZ( 10, 10, 10 ) +face = geompy.SubShapeAll( box, geompy.ShapeType["FACE"])[0] + +# make 3D mesh +mesh = smesh.Mesh( box ) +mesh.AutomaticHexahedralization(0) + +# create 0D elements on all nodes of the mesh +res = mesh.Add0DElementsToAllNodes( mesh ) + +# find 0D elements on all nodes of the mesh, all found nodes are added to a new group +groupName = "0Dmesh" +res = mesh.Add0DElementsToAllNodes( mesh, groupName ) +mesh.RemoveGroupWithContents( res ) # remove all found 0D elements + +# create 0D elements on all nodes of a sub-mesh, with group creation +groupName = "0Dsubmesh" +submesh = mesh.GetSubMesh( face, "faceSM") +res = mesh.Add0DElementsToAllNodes( submesh, groupName ) + +# create 0D elements on all nodes of a group +group = mesh.Group( face, "faceGroup" ) +res = mesh.Add0DElementsToAllNodes( group ) + +# remove all 0D elements +mesh.RemoveElements( mesh.GetIdsFromFilter( smesh.GetFilter( SMESH.ELEM0D, + SMESH.FT_ElemGeomType, + "=",SMESH.Geom_POINT ))) + +# create 0D elements on all nodes of some elements +res = mesh.Add0DElementsToAllNodes( mesh.GetElementsId() ) + +mesh.RemoveElements( mesh.GetElementsByType( SMESH.ELEM0D )) + +# create 0D elements on some nodes +nodes = range(1,10) +res = mesh.Add0DElementsToAllNodes( mesh.GetIDSource( nodes, SMESH.NODE )) + +\endcode +
\anchor tui_add_edge

Add Edge

-- 2.39.2