Open CASCADE Technology 7.8.2.dev
MeshTest_CheckTopology Class Reference

This class checks topology of the mesh presented by triangulations of faces. More...

#include <MeshTest_CheckTopology.hxx>

Public Member Functions

 MeshTest_CheckTopology (const TopoDS_Shape &theShape)
 constructor
 
void Perform (Draw_Interpretor &di)
 performs checking
 
Standard_Integer NbFacesWithFL () const
 returns the number of faces with free links
 
Standard_Integer GetFaceNumWithFL (const Standard_Integer theIndex) const
 returns the number (in the shape) of a face with free links with the given index
 
Standard_Integer NbFreeLinks (const Standard_Integer theIndex) const
 returns the number free links on a face with the given index
 
void GetFreeLink (const Standard_Integer theFaceIndex, const Standard_Integer theLinkIndex, Standard_Integer &theNode1, Standard_Integer &theNode2) const
 gets the numbers of nodes of a free link with the given index in the face with the given index
 
Standard_Integer NbCrossFaceErrors () const
 returns the number of cross face errors
 
void GetCrossFaceError (const Standard_Integer theIndex, Standard_Integer &theFace1, Standard_Integer &theNode1, Standard_Integer &theFace2, Standard_Integer &theNode2, Standard_Real &theValue) const
 gets the attributes of a cross face error with the given index
 
Standard_Integer NbAsyncEdges () const
 returns the number of async edges
 
Standard_Integer GetAsyncEdgeNum (const Standard_Integer theIndex) const
 returns the number (in the shape) of an async edge with the given index
 
Standard_Integer NbFreeNodes () const
 returns the number of free nodes
 
void GetFreeNodeNum (const Standard_Integer theIndex, Standard_Integer &theFaceNum, Standard_Integer &theNodeNum) const
 returns the number of face containing the Index-th detected free node, and number of this node in the triangulation of that face
 
Standard_Integer NbSmallTriangles () const
 Returns number of triangles with null area.
 
void GetSmallTriangle (const Standard_Integer theIndex, Standard_Integer &theFaceNum, Standard_Integer &theNodeNum) const
 returns the number of face containing the Index-th detected small triangle and number of the problematic triangle in this face.
 

Detailed Description

This class checks topology of the mesh presented by triangulations of faces.

The following error are reported:

  • free links. A link is considered free if it has only one neighboring triangle and at least one of its nodes belongs to interior of the face rather than to its boundary.
  • cross face errors. It is a situation when a point on a common boundary between two faces has different 3d coordinates on each triangulation. The error is reported if the distance is greater than a deflection written in triangulations.
  • asynchronous edges. It is an edge having polygons on two neighboring triangulations with different number of points in the polygons.
  • free nodes – nodes not shared by any triangle.

Constructor & Destructor Documentation

◆ MeshTest_CheckTopology()

MeshTest_CheckTopology::MeshTest_CheckTopology ( const TopoDS_Shape & theShape)
inline

constructor

Member Function Documentation

◆ GetAsyncEdgeNum()

Standard_Integer MeshTest_CheckTopology::GetAsyncEdgeNum ( const Standard_Integer theIndex) const
inline

returns the number (in the shape) of an async edge with the given index

◆ GetCrossFaceError()

void MeshTest_CheckTopology::GetCrossFaceError ( const Standard_Integer theIndex,
Standard_Integer & theFace1,
Standard_Integer & theNode1,
Standard_Integer & theFace2,
Standard_Integer & theNode2,
Standard_Real & theValue ) const

gets the attributes of a cross face error with the given index

◆ GetFaceNumWithFL()

Standard_Integer MeshTest_CheckTopology::GetFaceNumWithFL ( const Standard_Integer theIndex) const
inline

returns the number (in the shape) of a face with free links with the given index

◆ GetFreeLink()

void MeshTest_CheckTopology::GetFreeLink ( const Standard_Integer theFaceIndex,
const Standard_Integer theLinkIndex,
Standard_Integer & theNode1,
Standard_Integer & theNode2 ) const

gets the numbers of nodes of a free link with the given index in the face with the given index

◆ GetFreeNodeNum()

void MeshTest_CheckTopology::GetFreeNodeNum ( const Standard_Integer theIndex,
Standard_Integer & theFaceNum,
Standard_Integer & theNodeNum ) const
inline

returns the number of face containing the Index-th detected free node, and number of this node in the triangulation of that face

◆ GetSmallTriangle()

void MeshTest_CheckTopology::GetSmallTriangle ( const Standard_Integer theIndex,
Standard_Integer & theFaceNum,
Standard_Integer & theNodeNum ) const
inline

returns the number of face containing the Index-th detected small triangle and number of the problematic triangle in this face.

◆ NbAsyncEdges()

Standard_Integer MeshTest_CheckTopology::NbAsyncEdges ( ) const
inline

returns the number of async edges

◆ NbCrossFaceErrors()

Standard_Integer MeshTest_CheckTopology::NbCrossFaceErrors ( ) const
inline

returns the number of cross face errors

◆ NbFacesWithFL()

Standard_Integer MeshTest_CheckTopology::NbFacesWithFL ( ) const
inline

returns the number of faces with free links

◆ NbFreeLinks()

Standard_Integer MeshTest_CheckTopology::NbFreeLinks ( const Standard_Integer theIndex) const
inline

returns the number free links on a face with the given index

◆ NbFreeNodes()

Standard_Integer MeshTest_CheckTopology::NbFreeNodes ( ) const
inline

returns the number of free nodes

◆ NbSmallTriangles()

Standard_Integer MeshTest_CheckTopology::NbSmallTriangles ( ) const
inline

Returns number of triangles with null area.

◆ Perform()

void MeshTest_CheckTopology::Perform ( Draw_Interpretor & di)

performs checking


The documentation for this class was generated from the following file: