# Create a Standalone Group import SMESH_mechanic import SMESH smesh = SMESH_mechanic.smesh mesh = SMESH_mechanic.mesh salome = SMESH_mechanic.salome # Get ids of all faces with area > 100 aFilter = smesh.GetFilter(SMESH.FACE, SMESH.FT_Area, SMESH.FT_MoreThan, 100.) anIds = mesh.GetIdsFromFilter(aFilter) # create a group consisting of faces with area > 100 aGroup1 = mesh.MakeGroupByIds("Area > 100", SMESH.FACE, anIds) # create a group that contains all nodes from the mesh aGroup2 = mesh.CreateEmptyGroup(SMESH.NODE, "all nodes") aGroup2.AddFrom(mesh.mesh) # ==================================== # Various methods of the Group object # ==================================== aGroup = mesh.CreateEmptyGroup(SMESH.NODE, "aGroup") # set/get group name aGroup.SetName( "new name" ) print "name", aGroup.GetName() # get group type (type of entities in the group, SMESH.NODE in our case) print "type", aGroup.GetType() # get number of entities (nodes in our case) in the group print "size", aGroup.Size() # check of emptiness print "is empty", aGroup.IsEmpty() # check of presence of an entity in the group aGroup.Add([1,2]) # Add() method is specific to the standalone group print "contains node 2", aGroup.Contains(2) # get an entity by index print "1st node", aGroup.GetID(1) # get all entities print "all", aGroup.GetIDs() # get number of nodes (actual for groups of elements) print "nb nodes", aGroup.GetNumberOfNodes() # get underlying nodes (actual for groups of elements) print "nodes", aGroup.GetNodeIDs() # set/get color import SALOMEDS aGroup.SetColor( SALOMEDS.Color(1.,1.,0.)); print "color", aGroup.GetColor() # ---------------------------------------------------------------------------- # methods specific to the standalone group and not present in GroupOnGeometry # and GroupOnFilter # ---------------------------------------------------------------------------- # clear the group's contents aGroup.Clear() # add contents of other object (group, sub-mesh, filter) aGroup.AddFrom( aGroup2 ) # removes entities aGroup.Remove( [2,3,4] ) salome.sg.updateObjBrowser(1)