+++ /dev/null
-diff -Naur --exclude=CVS OCCT-6.5.3_SRC_orig/inc/ApproxInt_PrmPrmSvSurfaces.gxx OCCT-6.5.3_SRC_patch/inc/ApproxInt_PrmPrmSvSurfaces.gxx
---- OCCT-6.5.3_SRC_orig/inc/ApproxInt_PrmPrmSvSurfaces.gxx 2012-04-13 16:38:37.000000000 +0400
-+++ OCCT-6.5.3_SRC_patch/inc/ApproxInt_PrmPrmSvSurfaces.gxx 2012-05-18 12:29:02.000000000 +0400
-@@ -24,6 +24,7 @@
-
- #include <TColStd_Array1OfReal.hxx>
- #include <math_FunctionSetRoot.hxx>
-+#include <Precision.hxx>
-
- #define Debug(expr) cout<<" expr :"<<expr;
- #define MySurf1 MyIntersectionOn2S.Function().AuxillarSurface1()
-@@ -173,7 +174,12 @@
- TgTU = Tg.Dot(TU);
- TgTV = Tg.Dot(TV);
- DIS = TUTU * TVTV - TUTV * TUTV;
--
-+ if(fabs(DIS)<Precision::Angular()) {
-+ MyIsTangent=Standard_False;
-+ MyHasBeenComputed = MyHasBeenComputedbis = Standard_False;
-+ return(Standard_False);
-+ }
-+
- DeltaU = (TgTU * TVTV - TgTV * TUTV ) / DIS ;
- DeltaV = (TgTV * TUTU - TgTU * TUTV ) / DIS ;
-
-@@ -189,7 +195,12 @@
- TUTV = TU.Dot(TV);
- TgTU = Tg.Dot(TU);
- TgTV = Tg.Dot(TV);
-- DIS = TUTU * TVTV - TUTV * TUTV;
-+ DIS = TUTU * TVTV - TUTV * TUTV;
-+ if(fabs(DIS)<Precision::Angular()) {
-+ MyIsTangent=Standard_False;
-+ MyHasBeenComputed = MyHasBeenComputedbis = Standard_False;
-+ return(Standard_False);
-+ }
-
- DeltaU = (TgTU * TVTV - TgTV * TUTV ) / DIS ;
- DeltaV = (TgTV * TUTU - TgTU * TUTV ) / DIS ;
-diff -Naur --exclude=CVS OCCT-6.5.3_SRC_orig/src/ApproxInt/ApproxInt_PrmPrmSvSurfaces.gxx OCCT-6.5.3_SRC_patch/src/ApproxInt/ApproxInt_PrmPrmSvSurfaces.gxx
---- OCCT-6.5.3_SRC_orig/src/ApproxInt/ApproxInt_PrmPrmSvSurfaces.gxx 2012-04-13 16:38:37.000000000 +0400
-+++ OCCT-6.5.3_SRC_patch/src/ApproxInt/ApproxInt_PrmPrmSvSurfaces.gxx 2012-05-18 12:29:02.000000000 +0400
-@@ -24,6 +24,7 @@
-
- #include <TColStd_Array1OfReal.hxx>
- #include <math_FunctionSetRoot.hxx>
-+#include <Precision.hxx>
-
- #define Debug(expr) cout<<" expr :"<<expr;
- #define MySurf1 MyIntersectionOn2S.Function().AuxillarSurface1()
-@@ -173,7 +174,12 @@
- TgTU = Tg.Dot(TU);
- TgTV = Tg.Dot(TV);
- DIS = TUTU * TVTV - TUTV * TUTV;
--
-+ if(fabs(DIS)<Precision::Angular()) {
-+ MyIsTangent=Standard_False;
-+ MyHasBeenComputed = MyHasBeenComputedbis = Standard_False;
-+ return(Standard_False);
-+ }
-+
- DeltaU = (TgTU * TVTV - TgTV * TUTV ) / DIS ;
- DeltaV = (TgTV * TUTU - TgTU * TUTV ) / DIS ;
-
-@@ -189,7 +195,12 @@
- TUTV = TU.Dot(TV);
- TgTU = Tg.Dot(TU);
- TgTV = Tg.Dot(TV);
-- DIS = TUTU * TVTV - TUTV * TUTV;
-+ DIS = TUTU * TVTV - TUTV * TUTV;
-+ if(fabs(DIS)<Precision::Angular()) {
-+ MyIsTangent=Standard_False;
-+ MyHasBeenComputed = MyHasBeenComputedbis = Standard_False;
-+ return(Standard_False);
-+ }
-
- DeltaU = (TgTU * TVTV - TgTV * TUTV ) / DIS ;
- DeltaV = (TgTV * TUTU - TgTU * TUTV ) / DIS ;