mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-08-14 13:30:48 +03:00
0024161: boolean operation hanging
The reason of hanging has been eliminated. Test case for issue CR24161 Small correction of test case for this issue
This commit is contained in:
@@ -1003,28 +1003,18 @@ void IntWalk_PWalking::Perform(const TColStd_Array1OfReal& ParDep,
|
|||||||
|
|
||||||
if(LevelOfIterWithoutAppend > 5)
|
if(LevelOfIterWithoutAppend > 5)
|
||||||
{
|
{
|
||||||
if(pasSav[0]<pasInit[0])
|
for (Standard_Integer i = 0; i < 4; i++)
|
||||||
{
|
{
|
||||||
pasInit[0]-=(pasInit[0]-pasSav[0])*0.25;
|
if (pasSav[i] > pasInit[i])
|
||||||
|
continue;
|
||||||
|
|
||||||
|
const Standard_Real aDelta = (pasInit[i]-pasSav[i])*0.25;
|
||||||
|
|
||||||
|
if(aDelta > Epsilon(pasInit[i]))
|
||||||
|
{
|
||||||
|
pasInit[i] -= aDelta;
|
||||||
LevelOfIterWithoutAppend=0;
|
LevelOfIterWithoutAppend=0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(pasSav[1]<pasInit[1])
|
|
||||||
{
|
|
||||||
pasInit[1]-=(pasInit[1]-pasSav[1])*0.25;
|
|
||||||
LevelOfIterWithoutAppend=0;
|
|
||||||
}
|
|
||||||
|
|
||||||
if(pasSav[2]<pasInit[2])
|
|
||||||
{
|
|
||||||
pasInit[2]-=(pasInit[2]-pasSav[2])*0.25;
|
|
||||||
LevelOfIterWithoutAppend=0;
|
|
||||||
}
|
|
||||||
|
|
||||||
if(pasSav[3]<pasInit[3])
|
|
||||||
{
|
|
||||||
pasInit[3]-=(pasInit[3]-pasSav[3])*0.25;
|
|
||||||
LevelOfIterWithoutAppend=0;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
23
tests/bugs/modalg_6/bug24161
Normal file
23
tests/bugs/modalg_6/bug24161
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
puts "=========="
|
||||||
|
puts "OCC24161"
|
||||||
|
puts "=========="
|
||||||
|
puts ""
|
||||||
|
###########################################
|
||||||
|
# boolean operation hanging
|
||||||
|
###########################################
|
||||||
|
|
||||||
|
cpulimit 100
|
||||||
|
|
||||||
|
restore [locate_data_file bug24161_MirrorSolids.brep] m
|
||||||
|
explode m
|
||||||
|
|
||||||
|
bop m_1 m_2
|
||||||
|
bopfuse result
|
||||||
|
|
||||||
|
checkshape result
|
||||||
|
bopargcheck result
|
||||||
|
|
||||||
|
smallview
|
||||||
|
donly result
|
||||||
|
|
||||||
|
set only_screen_axo 1
|
Reference in New Issue
Block a user