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

0027557: Unstable HLR tests

The following modifications were done for stability:
- Precision::PConfusion() was set as parameter of Classifier instead of 0.0
- Coinciding vertices of outlines are united to exclude neighborhood of common vertex from curve-curve intersection
- Draw command "hlrin3d" was modified to prevent exception

Minor corrections

Corrections of test cases for issue CR27557
This commit is contained in:
jgv
2016-06-06 18:58:40 +03:00
committed by bugmaster
parent f84bf635f0
commit 854e0d4a27
33 changed files with 103 additions and 93 deletions

View File

@@ -1987,7 +1987,7 @@ HLRBRep_Data::Classify (const Standard_Integer E,
HLRAlgo::EncodeMinMax((Standard_Address)VertMin,
(Standard_Address)VertMax,
(Standard_Address)MinMaxVert);
/*
#ifdef OCCT_DEBUG
{
Standard_Integer qwe,qwep8,q,q1,q2;
@@ -2027,6 +2027,7 @@ HLRBRep_Data::Classify (const Standard_Integer E,
cout<<endl;
}
#endif
*/
if (((MaxFace1 - MinVert1) & 0x80008000) != 0 ||
((MaxVert1 - MinFace1) & 0x80008000) != 0 ||
@@ -2109,7 +2110,9 @@ HLRBRep_Data::Classify (const Standard_Integer E,
do {
gp_Pnt2d pnt2d(u,v);
if (myClassifier->Classify(pnt2d,0.0)!=TopAbs_OUT) {
if (myClassifier->Classify(pnt2d,Precision::PConfusion())
!= TopAbs_OUT)
{
InsideRestriction = Standard_True;
state = TopAbs_IN;
Level++;