// File: Extrema_GLocateExtCC.gxx // Created: Wed Jul 6 15:48:49 1994 // Author: Laurent PAINNOT // #include Extrema_ELCC_hxx #include Extrema_LocECC_hxx #include #include #include Extrema_GLocateExtCC::Extrema_GLocateExtCC (const Curve1& C1, const Curve2& C2, const Standard_Real U0, const Standard_Real V0) { Standard_Real TolU = C1.Resolution(Precision::Confusion()); Standard_Real TolV = C2.Resolution(Precision::Confusion()); Extrema_POnCurv P1, P2; // Non implemente pour l instant: l appel a Extrema_ELCC. Extrema_LocECC Xtrem(C1, C2, U0, V0, TolU, TolV); // Exploitation myDone = Xtrem.IsDone(); if (Xtrem.IsDone()) { mySqDist = Xtrem.SquareDistance(); Xtrem.Point(P1, P2); myPoint1 = P1; myPoint2 = P2; } } Standard_Boolean Extrema_GLocateExtCC::IsDone () const { return myDone; } Standard_Real Extrema_GLocateExtCC::SquareDistance() const { if (!myDone) { StdFail_NotDone::Raise(); } return mySqDist; } void Extrema_GLocateExtCC::Point (Extrema_POnCurv& P1, Extrema_POnCurv& P2) const { if (!myDone) { StdFail_NotDone::Raise(); } P1 = myPoint1; P2 = myPoint2; }