X-Git-Url: http://git.dev.opencascade.org/gitweb/?p=occt.git;a=blobdiff_plain;f=src%2FApproxInt%2FApproxInt_PrmPrmSvSurfaces.gxx;h=c4534f9d5570edde1a5128ac58c68dd9c6c47745;hp=028e52db73ac4b1df312705eccb4a30aa8fd2e8c;hb=780ee4e25cc8de44daa10216e7e0d3bf963f3f29;hpb=b311480ed597aed47b7bfbf01ddcebb41202bd53 diff --git a/src/ApproxInt/ApproxInt_PrmPrmSvSurfaces.gxx b/src/ApproxInt/ApproxInt_PrmPrmSvSurfaces.gxx old mode 100755 new mode 100644 index 028e52db73..c4534f9d55 --- a/src/ApproxInt/ApproxInt_PrmPrmSvSurfaces.gxx +++ b/src/ApproxInt/ApproxInt_PrmPrmSvSurfaces.gxx @@ -1,29 +1,25 @@ // Created on: 1993-03-17 // Created by: Laurent BUCHARD // Copyright (c) 1993-1999 Matra Datavision -// Copyright (c) 1999-2012 OPEN CASCADE SAS +// Copyright (c) 1999-2014 OPEN CASCADE SAS // -// The content of this file is subject to the Open CASCADE Technology Public -// License Version 6.5 (the "License"). You may not use the content of this file -// except in compliance with the License. Please obtain a copy of the License -// at http://www.opencascade.org and read it completely before using this file. +// This file is part of Open CASCADE Technology software library. // -// The Initial Developer of the Original Code is Open CASCADE S.A.S., having its -// main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France. +// This library is free software; you can redistribute it and/or modify it under +// the terms of the GNU Lesser General Public License version 2.1 as published +// by the Free Software Foundation, with special exception defined in the file +// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT +// distribution for complete text of the license and disclaimer of any warranty. // -// The Original Code and all software distributed under the License is -// distributed on an "AS IS" basis, without warranty of any kind, and the -// Initial Developer hereby disclaims all such warranties, including without -// limitation, any warranties of merchantability, fitness for a particular -// purpose or non-infringement. Please see the License for the specific terms -// and conditions governing the rights and limitations under the License. - +// Alternatively, this file may be used under the terms of Open CASCADE +// commercial license or contractual agreement. #define TOLTANGENCY 0.0000000001 #include #include +#include #define Debug(expr) cout<<" expr :"<Compute(tu1,tv1,tu2,tv2,aP,aT,aTS1,aTS2); -#else this->Compute(tu1,tv1,tu2,tv2,aP,aT,aTS1,aTS2); -#endif P=MyPnt; } + +//======================================================================= +//function : SeekPoint +//purpose : Computes point on curve and +// parameters on the surfaces. +//======================================================================= +Standard_Boolean ApproxInt_PrmPrmSvSurfaces::SeekPoint(const Standard_Real u1, + const Standard_Real v1, + const Standard_Real u2, + const Standard_Real v2, + IntSurf_PntOn2S& Point) +{ + gp_Pnt aP; + gp_Vec aT; + gp_Vec2d aTS1,aTS2; + Standard_Real tu1=u1; + Standard_Real tu2=u2; + Standard_Real tv1=v1; + Standard_Real tv2=v2; + if (!Compute(tu1,tv1,tu2,tv2,aP,aT,aTS1,aTS2)) + return Standard_False; + + Point.SetValue(aP, tu1,tv1,tu2,tv2); + return Standard_True; +} //-------------------------------------------------------------------------------- Standard_Boolean ApproxInt_PrmPrmSvSurfaces::Tangency(const Standard_Real u1, const Standard_Real v1,