1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-04-03 17:56:21 +03:00

0030534: Regression in the tool UnifySameDomain - the shape looses faces

1. Add method TransformPCurves to ShapeUpgrade_UnifySameDomain - to rotate and translate existing pcurves instead of projecting.
2. Modify method ShapeUpgrade_UnifySameDomain::IntUnifyFaces - now it does not apply ShapeFix to new wires and new faces.
3. In the method UnifyEdges: add merging degenerated edges.
This commit is contained in:
jgv 2019-03-15 12:55:09 +03:00 committed by bugmaster
parent c2100640f6
commit 389b9d5ca3
12 changed files with 1481 additions and 198 deletions

File diff suppressed because it is too large Load Diff

View File

@ -1,5 +1,3 @@
puts "TODO OCC30320 ALL: Faulty shapes in variables faulty_"
puts "============"
puts "OCC27894"
puts "============"
@ -12,7 +10,7 @@ stepread [locate_data_file bug27894_usd_raises_Standard_NullObject.stp] a *
renamevar a_1 a
unifysamedom result a
checknbshapes result -m UnifySameDomain -face 9 -edge 21
checknbshapes result -m UnifySameDomain -face 12 -edge 29
checkshape result

View File

@ -18,3 +18,8 @@ set tolres [checkmaxtol result]
if { ${tolres} > 0.003} {
puts "Error: bad tolerance of result"
}
explode result
checkprops result_1 -v 1109.52
checkprops result_2 -v 7.50891
checkprops result_3 -v 7.51022

View File

@ -0,0 +1,24 @@
puts "================================================================================"
puts "OCC29382: ShapeUpgrade_UnifySameDomain algorithm incorrectly processes the shape"
puts "================================================================================"
puts ""
restore [locate_data_file bug29382_Group_3.brep] a
unifysamedom result a
checkshape result
checkshape a
checknbshapes result -solid 3 -shell 3 -face 18 -wire 18 -edge 36 -vertex 22
set tolres [checkmaxtol result]
if { ${tolres} > 1.8066863810061599e-05} {
puts "Error: bad tolerance of result"
}
explode result
checkprops result_1 -v 4.41996e-06
checkprops result_2 -v 1.30453e-06
checkprops result_3 -v 1.16532e-06

View File

@ -0,0 +1,20 @@
puts "===================================================================================================="
puts "OCC29504: ShapeUpgrade_UnifySameDomain produces invalid shape and ShapeFix_Shape is unable to fix it"
puts "===================================================================================================="
puts ""
restore [locate_data_file bug29504_cyl.brep] s
unifysamedom result s
checkshape result
checkshape s
checknbshapes result -face 1 -wire 1 -edge 4 -vertex 4
set tolres [checkmaxtol result]
if { ${tolres} > 1.000008e-07} {
puts "Error: bad tolerance of result"
}
checkprops result -s 104.72

View File

@ -0,0 +1,20 @@
puts "===================================================================================================="
puts "OCC29504: ShapeUpgrade_UnifySameDomain produces invalid shape and ShapeFix_Shape is unable to fix it"
puts "===================================================================================================="
puts ""
restore [locate_data_file bug29504_sph.brep] s
unifysamedom result s
checkshape result
checkshape s
checknbshapes result -face 1 -wire 1 -edge 4 -vertex 4
set tolres [checkmaxtol result]
if { ${tolres} > 1.000008e-07} {
puts "Error: bad tolerance of result"
}
checkprops result -s 55.1286

View File

@ -0,0 +1,20 @@
puts "===================================================================================="
puts "OCC30099: Modeling Algorithms - ShapeUpgrade_UnifySameDomain produces invalid result"
puts "===================================================================================="
puts ""
restore [locate_data_file bug30099.brep] a
unifysamedom result a
checkshape result
checknbshapes result -solid 1 -shell 1 -face 12 -wire 14 -edge 36 -vertex 26
set tolres [checkmaxtol result]
if { ${tolres} > 1.2e-05} {
puts "Error: bad tolerance of result"
}
checkprops result -v 2.04221e+06

View File

@ -0,0 +1,20 @@
puts "==================================================================================="
puts "OCC30158: Shape Healing - Incorrect result produced by ShapeUpgrade_UnifySameDomain"
puts "==================================================================================="
puts ""
restore [locate_data_file bug30158_1.brep] s
unifysamedom result s
checkshape result
checkshape s
checknbshapes result -solid 1 -shell 1 -face 6 -wire 6 -edge 12 -vertex 8
set tolres [checkmaxtol result]
if { ${tolres} > 1.51e-07} {
puts "Error: bad tolerance of result"
}
checkprops result -v 48.3068

View File

@ -0,0 +1,20 @@
puts "==================================================================================="
puts "OCC30158: Shape Healing - Incorrect result produced by ShapeUpgrade_UnifySameDomain"
puts "==================================================================================="
puts ""
restore [locate_data_file bug30158_2.brep] s
unifysamedom result s
checkshape result
checkshape s
checknbshapes result -solid 1 -shell 1 -face 6 -wire 6 -edge 12 -vertex 8
set tolres [checkmaxtol result]
if { ${tolres} > 1.51e-07} {
puts "Error: bad tolerance of result"
}
checkprops result -v 48.3068

View File

@ -0,0 +1,20 @@
puts "========================================================================="
puts "OCC30534: Regression in the tool UnifySameDomain - the shape looses faces"
puts "========================================================================="
puts ""
binrestore [locate_data_file bug30534_Werth_369.bin] a
unifysamedom result a
checkshape result
checknbshapes result -solid 1 -shell 1 -face 423 -wire 431 -edge 1162 -vertex 736
set tolres [checkmaxtol result]
if { ${tolres} > 0.00969438844497875} {
puts "Error: bad tolerance of result"
}
checkprops result -v 18814.1

View File

@ -0,0 +1,22 @@
puts "================================================="
puts "OCC30714: UnifySameDomain corrupts original shape"
puts "================================================="
puts ""
restore [locate_data_file bug30714.brep] s
explode s
bcut r s_1 s_2
unifysamedom result r
checkshape result
checkshape s_1
checknbshapes result -solid 1 -shell 1 -face 10 -wire 12 -edge 24 -vertex 16
set tolres [checkmaxtol result]
if { ${tolres} > 1.000008e-07} {
puts "Error: bad tolerance of result"
}
checkprops result -v 1.20292

View File

@ -1,6 +1,3 @@
puts "TODO OCC28602 ALL: \\*\\* Exception \\*\\*.*"
puts "TODO OCC28602 ALL: An exception was caught"
puts "TODO OCC28602 ALL: TEST INCOMPLETE"
puts "=========="
puts "OCC28227"
puts "=========="