Open CASCADE Technology  7.4.0
Public Member Functions
IntPolyh_Triangle Class Reference

The class represents the triangle built from three IntPolyh points and three IntPolyh edges. More...

#include <IntPolyh_Triangle.hxx>

Public Member Functions

 IntPolyh_Triangle ()
 Constructor. More...
 
 IntPolyh_Triangle (const Standard_Integer thePoint1, const Standard_Integer thePoint2, const Standard_Integer thePoint3)
 Constructor. More...
 
Standard_Integer FirstPoint () const
 Returns the first point. More...
 
Standard_Integer SecondPoint () const
 Returns the second point. More...
 
Standard_Integer ThirdPoint () const
 Returns the third point. More...
 
Standard_Integer FirstEdge () const
 Returns the first edge. More...
 
Standard_Integer FirstEdgeOrientation () const
 Returns the orientation of the first edge. More...
 
Standard_Integer SecondEdge () const
 Returns the second edge. More...
 
Standard_Integer SecondEdgeOrientation () const
 Returns the orientation of the second edge. More...
 
Standard_Integer ThirdEdge () const
 Returns the third edge. More...
 
Standard_Integer ThirdEdgeOrientation () const
 Returns the orientation of the third edge. More...
 
Standard_Real Deflection () const
 Returns the deflection of the triangle. More...
 
Standard_Boolean IsIntersectionPossible () const
 Returns possibility of the intersection. More...
 
Standard_Boolean HasIntersection () const
 Returns true if the triangle has interfered the other triangle. More...
 
Standard_Boolean IsDegenerated () const
 Returns the Degenerated flag. More...
 
void SetFirstPoint (const Standard_Integer thePoint)
 Sets the first point. More...
 
void SetSecondPoint (const Standard_Integer thePoint)
 Sets the second point. More...
 
void SetThirdPoint (const Standard_Integer thePoint)
 Sets the third point. More...
 
void SetFirstEdge (const Standard_Integer theEdge, const Standard_Integer theEdgeOrientation)
 Sets the first edge. More...
 
void SetSecondEdge (const Standard_Integer theEdge, const Standard_Integer theEdgeOrientation)
 Sets the second edge. More...
 
void SetThirdEdge (const Standard_Integer theEdge, const Standard_Integer theEdgeOrientation)
 Sets the third edge. More...
 
void SetDeflection (const Standard_Real theDeflection)
 Sets the deflection. More...
 
void SetIntersectionPossible (const Standard_Boolean theIP)
 Sets the flag of possibility of intersection. More...
 
void SetIntersection (const Standard_Boolean theInt)
 Sets the flag of intersection. More...
 
void SetDegenerated (const Standard_Boolean theDegFlag)
 Sets the degenerated flag. More...
 
Standard_Integer GetEdgeNumber (const Standard_Integer theEdgeIndex) const
 Gets the edge number by the index. More...
 
void SetEdge (const Standard_Integer theEdgeIndex, const Standard_Integer theEdgeNumber)
 Sets the edge by the index. More...
 
Standard_Integer GetEdgeOrientation (const Standard_Integer theEdgeIndex) const
 Gets the edges orientation by the index. More...
 
void SetEdgeOrientation (const Standard_Integer theEdgeIndex, const Standard_Integer theEdgeOrientation)
 Sets the edges orientation by the index. More...
 
Standard_Real ComputeDeflection (const Handle< Adaptor3d_HSurface > &theSurface, const IntPolyh_ArrayOfPoints &thePoints)
 Computes the deflection for the triangle. More...
 
Standard_Integer GetNextTriangle (const Standard_Integer theTriangle, const Standard_Integer theEdgeNum, const IntPolyh_ArrayOfEdges &TEdges) const
 Gets the adjacent triangle. More...
 
void MiddleRefinement (const Standard_Integer theTriangleNumber, const Handle< Adaptor3d_HSurface > &theSurface, IntPolyh_ArrayOfPoints &TPoints, IntPolyh_ArrayOfTriangles &TTriangles, IntPolyh_ArrayOfEdges &TEdges)
 Splits the triangle on two to decrease its deflection. More...
 
