:tocdepth: 3

.. _tuigroups:

====================================
Define groups on the model of blocks
====================================

**todo a revoir pour les kinds de groupes**

Three kinds of group of meshing elements:

- group of hexahedra:

 	HexaBlocks.HexaCell 

- group of quadrangles:

	HexaBlocks.QuadCell

- group of edges: 

 	HexaBlocks.EdgeCell 

Four kinds of group of nodes:

- group of nodes in hexahedra:

 	HexaBlocks.HexaNode

- group of nodes in quadrangles:

 	HexaBlocks.QuadNode

- group of nodes in edges:

 	HexaBlocks.EdgeNode

- group of nodes on vertices:

 	HexaBlocks.VertexNode



Add a new group in the document::

    grp = doc.addHexaGroup(name)
    grp = doc.addQuadGroup(name)
    grp = doc.addEdgeGroup(name)
    grp = doc.addQuadNodeGroup(name)
    grp = doc.addHexaNodeGroup(name)
    grp = doc.addEdgeNodeGroup(name)
    grp = doc.addVertexNodeGroup(name)

Remove a group from the document::

 	doc.removeGroup(grp)

Get the number of groups of the document::

 	ng = doc.countGroup()

Get a group of the document::

 	grp = doc.getGroup(index)


Find a group by his name in the document::

 	g = doc.findGroup(name)

Get the name of a group::

 	name = grp.getName()

Set the name of a group::

 	grp.setName(name)

Get the kind of group among the 7 possibilities::

 	kind = grp.getKind()


Add an element in a group::

	grp.addElement(element)

Get the number of elements of a group::

	 nb = grp.countElement()

Get an element of a group::

	el = grp.getElement(index)

Remove an element of a group::

 	grp.removeElement(index)

Clear all elements of a group::

 	grp.clearElement()


GUI command: :ref:`guigroups`
