]> OCCT Git - occt.git/commit
0032915: Geom2dAPI_InterCurveCurve, The algorithm lost an intersection point. CR0-WEEK-25 IR-2022-06-24
authorazv <azv@opencascade.com>
Fri, 8 Apr 2022 08:03:53 +0000 (11:03 +0300)
committerafokin <afokin@opencascade.com>
Thu, 23 Jun 2022 17:40:07 +0000 (20:40 +0300)
commit63fa56bc83f2f366068fd2e67fce3ea4ff0c5ee3
tree81c942a2fc30d22334317f35d7dea8bd7edbcc4c
parenta29bae45f926a450dc08661293fb88ab89531f9c
0032915: Geom2dAPI_InterCurveCurve, The algorithm lost an intersection point.

Get rid of strange code: preliminary check of self-intersections is made on a polygonal representation of a curve, it is able to find possible intersections, but after that it filter out segments neighbor to the pair of non-intersected segments.

Test case de step_4 I1 has been marked BAD, because the self-intersection is treated correctly, but the projection algorithm generates such crooked 2D curve.

Reference data in test cases heal split_angle_advanced ZA5 and ZA6 has been updated, because those shapes have self-intersected edges, which are being detected now.
src/IntCurve/IntCurve_IntPolyPolyGen.gxx
tests/bugs/modalg_8/bug32915 [new file with mode: 0644]
tests/de/step_4/I1
tests/heal/data/advanced/ZA5
tests/heal/data/advanced/ZA6