0028553: Incorrect result of the ShapeUpgrade_ShapeDivideContinuity algorithm
authormsv <msv@opencascade.com>
Tue, 14 Mar 2017 14:33:46 +0000 (17:33 +0300)
committerbugmaster <bugmaster@opencascade.com>
Thu, 23 Mar 2017 12:57:23 +0000 (15:57 +0300)
commit19e7092d1b0d871bbaed399e344a91c4916a80f4
treedc0e0f92d49d2923ccc06b8da9ce0de5038dc17e
parent1b9f3f674efc751e03e6f9651093e5fd0dd057aa
0028553: Incorrect result of the ShapeUpgrade_ShapeDivideContinuity algorithm

The cause of the bug was computation of incorrect UVBounds in the method ShapeAnalysis::GetFaceUVBounds. In this patch the computation of a box for a 2D curve in the method ShapeAnalysis_Curve::FillBndBox() has been improved taking into account intervals of C2 continuity.
Also the fix makes little extension of bounds when making the new surface in ShapeUpgrade_FaceDivide::SplitSurface(), so that all p-curves were fully inside.

Test case for issue CR28553
src/ShapeAnalysis/ShapeAnalysis_Curve.cxx
src/ShapeUpgrade/ShapeUpgrade_FaceDivide.cxx
tests/bugs/heal/bug28553 [new file with mode: 0644]