1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-08-09 13:22:24 +03:00

0029511: Section fails for these two faces

Modified method: Approx_ComputeLine::Compute
Check of multicurve is now always unconditional, the procedure of check is modified to avoid infinite loops.

Modified classes: GeomLib_CheckBSplineCurve and GeomLib_Check2dBSplineCurve
Correction of poles at the ends of curve is modified to fit the direction of tangent defined by two first points or two last points of walking line.

Also modified:

BOPAlgo_PaveFiller: modified methods PostTreatFF, RemoveUsedVertices - now unused vertices are included in the list of vertices to be absorbed by other ones.
This commit is contained in:
jgv
2018-03-30 13:30:44 +03:00
committed by bugmaster
parent d60e8ddedc
commit e67e482d99
20 changed files with 484 additions and 289 deletions

View File

@@ -38,7 +38,9 @@ public:
DEFINE_STANDARD_ALLOC
Standard_EXPORT GeomLib_Check2dBSplineCurve(const Handle(Geom2d_BSplineCurve)& Curve, const Standard_Real Tolerance, const Standard_Real AngularTolerance);
Standard_EXPORT GeomLib_Check2dBSplineCurve(const Handle(Geom2d_BSplineCurve)& Curve,
const Standard_Real Tolerance,
const Standard_Real AngularTolerance);
Standard_Boolean IsDone() const;
@@ -64,6 +66,9 @@ protected:
private:
void FixTangentOnCurve(Handle(Geom2d_BSplineCurve)& theCurve,
const Standard_Boolean FirstFlag,
const Standard_Boolean LastFlag);
Handle(Geom2d_BSplineCurve) myCurve;
@@ -72,10 +77,9 @@ private:
Standard_Boolean myFixLastTangent;
Standard_Real myAngularTolerance;
Standard_Real myTolerance;
gp_Pnt2d myFirstPole;
gp_Pnt2d myLastPole;
Standard_Integer myIndSecondPole;
Standard_Integer myIndPrelastPole;
};