mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-08-14 13:30:48 +03:00
0026310: Very slow boolean cut operations on cylinders
1. JoinWLines algorithm has been improved. 2. Reference to the V-boundaries is deleted when computing step. 3. Decreasing the tolerance when computing parameters of WLine. 4. Adding boundary point is forbidden if it lies in prolongation of found ones. 5. Possible reason of exception has been eliminated. 6. Processing of critical point has been improved. Test cases for this issue have been created. Correction of some test case(s). Test case bugs/modalg_6/bug26310_4 is added Update of test-cases for issue #26310
This commit is contained in:
@@ -644,7 +644,7 @@ void IntTools_FaceFace::Perform(const TopoDS_Face& aF1,
|
||||
{
|
||||
const Standard_Real UVMaxStep = 0.001;
|
||||
const Standard_Real Deflection = (hasCone) ? 0.085 : 0.1;
|
||||
myIntersector.SetTolerances(TolArc, TolTang, UVMaxStep, Deflection);
|
||||
myIntersector.SetTolerances(TolArc, TolTang, UVMaxStep, Deflection);
|
||||
}
|
||||
|
||||
if((myHS1->IsUClosed() && !myHS1->IsUPeriodic()) ||
|
||||
@@ -1672,6 +1672,11 @@ Standard_Real IntTools_FaceFace::ComputeTolerance()
|
||||
case IntPatch_Walking:{
|
||||
Handle(IntPatch_WLine) WL =
|
||||
Handle(IntPatch_WLine)::DownCast(L);
|
||||
|
||||
#ifdef OCCT_DEBUG
|
||||
//WL->Dump();
|
||||
#endif
|
||||
|
||||
//
|
||||
Standard_Integer ifprm, ilprm;
|
||||
//
|
||||
|
Reference in New Issue
Block a user