The class provides Edge/Edge intersection algorithm based on the intersection between edges bounding boxes.
More...
|
| IntTools_EdgeEdge () |
| Empty constructor.
|
|
| ~IntTools_EdgeEdge () |
| Destructor.
|
|
| IntTools_EdgeEdge (const TopoDS_Edge &theEdge1, const TopoDS_Edge &theEdge2) |
| Constructor.
|
|
| 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) |
| Constructor.
|
|
void | SetEdge1 (const TopoDS_Edge &theEdge) |
| Sets the first edge.
|
|
void | SetEdge1 (const TopoDS_Edge &theEdge, const Standard_Real aT1, const Standard_Real aT2) |
| Sets the first edge and its range.
|
|
void | SetRange1 (const IntTools_Range &theRange1) |
| Sets the range for the first edge.
|
|
void | SetRange1 (const Standard_Real aT1, const Standard_Real aT2) |
| Sets the range for the first edge.
|
|
void | SetEdge2 (const TopoDS_Edge &theEdge) |
| Sets the second edge.
|
|
void | SetEdge2 (const TopoDS_Edge &theEdge, const Standard_Real aT1, const Standard_Real aT2) |
| Sets the first edge and its range.
|
|
void | SetRange2 (const IntTools_Range &theRange) |
| Sets the range for the second edge.
|
|
void | SetRange2 (const Standard_Real aT1, const Standard_Real aT2) |
| Sets the range for the second edge.
|
|
void | SetFuzzyValue (const Standard_Real theFuzz) |
| Sets the Fuzzy value.
|
|
void | Perform () |
| Performs the intersection between edges.
|
|
Standard_Boolean | IsDone () const |
| Returns TRUE if common part(s) is(are) found.
|
|
Standard_Real | FuzzyValue () const |
| Returns Fuzzy value.
|
|
const IntTools_SequenceOfCommonPrts & | CommonParts () const |
| Returns common parts.
|
|
void | UseQuickCoincidenceCheck (const Standard_Boolean bFlag) |
| Sets the flag myQuickCoincidenceCheck.
|
|
Standard_Boolean | IsCoincidenceCheckedQuickly () |
| Returns the flag myQuickCoincidenceCheck.
|
|
|
void | CheckData () |
| Checks the data.
|
|
void | Prepare () |
| Prepares the data.
|
|
void | ComputeLineLine () |
| Computes Line/Line intersection.
|
|
void | FindSolutions (IntTools_SequenceOfRanges &theRanges1, IntTools_SequenceOfRanges &theRanges2, Standard_Boolean &bSplit2) |
| Intermediate function.
|
|
void | FindSolutions (const IntTools_Range &theR1, const Bnd_Box &theBox1, const IntTools_Range &theR2, const Bnd_Box &theBox2, IntTools_SequenceOfRanges &theRanges1, IntTools_SequenceOfRanges &theRanges2) |
| Looking for the exact intersection ranges.
|
|
void | MergeSolutions (const IntTools_SequenceOfRanges &theRanges1, const IntTools_SequenceOfRanges &theRanges2, const Standard_Boolean bSplit2) |
| Merges found solutions.
|
|
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.
|
|
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.
|
|
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.
|
|
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)
|
|
Standard_Boolean | IsCoincident () |
| Checks if the edges are coincident really.
|
|
The class provides Edge/Edge intersection algorithm based on the intersection between edges bounding boxes.