Archived issue #0024174
[regression] BRepBuilderAPI_Sewing returns result with very high tolerance
Description
The following sewing operation returns a wrong result in OCCT 6.5.3 and 6.6.0.
The result is correct in OCCT 6.5.2.
In 6.6.0 the resulting shell has tolerance 105.45 and one edge is not sewed correctly (because of high tolerance).
In 6.5.2 the resulting shell had tolerance 0.076.
Draw script:
restore Attachment 1 (BREP) c
explode c
tolerance c
sewing r 0.1 c_1 c_2
tolerance r
checkshape r
vinit
vdisplay r
The result is correct in OCCT 6.5.2.
In 6.6.0 the resulting shell has tolerance 105.45 and one edge is not sewed correctly (because of high tolerance).
In 6.5.2 the resulting shell had tolerance 0.076.
Draw script:
restore Attachment 1 (BREP) c
explode c
tolerance c
sewing r 0.1 c_1 c_2
tolerance r
checkshape r
vinit
vdisplay r
Public activity
5 archived notes
Participants are labeled by their role within this record.
Another example of similar problem is reported on OCCT forum:
http://www.opencascade.org/org/forum/thread_25329/
The file is attached (Attachment 4 (BREP)). The test commands to reproduce the problem are:
Draw[]> restore Attachment 4 (BREP) a
Draw[]> tolerance a
Tolerance MAX=0.58022137281123598 AVG=0.11951856838400272 MIN=9.[revision removed]-008
FACE : MAX=9.[revision removed]-008 AVG=9.[revision removed]-008 MIN=9.[revision removed]-008
EDGE : MAX=0.58016335647558903 AVG=0.091042346630782645 MIN=1.[revision removed]-005
VERTEX : MAX=0.58022137281123598 AVG=0.14462199456824934 MIN=1.[revision removed]-005
Draw[]> sewing r 0.1 a
Informations
===========================================================
Number of input shapes : 1
Number of actual shapes : 1
Number of Bounds : 11
Number of Sections : 11
Number of Edges : 10
Number of Vertices : 11
Number of Nodes : 9
Number of Free Edges : 9
Number of Contigous Edges : 1
Number of Multiple Edges : 0
Number of Degenerated Edges : 0
===========================================================
Draw[8]> tolerance r
Tolerance MAX=116.18676595408203 AVG=33.315216577269183 MIN=9.[revision removed]-008
FACE : MAX=9.[revision removed]-008 AVG=9.[revision removed]-008 MIN=9.[revision removed]-008
EDGE : MAX=116.18676595408203 AVG=21.215907065554788 MIN=1.[revision removed]-005
VERTEX : MAX=116.18676595408203 AVG=42.393527376514477 MIN=1.[revision removed]-005
http://www.opencascade.org/org/forum/thread_25329/
The file is attached (Attachment 4 (BREP)). The test commands to reproduce the problem are:
Draw[]> restore Attachment 4 (BREP) a
Draw[]> tolerance a
Tolerance MAX=0.58022137281123598 AVG=0.11951856838400272 MIN=9.[revision removed]-008
FACE : MAX=9.[revision removed]-008 AVG=9.[revision removed]-008 MIN=9.[revision removed]-008
EDGE : MAX=0.58016335647558903 AVG=0.091042346630782645 MIN=1.[revision removed]-005
VERTEX : MAX=0.58022137281123598 AVG=0.14462199456824934 MIN=1.[revision removed]-005
Draw[]> sewing r 0.1 a
Informations
===========================================================
Number of input shapes : 1
Number of actual shapes : 1
Number of Bounds : 11
Number of Sections : 11
Number of Edges : 10
Number of Vertices : 11
Number of Nodes : 9
Number of Free Edges : 9
Number of Contigous Edges : 1
Number of Multiple Edges : 0
Number of Degenerated Edges : 0
===========================================================
Draw[8]> tolerance r
Tolerance MAX=116.18676595408203 AVG=33.315216577269183 MIN=9.[revision removed]-008
FACE : MAX=9.[revision removed]-008 AVG=9.[revision removed]-008 MIN=9.[revision removed]-008
EDGE : MAX=116.18676595408203 AVG=21.215907065554788 MIN=1.[revision removed]-005
VERTEX : MAX=116.18676595408203 AVG=42.393527376514477 MIN=1.[revision removed]-005
Branch CR24174 is ready to be reviewed.
Reviewed, please test
Dear Commenter 1,
Branch CR24174 (and products from GIT master) was compiled on Linux and Windows platforms and tested.
[revision removed]
Number of compiler warnings:
occt component :
Linux: 423 (426 on master)
Windows: 24 (24 on master)
products component :
Linux: 189 (190 on master)
Windows: 287 (287 on master)
Regressions/Differences:
No regressions/differences
Testing cases:
http://occt-tests/CR24174-master-occt/Debian60-64/bugs/modalg_5/bug24174_1.html
http://occt-tests/CR24174-master-occt/Windows-32-VC9/bugs/modalg_5/bug24174_1.html
bugs modalg_5(010) bug24174_1: OK
http://occt-tests/CR24174-master-occt/Debian60-64/bugs/modalg_5/bug24174_2.html
http://occt-tests/CR24174-master-occt/Windows-32-VC9/bugs/modalg_5/bug24174_2.html
bugs modalg_5(010) bug24174_2: OK
Testing on Linux:
Total MEMORY difference: 366495364 / 366194636
Total CPU difference: 44519.16000000073 / 44692.0300000013
Testing on Windows:
Total MEMORY difference: 433472060 / 433434232
Total CPU difference: 41576.375 / 34607.296875
There are following differences in images found by testdiff.
http://occt-tests/CR24174-master-occt/Debian60-64/diff-Debian60-64.html
http://occt-tests/CR24174-master-occt/Windows-32-VC9/diff-Windows-32-VC9.html
IMAGE sewing tol_100 I9: I9.png differs
IMAGE sewing tol_100 J3: J3.png differs
IMAGE sewing tol_100 J5: J5.png differs
IMAGE sewing tol_100 J6: J6.png differs
IMAGE sewing tol_100 K3: K3.png differs
IMAGE sewing tol_100 Y7: Y7.png differs
IMAGE sewing tol_100 C5: C5.png differs
IMAGE sewing tol_0_01 F8: F8.png differs
Branch CR24174 (and products from GIT master) was compiled on Linux and Windows platforms and tested.
[revision removed]
Number of compiler warnings:
occt component :
Linux: 423 (426 on master)
Windows: 24 (24 on master)
products component :
Linux: 189 (190 on master)
Windows: 287 (287 on master)
Regressions/Differences:
No regressions/differences
Testing cases:
http://occt-tests/CR24174-master-occt/Debian60-64/bugs/modalg_5/bug24174_1.html
http://occt-tests/CR24174-master-occt/Windows-32-VC9/bugs/modalg_5/bug24174_1.html
bugs modalg_5(010) bug24174_1: OK
http://occt-tests/CR24174-master-occt/Debian60-64/bugs/modalg_5/bug24174_2.html
http://occt-tests/CR24174-master-occt/Windows-32-VC9/bugs/modalg_5/bug24174_2.html
bugs modalg_5(010) bug24174_2: OK
Testing on Linux:
Total MEMORY difference: 366495364 / 366194636
Total CPU difference: 44519.16000000073 / 44692.0300000013
Testing on Windows:
Total MEMORY difference: 433472060 / 433434232
Total CPU difference: 41576.375 / 34607.296875
There are following differences in images found by testdiff.
http://occt-tests/CR24174-master-occt/Debian60-64/diff-Debian60-64.html
http://occt-tests/CR24174-master-occt/Windows-32-VC9/diff-Windows-32-VC9.html
IMAGE sewing tol_100 I9: I9.png differs
IMAGE sewing tol_100 J3: J3.png differs
IMAGE sewing tol_100 J5: J5.png differs
IMAGE sewing tol_100 J6: J6.png differs
IMAGE sewing tol_100 K3: K3.png differs
IMAGE sewing tol_100 Y7: Y7.png differs
IMAGE sewing tol_100 C5: C5.png differs
IMAGE sewing tol_0_01 F8: F8.png differs
I do not consider the reported differences in images as regressions, they are just variations on bad shapes. Thus I switch this fix to "tested".
Related records