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

0028196: Modeling Data - Algorithm 'Extrema_GenLocateExtPS' failed to find the extremum in a case

Extrema_GenLocateExtPS.cxx, Extrema_GenLocateExtPS.hxx:

Adjusting tolerances according to surface sizes is added.
Additional methods for searching solution are added for cases if basic method fails.

Extrema_FuncPSDist.cxx - small bug fixing.

BRepFill_TrimShellCorner.cxx - fixing regression

ChFi3d_Builder_CnCrn.cxx setting parameters for Plate algorithm to improve stability of solution

ProjLib_ComputeApproxOnPolarSurface.cxx - code optimization

Some test cases are modified according to current state of Extrema algorithm
This commit is contained in:
ifv
2020-12-17 17:41:59 +03:00
committed by bugmaster
parent 6c2cf030e2
commit c69e0e408f
12 changed files with 209 additions and 50 deletions

View File

@@ -9,4 +9,4 @@ tscale s 0 0 0 1000
explode s e
blend result s 5 s_8
checkprops result -s 3824.84
checkprops result -s 3740

View File

@@ -8,4 +8,4 @@ restore [locate_data_file CCV_1_c12gsf.rle] s
explode s E
blend result s 0.2 s_2 0.2 s_1
checkprops result -s 11.5154
checkprops result -s 11.5416

View File

@@ -1,12 +1,7 @@
puts "============"
puts "CR28196"
puts "OCC28196: Modeling Data - Algorithm 'Extrema_GenLocateExtPS' finds wrong extremum in a case"
puts "==========="
puts ""
###############################################################################
# Algorithm 'Extrema_GenLocateExtPS' failed to find the extremum in a case
###############################################################################
puts "TODO OCC28196 ALL: Error: projection with starting point is worse"
pload MODELING
@@ -18,7 +13,7 @@ dset y 0.0187851531995338
dset z 0.433545417254429
dset u 13140.3030987283
dset v 28.5494495724281
set max_error 1e-5
set max_tol 1e-5
proj s x y z
set dist_proj [lindex [length ext_1] end]
@@ -28,7 +23,7 @@ set dist_proj_uv [lindex [length ext_1] end]
puts "Distance of standard projection $dist_proj"
puts "Distance of projection with starting point $dist_proj_uv"
if {[expr $dist_proj_uv - $dist_proj] > $max_error} {
if {[expr $dist_proj_uv - $dist_proj] > $max_tol} {
puts "Error: projection with starting point is worse than standard projection"
} else {
puts "OK: well projection with starting point"

View File

@@ -22,6 +22,6 @@ tcopy result_1 result
dchrono h2 stop counter blend
checkprops result -s 3.65777e+06
checkprops result -s 3.5496e+06
checkshape result
checkview -display result -2d -path ${imagedir}/${test_image}.png

View File

@@ -1,7 +1,7 @@
puts "TODO OCC24156 MacOS: Tcl Exception: tolerance ang"
puts "TODO OCC24156 MacOS: TEST INCOMPLETE"
puts "TODO OCC27203 ALL: Error: Max tolerance"
puts "TODO OCC27203 All: Error : The area of result shape is"
##puts "TODO OCC27203 All: Error : The area of result shape is"
puts "========"
puts "OCC453"