|
Public Member Functions |
void * | operator new (size_t, void *anAddress) |
void * | operator new (size_t size) |
void | operator delete (void *anAddress) |
Standard_EXPORT | IntTools_EdgeEdge () |
| Empty constructor
.
|
Standard_EXPORT void | SetEdge1 (const TopoDS_Edge &anEdge) |
| Sets the first edge
.
|
Standard_EXPORT void | SetTolerance1 (const Standard_Real aTolEdge1) |
| Sets the value of tolerance pipe for the first edge
.
|
Standard_EXPORT void | SetEdge2 (const TopoDS_Edge &anEdge) |
| Sets the second edge
.
|
Standard_EXPORT void | SetTolerance2 (const Standard_Real aTolEdge2) |
| Sets the value of tolerance pipe for the first edge
.
|
Standard_EXPORT 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
.
|
Standard_EXPORT void | SetDeflection (const Standard_Real aDeflection) |
| Sets the value of maximum reative deflection between
the two nearest points on a curve.
.
|
Standard_EXPORT void | SetEpsilonT (const Standard_Real anEpsT) |
| Sets the criteria of equality of two arguments,
i.e. |t2-t1|<anEpsT will mean that t2=t1
.
|
Standard_EXPORT 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)
.
|
Standard_EXPORT void | SetRange1 (const IntTools_Range &aRange) |
Standard_EXPORT void | SetRange2 (const IntTools_Range &aRange) |
Standard_EXPORT void | SetRange1 (const Standard_Real aFirst, const Standard_Real aLast) |
Standard_EXPORT void | SetRange2 (const Standard_Real aFirst, const Standard_Real aLast) |
Standard_EXPORT void | Perform () |
| The main method of the algorithm to determine
common parts between two edges in 3-d space
.
|
Standard_EXPORT Standard_Boolean | IsDone () const |
| True if the common parts are found
.
|
Standard_EXPORT Standard_Boolean | Order () const |
| False if the common parts are coherented with Edge1, Edge2
.
|
Standard_EXPORT Standard_Integer | ErrorStatus () const |
| Returns the number that corresponds to the error.
The list of error-codes is in ...cxx file
.
|
Standard_EXPORT const IntTools_SequenceOfCommonPrts & | CommonParts () const |
| Returns the common parts (Output)
.
|
Standard_EXPORT const IntTools_Range & | Range1 () const |
Standard_EXPORT const IntTools_Range & | Range2 () const |
Private Member Functions |
Standard_EXPORT 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.
.
|
Standard_EXPORT void | Prepare () |
| Preparing the main fields for the algorithm
* From-Curve (myCFrom,myTminFrom,myTmaxFrom),
* To -Curve (myCTo ,myTminTo ,myTmaxTo ),
* myCreiteria=myTol1+myTol2 ,
* myProjectableRanges.
.
|
Standard_EXPORT 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_EXPORT void | FindProjectableRoot (const Standard_Real t1, const Standard_Real t2, const Standard_Integer f1, const Standard_Integer f2, Standard_Real &tRoot) |
| Find a bound of a projectable range for the From-Curve
using bisection method.
t1, t2 - interval for searching along t.
f1, f2 - values of the function IsProjectable()
at t1 and t2.
.
|
Standard_EXPORT 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_EXPORT Standard_Real | DerivativeFunction (const Standard_Real t) |
| Calculates the first derivative of
the DistanceFunction D(t).
.
|
Standard_EXPORT 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_EXPORT Standard_Real | FindGoldRoot (const Standard_Real ta, const Standard_Real tb, const Standard_Real coeff) |
| Find the Root of the function on given interval
of the argument [ta,tb] using Fibonacci method .
.
|
Standard_EXPORT 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_EXPORT 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_EXPORT Standard_Integer | TreatVertexType (const Standard_Real am1, const Standard_Real am2, IntTools_CommonPrt &aCP) |
Standard_EXPORT void | IsIntersection (const Standard_Real t1, const Standard_Real t2) |
Standard_EXPORT void | FindDerivativeRoot (const IntTools_CArray1OfReal &t, const IntTools_CArray1OfReal &f) |
Standard_EXPORT void | RemoveIdenticalRoots () |
Standard_EXPORT Standard_Boolean | CheckTouch (const IntTools_CommonPrt &aCP, Standard_Real &t1, Standard_Real &t2) |
Standard_EXPORT Standard_Boolean | CheckTouchVertex (const IntTools_CommonPrt &aCP, Standard_Real &t1, Standard_Real &t2) const |
Standard_EXPORT Standard_Boolean | CheckInterval (const Standard_Real t1, const Standard_Real t2) |
Private Attributes |
TopoDS_Edge | myEdge1 |
TopoDS_Edge | myEdge2 |
Standard_Real | myTol1 |
Standard_Real | myTol2 |
Standard_Integer | myDiscret |
Standard_Real | myEpsT |
Standard_Real | myEpsNull |
Standard_Real | myDeflection |
BRepAdaptor_Curve | myCFrom |
Standard_Real | myTminFrom |
Standard_Real | myTmaxFrom |
Standard_Real | myTolFrom |
BRepAdaptor_Curve | myCTo |
Standard_Real | myTminTo |
Standard_Real | myTmaxTo |
Standard_Real | myTolTo |
Standard_Real | myCriteria |
Standard_Boolean | myIsDone |
Standard_Integer | myErrorStatus |
IntTools_SequenceOfRanges | myProjectableRanges |
IntTools_CArray1OfReal | myFuncArray |
IntTools_CArray1OfReal | myArgsArray |
IntTools_SequenceOfRoots | mySequenceOfRoots |
IntTools_SequenceOfCommonPrts | mySeqOfCommonPrts |
Standard_Boolean | myOrder |
Standard_Real | myPar1 |
Standard_Boolean | myParallel |
Standard_Boolean | myAllNullFlag |
IntTools_Range | myRange1 |
IntTools_Range | myRange2 |