#include <SMDS_MeshGroup.hxx>

Public Member Functions | |
| SMDS_MeshGroup (const SMDS_Mesh *theMesh, const SMDSAbs_ElementType theType=SMDSAbs_All) | |
| void | SetType (const SMDSAbs_ElementType theType) |
| void | Clear () |
| void | Reserve (size_t) |
| bool | Add (const SMDS_MeshElement *theElem) |
| bool | Remove (const SMDS_MeshElement *theElem) |
| bool | IsEmpty () const |
| smIdType | Extent () const |
| int | Tic () const |
| bool | Contains (const SMDS_MeshElement *theElem) const |
| const SMDS_Mesh * | GetMesh () const |
| SMDSAbs_ElementType | GetType () const |
| SMDS_ElemIteratorPtr | GetElements () const |
| void | operator= (SMDS_MeshGroup &&other) |
Protected Member Functions | |
| virtual SMDS_ElemIteratorPtr | getElements () |
| < the descendant object return its elements just before the mesh compacting More... | |
| virtual void | tmpClear () |
| the descendant object re-add its elements after the mesh compacting More... | |
| virtual void | add (const SMDS_MeshElement *element) |
| the descendant squeeze its element storage after re-adding elements More... | |
| virtual void | compact () |
| allow the descendant treat its elements before mesh clearing More... | |
Private Types | |
| typedef std::set< const SMDS_MeshElement * > | TElementSet |
| typedef TElementSet::const_iterator | TIterator |
Private Member Functions | |
| virtual void | clear () |
| void | beforeCompacting () |
| store vtkIDs of elements More... | |
| void | restoreElements (const std::vector< smIdType > &idNodessOldToNew, const std::vector< smIdType > &idCellsOldToNew) |
| restore pointers to elements More... | |
Private Attributes | |
| const SMDS_Mesh * | myMesh |
| SMDSAbs_ElementType | myType |
| TElementSet | myElements |
| int | myTic |
| std::vector< const SMDS_MeshElement * > | myExternalElems |
| elements not contained in the mesh More... | |
| std::vector< vtkIdType > | myVtkIDs |
| vtk IDs of elements More... | |
| std::vector< bool > | myIsNode |
| std::set< SMDS_ElementHolder * >::iterator | myPtrInMesh |
|
private |
|
private |
| SMDS_MeshGroup::SMDS_MeshGroup | ( | const SMDS_Mesh * | theMesh, |
| const SMDSAbs_ElementType | theType = SMDSAbs_All |
||
| ) |
|
protectedvirtual |
the descendant squeeze its element storage after re-adding elements
Implements SMDS_ElementHolder.
References SMESHUtils::Add().
| bool SMDS_MeshGroup::Add | ( | const SMDS_MeshElement * | theElem | ) |
References SMDS_MeshElement::GetType(), MESSAGE, myElements, myTic, and myType.
Referenced by SMESHDS_Group::Add(), SMESH_Group_i::AddFrom(), SMESH_MeshEditor::AddToSameGroups(), SMESH_Gen_i::CopyMesh(), SMESH_Mesh_i::CreateDimGroup(), SMESH_Mesh_i::CutGroups(), SMESH_Mesh_i::CutListOfGroups(), SMESH_MeshEditor_i::DoubleElements(), SMESH_Mesh_i::FaceGroupsSeparatedByEdges(), SMESH_MeshEditor::generateGroups(), DriverMED_R_SMESHDS_Mesh::GetGroup(), StdMeshers_Import_1D::importMesh(), SMESH_Mesh_i::IntersectGroups(), SMESH_Mesh_i::IntersectListOfGroups(), SMESH_MeshAlgos::MakePolyLine(), StdMeshers_Cartesian_VL::ViscousBuilder::MakeViscousLayers(), DriverCGNS_Read::Perform(), DriverUNV_R_SMDS_Mesh::Perform(), VISCOUS_2D::_ViscousBuilder2D::refine(), VISCOUS_3D::_ViscousBuilder::refine(), and SMESH_MeshEditor::ReplaceElemInGroups().
|
privateinherited |
store vtkIDs of elements
References SMDS_Mesh::Contains(), SMDS_ElementHolder::getElements(), SMDS_MeshElement::GetType(), SMDS_MeshElement::GetVtkID(), SMDS_MeshElement::IsNull(), SMDS_ElementHolder::myExternalElems, SMDS_ElementHolder::myIsNode, SMDS_ElementHolder::myMesh, SMDS_ElementHolder::myVtkIDs, and SMDSAbs_Node.
|
protectedvirtualinherited |
Reimplemented in SMESH_ProxyMesh::SubMesh.
Referenced by SMESH_MeshEditor::SplitBiQuadraticIntoLinear().
| void SMDS_MeshGroup::Clear | ( | ) |
References myElements, myTic, myType, and SMDSAbs_All.
Referenced by SMESHDS_Group::Clear().
|
protectedvirtual |
allow the descendant treat its elements before mesh clearing
Implements SMDS_ElementHolder.
| bool SMDS_MeshGroup::Contains | ( | const SMDS_MeshElement * | theElem | ) | const |
References myElements.
Referenced by SMESHDS_Group::Contains(), and SMESH_Pattern::createElements().
| smIdType SMDS_MeshGroup::Extent | ( | ) | const |
Referenced by SMESHDS_Group::Extent().
|
protectedvirtual |
< the descendant object return its elements just before the mesh compacting
the descendant object temporary remove its elements
Implements SMDS_ElementHolder.
| SMDS_ElemIteratorPtr SMDS_MeshGroup::GetElements | ( | ) | const |
References myElements.
Referenced by SMESHDS_Group::GetElements().
| const SMDS_Mesh * SMDS_MeshGroup::GetMesh | ( | ) | const |
References SMDS_ElementHolder::myMesh.
| SMDSAbs_ElementType SMDS_MeshGroup::GetType | ( | ) | const |
Referenced by DriverCGNS_Read::Perform(), SMESHDS_Group::SetType(), and SMESH_Mesh::UNVToMesh().
| bool SMDS_MeshGroup::IsEmpty | ( | ) | const |
Referenced by SMESHDS_Group::IsEmpty(), SetType(), and SMESHDS_Group::SetType().
| void SMDS_MeshGroup::operator= | ( | SMDS_MeshGroup && | other | ) |
References myElements, myMesh, myTic, and myType.
| bool SMDS_MeshGroup::Remove | ( | const SMDS_MeshElement * | theElem | ) |
| void SMDS_MeshGroup::Reserve | ( | size_t | ) |
Referenced by DriverMED_R_SMESHDS_Mesh::GetGroup().
|
privateinherited |
restore pointers to elements
References SMDS_ElementHolder::add(), SMDS_ElementHolder::compact(), SMDS_Mesh::FindElementVtk(), SMDS_Mesh::FindNodeVtk(), SMDS_ElementHolder::myExternalElems, SMDS_ElementHolder::myIsNode, SMDS_ElementHolder::myMesh, SMDS_ElementHolder::myVtkIDs, and SMDS_ElementHolder::tmpClear().
| void SMDS_MeshGroup::SetType | ( | const SMDSAbs_ElementType | theType | ) |
References IsEmpty(), and myType.
Referenced by SMESHDS_Group::SetType().
| int SMDS_MeshGroup::Tic | ( | ) | const |
Referenced by SMESHDS_Group::GetTic().
|
protectedvirtual |
the descendant object re-add its elements after the mesh compacting
Implements SMDS_ElementHolder.
References myElements.
|
private |
Referenced by Add(), Clear(), Contains(), GetElements(), operator=(), Remove(), and tmpClear().
|
privateinherited |
elements not contained in the mesh
Referenced by SMDS_ElementHolder::beforeCompacting(), and SMDS_ElementHolder::restoreElements().
|
privateinherited |
Referenced by SMDS_ElementHolder::beforeCompacting(), and SMDS_ElementHolder::restoreElements().
|
private |
Referenced by operator=().
|
privateinherited |
Referenced by SMDS_ElementHolder::SMDS_ElementHolder(), and SMDS_ElementHolder::~SMDS_ElementHolder().
|
private |
Referenced by Add(), Clear(), operator=(), and Remove().
|
private |
Referenced by Add(), Clear(), operator=(), Remove(), and SetType().
|
privateinherited |
vtk IDs of elements
Referenced by SMDS_ElementHolder::beforeCompacting(), and SMDS_ElementHolder::restoreElements().