Open CASCADE Technology 7.8.2.dev
Poly_CoherentTriangle Class Reference

#include <Poly_CoherentTriangle.hxx>

Public Member Functions

 Poly_CoherentTriangle ()
 
 Poly_CoherentTriangle (const Standard_Integer iNode0, const Standard_Integer iNode1, const Standard_Integer iNode2)
 
Standard_Integer Node (const Standard_Integer ind) const
 
Standard_Boolean IsEmpty () const
 
Standard_Boolean SetConnection (const Standard_Integer iConn, Poly_CoherentTriangle &theTr)
 
Standard_Boolean SetConnection (Poly_CoherentTriangle &theTri)
 
void RemoveConnection (const Standard_Integer iConn)
 
Standard_Boolean RemoveConnection (Poly_CoherentTriangle &theTri)
 
Standard_Integer NConnections () const
 
Standard_Integer GetConnectedNode (const Standard_Integer iConn) const
 
const Poly_CoherentTriangleGetConnectedTri (const Standard_Integer iConn) const
 
const Poly_CoherentLinkGetLink (const Standard_Integer iLink) const
 
Standard_Integer FindConnection (const Poly_CoherentTriangle &) const
 

Detailed Description

Data class used in Poly_CoherentTriangultion. Implements a triangle with references to its neighbours.

Constructor & Destructor Documentation

◆ Poly_CoherentTriangle() [1/2]

Poly_CoherentTriangle::Poly_CoherentTriangle ( )

Empty constructor.

◆ Poly_CoherentTriangle() [2/2]

Poly_CoherentTriangle::Poly_CoherentTriangle ( const Standard_Integer iNode0,
const Standard_Integer iNode1,
const Standard_Integer iNode2 )

Constructor.

Member Function Documentation

◆ FindConnection()

Standard_Integer Poly_CoherentTriangle::FindConnection ( const Poly_CoherentTriangle & ) const

Returns the index of the connection with the given triangle, or -1 if not found.

◆ GetConnectedNode()

Standard_Integer Poly_CoherentTriangle::GetConnectedNode ( const Standard_Integer iConn) const
inline

Query the connected node on the given side. Returns -1 if there is no connection on the specified side.

◆ GetConnectedTri()

const Poly_CoherentTriangle * Poly_CoherentTriangle::GetConnectedTri ( const Standard_Integer iConn) const
inline

Query the connected triangle on the given side. Returns NULL if there is no connection on the specified side.

◆ GetLink()

const Poly_CoherentLink * Poly_CoherentTriangle::GetLink ( const Standard_Integer iLink) const
inline

Query the Link associate with the given side of the Triangle. May return NULL if there are no links in the triangulation.

◆ IsEmpty()

Standard_Boolean Poly_CoherentTriangle::IsEmpty ( ) const
inline

Set the Node at the given position 'ind'. Query if this is a valid triangle.

◆ NConnections()

Standard_Integer Poly_CoherentTriangle::NConnections ( ) const
inline

Query the number of connected triangles.

◆ Node()

Standard_Integer Poly_CoherentTriangle::Node ( const Standard_Integer ind) const
inline

Query the node index in the position given by the parameter 'ind'

◆ RemoveConnection() [1/2]

void Poly_CoherentTriangle::RemoveConnection ( const Standard_Integer iConn)

Remove the connection with the given index.

Parameters
iConnCan be 0, 1 or 2 - index of the node that is opposite to the connection (shared link).

◆ RemoveConnection() [2/2]

Standard_Boolean Poly_CoherentTriangle::RemoveConnection ( Poly_CoherentTriangle & theTri)

Remove the connection with the given Triangle.

Returns
True if successfuol or False if the connection has not been found.

◆ SetConnection() [1/2]

Standard_Boolean Poly_CoherentTriangle::SetConnection ( const Standard_Integer iConn,
Poly_CoherentTriangle & theTr )

Create connection with another triangle theTri. This method creates both connections: in this triangle and in theTri. You do not need to call the same method on triangle theTr.

Parameters
iConnCan be 0, 1 or 2 - index of the node that is opposite to the connection (shared link).
theTrTriangle that is connected on the given link.
Returns
True if successful, False if the connection is rejected due to improper topology.

◆ SetConnection() [2/2]

Standard_Boolean Poly_CoherentTriangle::SetConnection ( Poly_CoherentTriangle & theTri)

Create connection with another triangle theTri. This method creates both connections: in this triangle and in theTri. This method is slower than the previous one, because it makes analysis what sides of both triangles are connected.

Parameters
theTriTriangle that is connected.
Returns
True if successful, False if the connection is rejected due to improper topology.

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