occt: master d66f7c0f

Author Committer Branch Timestamp Parent
skl bugmaster master 2020-11-02 16:52:44 master 59069d3f
Affected Issues  0029564: Data Exchange - STEP Import and Export failure
Changeset 0029564: STEP Import and Export failure

In the result of translation one face lying on the spherical surface converted to the two separate faces due to method IsSurfaceUVPeriodic returned false for spherical surface.
Now method IsSurfaceUVPeriodic returns true for spherical surface in order to natural bounds can be added for spherical surface too.
Method ShapeFix_Face::FixOrientation was corrected to avoid reversing inner wire for case when spherical face has only one inner bound without outer bound.
Check that wire has bounding box equal to bounding box of surface was added in the method ShapeFix_Face::FixAddNaturalBound in order to avoid addition of the natural bounds ( test bugs xde bug22535_2 1 for face 2 lying on the torus)

In order to avoid regressions fix for translation "VERTEX_LOOP" entities was added. Natural bounds for "VERTEX_LOOP" lying on the Spherical and BSpline surface is added only if face does not have any other bounds.
In other case natural bounds were added during ShapeFix operation after translation in order take into account mutual position of the all bounds in the UV space of the face.
mod - src/ShapeFix/ShapeFix_Face.cxx Diff File
mod - src/StepToTopoDS/StepToTopoDS_TranslateFace.cxx Diff File
add - tests/bugs/step/bug29564 Diff File
mod - tests/de/step_1/E6 Diff File
mod - tests/de/step_2/A3 Diff File
mod - tests/de/step_2/A5 Diff File
mod - tests/de/step_2/D2 Diff File
mod - tests/de/step_3/A5 Diff File
mod - tests/de/step_3/A9 Diff File
mod - tests/de/step_3/D8 Diff File