Open CASCADE Technology 7.8.0
|
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 unitialized 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. | |
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).
BRepExtrema_ProximityValueTool::BRepExtrema_ProximityValueTool | ( | ) |
Creates new unitialized proximity tool.
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.
|
inline |
Returns the computed distance.
|
inline |
Is proximity test completed?
void BRepExtrema_ProximityValueTool::LoadShapeLists | ( | const BRepExtrema_ShapeList & | theShapeList1, |
const BRepExtrema_ShapeList & | theShapeList2 | ||
) |
Loads the given list of subshapes into the proximity tool.
void BRepExtrema_ProximityValueTool::LoadTriangleSets | ( | const Handle< BRepExtrema_TriangleSet > & | theSet1, |
const Handle< BRepExtrema_TriangleSet > & | theSet2 | ||
) |
Loads the given element sets into the proximity tool.
|
inline |
Marks test results as outdated.
void BRepExtrema_ProximityValueTool::Perform | ( | Standard_Real & | theTolerance | ) |
Performs the computation of the proximity value.
|
inline |
Returns points on triangles sets, which provide the proximity distance.
|
inline |
Returns status of points on triangles sets, which provide the proximity distance.
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.