1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-08-19 13:40:49 +03:00

0030940: BRepFilletAPI_MakeFillet algorithm fails on closed shell

1. Add check of configuration of corner in the end of spine.
2. Correct treatment of "smooth corners".
This commit is contained in:
jgv
2019-09-20 13:52:10 +03:00
committed by apn
parent bf327822d6
commit eff3eff916
33 changed files with 586 additions and 319 deletions

View File

@@ -34,6 +34,7 @@
#include <Standard_Transient.hxx>
#include <GeomAbs_CurveType.hxx>
#include <ChFiDS_ChamfMode.hxx>
#include <ChFiDS_TypeOfConcavity.hxx>
class TopoDS_Edge;
class ChFiDS_HElSpine;
class gp_Lin;
@@ -201,8 +202,14 @@ public:
ChFiDS_State Status (const Standard_Boolean IsFirst) const;
//! returns the type of concavity in the connection
ChFiDS_TypeOfConcavity GetTypeOfConcavity() const;
void SetStatus (const ChFiDS_State S, const Standard_Boolean IsFirst);
//! sets the type of concavity in the connection
void SetTypeOfConcavity (const ChFiDS_TypeOfConcavity theType);
//! returns if the set of edges starts (or end) on
//! Tangency point.
Standard_Boolean IsTangencyExtremity (const Standard_Boolean IsFirst) const;
@@ -264,6 +271,7 @@ private:
BRepAdaptor_Curve myCurve;
BRepAdaptor_Curve myOffsetCurve;
Standard_Integer indexofcurve;
ChFiDS_TypeOfConcavity myTypeOfConcavity;
ChFiDS_State firstState;
ChFiDS_State lastState;
TopTools_SequenceOfShape spine;