mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-08-14 13:30:48 +03:00
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.
This commit is contained in:
@@ -31,8 +31,6 @@
|
||||
|
||||
#include <math_Matrix.hxx>
|
||||
|
||||
static const Standard_Integer aGlobalMaxDegree = 25;
|
||||
|
||||
//=======================================================================
|
||||
//struct : BSplCLib_DataContainer
|
||||
//purpose: Auxiliary structure providing buffers for poles and knots used in
|
||||
@@ -44,8 +42,7 @@ struct BSplCLib_DataContainer
|
||||
BSplCLib_DataContainer(Standard_Integer Degree)
|
||||
{
|
||||
(void)Degree; // avoid compiler warning
|
||||
Standard_OutOfRange_Raise_if (Degree > BSplCLib::MaxDegree() ||
|
||||
BSplCLib::MaxDegree() > aGlobalMaxDegree,
|
||||
Standard_OutOfRange_Raise_if (Degree > BSplCLib::MaxDegree(),
|
||||
"BSplCLib: bspline degree is greater than maximum supported");
|
||||
}
|
||||
|
||||
@@ -326,7 +323,7 @@ BSplCLib::BuildBSpMatrix(const TColStd_Array1OfReal& Parameters,
|
||||
ReturnCode = 0,
|
||||
FirstNonZeroBsplineIndex,
|
||||
BandWidth,
|
||||
MaxOrder = aGlobalMaxDegree+1,
|
||||
MaxOrder = BSplCLib::MaxDegree() + 1,
|
||||
Order ;
|
||||
|
||||
math_Matrix BSplineBasis(1, MaxOrder,
|
||||
|
Reference in New Issue
Block a user