Version: 8.3.0
SMESH_ProxyMesh::SubMesh Class Reference

Proxy sub-mesh. More...

#include <SMESH_ProxyMesh.hxx>

Inheritance diagram for SMESH_ProxyMesh::SubMesh:

Public Member Functions

const TN2NMapGetNodeNodeMap () const
 
const SMDS_MeshNodeGetProxyNode (const SMDS_MeshNode *n) const
 Return a proxy node or an input node. More...
 
const UVPtStructVecGetUVPtStructVec () const
 
virtual void AddElement (const SMDS_MeshElement *e)
 Store an element. More...
 
virtual int NbElements () const
 Return number of elements in a proxy sub-mesh. More...
 
virtual int NbNodes () const
 Return number of nodes in a proxy sub-mesh. More...
 
virtual SMDS_ElemIteratorPtr GetElements (bool reverse=false) const
 Return elements of a proxy sub-mesh. More...
 
virtual SMDS_NodeIteratorPtr GetNodes (bool reverse=false) const
 Return nodes of a proxy sub-mesh. More...
 
virtual void Clear ()
 Deletes temporary elements. More...
 
virtual bool Contains (const SMDS_MeshElement *ME) const
 Check presence of element inside it-self. More...
 
template<class ITERATOR >
void ChangeElements (ITERATOR it, ITERATOR end)
 
 SubMesh (int index=0)
 
virtual ~SubMesh ()
 
virtual bool IsComplexSubmesh () const
 
virtual bool RemoveElement (const SMDS_MeshElement *ME, bool isElemDeleted)
 
virtual void AddNode (const SMDS_MeshNode *ME)
 
virtual bool RemoveNode (const SMDS_MeshNode *ME, bool isNodeDeleted)
 
virtual const SMDS_MeshElementGetElement (size_t idInShape) const
 
virtual const SMDS_MeshNodeGetNode (size_t idInShape) const
 
void AddSubMesh (const SMESHDS_SubMesh *theSubMesh)
 
bool RemoveSubMesh (const SMESHDS_SubMesh *theSubMesh)
 
void RemoveAllSubmeshes ()
 
bool ContainsSubMesh (const SMESHDS_SubMesh *theSubMesh) const
 
int NbSubMeshes () const
 
SMESHDS_SubMeshIteratorPtr GetSubMeshIterator () const
 
virtual bool IsQuadratic () const
 
int getSize ()
 
void compactList ()
 
SMESHDS_MeshGetParent () const
 
int GetID () const
 

Protected Attributes

std::vector< const
SMDS_MeshElement * > 
_elements
 
TN2NMap_n2n
 
UVPtStructVec _uvPtStructVec
 

Friends

class SMESH_ProxyMesh
 

Detailed Description

Proxy sub-mesh.

Constructor & Destructor Documentation

SMESH_ProxyMesh::SubMesh::SubMesh ( int  index = 0)
virtual SMESH_ProxyMesh::SubMesh::~SubMesh ( )
virtual

Member Function Documentation

void SMESH_ProxyMesh::SubMesh::AddElement ( const SMDS_MeshElement e)
virtual
void SMESHDS_SubMesh::AddSubMesh ( const SMESHDS_SubMesh theSubMesh)
inherited
template<class ITERATOR >
void SMESH_ProxyMesh::SubMesh::ChangeElements ( ITERATOR  it,
ITERATOR  end 
)
void SMESH_ProxyMesh::SubMesh::Clear ( )
virtual

Deletes temporary elements.

Reimplemented from SMESHDS_SubMesh.

void SMESHDS_SubMesh::compactList ( )
inherited
bool SMESH_ProxyMesh::SubMesh::Contains ( const SMDS_MeshElement ME) const
virtual

Check presence of element inside it-self.

Reimplemented from SMESHDS_SubMesh.

References SMDS_MeshElement::GetType(), and SMDSAbs_Node.

bool SMESHDS_SubMesh::ContainsSubMesh ( const SMESHDS_SubMesh theSubMesh) const
inherited
const SMDS_MeshElement * SMESHDS_SubMesh::GetElement ( size_t  idInShape) const
virtualinherited
SMDS_ElemIteratorPtr SMESH_ProxyMesh::SubMesh::GetElements ( bool  reverse = false) const
virtual

Return elements of a proxy sub-mesh.

The method is meaningful for a sub-mesh containing tmp faces.

Reimplemented from SMESHDS_SubMesh.

Referenced by VISCOUS_3D::_ViscousBuilder::MakeN2NMap(), and VISCOUS_3D::_ViscousBuilder::shrink().

const SMDS_MeshNode * SMESHDS_SubMesh::GetNode ( size_t  idInShape) const
virtualinherited
const TN2NMap* SMESH_ProxyMesh::SubMesh::GetNodeNodeMap ( ) const
SMDS_NodeIteratorPtr SMESH_ProxyMesh::SubMesh::GetNodes ( bool  reverse = false) const
virtual

Return nodes of a proxy sub-mesh.

The method is meaningful for a sub-mesh containing nodes of 2D viscous layer.

Reimplemented from SMESHDS_SubMesh.

SMESHDS_Mesh* SMESHDS_SubMesh::GetParent ( ) const
inherited
const SMDS_MeshNode * SMESH_ProxyMesh::SubMesh::GetProxyNode ( const SMDS_MeshNode n) const

Return a proxy node or an input node.

References _n2n.

int SMESHDS_SubMesh::getSize ( )
inherited

References MESHCUT::d.

SMESHDS_SubMeshIteratorPtr SMESHDS_SubMesh::GetSubMeshIterator ( ) const
inherited
const UVPtStructVec& SMESH_ProxyMesh::SubMesh::GetUVPtStructVec ( ) const
bool SMESHDS_SubMesh::IsQuadratic ( ) const
virtualinherited
int SMESH_ProxyMesh::SubMesh::NbElements ( ) const
virtual

Return number of elements in a proxy sub-mesh.

The method is meaningful for a sub-mesh containing tmp faces.

Reimplemented from SMESHDS_SubMesh.

Referenced by VISCOUS_3D::_ViscousBuilder::addBoundaryElements(), VISCOUS_3D::_ViscousBuilder::MakeN2NMap(), and VISCOUS_3D::_ViscousBuilder::shrink().

int SMESH_ProxyMesh::SubMesh::NbNodes ( ) const
virtual

Return number of nodes in a proxy sub-mesh.

The method is meaningful for a sub-mesh containing nodes of 2D viscous layer.

Reimplemented from SMESHDS_SubMesh.

Reimplemented in VISCOUS_2D::_ProxyMeshOfFace::_EdgeSubMesh.

int SMESHDS_SubMesh::NbSubMeshes ( ) const
inherited
void SMESHDS_SubMesh::RemoveAllSubmeshes ( )
inherited
bool SMESHDS_SubMesh::RemoveElement ( const SMDS_MeshElement ME,
bool  isElemDeleted 
)
virtualinherited
bool SMESHDS_SubMesh::RemoveSubMesh ( const SMESHDS_SubMesh theSubMesh)
inherited

Friends And Related Function Documentation

friend class SMESH_ProxyMesh
friend

Field Documentation

std::vector<const SMDS_MeshElement *> SMESH_ProxyMesh::SubMesh::_elements
protected
TN2NMap* SMESH_ProxyMesh::SubMesh::_n2n
protected
UVPtStructVec SMESH_ProxyMesh::SubMesh::_uvPtStructVec
protected