Open CASCADE Technology 7.8.2.dev
BRepExtrema_ProximityValueTool Class Reference

Tool class for computation of the proximity value from one BVH primitive set to another, solving max(min) problem. Handles only edge/edge or face/face cases. This tool is not intended to be used independently, and is integrated in other classes, implementing algorithms based on shape tessellation (BRepExtrema_ShapeProximity and BRepExtrema_SelfIntersection). More...

#include <BRepExtrema_ProximityValueTool.hxx>

Public Member Functions

 BRepExtrema_ProximityValueTool ()
 Creates new uninitialized proximity tool.
 
 BRepExtrema_ProximityValueTool (const Handle< BRepExtrema_TriangleSet > &theSet1, const Handle< BRepExtrema_TriangleSet > &theSet2, const BRepExtrema_ShapeList &theShapeList1, const BRepExtrema_ShapeList &theShapeList2)
 Creates new proximity tool for the given element sets.
 
void LoadTriangleSets (const Handle< BRepExtrema_TriangleSet > &theSet1, const Handle< BRepExtrema_TriangleSet > &theSet2)
 Loads the given element sets into the proximity tool.
 
void LoadShapeLists (const BRepExtrema_ShapeList &theShapeList1, const BRepExtrema_ShapeList &theShapeList2)
 Loads the given list of subshapes into the proximity tool.
 
void SetNbSamplePoints (const Standard_Integer theSamples1=0, const Standard_Integer theSamples2=0)
 Sets number of sample points used for proximity calculation for each shape. If number is less or equal zero, all triangulation nodes are used.
 
void Perform (Standard_Real &theTolerance)
 Performs the computation of the proximity value.
 
Standard_Boolean IsDone () const
 Is proximity test completed?
 
void MarkDirty ()
 Marks test results as outdated.
 
Standard_Real Distance () const
 Returns the computed distance.
 
void ProximityPoints (gp_Pnt &thePoint1, gp_Pnt &thePoint2) const
 Returns points on triangles sets, which provide the proximity distance.
 
void ProximityPointsStatus (ProxPnt_Status &thePointStatus1, ProxPnt_Status &thePointStatus2) const
 Returns status of points on triangles sets, which provide the proximity distance.
 

Detailed Description

Tool class for computation of the proximity value from one BVH primitive set to another, solving max(min) problem. Handles only edge/edge or face/face cases. This tool is not intended to be used independently, and is integrated in other classes, implementing algorithms based on shape tessellation (BRepExtrema_ShapeProximity and BRepExtrema_SelfIntersection).

Please note that algorithm results are approximate and depend greatly on the quality of input tessellation(s).

Constructor & Destructor Documentation

◆ BRepExtrema_ProximityValueTool() [1/2]

BRepExtrema_ProximityValueTool::BRepExtrema_ProximityValueTool ( )

Creates new uninitialized proximity tool.

◆ BRepExtrema_ProximityValueTool() [2/2]

BRepExtrema_ProximityValueTool::BRepExtrema_ProximityValueTool ( const Handle< BRepExtrema_TriangleSet > & theSet1,
const Handle< BRepExtrema_TriangleSet > & theSet2,
const BRepExtrema_ShapeList & theShapeList1,
const BRepExtrema_ShapeList & theShapeList2 )

Creates new proximity tool for the given element sets.

Member Function Documentation

◆ Distance()

Standard_Real BRepExtrema_ProximityValueTool::Distance ( ) const
inline

Returns the computed distance.

◆ IsDone()

Standard_Boolean BRepExtrema_ProximityValueTool::IsDone ( ) const
inline

Is proximity test completed?

◆ LoadShapeLists()

void BRepExtrema_ProximityValueTool::LoadShapeLists ( const BRepExtrema_ShapeList & theShapeList1,
const BRepExtrema_ShapeList & theShapeList2 )

Loads the given list of subshapes into the proximity tool.

◆ LoadTriangleSets()

void BRepExtrema_ProximityValueTool::LoadTriangleSets ( const Handle< BRepExtrema_TriangleSet > & theSet1,
const Handle< BRepExtrema_TriangleSet > & theSet2 )

Loads the given element sets into the proximity tool.

◆ MarkDirty()

void BRepExtrema_ProximityValueTool::MarkDirty ( )
inline

Marks test results as outdated.

◆ Perform()

void BRepExtrema_ProximityValueTool::Perform ( Standard_Real & theTolerance)

Performs the computation of the proximity value.

◆ ProximityPoints()

void BRepExtrema_ProximityValueTool::ProximityPoints ( gp_Pnt & thePoint1,
gp_Pnt & thePoint2 ) const
inline

Returns points on triangles sets, which provide the proximity distance.

◆ ProximityPointsStatus()

void BRepExtrema_ProximityValueTool::ProximityPointsStatus ( ProxPnt_Status & thePointStatus1,
ProxPnt_Status & thePointStatus2 ) const
inline

Returns status of points on triangles sets, which provide the proximity distance.

◆ SetNbSamplePoints()

void BRepExtrema_ProximityValueTool::SetNbSamplePoints ( const Standard_Integer theSamples1 = 0,
const Standard_Integer theSamples2 = 0 )

Sets number of sample points used for proximity calculation for each shape. If number is less or equal zero, all triangulation nodes are used.


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