0023178: Intersection of cylinders fails to produce results
authornbv <nbv@opencascade.com>
Fri, 23 Sep 2016 14:24:52 +0000 (17:24 +0300)
committerapn <apn@opencascade.com>
Fri, 7 Oct 2016 10:37:31 +0000 (13:37 +0300)
commitd30895f5da57fcf4b409163725c35ef2c823fd43
tree08c231e4e619ebdb14130fac083c3c83bd520804
parentfe4fc02d7b9023eba77428bd6a82948785ad5637
0023178: Intersection of cylinders fails to produce results

1. Unification of trimmed and not-trimmed cylinders processing (IntPatch_Intersection::GeomGeomPerfomTrimSurf() method has been removed).
2. Interface of IntPatch_ImpImpIntersection::Perform(...) method has been changed.
3. Now, WLine purging is forbidden for Geom-Geom-Intersection.
4. Bnd_Range class has been created. See Bnd_Range.hxx for detail information.
5. Algorithm of AddBoundaryPoint function has been improved in order to obtain intersection points in both boundaries (VFirst and VLast of every surface).
6. Earlier, method Geom2dConvert::ConcatG1(...) increased resulted B-spline degree (in case of not succession of previous iteration). Now increased value has been limited by Geom2d_BSplineCurve::MaxDegree() value (max degree = 25).
7. Algorithm of B-spline closure definition has been changed in the methods Geom2dConvert::C0BSplineToC1BSplineCurve(...) and Geom2dConvert::C0BSplineToArrayOfC1BSplineCurve(...).

Creation of test case for this issue.
Adjusting test cases according to their new behavior.

Small correction in the code according to KGV's remark.
18 files changed:
src/BSplCLib/BSplCLib_2.cxx
src/Bnd/Bnd_Range.cxx [new file with mode: 0644]
src/Bnd/Bnd_Range.hxx [new file with mode: 0644]
src/Bnd/FILES
src/Geom2dConvert/Geom2dConvert.cxx
src/IntPatch/IntPatch_ImpImpIntersection.hxx
src/IntPatch/IntPatch_ImpImpIntersection_1.gxx
src/IntPatch/IntPatch_ImpImpIntersection_2.gxx
src/IntPatch/IntPatch_ImpImpIntersection_4.gxx
src/IntPatch/IntPatch_Intersection.cxx
src/IntPatch/IntPatch_Intersection.hxx
src/IntPatch/IntPatch_WLineTool.cxx
src/IntPatch/IntPatch_WLineTool.hxx
tests/blend/simple/Q6
tests/bugs/modalg_5/bug25742_2
tests/bugs/modalg_6/bug23178 [new file with mode: 0644]
tests/bugs/modalg_6/bug27310_2
tests/bugs/modalg_6/bug27766