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)
|
inline void BOPAlgo_ArgumentAnalyzer::SetFuzzyValue(const Standard_Real theFuzz)
|
||||||
{
|
{
|
||||||
if (theFuzz > 0.) {
|
myFuzzyValue = (theFuzz < 0.) ? 0. : theFuzz;
|
||||||
myFuzzyValue = theFuzz;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
//=======================================================================
|
//=======================================================================
|
||||||
//function : FuzzyValue
|
//function : FuzzyValue
|
||||||
|
@ -198,9 +198,7 @@ BOPDS_PDS BOPAlgo_Builder::PDS()
|
|||||||
//=======================================================================
|
//=======================================================================
|
||||||
void BOPAlgo_Builder::SetFuzzyValue(const Standard_Real theFuzz)
|
void BOPAlgo_Builder::SetFuzzyValue(const Standard_Real theFuzz)
|
||||||
{
|
{
|
||||||
if (theFuzz > 0.) {
|
myFuzzyValue = (theFuzz < 0.) ? 0. : theFuzz;
|
||||||
myFuzzyValue = theFuzz;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
//=======================================================================
|
//=======================================================================
|
||||||
//function : FuzzyValue
|
//function : FuzzyValue
|
||||||
|
@ -146,9 +146,7 @@ const BOPCol_ListOfShape& BOPAlgo_PaveFiller::Arguments()const
|
|||||||
//=======================================================================
|
//=======================================================================
|
||||||
void BOPAlgo_PaveFiller::SetFuzzyValue(const Standard_Real theFuzz)
|
void BOPAlgo_PaveFiller::SetFuzzyValue(const Standard_Real theFuzz)
|
||||||
{
|
{
|
||||||
if (theFuzz > 0.) {
|
myFuzzyValue = (theFuzz < 0.) ? 0. : theFuzz;
|
||||||
myFuzzyValue = theFuzz;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
//=======================================================================
|
//=======================================================================
|
||||||
//function : FuzzyValue
|
//function : FuzzyValue
|
||||||
|
@ -139,9 +139,7 @@ inline const BOPDS_MapOfPassKey& BOPDS_DS::Interferences()const
|
|||||||
//=======================================================================
|
//=======================================================================
|
||||||
inline void BOPDS_DS::SetFuzzyValue(const Standard_Real theFuzz)
|
inline void BOPDS_DS::SetFuzzyValue(const Standard_Real theFuzz)
|
||||||
{
|
{
|
||||||
if (theFuzz > 0.) {
|
myFuzzyValue = (theFuzz < 0.) ? 0. : theFuzz;
|
||||||
myFuzzyValue = theFuzz;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
//=======================================================================
|
//=======================================================================
|
||||||
//function : FuzzyValue
|
//function : FuzzyValue
|
||||||
|
@ -58,9 +58,7 @@ BRepAlgoAPI_BuilderAlgo::~BRepAlgoAPI_BuilderAlgo()
|
|||||||
//=======================================================================
|
//=======================================================================
|
||||||
void BRepAlgoAPI_BuilderAlgo::SetFuzzyValue(const Standard_Real theFuzz)
|
void BRepAlgoAPI_BuilderAlgo::SetFuzzyValue(const Standard_Real theFuzz)
|
||||||
{
|
{
|
||||||
if (theFuzz > 0.) {
|
myFuzzyValue = (theFuzz < 0.) ? 0. : theFuzz;
|
||||||
myFuzzyValue = theFuzz;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
//=======================================================================
|
//=======================================================================
|
||||||
//function : FuzzyValue
|
//function : FuzzyValue
|
||||||
|
@ -80,9 +80,7 @@ BRepAlgoAPI_Check::~BRepAlgoAPI_Check()
|
|||||||
//=======================================================================
|
//=======================================================================
|
||||||
void BRepAlgoAPI_Check::SetFuzzyValue(const Standard_Real theFuzz)
|
void BRepAlgoAPI_Check::SetFuzzyValue(const Standard_Real theFuzz)
|
||||||
{
|
{
|
||||||
if (theFuzz > 0.) {
|
myFuzzyValue = (theFuzz < 0.) ? 0. : theFuzz;
|
||||||
myFuzzyValue = theFuzz;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
//=======================================================================
|
//=======================================================================
|
||||||
//function : FuzzyValue
|
//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