From cd65cebc0d248fe4209b78b4bc17cc3fb4fcb62a Mon Sep 17 00:00:00 2001 From: ifv Date: Tue, 1 Feb 2022 12:17:52 +0300 Subject: [PATCH] 0032811: Bad result of sweep operation due to Surface Surface Intersect Bug --- src/BndLib/BndLib_Add3dCurve.cxx | 2 +- src/GeomInt/GeomInt_IntSS.cxx | 7 ++- src/IntPolyh/IntPolyh_Intersection.cxx | 17 +++--- src/IntPolyh/IntPolyh_Intersection.hxx | 10 ++++ src/IntTools/IntTools_FaceFace.cxx | 6 +- src/IntTools/IntTools_TopolTool.cxx | 2 +- src/QABugs/QABugs_20.cxx | 76 ++++++++++++++++++++++++++ tests/boolean/bfuse_complex/R9 | 2 +- tests/boolean/bfuse_complex/S1 | 2 +- tests/bugs/modalg_1/bug12918 | 2 +- tests/bugs/modalg_4/bug697_2 | 2 +- tests/bugs/modalg_4/bug697_4 | 2 +- tests/bugs/modalg_4/bug697_7 | 2 +- tests/bugs/modalg_4/bug697_8 | 2 +- tests/bugs/modalg_5/bug22829 | 2 +- tests/bugs/modalg_5/bug24003 | 2 +- tests/bugs/modalg_5/bug25625 | 2 +- tests/bugs/modalg_6/bug24161 | 2 +- tests/bugs/modalg_6/bug28283 | 2 +- tests/bugs/modalg_7/bug21134 | 2 +- tests/bugs/modalg_7/bug25082_1 | 2 +- tests/bugs/modalg_7/bug25082_2 | 2 +- tests/bugs/modalg_7/bug28150_1 | 2 +- tests/bugs/modalg_7/bug29900 | 2 +- tests/bugs/modalg_7/bug30559 | 2 +- tests/bugs/modalg_7/bug30760 | 2 +- tests/bugs/modalg_7/bug31890 | 2 +- tests/bugs/moddata_1/bug150_1 | 2 +- tests/bugs/moddata_1/bug150_2 | 2 +- tests/lowalgos/intss/bug24472 | 15 +++-- tests/perf/modalg/bug10160_1 | 2 +- tests/perf/modalg/bug10160_2 | 2 +- tests/perf/modalg/bug10160_3 | 2 +- tests/perf/modalg/bug10160_4 | 2 +- tests/perf/modalg/bug29329 | 2 +- 35 files changed, 146 insertions(+), 43 deletions(-) diff --git a/src/BndLib/BndLib_Add3dCurve.cxx b/src/BndLib/BndLib_Add3dCurve.cxx index e26d6a93f1..5a763ddc41 100644 --- a/src/BndLib/BndLib_Add3dCurve.cxx +++ b/src/BndLib/BndLib_Add3dCurve.cxx @@ -217,7 +217,7 @@ void BndLib_Add3dCurve::Add( const Adaptor3d_Curve& C, if(Bsaux->LastParameter() < U2 ) u2 = Bsaux->LastParameter(); // modified by NIZHNY-EAP Fri Dec 3 14:29:18 1999 ___END___ } - Standard_Real aSegmentTol = Precision::PConfusion(); + Standard_Real aSegmentTol = 2. * Precision::PConfusion(); if (Abs(u2 - u1) < aSegmentTol) aSegmentTol = Abs(u2 - u1) * 0.01; Bsaux->Segment(u1, u2, aSegmentTol); diff --git a/src/GeomInt/GeomInt_IntSS.cxx b/src/GeomInt/GeomInt_IntSS.cxx index 1417ab4cf5..ce061d207a 100644 --- a/src/GeomInt/GeomInt_IntSS.cxx +++ b/src/GeomInt/GeomInt_IntSS.cxx @@ -80,11 +80,16 @@ void GeomInt_IntSS::Perform(const Handle(Geom_Surface)& S1, Handle(Adaptor3d_TopolTool) dom1 = new Adaptor3d_TopolTool(myHS1); Handle(Adaptor3d_TopolTool) dom2 = new Adaptor3d_TopolTool(myHS2); myLConstruct.Load(dom1,dom2,myHS1,myHS2); - + Standard_Real TolArc = Tol; Standard_Real TolTang = Tol; Standard_Real UVMaxStep = IntPatch_Intersection::DefineUVMaxStep(myHS1, dom1, myHS2, dom2); Standard_Real Deflection = 0.1; + if (myHS1->GetType() == GeomAbs_BSplineSurface && myHS2->GetType() == GeomAbs_BSplineSurface) + { + Deflection /= 10.; + } + myIntersector.SetTolerances(TolArc,TolTang,UVMaxStep,Deflection); diff --git a/src/IntPolyh/IntPolyh_Intersection.cxx b/src/IntPolyh/IntPolyh_Intersection.cxx index 74ab7292c7..0c8b2d59cd 100644 --- a/src/IntPolyh/IntPolyh_Intersection.cxx +++ b/src/IntPolyh/IntPolyh_Intersection.cxx @@ -29,12 +29,8 @@ #include -static Standard_Boolean IsAdvRequired(IntPolyh_PMaillageAffinage& theMaillage); - static Standard_Integer ComputeIntersection(IntPolyh_PMaillageAffinage& theMaillage); -static Standard_Boolean AnalyzeIntersection(IntPolyh_PMaillageAffinage& theMaillage); - //======================================================================= //function : IntPolyh_Intersection //purpose : @@ -49,6 +45,7 @@ IntPolyh_Intersection::IntPolyh_Intersection(const Handle(Adaptor3d_Surface)& th myNbSU2 = 10; myNbSV2 = 10; myIsDone = Standard_False; + myIsParallel = Standard_False; mySectionLines.Init(1000); myTangentZones.Init(10000); Perform(); @@ -72,6 +69,7 @@ IntPolyh_Intersection::IntPolyh_Intersection(const Handle(Adaptor3d_Surface)& th myNbSU2 = theNbSU2; myNbSV2 = theNbSV2; myIsDone = Standard_False; + myIsParallel = Standard_False; mySectionLines.Init(1000); myTangentZones.Init(10000); Perform(); @@ -95,6 +93,7 @@ IntPolyh_Intersection::IntPolyh_Intersection(const Handle(Adaptor3d_Surface)& th myNbSU2 = theUPars2.Length(); myNbSV2 = theVPars2.Length(); myIsDone = Standard_False; + myIsParallel = Standard_False; mySectionLines.Init(1000); myTangentZones.Init(10000); Perform(theUPars1, theVPars1, theUPars2, theVPars2); @@ -442,7 +441,7 @@ void IntPolyh_Intersection::MergeCouples(IntPolyh_ListOfCouples &anArrayFF, // too small (less than 5 deg), the advanced intersection is required. // Otherwise, the standard intersection is considered satisfactory. //======================================================================= -Standard_Boolean IsAdvRequired(IntPolyh_PMaillageAffinage& theMaillage) +Standard_Boolean IntPolyh_Intersection::IsAdvRequired(IntPolyh_PMaillageAffinage& theMaillage) { if (!theMaillage) return Standard_True; @@ -452,7 +451,7 @@ Standard_Boolean IsAdvRequired(IntPolyh_PMaillageAffinage& theMaillage) // Number of interfering pairs Standard_Integer aNbCouples = Couples.Extent(); // Flag to define whether advanced intersection is required or not - Standard_Boolean isAdvReq = (aNbCouples == 0); + Standard_Boolean isAdvReq = (aNbCouples == 0) && !IsParallel(); if (isAdvReq) // No interfering triangles are found -> perform advanced intersection return isAdvReq; @@ -507,7 +506,7 @@ Standard_Integer ComputeIntersection(IntPolyh_PMaillageAffinage& theMaillage) //function : AnalyzeIntersection //purpose : Analyzes the intersection on the number of interfering triangles //======================================================================= -Standard_Boolean AnalyzeIntersection(IntPolyh_PMaillageAffinage& theMaillage) +Standard_Boolean IntPolyh_Intersection::AnalyzeIntersection(IntPolyh_PMaillageAffinage& theMaillage) { if (!theMaillage) return Standard_False; @@ -528,7 +527,9 @@ Standard_Boolean AnalyzeIntersection(IntPolyh_PMaillageAffinage& theMaillage) if (npara >= theMaillage->GetArrayOfTriangles(1).NbItems() || npara >= theMaillage->GetArrayOfTriangles(2).NbItems()) { - return Standard_False; + Couples.Clear(); + myIsParallel = Standard_True; + return Standard_True; } } return Standard_True; diff --git a/src/IntPolyh/IntPolyh_Intersection.hxx b/src/IntPolyh/IntPolyh_Intersection.hxx index 776f39e1cb..ab37543f24 100644 --- a/src/IntPolyh/IntPolyh_Intersection.hxx +++ b/src/IntPolyh/IntPolyh_Intersection.hxx @@ -83,6 +83,12 @@ public: //! @name Getting the results return myIsDone; } + //! Returns state of the operation + Standard_Boolean IsParallel() const + { + return myIsParallel; + } + //! Returns the number of section lines Standard_Integer NbSectionLines() const { @@ -186,6 +192,9 @@ private: //! @name Performing the intersection IntPolyh_ListOfCouples& theArrayRF, IntPolyh_ListOfCouples& theArrayRR) const; + Standard_Boolean AnalyzeIntersection(IntPolyh_PMaillageAffinage& theMaillage); + Standard_Boolean IsAdvRequired(IntPolyh_PMaillageAffinage& theMaillage); + private: //! @name Fields @@ -200,6 +209,7 @@ private: //! @name Fields Standard_Boolean myIsDone; //!< State of the operation IntPolyh_ArrayOfSectionLines mySectionLines; //!< Section lines IntPolyh_ArrayOfTangentZones myTangentZones; //!< Tangent zones + Standard_Boolean myIsParallel; }; #endif // _IntPolyh_Intersection_HeaderFile diff --git a/src/IntTools/IntTools_FaceFace.cxx b/src/IntTools/IntTools_FaceFace.cxx index 181d9d47a5..443783c26e 100644 --- a/src/IntTools/IntTools_FaceFace.cxx +++ b/src/IntTools/IntTools_FaceFace.cxx @@ -504,7 +504,11 @@ void IntTools_FaceFace::Perform (const TopoDS_Face& aF1, { const Standard_Real UVMaxStep = IntPatch_Intersection::DefineUVMaxStep(myHS1, dom1, myHS2, dom2); - const Standard_Real Deflection = 0.1; + Standard_Real Deflection = 0.1; + if (aType1 == GeomAbs_BSplineSurface && aType2 == GeomAbs_BSplineSurface) + { + Deflection /= 10.; + } myIntersector.SetTolerances(TolArc, TolTang, UVMaxStep, Deflection); } diff --git a/src/IntTools/IntTools_TopolTool.cxx b/src/IntTools/IntTools_TopolTool.cxx index ca5c30a0a3..7bbe6b734a 100644 --- a/src/IntTools/IntTools_TopolTool.cxx +++ b/src/IntTools/IntTools_TopolTool.cxx @@ -448,5 +448,5 @@ void IntTools_TopolTool::SamplePnts(const Standard_Real theDefl, myV0 = myVPars->Value(1); myDU = (myUPars->Value(myNbSmplU) - myU0)/(myNbSmplU-1); - myDV = (myVPars->Value(myNbSmplV) - myU0)/(myNbSmplV-1); + myDV = (myVPars->Value(myNbSmplV) - myV0)/(myNbSmplV-1); } diff --git a/src/QABugs/QABugs_20.cxx b/src/QABugs/QABugs_20.cxx index 4248cd2b2e..f057b76125 100644 --- a/src/QABugs/QABugs_20.cxx +++ b/src/QABugs/QABugs_20.cxx @@ -4183,6 +4183,77 @@ static Standard_Integer OCC32744(Draw_Interpretor& theDi, Standard_Integer theNb return 0; } +//======================================================================= +//function : OCC24472 +//purpose : +//======================================================================= +static Standard_Integer OCC24472(Draw_Interpretor& theDI, + Standard_Integer theNArg, + const char ** theArgVal) +{ + // Checks whether theCurve has a loop / bend + + if (theNArg < 2) + { + theDI << "Use: " << theArgVal[0] << " CheckLoops curve [CosMaxAngle [theNbPoints]]" << "/n"; + return 1; + } + + + Handle(Geom_Curve) aCurve = DrawTrSurf::GetCurve(theArgVal[1]); + + if(aCurve.IsNull()) + { + theDI << " " << theArgVal[1] << " : NULL curve" << "\n"; + return 0; + } + + Standard_Real aCosMaxAngle = .8; + Standard_Integer aNbPoints = 1000; + + if (theNArg > 2) + { + aCosMaxAngle = Draw::Atof(theArgVal[2]); + } + + if (theNArg > 3) + { + aNbPoints = Draw::Atoi(theArgVal[3]); + } + + + Standard_Real U1 = aCurve->FirstParameter(), U2 = aCurve->LastParameter(); + if (Precision::IsInfinite(U1) || Precision::IsInfinite(U2)) + { + theDI << "Infinite interval : " << U1 << " " << U2 << "\n"; + return 0; + } + + + Standard_Real delta = (U2 - U1) / aNbPoints; + gp_Pnt aP; + gp_Vec aDC1, aDC2; + aCurve->D1(U1, aP, aDC1); + gp_Dir aD1(aDC1); + Standard_Real p; + for (p = U1; p <= U2; p += delta) + { + aCurve->D1(p, aP, aDC2); + gp_Dir aD2(aDC2); + Standard_Real aCos = Abs(aD1*aD2); + + if (aCos < aCosMaxAngle) + { + theDI << "Error: The curve " << theArgVal[1] << " is possible to have a bend at parameter " << p << ". Please check carefully \n"; + } + + aD1 = aD2; + } + + return 0; +} + + void QABugs::Commands_20(Draw_Interpretor& theCommands) { const char *group = "QABugs"; @@ -4275,5 +4346,10 @@ void QABugs::Commands_20(Draw_Interpretor& theCommands) { __FILE__, OCC32744, group); + theCommands.Add("OCC24472", + "CheckLoops curve [CosMaxAngle [theNbPoints]]", + __FILE__, + OCC24472, group); + return; } diff --git a/tests/boolean/bfuse_complex/R9 b/tests/boolean/bfuse_complex/R9 index 930619b38b..809f81b073 100644 --- a/tests/boolean/bfuse_complex/R9 +++ b/tests/boolean/bfuse_complex/R9 @@ -1,4 +1,4 @@ -puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" +##puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" #jmu #pro18457 diff --git a/tests/boolean/bfuse_complex/S1 b/tests/boolean/bfuse_complex/S1 index ea5f89f8b3..c792741ec7 100644 --- a/tests/boolean/bfuse_complex/S1 +++ b/tests/boolean/bfuse_complex/S1 @@ -1,4 +1,4 @@ -puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" +##puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" puts "PRO15946" puts "Fuse" diff --git a/tests/bugs/modalg_1/bug12918 b/tests/bugs/modalg_1/bug12918 index 79cd27df43..eb5c727461 100755 --- a/tests/bugs/modalg_1/bug12918 +++ b/tests/bugs/modalg_1/bug12918 @@ -1,4 +1,4 @@ -puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" +##puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" puts "============" puts "OCC12918" diff --git a/tests/bugs/modalg_4/bug697_2 b/tests/bugs/modalg_4/bug697_2 index cbe47324fb..8d1dbb330b 100755 --- a/tests/bugs/modalg_4/bug697_2 +++ b/tests/bugs/modalg_4/bug697_2 @@ -1,4 +1,4 @@ -puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" +##puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" puts "============" puts "OCC697" diff --git a/tests/bugs/modalg_4/bug697_4 b/tests/bugs/modalg_4/bug697_4 index b1fa3326aa..1073fd33d4 100755 --- a/tests/bugs/modalg_4/bug697_4 +++ b/tests/bugs/modalg_4/bug697_4 @@ -1,4 +1,4 @@ -puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" +##puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" puts "============" puts "OCC697" diff --git a/tests/bugs/modalg_4/bug697_7 b/tests/bugs/modalg_4/bug697_7 index 5d696c848e..16dc2d3386 100755 --- a/tests/bugs/modalg_4/bug697_7 +++ b/tests/bugs/modalg_4/bug697_7 @@ -1,4 +1,4 @@ -puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" +##puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" puts "============" puts "OCC697" diff --git a/tests/bugs/modalg_4/bug697_8 b/tests/bugs/modalg_4/bug697_8 index d8e513d0b9..1205d88102 100755 --- a/tests/bugs/modalg_4/bug697_8 +++ b/tests/bugs/modalg_4/bug697_8 @@ -1,4 +1,4 @@ -puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" +##puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" puts "============" puts "OCC697" diff --git a/tests/bugs/modalg_5/bug22829 b/tests/bugs/modalg_5/bug22829 index 53082db257..0af117678c 100644 --- a/tests/bugs/modalg_5/bug22829 +++ b/tests/bugs/modalg_5/bug22829 @@ -1,4 +1,4 @@ -puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" +##puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" puts "==========" puts "OCC22829" diff --git a/tests/bugs/modalg_5/bug24003 b/tests/bugs/modalg_5/bug24003 index 56a68b2f3c..1e986fed4e 100644 --- a/tests/bugs/modalg_5/bug24003 +++ b/tests/bugs/modalg_5/bug24003 @@ -1,4 +1,4 @@ -puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" +##puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" puts "================" puts "OCC24003" diff --git a/tests/bugs/modalg_5/bug25625 b/tests/bugs/modalg_5/bug25625 index 423856aa6a..9fe61d00bf 100644 --- a/tests/bugs/modalg_5/bug25625 +++ b/tests/bugs/modalg_5/bug25625 @@ -1,4 +1,4 @@ -puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" +##puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" puts "================" puts "OCC25625" diff --git a/tests/bugs/modalg_6/bug24161 b/tests/bugs/modalg_6/bug24161 index d815d352c8..5a204b8914 100644 --- a/tests/bugs/modalg_6/bug24161 +++ b/tests/bugs/modalg_6/bug24161 @@ -1,4 +1,4 @@ -puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" +##puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" puts "==========" puts "OCC24161" diff --git a/tests/bugs/modalg_6/bug28283 b/tests/bugs/modalg_6/bug28283 index 7acd975afc..668fdca583 100644 --- a/tests/bugs/modalg_6/bug28283 +++ b/tests/bugs/modalg_6/bug28283 @@ -1,4 +1,4 @@ -puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" +##puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" puts "========" puts "OCC28283" diff --git a/tests/bugs/modalg_7/bug21134 b/tests/bugs/modalg_7/bug21134 index 11c20d5c09..ffc975fad6 100755 --- a/tests/bugs/modalg_7/bug21134 +++ b/tests/bugs/modalg_7/bug21134 @@ -1,4 +1,4 @@ -puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" +##puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" puts "TODO OCC21134 ALL: Error: checkshape command does not return faulty shapes" puts "============" diff --git a/tests/bugs/modalg_7/bug25082_1 b/tests/bugs/modalg_7/bug25082_1 index b668247366..52afafe6b6 100644 --- a/tests/bugs/modalg_7/bug25082_1 +++ b/tests/bugs/modalg_7/bug25082_1 @@ -3,7 +3,7 @@ puts "0025082: bopcommon returns different result on Windows and Linux system" puts "========" puts "" -puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" +##puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" restore [locate_data_file bug25054_shape1.brep] b1 restore [locate_data_file bug25054_shape2.brep] b2 diff --git a/tests/bugs/modalg_7/bug25082_2 b/tests/bugs/modalg_7/bug25082_2 index bd42246f82..fb2bdddf5b 100644 --- a/tests/bugs/modalg_7/bug25082_2 +++ b/tests/bugs/modalg_7/bug25082_2 @@ -3,7 +3,7 @@ puts "0025082: bopcommon returns different result on Windows and Linux system" puts "========" puts "" -puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" +##puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" restore [locate_data_file bug25054_shape1.brep] b1 restore [locate_data_file bug25054_shape2.brep] b2 diff --git a/tests/bugs/modalg_7/bug28150_1 b/tests/bugs/modalg_7/bug28150_1 index 56b22c2e74..46ddc0cb4a 100644 --- a/tests/bugs/modalg_7/bug28150_1 +++ b/tests/bugs/modalg_7/bug28150_1 @@ -1,4 +1,4 @@ -puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" +##puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" puts "========" puts "OCC28150" diff --git a/tests/bugs/modalg_7/bug29900 b/tests/bugs/modalg_7/bug29900 index 6afc847d18..07f8b4c56b 100644 --- a/tests/bugs/modalg_7/bug29900 +++ b/tests/bugs/modalg_7/bug29900 @@ -1,4 +1,4 @@ -puts "TODO CR29596 All: Intersection of pair of shapes has failed" +##puts "TODO CR29596 All: Intersection of pair of shapes has failed" puts "========" puts "OCC29900: Invalid result of FUSE operation" diff --git a/tests/bugs/modalg_7/bug30559 b/tests/bugs/modalg_7/bug30559 index b09929176a..57c499c17d 100644 --- a/tests/bugs/modalg_7/bug30559 +++ b/tests/bugs/modalg_7/bug30559 @@ -1,4 +1,4 @@ -puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" +##puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" puts "=============================================================================================" puts "0030559: BOP Fuse: result is inconsistent" diff --git a/tests/bugs/modalg_7/bug30760 b/tests/bugs/modalg_7/bug30760 index 71f5a27170..0b732c4a8e 100644 --- a/tests/bugs/modalg_7/bug30760 +++ b/tests/bugs/modalg_7/bug30760 @@ -1,4 +1,4 @@ -puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" +##puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" puts "========" puts "30760: Modeling Algorithms - Intersection fails in Occt 7.3.0" diff --git a/tests/bugs/modalg_7/bug31890 b/tests/bugs/modalg_7/bug31890 index f6d37c0c6e..38da9e4bdb 100644 --- a/tests/bugs/modalg_7/bug31890 +++ b/tests/bugs/modalg_7/bug31890 @@ -1,4 +1,4 @@ -puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" +##puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" puts "==========================================" puts "0031890: Invalid result of common fuse BOP" diff --git a/tests/bugs/moddata_1/bug150_1 b/tests/bugs/moddata_1/bug150_1 index 8274144020..f026578874 100755 --- a/tests/bugs/moddata_1/bug150_1 +++ b/tests/bugs/moddata_1/bug150_1 @@ -1,4 +1,4 @@ -puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" +##puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" puts "TODO OCC12345 ALL: Faulty shapes in variables faulty_1 to faulty_" puts "================" diff --git a/tests/bugs/moddata_1/bug150_2 b/tests/bugs/moddata_1/bug150_2 index 42588b65f7..7e1cd45330 100755 --- a/tests/bugs/moddata_1/bug150_2 +++ b/tests/bugs/moddata_1/bug150_2 @@ -1,4 +1,4 @@ -puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" +##puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" puts "TODO OCC12345 ALL: Faulty shapes in variables faulty_1 to faulty_" puts "================" diff --git a/tests/lowalgos/intss/bug24472 b/tests/lowalgos/intss/bug24472 index 8f0f2393b0..687b25defa 100644 --- a/tests/lowalgos/intss/bug24472 +++ b/tests/lowalgos/intss/bug24472 @@ -6,8 +6,9 @@ puts "" ## Wrong section curves ############################### -puts "TODO OCC29501 ALL: Error in ii12_22" -puts "TODO OCC29501 All: Error: The curve ii12_22 is possible" +pload QAcommands +##puts "TODO OCC29501 ALL: Error in ii12_22" +##puts "TODO OCC29501 All: Error: The curve ii12_22 is possible" set MaxToler 1.5e-4 restore [locate_data_file bug24472_Pipe_1.brep] b1 @@ -26,6 +27,9 @@ puts "First test" intersect ii12 s1 s2 foreach c [directory ii12*] { + + puts "Curve $c" + bounds $c U1 U2 if {[dval U2-U1] < 1.0e-9} { @@ -33,7 +37,7 @@ foreach c [directory ii12*] { } # cos(~75.5deg) - CheckLoops $c 0.25 + OCC24472 $c 0.25 xdistcs $c s1 U1 U2 10 $MaxToler xdistcs $c s2 U1 U2 10 $MaxToler @@ -55,6 +59,9 @@ puts "Third test" intersect ii13 s1 s3 foreach c [directory ii13*] { + + puts "Curve $c" + bounds $c U1 U2 if {[dval U2-U1] < 1.0e-9} { @@ -62,7 +69,7 @@ foreach c [directory ii13*] { } # cos(~75.5deg) - CheckLoops $c 0.25 + OCC24472 $c 0.25 xdistcs $c s1 U1 U2 10 $MaxToler xdistcs $c s2 U1 U2 10 $MaxToler diff --git a/tests/perf/modalg/bug10160_1 b/tests/perf/modalg/bug10160_1 index 56726c3c3e..854005d9a8 100644 --- a/tests/perf/modalg/bug10160_1 +++ b/tests/perf/modalg/bug10160_1 @@ -1,4 +1,4 @@ -puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" +##puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" puts "TODO OCC11111 ALL: Error : is WRONG because number of " puts "============" diff --git a/tests/perf/modalg/bug10160_2 b/tests/perf/modalg/bug10160_2 index 9219b0c69c..9d1c8b976a 100644 --- a/tests/perf/modalg/bug10160_2 +++ b/tests/perf/modalg/bug10160_2 @@ -1,4 +1,4 @@ -puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" +##puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" puts "TODO OCC11111 ALL: Error : is WRONG because number of " puts "============" diff --git a/tests/perf/modalg/bug10160_3 b/tests/perf/modalg/bug10160_3 index 3f9fcba28b..57050a6e40 100644 --- a/tests/perf/modalg/bug10160_3 +++ b/tests/perf/modalg/bug10160_3 @@ -1,4 +1,4 @@ -puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" +##puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" puts "TODO OCC11111 ALL: Error : is WRONG because number of " puts "============" diff --git a/tests/perf/modalg/bug10160_4 b/tests/perf/modalg/bug10160_4 index c22f43bcb1..65dba74fa7 100644 --- a/tests/perf/modalg/bug10160_4 +++ b/tests/perf/modalg/bug10160_4 @@ -1,4 +1,4 @@ -puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" +##puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" puts "TODO OCC11111 ALL: Error : is WRONG because number of " puts "============" diff --git a/tests/perf/modalg/bug29329 b/tests/perf/modalg/bug29329 index 680a82304d..dec9fb2ad8 100644 --- a/tests/perf/modalg/bug29329 +++ b/tests/perf/modalg/bug29329 @@ -3,7 +3,7 @@ puts "0029329: Modeling Algorithms - Low performance of the General Fuse algorit puts "========" puts "" -puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" +##puts "TODO CR29596 ALL: Warning: Intersection of pair of shapes has failed" restore [locate_data_file bug29329_objects.brep] a restore [locate_data_file bug29329_tools.brep] b