OCCT3D OCCT 8.0.1
OCCT documentation

Search guides and API reference

Enter at least two characters.

    Open CASCADE Technology Reference Manual 8.0.1
    ChFi3d_FilBuilder Class Reference

    Tool of construction of fillets 3d on edges (on a solid). More...

    #include <ChFi3d_FilBuilder.hxx>

    Inheritance diagram for ChFi3d_FilBuilder:

    Public Member Functions

     ChFi3d_FilBuilder (const TopoDS_Shape &S, const ChFi3d_FilletShape FShape=ChFi3d_Rational, const double Ta=1.0e-2)
    void SetFilletShape (const ChFi3d_FilletShape FShape)
     Sets the type of fillet surface.
    ChFi3d_FilletShape GetFilletShape () const
     Returns the type of fillet surface.
    void Add (const TopoDS_Edge &E)
     initialisation of a contour with the first edge (the following are found by propagation). Attention, you need to start with SetRadius.
    void Add (const double Radius, const TopoDS_Edge &E)
     initialisation of the constant vector the corresponding 1st edge.
    void SetRadius (const occ::handle< Law_Function > &C, const int IC, const int IinC)
     Set the radius of the contour of index IC.
    bool IsConstant (const int IC)
     Returns true the contour is flagged as edge constant.
    double Radius (const int IC)
     Returns the vector if the contour is flagged as edge constant.
    void ResetContour (const int IC)
     Reset all vectors of contour IC.
    void SetRadius (const double Radius, const int IC, const TopoDS_Edge &E)
     Set a constant on edge E of the contour of index IC. Since then E is flagged as constant.
    void UnSet (const int IC, const TopoDS_Edge &E)
     Extracts the flag constant and the vector of edge E.
    void SetRadius (const double Radius, const int IC, const TopoDS_Vertex &V)
     Set a vector on vertex V of the contour of index IC.
    void UnSet (const int IC, const TopoDS_Vertex &V)
     Extracts the vector of the vertex V.
    void SetRadius (const gp_XY &UandR, const int IC, const int IinC)
     Set a vertex on the point of parameter U in the edge IinC of the contour of index IC.
    bool IsConstant (const int IC, const TopoDS_Edge &E)
     Returns true E is flagged as edge constant.
    double Radius (const int IC, const TopoDS_Edge &E)
     Returns the vector if E is flagged as edge constant.
    bool GetBounds (const int IC, const TopoDS_Edge &E, double &First, double &Last)
     Returns in First and Last extremities of the part of variable vector framing E, returns False if E is flagged as edge constant.
    occ::handle< Law_FunctionGetLaw (const int IC, const TopoDS_Edge &E)
     Returns the rule of elementary evolution of the part to variable vector framing E, returns a rule zero if E is flagged as edge constant.
    void SetLaw (const int IC, const TopoDS_Edge &E, const occ::handle< Law_Function > &L)
     Sets the rule of elementary evolution of the part to variable vector framing E.
    void Simulate (const int IC)
    int NbSurf (const int IC) const
    occ::handle< NCollection_HArray1< ChFiDS_CircSection > > Sect (const int IC, const int IS) const
    Public Member Functions inherited from ChFi3d_Builder
    virtual ~ChFi3d_Builder ()
    void SetParams (const double Tang, const double Tesp, const double T2d, const double TApp3d, const double TolApp2d, const double Fleche)
    void SetContinuity (const GeomAbs_Shape InternalContinuity, const double AngularTolerance)
    void Remove (const TopoDS_Edge &E)
     extracts from the list the contour containing edge E.
    int Contains (const TopoDS_Edge &E) const
     gives the number of the contour containing E or 0 if E does not belong to any contour.
    int Contains (const TopoDS_Edge &E, int &IndexInSpine) const
     gives the number of the contour containing E or 0 if E does not belong to any contour. Sets in IndexInSpine the index of E in the contour if it's found
    int NbElements () const
     gives the number of disjoint contours on which the fillets are calculated
    occ::handle< ChFiDS_SpineValue (const int I) const
     gives the n'th set of edges (contour) if I >NbElements()
    double Length (const int IC) const
     returns the length of the contour of index IC.
    TopoDS_Vertex FirstVertex (const int IC) const
     returns the First vertex V of the contour of index IC.
    TopoDS_Vertex LastVertex (const int IC) const
     returns the Last vertex V of the contour of index IC.
    double Abscissa (const int IC, const TopoDS_Vertex &V) const
     returns the abscissa of the vertex V on the contour of index IC.
    double RelativeAbscissa (const int IC, const TopoDS_Vertex &V) const
     returns the relative abscissa([0.,1.]) of the vertex V on the contour of index IC.
    bool ClosedAndTangent (const int IC) const
     returns true if the contour of index IC is closed an tangent.
    bool Closed (const int IC) const
     returns true if the contour of index IC is closed
    void Compute ()
     general calculation of geometry on all edges, topologic reconstruction.
    bool IsDone () const
     returns True if the computation is success
    TopoDS_Shape Shape () const
     if (Isdone()) makes the result. if (!Isdone())
    const NCollection_List< TopoDS_Shape > & Generated (const TopoDS_Shape &EouV)
     Advanced function for the history.
    int NbFaultyContours () const
     Returns the number of contours on which the calculation has failed.
    int FaultyContour (const int I) const
     Returns the number of I'th contour on which the calculation has failed.
    int NbComputedSurfaces (const int IC) const
     Returns the number of surfaces calculated on the contour IC.
    occ::handle< Geom_SurfaceComputedSurface (const int IC, const int IS) const
     Returns the IS'th surface calculated on the contour IC.
    int NbFaultyVertices () const
     Returns the number of vertices on which the calculation has failed.
    TopoDS_Vertex FaultyVertex (const int IV) const
     Returns the IV'th vertex on which the calculation has failed.
    bool HasResult () const
     returns True if a partial result has been calculated
    TopoDS_Shape BadShape () const
     if (HasResult()) returns partial result if (!HasResult())
    ChFiDS_ErrorStatus StripeStatus (const int IC) const
     for the stripe IC ,indication on the cause of failure WalkingFailure,TwistedSurface,Error, Ok
    void Reset ()
     Reset all results of compute and returns the algorithm in the state of the last acquisition to enable modification of contours or areas.
    occ::handle< TopOpeBRepBuild_HBuilderBuilder () const
     Returns the Builder of topologic operations.
    bool SplitKPart (const occ::handle< ChFiDS_SurfData > &Data, NCollection_Sequence< occ::handle< ChFiDS_SurfData > > &SetData, const occ::handle< ChFiDS_Spine > &Spine, const int Iedge, const occ::handle< Adaptor3d_Surface > &S1, const occ::handle< Adaptor3d_TopolTool > &I1, const occ::handle< Adaptor3d_Surface > &S2, const occ::handle< Adaptor3d_TopolTool > &I2, bool &Intf, bool &Intl)
     Method, implemented in the inheritants, calculates the elements of construction of the surface (fillet or chamfer).
    bool PerformTwoCornerbyInter (const int Index)

    Protected Member Functions

    void SimulKPart (const occ::handle< ChFiDS_SurfData > &SD) const override
    bool SimulSurf (occ::handle< ChFiDS_SurfData > &Data, const occ::handle< ChFiDS_ElSpine > &Guide, const occ::handle< ChFiDS_Spine > &Spine, const int Choix, const occ::handle< BRepAdaptor_Surface > &S1, const occ::handle< Adaptor3d_TopolTool > &I1, const occ::handle< BRepAdaptor_Surface > &S2, const occ::handle< Adaptor3d_TopolTool > &I2, const double TolGuide, double &First, double &Last, const bool Inside, const bool Appro, const bool Forward, const bool RecOnS1, const bool RecOnS2, const math_Vector &Soldep, int &Intf, int &Intl) override
    void SimulSurf (occ::handle< ChFiDS_SurfData > &Data, const occ::handle< ChFiDS_ElSpine > &Guide, const occ::handle< ChFiDS_Spine > &Spine, const int Choix, const occ::handle< BRepAdaptor_Surface > &S1, const occ::handle< Adaptor3d_TopolTool > &I1, const occ::handle< BRepAdaptor_Curve2d > &PC1, const occ::handle< BRepAdaptor_Surface > &Sref1, const occ::handle< BRepAdaptor_Curve2d > &PCref1, bool &Decroch1, const occ::handle< BRepAdaptor_Surface > &S2, const occ::handle< Adaptor3d_TopolTool > &I2, const TopAbs_Orientation Or2, const double Fleche, const double TolGuide, double &First, double &Last, const bool Inside, const bool Appro, const bool Forward, const bool RecP, const bool RecS, const bool RecRst, const math_Vector &Soldep) override
    void SimulSurf (occ::handle< ChFiDS_SurfData > &Data, const occ::handle< ChFiDS_ElSpine > &Guide, const occ::handle< ChFiDS_Spine > &Spine, const int Choix, const occ::handle< BRepAdaptor_Surface > &S1, const occ::handle< Adaptor3d_TopolTool > &I1, const TopAbs_Orientation Or1, const occ::handle< BRepAdaptor_Surface > &S2, const occ::handle< Adaptor3d_TopolTool > &I2, const occ::handle< BRepAdaptor_Curve2d > &PC2, const occ::handle< BRepAdaptor_Surface > &Sref2, const occ::handle< BRepAdaptor_Curve2d > &PCref2, bool &Decroch2, const double Fleche, const double TolGuide, double &First, double &Last, const bool Inside, const bool Appro, const bool Forward, const bool RecP, const bool RecS, const bool RecRst, const math_Vector &Soldep) override
    void SimulSurf (occ::handle< ChFiDS_SurfData > &Data, const occ::handle< ChFiDS_ElSpine > &Guide, const occ::handle< ChFiDS_Spine > &Spine, const int Choix, const occ::handle< BRepAdaptor_Surface > &S1, const occ::handle< Adaptor3d_TopolTool > &I1, const occ::handle< BRepAdaptor_Curve2d > &PC1, const occ::handle< BRepAdaptor_Surface > &Sref1, const occ::handle< BRepAdaptor_Curve2d > &PCref1, bool &Decroch1, const TopAbs_Orientation Or1, const occ::handle< BRepAdaptor_Surface > &S2, const occ::handle< Adaptor3d_TopolTool > &I2, const occ::handle< BRepAdaptor_Curve2d > &PC2, const occ::handle< BRepAdaptor_Surface > &Sref2, const occ::handle< BRepAdaptor_Curve2d > &PCref2, bool &Decroch2, const TopAbs_Orientation Or2, const double Fleche, const double TolGuide, double &First, double &Last, const bool Inside, const bool Appro, const bool Forward, const bool RecP1, const bool RecRst1, const bool RecP2, const bool RecRst2, const math_Vector &Soldep) override
    bool PerformFirstSection (const occ::handle< ChFiDS_Spine > &S, const occ::handle< ChFiDS_ElSpine > &HGuide, const int Choix, occ::handle< BRepAdaptor_Surface > &S1, occ::handle< BRepAdaptor_Surface > &S2, const occ::handle< Adaptor3d_TopolTool > &I1, const occ::handle< Adaptor3d_TopolTool > &I2, const double Par, math_Vector &SolDep, TopAbs_State &Pos1, TopAbs_State &Pos2) const override
    bool PerformSurf (NCollection_Sequence< occ::handle< ChFiDS_SurfData > > &SeqData, const occ::handle< ChFiDS_ElSpine > &Guide, const occ::handle< ChFiDS_Spine > &Spine, const int Choix, const occ::handle< BRepAdaptor_Surface > &S1, const occ::handle< Adaptor3d_TopolTool > &I1, const occ::handle< BRepAdaptor_Surface > &S2, const occ::handle< Adaptor3d_TopolTool > &I2, const double MaxStep, const double Fleche, const double TolGuide, double &First, double &Last, const bool Inside, const bool Appro, const bool Forward, const bool RecOnS1, const bool RecOnS2, const math_Vector &Soldep, int &Intf, int &Intl) override
     Method calculates the elements of construction of the fillet (constant or evolutive).
    void PerformSurf (NCollection_Sequence< occ::handle< ChFiDS_SurfData > > &SeqData, const occ::handle< ChFiDS_ElSpine > &Guide, const occ::handle< ChFiDS_Spine > &Spine, const int Choix, const occ::handle< BRepAdaptor_Surface > &S1, const occ::handle< Adaptor3d_TopolTool > &I1, const occ::handle< BRepAdaptor_Curve2d > &PC1, const occ::handle< BRepAdaptor_Surface > &Sref1, const occ::handle< BRepAdaptor_Curve2d > &PCref1, bool &Decroch1, const occ::handle< BRepAdaptor_Surface > &S2, const occ::handle< Adaptor3d_TopolTool > &I2, const TopAbs_Orientation Or2, const double MaxStep, const double Fleche, const double TolGuide, double &First, double &Last, const bool Inside, const bool Appro, const bool Forward, const bool RecP, const bool RecS, const bool RecRst, const math_Vector &Soldep) override
     Method, implemented in inheritants, calculates the elements of construction of the surface (fillet or chamfer) contact edge/face.
    void PerformSurf (NCollection_Sequence< occ::handle< ChFiDS_SurfData > > &SeqData, const occ::handle< ChFiDS_ElSpine > &Guide, const occ::handle< ChFiDS_Spine > &Spine, const int Choix, const occ::handle< BRepAdaptor_Surface > &S1, const occ::handle< Adaptor3d_TopolTool > &I1, const TopAbs_Orientation Or1, const occ::handle< BRepAdaptor_Surface > &S2, const occ::handle< Adaptor3d_TopolTool > &I2, const occ::handle< BRepAdaptor_Curve2d > &PC2, const occ::handle< BRepAdaptor_Surface > &Sref2, const occ::handle< BRepAdaptor_Curve2d > &PCref2, bool &Decroch2, const double MaxStep, const double Fleche, const double TolGuide, double &First, double &Last, const bool Inside, const bool Appro, const bool Forward, const bool RecP, const bool RecS, const bool RecRst, const math_Vector &Soldep) override
     Method, implemented in inheritants, calculates the elements of construction of the surface (fillet or chamfer) contact edge/face.
    void PerformSurf (NCollection_Sequence< occ::handle< ChFiDS_SurfData > > &Data, const occ::handle< ChFiDS_ElSpine > &Guide, const occ::handle< ChFiDS_Spine > &Spine, const int Choix, const occ::handle< BRepAdaptor_Surface > &S1, const occ::handle< Adaptor3d_TopolTool > &I1, const occ::handle< BRepAdaptor_Curve2d > &PC1, const occ::handle< BRepAdaptor_Surface > &Sref1, const occ::handle< BRepAdaptor_Curve2d > &PCref1, bool &Decroch1, const TopAbs_Orientation Or1, const occ::handle< BRepAdaptor_Surface > &S2, const occ::handle< Adaptor3d_TopolTool > &I2, const occ::handle< BRepAdaptor_Curve2d > &PC2, const occ::handle< BRepAdaptor_Surface > &Sref2, const occ::handle< BRepAdaptor_Curve2d > &PCref2, bool &Decroch2, const TopAbs_Orientation Or2, const double MaxStep, const double Fleche, const double TolGuide, double &First, double &Last, const bool Inside, const bool Appro, const bool Forward, const bool RecP1, const bool RecRst1, const bool RecP2, const bool RecRst2, const math_Vector &Soldep) override
     Method, implemented in inheritants, calculates the elements of construction of the surface (fillet or chamfer) contact edge/edge.
    void SplitSurf (NCollection_Sequence< occ::handle< ChFiDS_SurfData > > &SeqData, const occ::handle< BRepBlend_Line > &line)
     Method to split an singular SurfData in several non singular SurfData..
    void PerformTwoCorner (const int Index) override
    void PerformThreeCorner (const int Index) override
    void ExtentOneCorner (const TopoDS_Vertex &V, const occ::handle< ChFiDS_Stripe > &S) override
    void ExtentTwoCorner (const TopoDS_Vertex &V, const NCollection_List< occ::handle< ChFiDS_Stripe > > &LS) override
    void ExtentThreeCorner (const TopoDS_Vertex &V, const NCollection_List< occ::handle< ChFiDS_Stripe > > &LS) override
    void SetRegul () override
    Protected Member Functions inherited from ChFi3d_Builder
     ChFi3d_Builder (const TopoDS_Shape &S, const double Ta)
    bool SimulData (occ::handle< ChFiDS_SurfData > &Data, const occ::handle< ChFiDS_ElSpine > &Guide, const occ::handle< ChFiDS_ElSpine > &AdditionalGuide, occ::handle< BRepBlend_Line > &Lin, const occ::handle< Adaptor3d_Surface > &S1, const occ::handle< Adaptor3d_TopolTool > &I1, const occ::handle< Adaptor3d_Surface > &S2, const occ::handle< Adaptor3d_TopolTool > &I2, Blend_Function &Func, Blend_FuncInv &FInv, const double PFirst, const double MaxStep, const double Fleche, const double TolGuide, double &First, double &Last, const bool Inside, const bool Appro, const bool Forward, const math_Vector &Soldep, const int NbSecMin, const bool RecOnS1=false, const bool RecOnS2=false)
    bool SimulData (occ::handle< ChFiDS_SurfData > &Data, const occ::handle< ChFiDS_ElSpine > &HGuide, occ::handle< BRepBlend_Line > &Lin, const occ::handle< Adaptor3d_Surface > &S1, const occ::handle< Adaptor3d_TopolTool > &I1, const occ::handle< Adaptor3d_Surface > &S2, const occ::handle< Adaptor2d_Curve2d > &PC2, const occ::handle< Adaptor3d_TopolTool > &I2, bool &Decroch, Blend_SurfRstFunction &Func, Blend_FuncInv &FInv, Blend_SurfPointFuncInv &FInvP, Blend_SurfCurvFuncInv &FInvC, const double PFirst, const double MaxStep, const double Fleche, const double TolGuide, double &First, double &Last, const math_Vector &Soldep, const int NbSecMin, const bool Inside, const bool Appro, const bool Forward, const bool RecP, const bool RecS, const bool RecRst)
    bool SimulData (occ::handle< ChFiDS_SurfData > &Data, const occ::handle< ChFiDS_ElSpine > &HGuide, occ::handle< BRepBlend_Line > &Lin, const occ::handle< Adaptor3d_Surface > &S1, const occ::handle< Adaptor2d_Curve2d > &PC1, const occ::handle< Adaptor3d_TopolTool > &I1, bool &Decroch1, const occ::handle< Adaptor3d_Surface > &S2, const occ::handle< Adaptor2d_Curve2d > &PC2, const occ::handle< Adaptor3d_TopolTool > &I2, bool &Decroch2, Blend_RstRstFunction &Func, Blend_SurfCurvFuncInv &FInv1, Blend_CurvPointFuncInv &FInvP1, Blend_SurfCurvFuncInv &FInv2, Blend_CurvPointFuncInv &FInvP2, const double PFirst, const double MaxStep, const double Fleche, const double TolGuide, double &First, double &Last, const math_Vector &Soldep, const int NbSecMin, const bool Inside, const bool Appro, const bool Forward, const bool RecP1, const bool RecRst1, const bool RecP2, const bool RecRst2)
    bool PerformElement (const occ::handle< ChFiDS_Spine > &CElement, const double Offset, const TopoDS_Face &theFirstFace)
    void PerformExtremity (const occ::handle< ChFiDS_Spine > &CElement)
    void PerformSetOfSurf (occ::handle< ChFiDS_Stripe > &S, const bool Simul=false)
    void PerformSetOfKPart (occ::handle< ChFiDS_Stripe > &S, const bool Simul=false)
    void PerformSetOfKGen (occ::handle< ChFiDS_Stripe > &S, const bool Simul=false)
    void Trunc (const occ::handle< ChFiDS_SurfData > &SD, const occ::handle< ChFiDS_Spine > &Spine, const occ::handle< Adaptor3d_Surface > &S1, const occ::handle< Adaptor3d_Surface > &S2, const int iedge, const bool isfirst, const int cntlFiOnS)
    void CallPerformSurf (occ::handle< ChFiDS_Stripe > &Stripe, const bool Simul, NCollection_Sequence< occ::handle< ChFiDS_SurfData > > &SeqSD, occ::handle< ChFiDS_SurfData > &SD, const occ::handle< ChFiDS_ElSpine > &Guide, const occ::handle< ChFiDS_Spine > &Spine, const occ::handle< BRepAdaptor_Surface > &HS1, const occ::handle< BRepAdaptor_Surface > &HS3, const gp_Pnt2d &P1, const gp_Pnt2d &P3, const occ::handle< Adaptor3d_TopolTool > &I1, const occ::handle< BRepAdaptor_Surface > &HS2, const occ::handle< BRepAdaptor_Surface > &HS4, const gp_Pnt2d &P2, const gp_Pnt2d &P4, const occ::handle< Adaptor3d_TopolTool > &I2, const double MaxStep, const double Fleche, const double TolGuide, double &First, double &Last, const bool Inside, const bool Appro, const bool Forward, const bool RecOnS1, const bool RecOnS2, math_Vector &Soldep, int &Intf, int &Intl, occ::handle< BRepAdaptor_Surface > &Surf1, occ::handle< BRepAdaptor_Surface > &Surf2)
    void PerformMoreThreeCorner (const int Index, const int nbcourb)
    bool SearchFace (const occ::handle< ChFiDS_Spine > &Sp, const ChFiDS_CommonPoint &Pc, const TopoDS_Face &FRef, TopoDS_Face &FVoi) const
    bool StripeOrientations (const occ::handle< ChFiDS_Spine > &Sp, TopAbs_Orientation &Or1, TopAbs_Orientation &Or2, int &ChoixConge) const
    bool ComputeData (occ::handle< ChFiDS_SurfData > &Data, const occ::handle< ChFiDS_ElSpine > &Guide, const occ::handle< ChFiDS_Spine > &Spine, occ::handle< BRepBlend_Line > &Lin, const occ::handle< Adaptor3d_Surface > &S1, const occ::handle< Adaptor3d_TopolTool > &I1, const occ::handle< Adaptor3d_Surface > &S2, const occ::handle< Adaptor3d_TopolTool > &I2, Blend_Function &Func, Blend_FuncInv &FInv, const double PFirst, const double MaxStep, const double Fleche, const double TolGuide, double &First, double &Last, const bool Inside, const bool Appro, const bool Forward, const math_Vector &Soldep, int &Intf, int &Intl, bool &Gd1, bool &Gd2, bool &Gf1, bool &Gf2, const bool RecOnS1=false, const bool RecOnS2=false)
     Calculates a Line of contact face/face.
    bool ComputeData (occ::handle< ChFiDS_SurfData > &Data, const occ::handle< ChFiDS_ElSpine > &HGuide, occ::handle< BRepBlend_Line > &Lin, const occ::handle< Adaptor3d_Surface > &S1, const occ::handle< Adaptor3d_TopolTool > &I1, const occ::handle< Adaptor3d_Surface > &S2, const occ::handle< Adaptor2d_Curve2d > &PC2, const occ::handle< Adaptor3d_TopolTool > &I2, bool &Decroch, Blend_SurfRstFunction &Func, Blend_FuncInv &FInv, Blend_SurfPointFuncInv &FInvP, Blend_SurfCurvFuncInv &FInvC, const double PFirst, const double MaxStep, const double Fleche, const double TolGuide, double &First, double &Last, const math_Vector &Soldep, const bool Inside, const bool Appro, const bool Forward, const bool RecP, const bool RecS, const bool RecRst)
     Calculates a Line of contact edge/face.
    bool ComputeData (occ::handle< ChFiDS_SurfData > &Data, const occ::handle< ChFiDS_ElSpine > &HGuide, occ::handle< BRepBlend_Line > &Lin, const occ::handle< Adaptor3d_Surface > &S1, const occ::handle< Adaptor2d_Curve2d > &PC1, const occ::handle< Adaptor3d_TopolTool > &I1, bool &Decroch1, const occ::handle< Adaptor3d_Surface > &S2, const occ::handle< Adaptor2d_Curve2d > &PC2, const occ::handle< Adaptor3d_TopolTool > &I2, bool &Decroch2, Blend_RstRstFunction &Func, Blend_SurfCurvFuncInv &FInv1, Blend_CurvPointFuncInv &FInvP1, Blend_SurfCurvFuncInv &FInv2, Blend_CurvPointFuncInv &FInvP2, const double PFirst, const double MaxStep, const double Fleche, const double TolGuide, double &First, double &Last, const math_Vector &Soldep, const bool Inside, const bool Appro, const bool Forward, const bool RecP1, const bool RecRst1, const bool RecP2, const bool RecRst2)
     Calculates a Line of contact edge/edge.
    bool CompleteData (occ::handle< ChFiDS_SurfData > &Data, Blend_Function &Func, occ::handle< BRepBlend_Line > &Lin, const occ::handle< Adaptor3d_Surface > &S1, const occ::handle< Adaptor3d_Surface > &S2, const TopAbs_Orientation Or1, const bool Gd1, const bool Gd2, const bool Gf1, const bool Gf2, const bool Reversed=false)
    bool CompleteData (occ::handle< ChFiDS_SurfData > &Data, Blend_SurfRstFunction &Func, occ::handle< BRepBlend_Line > &Lin, const occ::handle< Adaptor3d_Surface > &S1, const occ::handle< Adaptor3d_Surface > &S2, const TopAbs_Orientation Or, const bool Reversed)
    bool CompleteData (occ::handle< ChFiDS_SurfData > &Data, Blend_RstRstFunction &Func, occ::handle< BRepBlend_Line > &Lin, const occ::handle< Adaptor3d_Surface > &S1, const occ::handle< Adaptor3d_Surface > &S2, const TopAbs_Orientation Or)
    bool StoreData (occ::handle< ChFiDS_SurfData > &Data, const AppBlend_Approx &Approx, const occ::handle< BRepBlend_Line > &Lin, const occ::handle< Adaptor3d_Surface > &S1, const occ::handle< Adaptor3d_Surface > &S2, const TopAbs_Orientation Or1, const bool Gd1, const bool Gd2, const bool Gf1, const bool Gf2, const bool Reversed=false)
    bool CompleteData (occ::handle< ChFiDS_SurfData > &Data, const occ::handle< Geom_Surface > &Surfcoin, const occ::handle< Adaptor3d_Surface > &S1, const occ::handle< Geom2d_Curve > &PC1, const occ::handle< Adaptor3d_Surface > &S2, const occ::handle< Geom2d_Curve > &PC2, const TopAbs_Orientation Or, const bool On1, const bool Gd1, const bool Gd2, const bool Gf1, const bool Gf2)

    Additional Inherited Members

    Protected Attributes inherited from ChFi3d_Builder
    double tolappangle
    double tolesp
    double tol2d
    double tolapp3d
    double tolapp2d
    double fleche
    GeomAbs_Shape myConti
    ChFiDS_Map myEFMap
    ChFiDS_Map myESoMap
    ChFiDS_Map myEShMap
    ChFiDS_Map myVFMap
    ChFiDS_Map myVEMap
    occ::handle< TopOpeBRepDS_HDataStructuremyDS
    occ::handle< TopOpeBRepBuild_HBuildermyCoup
    NCollection_List< occ::handle< ChFiDS_Stripe > > myListStripe
    ChFiDS_StripeMap myVDataMap
    NCollection_List< ChFiDS_RegulmyRegul
    NCollection_List< occ::handle< ChFiDS_Stripe > > badstripes
    NCollection_List< TopoDS_Shapebadvertices
    NCollection_DataMap< TopoDS_Shape, NCollection_List< int >, TopTools_ShapeMapHashermyEVIMap
    NCollection_DataMap< TopoDS_Shape, TopoDS_Shape, TopTools_ShapeMapHashermyEdgeFirstFace
    bool done
    bool hasresult

    Detailed Description

    Tool of construction of fillets 3d on edges (on a solid).

    Constructor & Destructor Documentation

    ◆ ChFi3d_FilBuilder()

    ChFi3d_FilBuilder::ChFi3d_FilBuilder ( const TopoDS_Shape & S,
    const ChFi3d_FilletShape FShape = ChFi3d_Rational,
    const double Ta = 1.0e-2 )

    Member Function Documentation

    ◆ Add() [1/2]

    void ChFi3d_FilBuilder::Add ( const double Radius,
    const TopoDS_Edge & E )

    initialisation of the constant vector the corresponding 1st edge.

    ◆ Add() [2/2]

    void ChFi3d_FilBuilder::Add ( const TopoDS_Edge & E)

    initialisation of a contour with the first edge (the following are found by propagation). Attention, you need to start with SetRadius.

    ◆ ExtentOneCorner()

    void ChFi3d_FilBuilder::ExtentOneCorner ( const TopoDS_Vertex & V,
    const occ::handle< ChFiDS_Stripe > & S )
    overrideprotectedvirtual

    Implements ChFi3d_Builder.

    ◆ ExtentThreeCorner()

    void ChFi3d_FilBuilder::ExtentThreeCorner ( const TopoDS_Vertex & V,
    const NCollection_List< occ::handle< ChFiDS_Stripe > > & LS )
    overrideprotectedvirtual

    Implements ChFi3d_Builder.

    ◆ ExtentTwoCorner()

    void ChFi3d_FilBuilder::ExtentTwoCorner ( const TopoDS_Vertex & V,
    const NCollection_List< occ::handle< ChFiDS_Stripe > > & LS )
    overrideprotectedvirtual

    Implements ChFi3d_Builder.

    ◆ GetBounds()

    bool ChFi3d_FilBuilder::GetBounds ( const int IC,
    const TopoDS_Edge & E,
    double & First,
    double & Last )

    Returns in First and Last extremities of the part of variable vector framing E, returns False if E is flagged as edge constant.

    ◆ GetFilletShape()

    ChFi3d_FilletShape ChFi3d_FilBuilder::GetFilletShape ( ) const

    Returns the type of fillet surface.

    ◆ GetLaw()

    occ::handle< Law_Function > ChFi3d_FilBuilder::GetLaw ( const int IC,
    const TopoDS_Edge & E )

    Returns the rule of elementary evolution of the part to variable vector framing E, returns a rule zero if E is flagged as edge constant.

    ◆ IsConstant() [1/2]

    bool ChFi3d_FilBuilder::IsConstant ( const int IC)

    Returns true the contour is flagged as edge constant.

    ◆ IsConstant() [2/2]

    bool ChFi3d_FilBuilder::IsConstant ( const int IC,
    const TopoDS_Edge & E )

    Returns true E is flagged as edge constant.

    ◆ NbSurf()

    int ChFi3d_FilBuilder::NbSurf ( const int IC) const

    ◆ PerformFirstSection()

    bool ChFi3d_FilBuilder::PerformFirstSection ( const occ::handle< ChFiDS_Spine > & S,
    const occ::handle< ChFiDS_ElSpine > & HGuide,
    const int Choix,
    occ::handle< BRepAdaptor_Surface > & S1,
    occ::handle< BRepAdaptor_Surface > & S2,
    const occ::handle< Adaptor3d_TopolTool > & I1,
    const occ::handle< Adaptor3d_TopolTool > & I2,
    const double Par,
    math_Vector & SolDep,
    TopAbs_State & Pos1,
    TopAbs_State & Pos2 ) const
    overrideprotectedvirtual

    Implements ChFi3d_Builder.

    ◆ PerformSurf() [1/4]

    void ChFi3d_FilBuilder::PerformSurf ( NCollection_Sequence< occ::handle< ChFiDS_SurfData > > & Data,
    const occ::handle< ChFiDS_ElSpine > & Guide,
    const occ::handle< ChFiDS_Spine > & Spine,
    const int Choix,
    const occ::handle< BRepAdaptor_Surface > & S1,
    const occ::handle< Adaptor3d_TopolTool > & I1,
    const occ::handle< BRepAdaptor_Curve2d > & PC1,
    const occ::handle< BRepAdaptor_Surface > & Sref1,
    const occ::handle< BRepAdaptor_Curve2d > & PCref1,
    bool & Decroch1,
    const TopAbs_Orientation Or1,
    const occ::handle< BRepAdaptor_Surface > & S2,
    const occ::handle< Adaptor3d_TopolTool > & I2,
    const occ::handle< BRepAdaptor_Curve2d > & PC2,
    const occ::handle< BRepAdaptor_Surface > & Sref2,
    const occ::handle< BRepAdaptor_Curve2d > & PCref2,
    bool & Decroch2,
    const TopAbs_Orientation Or2,
    const double MaxStep,
    const double Fleche,
    const double TolGuide,
    double & First,
    double & Last,
    const bool Inside,
    const bool Appro,
    const bool Forward,
    const bool RecP1,
    const bool RecRst1,
    const bool RecP2,
    const bool RecRst2,
    const math_Vector & Soldep )
    overrideprotectedvirtual

    Method, implemented in inheritants, calculates the elements of construction of the surface (fillet or chamfer) contact edge/edge.

    Reimplemented from ChFi3d_Builder.

    Reimplemented in FilletSurf_InternalBuilder.

    ◆ PerformSurf() [2/4]

    void ChFi3d_FilBuilder::PerformSurf ( NCollection_Sequence< occ::handle< ChFiDS_SurfData > > & Data,
    const occ::handle< ChFiDS_ElSpine > & Guide,
    const occ::handle< ChFiDS_Spine > & Spine,
    const int Choix,
    const occ::handle< BRepAdaptor_Surface > & S1,
    const occ::handle< Adaptor3d_TopolTool > & I1,
    const occ::handle< BRepAdaptor_Curve2d > & PC1,
    const occ::handle< BRepAdaptor_Surface > & Sref1,
    const occ::handle< BRepAdaptor_Curve2d > & PCref1,
    bool & Decroch1,
    const occ::handle< BRepAdaptor_Surface > & S2,
    const occ::handle< Adaptor3d_TopolTool > & I2,
    const TopAbs_Orientation Or2,
    const double MaxStep,
    const double Fleche,
    const double TolGuide,
    double & First,
    double & Last,
    const bool Inside,
    const bool Appro,
    const bool Forward,
    const bool RecP,
    const bool RecS,
    const bool RecRst,
    const math_Vector & Soldep )
    overrideprotectedvirtual

    Method, implemented in inheritants, calculates the elements of construction of the surface (fillet or chamfer) contact edge/face.

    Reimplemented from ChFi3d_Builder.

    Reimplemented in FilletSurf_InternalBuilder.

    ◆ PerformSurf() [3/4]

    bool ChFi3d_FilBuilder::PerformSurf ( NCollection_Sequence< occ::handle< ChFiDS_SurfData > > & SeqData,
    const occ::handle< ChFiDS_ElSpine > & Guide,
    const occ::handle< ChFiDS_Spine > & Spine,
    const int Choix,
    const occ::handle< BRepAdaptor_Surface > & S1,
    const occ::handle< Adaptor3d_TopolTool > & I1,
    const occ::handle< BRepAdaptor_Surface > & S2,
    const occ::handle< Adaptor3d_TopolTool > & I2,
    const double MaxStep,
    const double Fleche,
    const double TolGuide,
    double & First,
    double & Last,
    const bool Inside,
    const bool Appro,
    const bool Forward,
    const bool RecOnS1,
    const bool RecOnS2,
    const math_Vector & Soldep,
    int & Intf,
    int & Intl )
    overrideprotectedvirtual

    Method calculates the elements of construction of the fillet (constant or evolutive).

    Implements ChFi3d_Builder.

    Reimplemented in FilletSurf_InternalBuilder.

    ◆ PerformSurf() [4/4]

    void ChFi3d_FilBuilder::PerformSurf ( NCollection_Sequence< occ::handle< ChFiDS_SurfData > > & Data,
    const occ::handle< ChFiDS_ElSpine > & Guide,
    const occ::handle< ChFiDS_Spine > & Spine,
    const int Choix,
    const occ::handle< BRepAdaptor_Surface > & S1,
    const occ::handle< Adaptor3d_TopolTool > & I1,
    const TopAbs_Orientation Or1,
    const occ::handle< BRepAdaptor_Surface > & S2,
    const occ::handle< Adaptor3d_TopolTool > & I2,
    const occ::handle< BRepAdaptor_Curve2d > & PC2,
    const occ::handle< BRepAdaptor_Surface > & Sref2,
    const occ::handle< BRepAdaptor_Curve2d > & PCref2,
    bool & Decroch2,
    const double MaxStep,
    const double Fleche,
    const double TolGuide,
    double & First,
    double & Last,
    const bool Inside,
    const bool Appro,
    const bool Forward,
    const bool RecP,
    const bool RecS,
    const bool RecRst,
    const math_Vector & Soldep )
    overrideprotectedvirtual

    Method, implemented in inheritants, calculates the elements of construction of the surface (fillet or chamfer) contact edge/face.

    Reimplemented from ChFi3d_Builder.

    Reimplemented in FilletSurf_InternalBuilder.

    ◆ PerformThreeCorner()

    void ChFi3d_FilBuilder::PerformThreeCorner ( const int Index)
    overrideprotectedvirtual

    Implements ChFi3d_Builder.

    ◆ PerformTwoCorner()

    void ChFi3d_FilBuilder::PerformTwoCorner ( const int Index)
    overrideprotectedvirtual

    Implements ChFi3d_Builder.

    ◆ Radius() [1/2]

    double ChFi3d_FilBuilder::Radius ( const int IC)

    Returns the vector if the contour is flagged as edge constant.

    ◆ Radius() [2/2]

    double ChFi3d_FilBuilder::Radius ( const int IC,
    const TopoDS_Edge & E )

    Returns the vector if E is flagged as edge constant.

    ◆ ResetContour()

    void ChFi3d_FilBuilder::ResetContour ( const int IC)

    Reset all vectors of contour IC.

    ◆ Sect()

    occ::handle< NCollection_HArray1< ChFiDS_CircSection > > ChFi3d_FilBuilder::Sect ( const int IC,
    const int IS ) const

    ◆ SetFilletShape()

    void ChFi3d_FilBuilder::SetFilletShape ( const ChFi3d_FilletShape FShape)

    Sets the type of fillet surface.

    ◆ SetLaw()

    void ChFi3d_FilBuilder::SetLaw ( const int IC,
    const TopoDS_Edge & E,
    const occ::handle< Law_Function > & L )

    Sets the rule of elementary evolution of the part to variable vector framing E.

    ◆ SetRadius() [1/4]

    void ChFi3d_FilBuilder::SetRadius ( const double Radius,
    const int IC,
    const TopoDS_Edge & E )

    Set a constant on edge E of the contour of index IC. Since then E is flagged as constant.

    ◆ SetRadius() [2/4]

    void ChFi3d_FilBuilder::SetRadius ( const double Radius,
    const int IC,
    const TopoDS_Vertex & V )

    Set a vector on vertex V of the contour of index IC.

    ◆ SetRadius() [3/4]

    void ChFi3d_FilBuilder::SetRadius ( const gp_XY & UandR,
    const int IC,
    const int IinC )

    Set a vertex on the point of parameter U in the edge IinC of the contour of index IC.

    ◆ SetRadius() [4/4]

    void ChFi3d_FilBuilder::SetRadius ( const occ::handle< Law_Function > & C,
    const int IC,
    const int IinC )

    Set the radius of the contour of index IC.

    ◆ SetRegul()

    void ChFi3d_FilBuilder::SetRegul ( )
    overrideprotectedvirtual

    Implements ChFi3d_Builder.

    ◆ Simulate()

    void ChFi3d_FilBuilder::Simulate ( const int IC)

    ◆ SimulKPart()

    void ChFi3d_FilBuilder::SimulKPart ( const occ::handle< ChFiDS_SurfData > & SD) const
    overrideprotectedvirtual

    Implements ChFi3d_Builder.

    ◆ SimulSurf() [1/4]

    void ChFi3d_FilBuilder::SimulSurf ( occ::handle< ChFiDS_SurfData > & Data,
    const occ::handle< ChFiDS_ElSpine > & Guide,
    const occ::handle< ChFiDS_Spine > & Spine,
    const int Choix,
    const occ::handle< BRepAdaptor_Surface > & S1,
    const occ::handle< Adaptor3d_TopolTool > & I1,
    const occ::handle< BRepAdaptor_Curve2d > & PC1,
    const occ::handle< BRepAdaptor_Surface > & Sref1,
    const occ::handle< BRepAdaptor_Curve2d > & PCref1,
    bool & Decroch1,
    const occ::handle< BRepAdaptor_Surface > & S2,
    const occ::handle< Adaptor3d_TopolTool > & I2,
    const TopAbs_Orientation Or2,
    const double Fleche,
    const double TolGuide,
    double & First,
    double & Last,
    const bool Inside,
    const bool Appro,
    const bool Forward,
    const bool RecP,
    const bool RecS,
    const bool RecRst,
    const math_Vector & Soldep )
    overrideprotectedvirtual

    Reimplemented from ChFi3d_Builder.

    ◆ SimulSurf() [2/4]

    void ChFi3d_FilBuilder::SimulSurf ( occ::handle< ChFiDS_SurfData > & Data,
    const occ::handle< ChFiDS_ElSpine > & Guide,
    const occ::handle< ChFiDS_Spine > & Spine,
    const int Choix,
    const occ::handle< BRepAdaptor_Surface > & S1,
    const occ::handle< Adaptor3d_TopolTool > & I1,
    const occ::handle< BRepAdaptor_Curve2d > & PC1,
    const occ::handle< BRepAdaptor_Surface > & Sref1,
    const occ::handle< BRepAdaptor_Curve2d > & PCref1,
    bool & Decroch1,
    const TopAbs_Orientation Or1,
    const occ::handle< BRepAdaptor_Surface > & S2,
    const occ::handle< Adaptor3d_TopolTool > & I2,
    const occ::handle< BRepAdaptor_Curve2d > & PC2,
    const occ::handle< BRepAdaptor_Surface > & Sref2,
    const occ::handle< BRepAdaptor_Curve2d > & PCref2,
    bool & Decroch2,
    const TopAbs_Orientation Or2,
    const double Fleche,
    const double TolGuide,
    double & First,
    double & Last,
    const bool Inside,
    const bool Appro,
    const bool Forward,
    const bool RecP1,
    const bool RecRst1,
    const bool RecP2,
    const bool RecRst2,
    const math_Vector & Soldep )
    overrideprotectedvirtual

    Reimplemented from ChFi3d_Builder.

    ◆ SimulSurf() [3/4]

    bool ChFi3d_FilBuilder::SimulSurf ( occ::handle< ChFiDS_SurfData > & Data,
    const occ::handle< ChFiDS_ElSpine > & Guide,
    const occ::handle< ChFiDS_Spine > & Spine,
    const int Choix,
    const occ::handle< BRepAdaptor_Surface > & S1,
    const occ::handle< Adaptor3d_TopolTool > & I1,
    const occ::handle< BRepAdaptor_Surface > & S2,
    const occ::handle< Adaptor3d_TopolTool > & I2,
    const double TolGuide,
    double & First,
    double & Last,
    const bool Inside,
    const bool Appro,
    const bool Forward,
    const bool RecOnS1,
    const bool RecOnS2,
    const math_Vector & Soldep,
    int & Intf,
    int & Intl )
    overrideprotectedvirtual

    Implements ChFi3d_Builder.

    ◆ SimulSurf() [4/4]

    void ChFi3d_FilBuilder::SimulSurf ( occ::handle< ChFiDS_SurfData > & Data,
    const occ::handle< ChFiDS_ElSpine > & Guide,
    const occ::handle< ChFiDS_Spine > & Spine,
    const int Choix,
    const occ::handle< BRepAdaptor_Surface > & S1,
    const occ::handle< Adaptor3d_TopolTool > & I1,
    const TopAbs_Orientation Or1,
    const occ::handle< BRepAdaptor_Surface > & S2,
    const occ::handle< Adaptor3d_TopolTool > & I2,
    const occ::handle< BRepAdaptor_Curve2d > & PC2,
    const occ::handle< BRepAdaptor_Surface > & Sref2,
    const occ::handle< BRepAdaptor_Curve2d > & PCref2,
    bool & Decroch2,
    const double Fleche,
    const double TolGuide,
    double & First,
    double & Last,
    const bool Inside,
    const bool Appro,
    const bool Forward,
    const bool RecP,
    const bool RecS,
    const bool RecRst,
    const math_Vector & Soldep )
    overrideprotectedvirtual

    Reimplemented from ChFi3d_Builder.

    ◆ SplitSurf()

    void ChFi3d_FilBuilder::SplitSurf ( NCollection_Sequence< occ::handle< ChFiDS_SurfData > > & SeqData,
    const occ::handle< BRepBlend_Line > & line )
    protected

    Method to split an singular SurfData in several non singular SurfData..

    ◆ UnSet() [1/2]

    void ChFi3d_FilBuilder::UnSet ( const int IC,
    const TopoDS_Edge & E )

    Extracts the flag constant and the vector of edge E.

    ◆ UnSet() [2/2]

    void ChFi3d_FilBuilder::UnSet ( const int IC,
    const TopoDS_Vertex & V )

    Extracts the vector of the vertex V.


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