Open CASCADE Technology  6.9.0
Public Member Functions

ChFi2d_FilletAPI Class Reference

An interface class for 2D fillets. Open CASCADE provides two algorithms for 2D fillets: ChFi2d_Builder - it constructs a fillet or chamfer for linear and circular edges of a face. ChFi2d_FilletAPI - it encapsulates two algorithms: ChFi2d_AnaFilletAlgo - analytical constructor of the fillet. It works only for linear and circular edges, having a common point. ChFi2d_FilletAlgo - iteration recursive method constructing the fillet edge for any type of edges including ellipses and b-splines. The edges may even have no common point. More...

#include <ChFi2d_FilletAPI.hxx>

Public Member Functions

 ChFi2d_FilletAPI ()
 An empty constructor of the fillet algorithm. Call a method Init() to initialize the algorithm before calling of a Perform() method. More...
 
 ChFi2d_FilletAPI (const TopoDS_Wire &theWire, const gp_Pln &thePlane)
 A constructor of a fillet algorithm: accepts a wire consisting of two edges in a plane. More...
 
 ChFi2d_FilletAPI (const TopoDS_Edge &theEdge1, const TopoDS_Edge &theEdge2, const gp_Pln &thePlane)
 A constructor of a fillet algorithm: accepts two edges in a plane. More...
 
void Init (const TopoDS_Wire &theWire, const gp_Pln &thePlane)
 Initializes a fillet algorithm: accepts a wire consisting of two edges in a plane. More...
 
void Init (const TopoDS_Edge &theEdge1, const TopoDS_Edge &theEdge2, const gp_Pln &thePlane)
 Initializes a fillet algorithm: accepts two edges in a plane. More...
 
Standard_Boolean Perform (const Standard_Real theRadius)
 Constructs a fillet edge. Returns true if at least one result was found. More...
 
Standard_Integer NbResults (const gp_Pnt &thePoint)
 Returns number of possible solutions. <thePoint> chooses a particular fillet in case of several fillets may be constructed (for example, a circle intersecting a segment in 2 points). Put the intersecting (or common) point of the edges. More...
 
TopoDS_Edge Result (const gp_Pnt &thePoint, TopoDS_Edge &theEdge1, TopoDS_Edge &theEdge2, const Standard_Integer iSolution=-1)
 Returns result (fillet edge, modified edge1, modified edge2), nearest to the given point <thePoint> if iSolution == -1 <thePoint> chooses a particular fillet in case of several fillets may be constructed (for example, a circle intersecting a segment in 2 points). Put the intersecting (or common) point of the edges. More...
 

Detailed Description

An interface class for 2D fillets. Open CASCADE provides two algorithms for 2D fillets: ChFi2d_Builder - it constructs a fillet or chamfer for linear and circular edges of a face. ChFi2d_FilletAPI - it encapsulates two algorithms: ChFi2d_AnaFilletAlgo - analytical constructor of the fillet. It works only for linear and circular edges, having a common point. ChFi2d_FilletAlgo - iteration recursive method constructing the fillet edge for any type of edges including ellipses and b-splines. The edges may even have no common point.

The algorithms ChFi2d_AnaFilletAlgo and ChFi2d_FilletAlgo may be used directly or via this ChFi2d_FilletAPI class. This class chooses an appropriate algorithm analyzing the arguments (a wire or two edges).

Constructor & Destructor Documentation

ChFi2d_FilletAPI::ChFi2d_FilletAPI ( )

An empty constructor of the fillet algorithm. Call a method Init() to initialize the algorithm before calling of a Perform() method.

ChFi2d_FilletAPI::ChFi2d_FilletAPI ( const TopoDS_Wire theWire,
const gp_Pln thePlane 
)

A constructor of a fillet algorithm: accepts a wire consisting of two edges in a plane.

ChFi2d_FilletAPI::ChFi2d_FilletAPI ( const TopoDS_Edge theEdge1,
const TopoDS_Edge theEdge2,
const gp_Pln thePlane 
)

A constructor of a fillet algorithm: accepts two edges in a plane.

Member Function Documentation

void ChFi2d_FilletAPI::Init ( const TopoDS_Wire theWire,
const gp_Pln thePlane 
)

Initializes a fillet algorithm: accepts a wire consisting of two edges in a plane.

void ChFi2d_FilletAPI::Init ( const TopoDS_Edge theEdge1,
const TopoDS_Edge theEdge2,
const gp_Pln thePlane 
)

Initializes a fillet algorithm: accepts two edges in a plane.

Standard_Integer ChFi2d_FilletAPI::NbResults ( const gp_Pnt thePoint)

Returns number of possible solutions. <thePoint> chooses a particular fillet in case of several fillets may be constructed (for example, a circle intersecting a segment in 2 points). Put the intersecting (or common) point of the edges.

Standard_Boolean ChFi2d_FilletAPI::Perform ( const Standard_Real  theRadius)

Constructs a fillet edge. Returns true if at least one result was found.

TopoDS_Edge ChFi2d_FilletAPI::Result ( const gp_Pnt thePoint,
TopoDS_Edge theEdge1,
TopoDS_Edge theEdge2,
const Standard_Integer  iSolution = -1 
)

Returns result (fillet edge, modified edge1, modified edge2), nearest to the given point <thePoint> if iSolution == -1 <thePoint> chooses a particular fillet in case of several fillets may be constructed (for example, a circle intersecting a segment in 2 points). Put the intersecting (or common) point of the edges.


The documentation for this class was generated from the following file: