occt: master 2f33e340

Author Committer Branch Timestamp Parent
ddzama smoskvin master 2022-11-24 16:24:14 master 3eb891ec
Changeset 0032934: Modelling Algorithms - BRepExtrema_DistShapeShape returns two solutions instead of one

distmini of two edges returns two solution points instead one.
Second unneeded solution point is the same as first.

The problem was in fact that second edge has continuity C0.
In this case additional extremas analysis performed in special procedure

PERFORM_C0

And second point found in this procedure.
Folowing code of

BRepExtrema_DistanceSS::Perform (variant for Edge/Edge)

we should this additional solution extremas set
to be object of test TRI_SOLUTION before pushing
into main list of solution.
This solves the problem.
Corresponding test and compound with edges has been created.

Additionally, in the function

PERFORM_C0

an obvious error has fixed.
mod - src/BRepExtrema/BRepExtrema_DistanceSS.cxx Diff File
add - tests/bugs/modalg_7/bug32934 Diff File