2013-02-12 20:37:44 +06:00
|
|
|
# Add 0D Element on Element Nodes
|
|
|
|
|
2013-04-04 13:08:19 +06:00
|
|
|
|
|
|
|
import salome
|
2021-08-12 14:38:10 +05:00
|
|
|
salome.salome_init_without_session()
|
2016-08-24 19:04:22 +05:00
|
|
|
|
2013-04-04 13:08:19 +06:00
|
|
|
from salome.geom import geomBuilder
|
2017-06-13 15:01:10 +05:00
|
|
|
geompy = geomBuilder.New()
|
2013-04-04 13:08:19 +06:00
|
|
|
|
|
|
|
import SMESH, SALOMEDS
|
|
|
|
from salome.smesh import smeshBuilder
|
2017-06-13 15:01:10 +05:00
|
|
|
smesh = smeshBuilder.New()
|
2013-04-04 13:08:19 +06:00
|
|
|
|
2013-02-12 20:37:44 +06:00
|
|
|
|
|
|
|
# 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
|
2017-03-20 17:27:30 +05:00
|
|
|
nodes = list(range(1,10))
|
2013-02-12 20:37:44 +06:00
|
|
|
res = mesh.Add0DElementsToAllNodes( mesh.GetIDSource( nodes, SMESH.NODE ))
|