Open CASCADE Technology Reference Manual 8.0.0
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions
FilletSurf_InternalBuilder Class Reference

This class is private. It is used by the class Builder from FilletSurf. It computes geometric information about fillets. More...

#include <FilletSurf_InternalBuilder.hxx>

Inheritance diagram for FilletSurf_InternalBuilder:
Inheritance graph
[legend]

Public Member Functions

 FilletSurf_InternalBuilder (const TopoDS_Shape &S, const ChFi3d_FilletShape FShape=ChFi3d_Polynomial, const double Ta=1.0e-2, const double Tapp3d=1.0e-4, const double Tapp2d=1.0e-5)
 
int Add (const NCollection_List< TopoDS_Shape > &E, const double R)
 Initializes the contour with a list of Edges 0 : no problem 1 : empty list 2 : the edges are not G1 3 : two connected faces on a same support are not G1 4 : the edge is not on shape 5 : NotSharpEdge: the edge is not sharp.
 
void Perform ()
 
bool Done () const
 
int NbSurface () const
 gives the number of NUBS surfaces of the Fillet.
 
const occ::handle< Geom_Surface > & SurfaceFillet (const int Index) const
 gives the NUBS surface of index Index.
 
double TolApp3d (const int Index) const
 gives the 3d tolerance reached during approximation of the surface of index Index
 
const TopoDS_FaceSupportFace1 (const int Index) const
 gives the first support face relative to SurfaceFillet(Index);
 
const TopoDS_FaceSupportFace2 (const int Index) const
 gives the second support face relative to SurfaceFillet(Index);
 
const occ::handle< Geom_Curve > & CurveOnFace1 (const int Index) const
 gives the 3d curve of SurfaceFillet(Index) on SupportFace1(Index)
 
const occ::handle< Geom_Curve > & CurveOnFace2 (const int Index) const
 gives the 3d curve of SurfaceFillet(Index) on SupportFace2(Index)
 
const occ::handle< Geom2d_Curve > & PCurveOnFace1 (const int Index) const
 gives the PCurve associated to CurvOnSup1(Index) on the support face
 
const occ::handle< Geom2d_Curve > & PCurve1OnFillet (const int Index) const
 gives the PCurve associated to CurveOnFace1(Index) on the Fillet
 
const occ::handle< Geom2d_Curve > & PCurveOnFace2 (const int Index) const
 gives the PCurve associated to CurveOnSup2(Index) on the support face
 
const occ::handle< Geom2d_Curve > & PCurve2OnFillet (const int Index) const
 gives the PCurve associated to CurveOnSup2(Index) on the fillet
 
double FirstParameter () const
 gives the parameter of the fillet on the first edge.
 
double LastParameter () const
 gives the parameter of the fillet on the last edge
 
FilletSurf_StatusType StartSectionStatus () const
 
FilletSurf_StatusType EndSectionStatus () const
 
void Simulate ()
 
int NbSection (const int IndexSurf) const
 
occ::handle< Geom_TrimmedCurveSection (const int IndexSurf, const int IndexSec) const
 Returns the arc of the section of index IndexSec of surface of index IndexSurf. The basis curve of the trimmed curve is a Geom_Circle.
 
void Section (const int IndexSurf, const int IndexSec, occ::handle< Geom_TrimmedCurve > &Circ) const
 
- Public Member Functions inherited from ChFi3d_FilBuilder
 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

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
 This 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.
 
- Protected Member Functions inherited from ChFi3d_FilBuilder
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
 
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

This class is private. It is used by the class Builder from FilletSurf. It computes geometric information about fillets.

Constructor & Destructor Documentation

◆ FilletSurf_InternalBuilder()

FilletSurf_InternalBuilder::FilletSurf_InternalBuilder ( const TopoDS_Shape & S,
const ChFi3d_FilletShape FShape = ChFi3d_Polynomial,
const double Ta = 1.0e-2,
const double Tapp3d = 1.0e-4,
const double Tapp2d = 1.0e-5 )

Member Function Documentation

◆ Add()

int FilletSurf_InternalBuilder::Add ( const NCollection_List< TopoDS_Shape > & E,
const double R )

Initializes the contour with a list of Edges 0 : no problem 1 : empty list 2 : the edges are not G1 3 : two connected faces on a same support are not G1 4 : the edge is not on shape 5 : NotSharpEdge: the edge is not sharp.