void MultipleMiddleRefinement (const Standard_Real theRefineCriterion, const Bnd_Box &theBox, const Standard_Integer theTriangleNumber, const Handle< Adaptor3d_HSurface > &theSurface, IntPolyh_ArrayOfPoints &TPoints, IntPolyh_ArrayOfTriangles &TTriangles, IntPolyh_ArrayOfEdges &TEdges)
 Splits the current triangle and new triangles until the refinement criterion is not achieved. More...
 
void LinkEdges2Triangle (const IntPolyh_ArrayOfEdges &TEdges, const Standard_Integer theEdge1, const Standard_Integer theEdge2, const Standard_Integer theEdge3)
 Links edges to triangle. More...
 
void SetEdgeAndOrientation (const IntPolyh_Edge &theEdge, const Standard_Integer theEdgeIndex)
 Sets the appropriate edge and orientation for the triangle. More...
 
const Bnd_BoxBoundingBox (const IntPolyh_ArrayOfPoints &thePoints)
 Returns the bounding box of the triangle. More...
 
void Dump (const Standard_Integer v) const
 Dumps the contents of the triangle. More...
 

Detailed Description

The class represents the triangle built from three IntPolyh points and three IntPolyh edges.

Constructor & Destructor Documentation

◆ IntPolyh_Triangle() [1/2]

IntPolyh_Triangle::IntPolyh_Triangle ( )
inline

Constructor.

◆ IntPolyh_Triangle() [2/2]

IntPolyh_Triangle::IntPolyh_Triangle ( const Standard_Integer  thePoint1,
const Standard_Integer  thePoint2,
const Standard_Integer  thePoint3 
)
inline

Constructor.

Member Function Documentation

◆ BoundingBox()

const Bnd_Box& IntPolyh_Triangle::BoundingBox ( const IntPolyh_ArrayOfPoints thePoints)

Returns the bounding box of the triangle.

◆ ComputeDeflection()

Standard_Real IntPolyh_Triangle::ComputeDeflection ( const Handle< Adaptor3d_HSurface > &  theSurface,
const IntPolyh_ArrayOfPoints thePoints 
)

Computes the deflection for the triangle.

◆ Deflection()

Standard_Real IntPolyh_Triangle::Deflection ( ) const
inline

Returns the deflection of the triangle.

◆ Dump()

void IntPolyh_Triangle::Dump ( const Standard_Integer  v) const

Dumps the contents of the triangle.

◆ FirstEdge()

Standard_Integer IntPolyh_Triangle::FirstEdge ( ) const
inline

Returns the first edge.

◆ FirstEdgeOrientation()

Standard_Integer IntPolyh_Triangle::FirstEdgeOrientation ( ) const
inline

Returns the orientation of the first edge.

◆ FirstPoint()

Standard_Integer IntPolyh_Triangle::FirstPoint ( ) const
inline

Returns the first point.

◆ GetEdgeNumber()

Standard_Integer IntPolyh_Triangle::GetEdgeNumber ( const Standard_Integer  theEdgeIndex) const
inline

Gets the edge number by the index.

◆ GetEdgeOrientation()

Standard_Integer IntPolyh_Triangle::GetEdgeOrientation ( const Standard_Integer  theEdgeIndex) const
inline

Gets the edges orientation by the index.

◆ GetNextTriangle()

Standard_Integer IntPolyh_Triangle::GetNextTriangle ( const Standard_Integer  theTriangle,
const Standard_Integer  theEdgeNum,
const IntPolyh_ArrayOfEdges TEdges 
) const

Gets the adjacent triangle.

◆ HasIntersection()

Standard_Boolean IntPolyh_Triangle::HasIntersection ( ) const
inline

Returns true if the triangle has interfered the other triangle.

◆ IsDegenerated()

Standard_Boolean IntPolyh_Triangle::IsDegenerated ( ) const
inline

Returns the Degenerated flag.

◆ IsIntersectionPossible()

Standard_Boolean IntPolyh_Triangle::IsIntersectionPossible ( ) const
inline

Returns possibility of the intersection.

◆ LinkEdges2Triangle()

void IntPolyh_Triangle::LinkEdges2Triangle ( const IntPolyh_ArrayOfEdges TEdges,
const Standard_Integer  theEdge1,
const Standard_Integer  theEdge2,
const Standard_Integer  theEdge3 
)

Links edges to triangle.

◆ MiddleRefinement()

