return myInverseElements.IsEmpty() != Standard_False;
}
+//================================================================================
+/*!
+ * \brief Count inverse elements of given type
+ */
+//================================================================================
+
+int SMDS_MeshNode::NbInverseNodes(SMDSAbs_ElementType type) const
+{
+ if ( type == SMDSAbs_All )
+ return myInverseElements.Extent();
+ int nb = 0;
+ NCollection_List<const SMDS_MeshElement*>::Iterator it( myInverseElements );
+ for ( ; it.More(); it.Next() )
+ if ( it.Value()->GetType() == type )
+ nb++;
+ return nb;
+}
+
///////////////////////////////////////////////////////////////////////////////
/// To be used with STL set
///////////////////////////////////////////////////////////////////////////////
void ClearInverseElements();
bool emptyInverseElements();
SMDS_ElemIteratorPtr GetInverseElementIterator(SMDSAbs_ElementType type=SMDSAbs_All) const;
- int NbInverseNodes() const { return myInverseElements.Extent(); }
+ int NbInverseNodes(SMDSAbs_ElementType type=SMDSAbs_All) const;
void SetPosition(const SMDS_PositionPtr& aPos);
const SMDS_PositionPtr& GetPosition() const;
SMDSAbs_ElementType GetType() const;