occt: master 3d58dc49

Author Committer Branch Timestamp Parent
nbv bugmaster master 2014-12-10 13:18:05 master 68cdb44b
Affected Issues  0025124: [Feature request] Removal of continuity checks for offset geometries
Changeset 0025124: [Feature request] Removal of continuity checks for offset geometries

Sometimes curve or surface, which is defined as C0, has continuity G1 or above. Offset can be built from these shapes.
Therefore, this extended checking was added into SetBasisCurve and SetBasisSurface methods.

Main changes in function BRepOffset_Tool::ExtentFace(...):
* "return" is added if intersection (in 2D-space) between two edges in a face cannot be found.

Basis curve/surface continuity value found (if G1-checking is OK) is set up as BasisContinuity (see myBasisCurveContinuity and myBasisSurfContinuity members which is returned by GetBasisCurveContinuity and GetBasisSurfContinuity() methods). This fact is used in Geom2dAdaptor and in GeomAdaptor classes.

Possibility is entered, which allows for basis elements of offset curve/surface to avoid of C0-checking.

Test cases were changed according to their new behavior.

Test-cases for issue 0025124
mod - src/BRepFill/BRepFill_OffsetWire.cxx Diff File
mod - src/BRepOffset/BRepOffset_Inter3d.cxx Diff File
mod - src/BRepOffset/BRepOffset_Tool.cxx Diff File
mod - src/BSplCLib/BSplCLib.cxx Diff File
mod - src/Geom/Geom_BSplineCurve.cdl Diff File
mod - src/Geom/Geom_BSplineCurve_1.cxx Diff File
mod - src/Geom/Geom_OffsetCurve.cdl Diff File
mod - src/Geom/Geom_OffsetCurve.cxx Diff File
mod - src/Geom/Geom_OffsetSurface.cdl Diff File
mod - src/Geom/Geom_OffsetSurface.cxx Diff File
mod - src/Geom/Geom_OsculatingSurface.cxx Diff File
mod - src/Geom2d/Geom2d_BSplineCurve.cdl Diff File
mod - src/Geom2d/Geom2d_BSplineCurve_1.cxx Diff File
mod - src/Geom2d/Geom2d_OffsetCurve.cdl Diff File
mod - src/Geom2d/Geom2d_OffsetCurve.cxx Diff File
mod - src/Geom2dAdaptor/Geom2dAdaptor_Curve.cxx Diff File
mod - src/GeomAdaptor/GeomAdaptor_Curve.cxx Diff File
add - tests/bugs/modalg_5/bug25124_1 Diff File
add - tests/bugs/modalg_5/bug25124_2 Diff File
add - tests/bugs/modalg_5/bug25124_3 Diff File
add - tests/bugs/modalg_5/bug25124_4 Diff File
add - tests/bugs/modalg_5/bug25124_5 Diff File
add - tests/bugs/modalg_5/bug25124_6 Diff File
add - tests/bugs/modalg_5/bug25124_7 Diff File
mod - tests/offset/wire_unclosed_outside_0_005/B3 Diff File
mod - tests/offset/wire_unclosed_outside_0_005/B4 Diff File
mod - tests/offset/wire_unclosed_outside_0_005/B6 Diff File
mod - tests/offset/wire_unclosed_outside_0_025/B2 Diff File
mod - tests/offset/wire_unclosed_outside_0_025/B4 Diff File
mod - tests/offset/wire_unclosed_outside_0_025/B6 Diff File
mod - tests/offset/wire_unclosed_outside_0_075/B1 Diff File
mod - tests/offset/wire_unclosed_outside_0_075/B2 Diff File
mod - tests/offset/wire_unclosed_outside_0_075/B6 Diff File