void IntPolyh_Triangle::MiddleRefinement ( const Standard_Integer  theTriangleNumber,
const Handle< Adaptor3d_HSurface > &  theSurface,
IntPolyh_ArrayOfPoints TPoints,
IntPolyh_ArrayOfTriangles TTriangles,
IntPolyh_ArrayOfEdges TEdges 
)

Splits the triangle on two to decrease its deflection.

◆ MultipleMiddleRefinement()

void IntPolyh_Triangle::MultipleMiddleRefinement ( const Standard_Real  theRefineCriterion,
const Bnd_Box theBox,
const Standard_Integer  theTriangleNumber,
const Handle< Adaptor3d_HSurface > &  theSurface,
IntPolyh_ArrayOfPoints TPoints,
IntPolyh_ArrayOfTriangles TTriangles,
IntPolyh_ArrayOfEdges TEdges 
)

Splits the current triangle and new triangles until the refinement criterion is not achieved.

◆ SecondEdge()

Standard_Integer IntPolyh_Triangle::SecondEdge ( ) const
inline

Returns the second edge.

◆ SecondEdgeOrientation()

Standard_Integer IntPolyh_Triangle::SecondEdgeOrientation ( ) const
inline

Returns the orientation of the second edge.

◆ SecondPoint()

Standard_Integer IntPolyh_Triangle::SecondPoint ( ) const
inline

Returns the second point.

◆ SetDeflection()

void IntPolyh_Triangle::SetDeflection ( const Standard_Real  theDeflection)
inline

Sets the deflection.

◆ SetDegenerated()

void IntPolyh_Triangle::SetDegenerated ( const Standard_Boolean  theDegFlag)
inline

Sets the degenerated flag.

◆ SetEdge()

void IntPolyh_Triangle::SetEdge ( const Standard_Integer  theEdgeIndex,
const Standard_Integer  theEdgeNumber 
)
inline

Sets the edge by the index.

◆ SetEdgeAndOrientation()

void IntPolyh_Triangle::SetEdgeAndOrientation ( const IntPolyh_Edge theEdge,
const Standard_Integer  theEdgeIndex 
)

Sets the appropriate edge and orientation for the triangle.

◆ SetEdgeOrientation()

void IntPolyh_Triangle::SetEdgeOrientation ( const Standard_Integer  theEdgeIndex,
const Standard_Integer  theEdgeOrientation 
)
inline

Sets the edges orientation by the index.

◆ SetFirstEdge()

void IntPolyh_Triangle::SetFirstEdge ( const Standard_Integer  theEdge,
const Standard_Integer  theEdgeOrientation 
)
inline

Sets the first edge.

◆ SetFirstPoint()

void IntPolyh_Triangle::SetFirstPoint ( const Standard_Integer  thePoint)
inline

Sets the first point.

◆ SetIntersection()

void IntPolyh_Triangle::SetIntersection ( const Standard_Boolean  theInt)
inline

Sets the flag of intersection.

◆ SetIntersectionPossible()

void IntPolyh_Triangle::SetIntersectionPossible ( const Standard_Boolean  theIP)
inline

Sets the flag of possibility of intersection.

◆ SetSecondEdge()

void IntPolyh_Triangle::SetSecondEdge ( const Standard_Integer  theEdge,
const Standard_Integer  theEdgeOrientation 
)
inline

Sets the second edge.

◆ SetSecondPoint()

void IntPolyh_Triangle::SetSecondPoint ( const Standard_Integer  thePoint)
inline

Sets the second point.

◆ SetThirdEdge()

void IntPolyh_Triangle::SetThirdEdge ( const Standard_Integer  theEdge,
const Standard_Integer  theEdgeOrientation 
)
inline

Sets the third edge.

◆ SetThirdPoint()

void IntPolyh_Triangle::SetThirdPoint ( const Standard_Integer  thePoint)
inline

Sets the third point.

◆ ThirdEdge()

Standard_Integer IntPolyh_Triangle::ThirdEdge ( ) const
inline

Returns the third edge.

◆ ThirdEdgeOrientation()

Standard_Integer IntPolyh_Triangle::ThirdEdgeOrientation ( ) const
inline

Returns the orientation of the third edge.

◆ ThirdPoint()

Standard_Integer IntPolyh_Triangle::ThirdPoint ( ) const
inline

Returns the third point.


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