◆ CurveOnFace1()

const occ::handle< Geom_Curve > & FilletSurf_InternalBuilder::CurveOnFace1 ( const int Index) const

gives the 3d curve of SurfaceFillet(Index) on SupportFace1(Index)

◆ CurveOnFace2()

const occ::handle< Geom_Curve > & FilletSurf_InternalBuilder::CurveOnFace2 ( const int Index) const

gives the 3d curve of SurfaceFillet(Index) on SupportFace2(Index)

◆ Done()

bool FilletSurf_InternalBuilder::Done ( ) const

◆ EndSectionStatus()

FilletSurf_StatusType FilletSurf_InternalBuilder::EndSectionStatus ( ) const

◆ FirstParameter()

double FilletSurf_InternalBuilder::FirstParameter ( ) const

gives the parameter of the fillet on the first edge.

◆ LastParameter()

double FilletSurf_InternalBuilder::LastParameter ( ) const

gives the parameter of the fillet on the last edge

◆ NbSection()

int FilletSurf_InternalBuilder::NbSection ( const int IndexSurf) const

◆ NbSurface()

int FilletSurf_InternalBuilder::NbSurface ( ) const

gives the number of NUBS surfaces of the Fillet.

◆ PCurve1OnFillet()

const occ::handle< Geom2d_Curve > & FilletSurf_InternalBuilder::PCurve1OnFillet ( const int Index) const

gives the PCurve associated to CurveOnFace1(Index) on the Fillet

◆ PCurve2OnFillet()

const occ::handle< Geom2d_Curve > & FilletSurf_InternalBuilder::PCurve2OnFillet ( const int Index) const

gives the PCurve associated to CurveOnSup2(Index) on the fillet

◆ PCurveOnFace1()

const occ::handle< Geom2d_Curve > & FilletSurf_InternalBuilder::PCurveOnFace1 ( const int Index) const

gives the PCurve associated to CurvOnSup1(Index) on the support face

◆ PCurveOnFace2()

const occ::handle< Geom2d_Curve > & FilletSurf_InternalBuilder::PCurveOnFace2 ( const int Index) const

gives the PCurve associated to CurveOnSup2(Index) on the support face

◆ Perform()

void FilletSurf_InternalBuilder::Perform ( )

◆ PerformSurf() [1/4]

void FilletSurf_InternalBuilder::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_FilBuilder.

◆ PerformSurf() [2/4]

void FilletSurf_InternalBuilder::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_FilBuilder.

◆ PerformSurf() [3/4]

bool FilletSurf_InternalBuilder::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

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

Reimplemented from ChFi3d_FilBuilder.

◆ PerformSurf() [4/4]

void FilletSurf_InternalBuilder::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_FilBuilder.

◆ Section() [1/2]

occ::handle< Geom_TrimmedCurve > FilletSurf_InternalBuilder::Section ( const int IndexSurf,
const int IndexSec ) const

Returns the arc of the section of index IndexSec of surface of index IndexSurf. The basis curve of the trimmed curve is a Geom_Circle.

Parameters
[in]IndexSurf1-based surface index
[in]IndexSec1-based section index
Returns
the section as a trimmed circular arc

◆ Section() [2/2]

void FilletSurf_InternalBuilder::Section ( const int IndexSurf,
const int IndexSec,
occ::handle< Geom_TrimmedCurve > & Circ ) const
Deprecated

Use Section() returning handle by value instead.

("Use Section() returning handle by value instead")

◆ Simulate()

void FilletSurf_InternalBuilder::Simulate ( )

◆ StartSectionStatus()

FilletSurf_StatusType FilletSurf_InternalBuilder::StartSectionStatus ( ) const

◆ SupportFace1()

const TopoDS_Face & FilletSurf_InternalBuilder::SupportFace1 ( const int Index) const

gives the first support face relative to SurfaceFillet(Index);

◆ SupportFace2()

const TopoDS_Face & FilletSurf_InternalBuilder::SupportFace2 ( const int Index) const

gives the second support face relative to SurfaceFillet(Index);

◆ SurfaceFillet()

const occ::handle< Geom_Surface > & FilletSurf_InternalBuilder::SurfaceFillet ( const int Index) const

gives the NUBS surface of index Index.

◆ TolApp3d()

double FilletSurf_InternalBuilder::TolApp3d ( const int Index) const

gives the 3d tolerance reached during approximation of the surface of index Index


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