1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-08-14 13:30:48 +03:00

0023552: Projection algorithm produces wrong results with default tolerance value.

Add TKShHealing to TKFillet/EXTERNLIB
Adding test case
This commit is contained in:
pkv
2013-01-18 13:39:21 +04:00
parent b8ddfc2f5d
commit cfb6776ec0
5 changed files with 34 additions and 8 deletions

View File

@@ -64,7 +64,9 @@
#include <ChFi3d_Builder_0.hxx>
#include <TopOpeBRepDS_ListOfInterference.hxx>
#include <BRepLib.hxx>
#include <ShapeFix.hxx>
#include <Precision.hxx>
#ifdef DRAW
#include <TestTopOpeTools.hxx>
@@ -73,6 +75,8 @@
#ifdef DEB
#include <OSD_Chronometer.hxx>
// variables for performances
@@ -557,6 +561,27 @@ void ChFi3d_Builder::Compute()
cout<<"-temps ChFi3d_sameparameter "<<t_sameparam<<"s"<<endl<<endl;
}
#endif
//
// Inspect the new faces to provide sameparameter
// if it is necessary
if (IsDone())
{
Standard_Real SameParTol = Precision::Confusion();
Standard_Integer aNbSurfaces, iF;
TopTools_ListIteratorOfListOfShape aIt;
//
aNbSurfaces=myDS->NbSurfaces();
for (iF=1; iF<=aNbSurfaces; ++iF) {
const TopTools_ListOfShape& aLF=myCoup->NewFaces(iF);
aIt.Initialize(aLF);
for (; aIt.More(); aIt.Next()) {
const TopoDS_Shape& aF=aIt.Value();
BRepLib::SameParameter(aF, SameParTol, Standard_True);
ShapeFix::SameParameter(aF, Standard_False, SameParTol);
}
}
}
}
//=======================================================================