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

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_Surface > & 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_Surface > & 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_Surface > & 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: