mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-05-21 10:55:33 +03:00
0025722: Wrong implementation of SetFuzzyValue method
The following methods void BOPAlgo_ArgumentAnalyzer::SetFuzzyValue(const Standard_Real theFuzz) void BOPAlgo_Builder::SetFuzzyValue(const Standard_Real theFuzz) void BOPAlgo_PaveFiller::SetFuzzyValue(const Standard_Real theFuzz) void BOPDS_DS::SetFuzzyValue(const Standard_Real theFuzz) void BRepAlgoAPI_BuilderAlgo::SetFuzzyValue(const Standard_Real theFuzz) void BRepAlgoAPI_Check::SetFuzzyValue(const Standard_Real theFuzz) have been corrected. Added test case bugs/modalg_5/bug25722
This commit is contained in:
parent
19dcfc1bdb
commit
92e24f9d36
@ -67,9 +67,7 @@ inline Standard_Boolean& BOPAlgo_ArgumentAnalyzer::CurveOnSurfaceMode()
|
||||
//=======================================================================
|
||||
inline void BOPAlgo_ArgumentAnalyzer::SetFuzzyValue(const Standard_Real theFuzz)
|
||||
{
|
||||
if (theFuzz > 0.) {
|
||||
myFuzzyValue = theFuzz;
|
||||
}
|
||||
myFuzzyValue = (theFuzz < 0.) ? 0. : theFuzz;
|
||||
}
|
||||
//=======================================================================
|
||||
//function : FuzzyValue
|
||||
|
@ -198,9 +198,7 @@ BOPDS_PDS BOPAlgo_Builder::PDS()
|
||||
//=======================================================================
|
||||
void BOPAlgo_Builder::SetFuzzyValue(const Standard_Real theFuzz)
|
||||
{
|
||||
if (theFuzz > 0.) {
|
||||
myFuzzyValue = theFuzz;
|
||||
}
|
||||
myFuzzyValue = (theFuzz < 0.) ? 0. : theFuzz;
|
||||
}
|
||||
//=======================================================================
|
||||
//function : FuzzyValue
|
||||
|
@ -146,9 +146,7 @@ const BOPCol_ListOfShape& BOPAlgo_PaveFiller::Arguments()const
|
||||
//=======================================================================
|
||||
void BOPAlgo_PaveFiller::SetFuzzyValue(const Standard_Real theFuzz)
|
||||
{
|
||||
if (theFuzz > 0.) {
|
||||
myFuzzyValue = theFuzz;
|
||||
}
|
||||
myFuzzyValue = (theFuzz < 0.) ? 0. : theFuzz;
|
||||
}
|
||||
//=======================================================================
|
||||
//function : FuzzyValue
|
||||
|
@ -139,9 +139,7 @@ inline const BOPDS_MapOfPassKey& BOPDS_DS::Interferences()const
|
||||
//=======================================================================
|
||||
inline void BOPDS_DS::SetFuzzyValue(const Standard_Real theFuzz)
|
||||
{
|
||||
if (theFuzz > 0.) {
|
||||
myFuzzyValue = theFuzz;
|
||||
}
|
||||
myFuzzyValue = (theFuzz < 0.) ? 0. : theFuzz;
|
||||
}
|
||||
//=======================================================================
|
||||
//function : FuzzyValue
|
||||
|
@ -58,9 +58,7 @@ BRepAlgoAPI_BuilderAlgo::~BRepAlgoAPI_BuilderAlgo()
|
||||
//=======================================================================
|
||||
void BRepAlgoAPI_BuilderAlgo::SetFuzzyValue(const Standard_Real theFuzz)
|
||||
{
|
||||
if (theFuzz > 0.) {
|
||||
myFuzzyValue = theFuzz;
|
||||
}
|
||||
myFuzzyValue = (theFuzz < 0.) ? 0. : theFuzz;
|
||||
}
|
||||
//=======================================================================
|
||||
//function : FuzzyValue
|
||||
|
@ -80,9 +80,7 @@ BRepAlgoAPI_Check::~BRepAlgoAPI_Check()
|
||||
//=======================================================================
|
||||
void BRepAlgoAPI_Check::SetFuzzyValue(const Standard_Real theFuzz)
|
||||
{
|
||||
if (theFuzz > 0.) {
|
||||
myFuzzyValue = theFuzz;
|
||||
}
|
||||
myFuzzyValue = (theFuzz < 0.) ? 0. : theFuzz;
|
||||
}
|
||||
//=======================================================================
|
||||
//function : FuzzyValue
|
||||
|
41
tests/bugs/modalg_5/bug25722
Normal file
41
tests/bugs/modalg_5/bug25722
Normal file
@ -0,0 +1,41 @@
|
||||
puts "=========="
|
||||
puts "OCC25722"
|
||||
puts "=========="
|
||||
puts ""
|
||||
#################################################
|
||||
# Wrong implementation of SetFuzzyValue method
|
||||
#################################################
|
||||
|
||||
box b1 10 10 10
|
||||
box b2 10.0001 0 0 10 10 10
|
||||
bfuzzyvalue 0.0001
|
||||
bclearobjects
|
||||
bcleartools
|
||||
baddobjects b1
|
||||
baddtools b2
|
||||
bfillds
|
||||
bbop r 1
|
||||
regexp {SOLID +: +([-0-9.+eE]+)} [nbshapes r] full nb_sol
|
||||
if { ${nb_sol} != 1 } {
|
||||
puts "Error : Result shape is WRONG because it must contains 1 solid instead of ${nb_sol}"
|
||||
} else {
|
||||
puts "Result shape contains ${nb_sol} solids"
|
||||
}
|
||||
|
||||
bfuzzyvalue 0.
|
||||
box b1 10 10 10
|
||||
box b2 10.0001 0 0 10 10 10
|
||||
bclearobjects
|
||||
bcleartools
|
||||
baddobjects b1
|
||||
baddtools b2
|
||||
bfillds
|
||||
bbop result 1
|
||||
regexp {SOLID +: +([-0-9.+eE]+)} [nbshapes result] full nb_sol
|
||||
if { ${nb_sol} != 2 } {
|
||||
puts "Error : Result shape is WRONG because it must contains 2 solids instead of ${nb_sol}"
|
||||
} else {
|
||||
puts "Result shape contains ${nb_sol} solids"
|
||||
}
|
||||
|
||||
set 2dviewer 1
|
Loading…
x
Reference in New Issue
Block a user