|
Open CASCADE Technology
6.7.1
|
The class provides Edge/Edge intersection algorithm
based on the intersection between edges bounding boxes.
More...
#include <IntTools_EdgeEdge.hxx>
Public Member Functions | |
| IntTools_EdgeEdge () | |
| Empty contructor More... | |
| ~IntTools_EdgeEdge () | |
| IntTools_EdgeEdge (const TopoDS_Edge &theEdge1, const TopoDS_Edge &theEdge2) | |
| Contructor More... | |
| IntTools_EdgeEdge (const TopoDS_Edge &theEdge1, const Standard_Real aT11, const Standard_Real aT12, const TopoDS_Edge &theEdge2, const Standard_Real aT21, const Standard_Real aT22) | |
| Contructor More... | |
| void | SetEdge1 (const TopoDS_Edge &theEdge) |
| Sets the first edge More... | |
| void | SetEdge1 (const TopoDS_Edge &theEdge, const Standard_Real aT1, const Standard_Real aT2) |
| Sets the first edge and its range More... | |
| void | SetRange1 (const IntTools_Range &theRange1) |
| Sets the range for the first edge More... | |
| void | SetRange1 (const Standard_Real aT1, const Standard_Real aT2) |
| Sets the range for the first edge More... | |
| void | SetEdge2 (const TopoDS_Edge &theEdge) |
| Sets the second edge More... | |
| void | SetEdge2 (const TopoDS_Edge &theEdge, const Standard_Real aT1, const Standard_Real aT2) |
| Sets the first edge and its range More... | |
| void | SetRange2 (const IntTools_Range &theRange) |
| Sets the range for the second edge More... | |
| void | SetRange2 (const Standard_Real aT1, const Standard_Real aT2) |
| Sets the range for the second edge More... | |
| void | Perform () |
| Performs the intersection between edges More... | |
| Standard_Boolean | IsDone () const |
| Returns TRUE if common part(s) is(are) found More... | |
| const IntTools_SequenceOfCommonPrts & | CommonParts () const |
| Returns common parts More... | |
Protected Member Functions | |
| void | CheckData () |
| Checks the data More... | |
| void | Prepare () |
| Prepares the data More... | |
| void | ComputeLineLine () |
| Computes Line/Line intersection. More... | |
| void | FindSolutions (const IntTools_Range &theR1, const IntTools_Range &theR2, IntTools_SequenceOfRanges &theRanges1, IntTools_SequenceOfRanges &theRanges2) |
| Looking for the exact intersection ranges More... | |
| void | MergeSolutions (const IntTools_SequenceOfRanges &theRanges1, const IntTools_SequenceOfRanges &theRanges2) |
| Merges found solutions More... | |
| Standard_Integer | CheckCoincidence (const Standard_Real aT11, const Standard_Real aT12, const Standard_Real aT21, const Standard_Real aT22, const Standard_Real theCriteria, const Standard_Real theCurveRes1) |
| Checks if edges coincide on the ranges More... | |
| void | AddSolution (const Standard_Real aT11, const Standard_Real aT12, const Standard_Real aT21, const Standard_Real aT22, const TopAbs_ShapeEnum theType) |
| Adds common part of the given type to myCommonParts More... | |
| void | FindBestSolution (const Standard_Real aT11, const Standard_Real aT12, const Standard_Real aT21, const Standard_Real aT22, Standard_Real &aT1, Standard_Real &aT2) |
| Looking for the minimal distance between edges on the ranges More... | |
| Standard_Boolean | IsIntersection (const Standard_Real aT11, const Standard_Real aT12, const Standard_Real aT21, const Standard_Real aT22) |
| Checks is there an intersection between edges on the given ranges (for nearly conicident edges) More... | |
Static Protected Member Functions | |
| static Standard_Boolean | FindParameters (const BRepAdaptor_Curve &theBAC, const Standard_Real aT1, const Standard_Real aT2, const Standard_Real theRes, const Standard_Real thePTol, const Bnd_Box &theCBox, Standard_Real &aTB1, Standard_Real &aTB2) |
| Looking for the range of the edge whick is in the box More... | |
The class provides Edge/Edge intersection algorithm
based on the intersection between edges bounding boxes.
| IntTools_EdgeEdge::IntTools_EdgeEdge | ( | ) |
Empty contructor
| IntTools_EdgeEdge::~IntTools_EdgeEdge | ( | ) |
| IntTools_EdgeEdge::IntTools_EdgeEdge | ( | const TopoDS_Edge & | theEdge1, |
| const TopoDS_Edge & | theEdge2 | ||
| ) |
Contructor
| IntTools_EdgeEdge::IntTools_EdgeEdge | ( | const TopoDS_Edge & | theEdge1, |
| const Standard_Real | aT11, | ||
| const Standard_Real | aT12, | ||
| const TopoDS_Edge & | theEdge2, | ||
| const Standard_Real | aT21, | ||
| const Standard_Real | aT22 | ||
| ) |
Contructor
|
protected |
Adds common part of the given type to myCommonParts
|
protected |
Checks if edges coincide on the ranges
|
protected |
Checks the data
| const IntTools_SequenceOfCommonPrts& IntTools_EdgeEdge::CommonParts | ( | ) | const |
Returns common parts
|
protected |
Computes Line/Line intersection.
|
protected |
Looking for the minimal distance between edges on the ranges
|
staticprotected |
Looking for the range of the edge whick is in the box
|
protected |
Looking for the exact intersection ranges
| Standard_Boolean IntTools_EdgeEdge::IsDone | ( | ) | const |
Returns TRUE if common part(s) is(are) found
|
protected |
Checks is there an intersection between edges on the given ranges
(for nearly conicident edges)
|
protected |
Merges found solutions
| void IntTools_EdgeEdge::Perform | ( | ) |
Performs the intersection between edges
|
protected |
Prepares the data
| void IntTools_EdgeEdge::SetEdge1 | ( | const TopoDS_Edge & | theEdge | ) |
Sets the first edge
| void IntTools_EdgeEdge::SetEdge1 | ( | const TopoDS_Edge & | theEdge, |
| const Standard_Real | aT1, | ||
| const Standard_Real | aT2 | ||
| ) |
Sets the first edge and its range
| void IntTools_EdgeEdge::SetEdge2 | ( | const TopoDS_Edge & | theEdge | ) |
Sets the second edge
| void IntTools_EdgeEdge::SetEdge2 | ( | const TopoDS_Edge & | theEdge, |
| const Standard_Real | aT1, | ||
| const Standard_Real | aT2 | ||
| ) |
Sets the first edge and its range
| void IntTools_EdgeEdge::SetRange1 | ( | const IntTools_Range & | theRange1 | ) |
Sets the range for the first edge
| void IntTools_EdgeEdge::SetRange1 | ( | const Standard_Real | aT1, |
| const Standard_Real | aT2 | ||
| ) |
Sets the range for the first edge
| void IntTools_EdgeEdge::SetRange2 | ( | const IntTools_Range & | theRange | ) |
Sets the range for the second edge
| void IntTools_EdgeEdge::SetRange2 | ( | const Standard_Real | aT1, |
| const Standard_Real | aT2 | ||
| ) |
Sets the range for the second edge
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
1.8.5