Public Member Functions |
| IntTools_EdgeEdge () |
| Empty constructor
|
void | SetEdge1 (const TopoDS_Edge &anEdge) |
| Sets the first edge
|
void | SetTolerance1 (const Standard_Real aTolEdge1) |
| Sets the value of tolerance pipe for the first edge
|
void | SetEdge2 (const TopoDS_Edge &anEdge) |
| Sets the second edge
|
void | SetTolerance2 (const Standard_Real aTolEdge2) |
| Sets the value of tolerance pipe for the first edge
|
void | SetDiscretize (const Standard_Integer aDiscret) |
| Sets the number of division for the shortest
edge among the two. The deflection is not taken
into account
|
void | SetDeflection (const Standard_Real aDeflection) |
| Sets the value of maximum reative deflection between
the two nearest points on a curve.
|
void | SetEpsilonT (const Standard_Real anEpsT) |
| Sets the criteria of equality of two arguments,
i.e. |t2-t1|<anEpsT will mean that t2=t1
|
void | SetEpsilonNull (const Standard_Real anEpsNull) |
| Sets the criteria of equality of two functions' values
i.e. |f(t2)-f(t1)|<anEpsNull will mean that f(t2)=f(t1)
|
void | SetRange1 (const IntTools_Range &aRange) |
void | SetRange2 (const IntTools_Range &aRange) |
void | SetRange1 (const Standard_Real aFirst, const Standard_Real aLast) |
void | SetRange2 (const Standard_Real aFirst, const Standard_Real aLast) |
void | Perform () |
| The main method of the algorithm to determine
common parts between two edges in 3-d space
|
Standard_Boolean | IsDone () const |
| True if the common parts are found
|
Standard_Boolean | Order () const |
| False if the common parts are coherented with Edge1, Edge2
|
Standard_Integer | ErrorStatus () const |
| Returns the number that corresponds to the error.
The list of error-codes is in ...cxx file
|
const
IntTools_SequenceOfCommonPrts & | CommonParts () const |
| Returns the common parts (Output)
|
const IntTools_Range & | Range1 () const |
const IntTools_Range & | Range2 () const |
Protected Member Functions |
void | CheckData () |
| Fool-proof chechking the input data.
The following data is not available
* Degenerated edges is not available;
* Egdes, that don't contain 3d-curve.
|
void | Prepare () |
| Preparing the main fields for the algorithm
* From-Curve (myCFrom,myTminFrom,myTmaxFrom),
* To -Curve (myCTo ,myTminTo ,myTmaxTo ),
* myCreiteria=myTol1+myTol2 ,
* myProjectableRanges.
|
Standard_Integer | IsProjectable (const Standard_Real t) const |
| Returns the flag 1 if it is possible to project
the point from the From-Curve at the parameter t
to the To-Curve.
Othrwise it returns 0.
|
Standard_Integer | FindRangeOnCurve2 (IntTools_CommonPrt &aCP) |
| Find the range on the curve Curve-To that corresponds
to the given range on the curve Curve-From.
|
Standard_Integer | GetParameterOnCurve2 (const Standard_Real aT1, Standard_Real &aT2) const |
| Find the value of the parameter on the curve Curve-To
that corresponds to the given parameter on the curve
Curve-From.
|
Standard_Integer | TreatVertexType (const Standard_Real am1, const Standard_Real am2, IntTools_CommonPrt &aCP) |
void | IsIntersection (const Standard_Real t1, const Standard_Real t2) |
void | FindDerivativeRoot (const IntTools_CArray1OfReal &t, const IntTools_CArray1OfReal &f) |
Standard_Real | FindSimpleRoot (const Standard_Integer IP, const Standard_Real ta, const Standard_Real tb, const Standard_Real fA) |
| Find the Root of the function on given interval
of the argument [ta,tb] using bisection method .
IP - a flag;
=1 - use DistanceFunction;
=2 - use DerivativeFunction;
|
Standard_Real | DistanceFunction (const Standard_Real t) |
| Calculates the DistanceFunction D(t).
D(t)=D1(t) - myCriteria;
where
D1(t) - the lower distance between a point from
the From-Curve at parameter t and
projection point of this point on To-Curve;
myCriteria=myTol1+myTol2.
|
Standard_Real | DerivativeFunction (const Standard_Real t) |
| Calculates the first derivative of
the DistanceFunction D(t).
|
Standard_Boolean | CheckTouch (const IntTools_CommonPrt &aCP, Standard_Real &t1, Standard_Real &t2) |
Standard_Boolean | CheckTouchVertex (const IntTools_CommonPrt &aCP, Standard_Real &t1, Standard_Real &t2) const |
void | ComputeLineLine () |
Standard_Boolean | IsSameCurves () |