Open CASCADE Technology  7.1.0.beta
Public Member Functions | Protected Member Functions | Protected Attributes

ChFi3d_Builder Class Referenceabstract

Root class for calculation of surfaces (fillets, chamfers) destined to smooth edges of a gap on a Shape and the reconstruction of the Shape. More...

#include <ChFi3d_Builder.hxx>

Inheritance diagram for ChFi3d_Builder:
Inheritance graph
[legend]

Public Member Functions

virtual ~ChFi3d_Builder ()
 
void SetParams (const Standard_Real Tang, const Standard_Real Tesp, const Standard_Real T2d, const Standard_Real TApp3d, const Standard_Real TolApp2d, const Standard_Real Fleche)
 
void SetContinuity (const GeomAbs_Shape InternalContinuity, const Standard_Real AngularTolerance)
 
void Remove (const TopoDS_Edge &E)
 extracts from the list the contour containing edge E. More...
 
Standard_Integer Contains (const TopoDS_Edge &E) const
 gives the number of the contour containing E or 0 if E does not belong to any contour. More...
 
Standard_Integer Contains (const TopoDS_Edge &E, Standard_Integer &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 More...
 
Standard_Integer NbElements () const
 gives the number of disjoint contours on which the fillets are calculated More...
 
Handle< ChFiDS_SpineValue (const Standard_Integer I) const
 gives the n'th set of edges (contour) if I >NbElements() More...
 
Standard_Real Length (const Standard_Integer IC) const
 returns the length of the contour of index IC. More...
 
TopoDS_Vertex FirstVertex (const Standard_Integer IC) const
 returns the First vertex V of the contour of index IC. More...
 
TopoDS_Vertex LastVertex (const Standard_Integer IC) const
 returns the Last vertex V of the contour of index IC. More...
 
Standard_Real Abscissa (const Standard_Integer IC, const TopoDS_Vertex &V) const
 returns the abscissa of the vertex V on the contour of index IC. More...
 
Standard_Real RelativeAbscissa (const Standard_Integer IC, const TopoDS_Vertex &V) const
 returns the relative abscissa([0.,1.]) of the vertex V on the contour of index IC. More...
 
Standard_Boolean ClosedAndTangent (const Standard_Integer IC) const
 returns true if the contour of index IC is closed an tangent. More...
 
Standard_Boolean Closed (const Standard_Integer IC) const
 returns true if the contour of index IC is closed More...
 
void Compute ()
 general calculation of geometry on all edges, topologic reconstruction. More...
 
Standard_Boolean IsDone () const
 returns True if the computation is success More...
 
TopoDS_Shape Shape () const
 if (Isdone()) makes the result. if (!Isdone()) More...
 
const TopTools_ListOfShapeGenerated (const TopoDS_Shape &EouV)
 Advanced function for the history. More...
 
Standard_Integer NbFaultyContours () const
 Returns the number of contours on which the calculation has failed. More...
 
Standard_Integer FaultyContour (const Standard_Integer I) const
 Returns the number of I'th contour on which the calculation has failed. More...
 
Standard_Integer NbComputedSurfaces (const Standard_Integer IC) const
 Returns the number of surfaces calculated on the contour IC. More...
 
Handle< Geom_SurfaceComputedSurface (const Standard_Integer IC, const Standard_Integer IS) const
 Returns the IS'th surface calculated on the contour IC. More...
 
Standard_Integer NbFaultyVertices () const
 Returns the number of vertices on which the calculation has failed. More...
 
TopoDS_Vertex FaultyVertex (const Standard_Integer IV) const
 Returns the IV'th vertex on which the calculation has failed. More...
 
Standard_Boolean HasResult () const
 returns True if a partial result has been calculated More...
 
TopoDS_Shape BadShape () const
 if (HasResult()) returns partial result if (!HasResult()) More...
 
ChFiDS_ErrorStatus StripeStatus (const Standard_Integer IC) const
 for the stripe IC ,indication on the cause of failure WalkingFailure,TwistedSurface,Error, Ok More...
 
void Reset ()
 Reset all results of compute and returns the algorythm in the state of the last acquisition to enable modification of contours or areas. More...
 
Handle< TopOpeBRepBuild_HBuilderBuilder () const
 Returns the Builder of topologic operations. More...
 
Standard_Boolean SplitKPart (const Handle< ChFiDS_SurfData > &Data, ChFiDS_SequenceOfSurfData &SetData, const Handle< ChFiDS_Spine > &Spine, const Standard_Integer Iedge, const Handle< Adaptor3d_HSurface > &S1, const Handle< Adaptor3d_TopolTool > &I1, const Handle< Adaptor3d_HSurface > &S2, const Handle< Adaptor3d_TopolTool > &I2, Standard_Boolean &Intf, Standard_Boolean &Intl)
 Method, implemented in the inheritants, calculates the elements of construction of the surface (fillet or chamfer). More...
 
Standard_Boolean PerformTwoCornerbyInter (const Standard_Integer Index)
 

Protected Member Functions

 ChFi3d_Builder (const TopoDS_Shape &S, const Standard_Real Ta)
 
virtual void SimulKPart (const Handle< ChFiDS_SurfData > &SD) const =0
 
virtual Standard_Boolean SimulSurf (Handle< ChFiDS_SurfData > &Data, const Handle< ChFiDS_HElSpine > &Guide, const Handle< ChFiDS_Spine > &Spine, const Standard_Integer Choix, const Handle< BRepAdaptor_HSurface > &S1, const Handle< Adaptor3d_TopolTool > &I1, const Handle< BRepAdaptor_HSurface > &S2, const Handle< Adaptor3d_TopolTool > &I2, const Standard_Real TolGuide, Standard_Real &First, Standard_Real &Last, const Standard_Boolean Inside, const Standard_Boolean Appro, const Standard_Boolean Forward, const Standard_Boolean RecOnS1, const Standard_Boolean RecOnS2, const math_Vector &Soldep, Standard_Integer &Intf, Standard_Integer &Intl)=0
 
virtual void SimulSurf (Handle< ChFiDS_SurfData > &Data, const Handle< ChFiDS_HElSpine > &Guide, const Handle< ChFiDS_Spine > &Spine, const Standard_Integer Choix, const Handle< BRepAdaptor_HSurface > &S1, const Handle< Adaptor3d_TopolTool > &I1, const Handle< BRepAdaptor_HCurve2d > &PC1, const Handle< BRepAdaptor_HSurface > &Sref1, const Handle< BRepAdaptor_HCurve2d > &PCref1, Standard_Boolean &Decroch1, const Handle< BRepAdaptor_HSurface > &S2, const Handle< Adaptor3d_TopolTool > &I2, const TopAbs_Orientation Or2, const Standard_Real Fleche, const Standard_Real TolGuide, Standard_Real &First, Standard_Real &Last, const Standard_Boolean Inside, const Standard_Boolean Appro, const Standard_Boolean Forward, const Standard_Boolean RecP, const Standard_Boolean RecS, const Standard_Boolean RecRst, const math_Vector &Soldep)
 
virtual void SimulSurf (Handle< ChFiDS_SurfData > &Data, const Handle< ChFiDS_HElSpine > &Guide, const Handle< ChFiDS_Spine > &Spine, const Standard_Integer Choix, const Handle< BRepAdaptor_HSurface > &S1, const Handle< Adaptor3d_TopolTool > &I1, const TopAbs_Orientation Or1, const Handle< BRepAdaptor_HSurface > &S2, const Handle< Adaptor3d_TopolTool > &I2, const Handle< BRepAdaptor_HCurve2d > &PC2, const Handle< BRepAdaptor_HSurface > &Sref2, const Handle< BRepAdaptor_HCurve2d > &PCref2, Standard_Boolean &Decroch2, const Standard_Real Fleche, const Standard_Real TolGuide, Standard_Real &First, Standard_Real &Last, const Standard_Boolean Inside, const Standard_Boolean Appro, const Standard_Boolean Forward, const Standard_Boolean RecP, const Standard_Boolean RecS, const Standard_Boolean RecRst, const math_Vector &Soldep)
 
virtual void SimulSurf (Handle< ChFiDS_SurfData > &Data, const Handle< ChFiDS_HElSpine > &Guide, const Handle< ChFiDS_Spine > &Spine, const Standard_Integer Choix, const Handle< BRepAdaptor_HSurface > &S1, const Handle< Adaptor3d_TopolTool > &I1, const Handle< BRepAdaptor_HCurve2d > &PC1, const Handle< BRepAdaptor_HSurface > &Sref1, const Handle< BRepAdaptor_HCurve2d > &PCref1, Standard_Boolean &Decroch1, const TopAbs_Orientation Or1, const Handle< BRepAdaptor_HSurface > &S2, const Handle< Adaptor3d_TopolTool > &I2, const Handle< BRepAdaptor_HCurve2d > &PC2, const Handle< BRepAdaptor_HSurface > &Sref2, const Handle< BRepAdaptor_HCurve2d > &PCref2, Standard_Boolean &Decroch2, const TopAbs_Orientation Or2, const Standard_Real Fleche, const Standard_Real TolGuide, Standard_Real &First, Standard_Real &Last, const Standard_Boolean Inside, const Standard_Boolean Appro, const Standard_Boolean Forward, const Standard_Boolean RecP1, const Standard_Boolean RecRst1, const Standard_Boolean RecP2, const Standard_Boolean RecRst2, const math_Vector &Soldep)
 
Standard_Boolean SimulData (Handle< ChFiDS_SurfData > &Data, const Handle< ChFiDS_HElSpine > &Guide, Handle< BRepBlend_Line > &Lin, const Handle< Adaptor3d_HSurface > &S1, const Handle< Adaptor3d_TopolTool > &I1, const Handle< Adaptor3d_HSurface > &S2, const Handle< Adaptor3d_TopolTool > &I2, Blend_Function &Func, Blend_FuncInv &FInv, const Standard_Real PFirst, const Standard_Real MaxStep, const Standard_Real Fleche, const Standard_Real TolGuide, Standard_Real &First, Standard_Real &Last, const Standard_Boolean Inside, const Standard_Boolean Appro, const Standard_Boolean Forward, const math_Vector &Soldep, const Standard_Integer NbSecMin, const Standard_Boolean RecOnS1=Standard_False, const Standard_Boolean RecOnS2=Standard_False)
 
Standard_Boolean SimulData (Handle< ChFiDS_SurfData > &Data, const Handle< ChFiDS_HElSpine > &HGuide, Handle< BRepBlend_Line > &Lin, const Handle< Adaptor3d_HSurface > &S1, const Handle< Adaptor3d_TopolTool > &I1, const Handle< Adaptor3d_HSurface > &S2, const Handle< Adaptor2d_HCurve2d > &PC2, const Handle< Adaptor3d_TopolTool > &I2, Standard_Boolean &Decroch, Blend_SurfRstFunction &Func, Blend_FuncInv &FInv, Blend_SurfPointFuncInv &FInvP, Blend_SurfCurvFuncInv &FInvC, const Standard_Real PFirst, const Standard_Real MaxStep, const Standard_Real Fleche, const Standard_Real TolGuide, Standard_Real &First, Standard_Real &Last, const math_Vector &Soldep, const Standard_Integer NbSecMin, const Standard_Boolean Inside, const Standard_Boolean Appro, const Standard_Boolean Forward, const Standard_Boolean RecP, const Standard_Boolean RecS, const Standard_Boolean RecRst)
 
Standard_Boolean SimulData (Handle< ChFiDS_SurfData > &Data, const Handle< ChFiDS_HElSpine > &HGuide, Handle< BRepBlend_Line > &Lin, const Handle< Adaptor3d_HSurface > &S1, const Handle< Adaptor2d_HCurve2d > &PC1, const Handle< Adaptor3d_TopolTool > &I1, Standard_Boolean &Decroch1, const Handle< Adaptor3d_HSurface > &S2, const Handle< Adaptor2d_HCurve2d > &PC2, const Handle< Adaptor3d_TopolTool > &I2, Standard_Boolean &Decroch2, Blend_RstRstFunction &Func, Blend_SurfCurvFuncInv &FInv1, Blend_CurvPointFuncInv &FInvP1, Blend_SurfCurvFuncInv &FInv2, Blend_CurvPointFuncInv &FInvP2, const Standard_Real PFirst, const Standard_Real MaxStep, const Standard_Real Fleche, const Standard_Real TolGuide, Standard_Real &First, Standard_Real &Last, const math_Vector &Soldep, const Standard_Integer NbSecMin, const Standard_Boolean Inside, const Standard_Boolean Appro, const Standard_Boolean Forward, const Standard_Boolean RecP1, const Standard_Boolean RecRst1, const Standard_Boolean RecP2, const Standard_Boolean RecRst2)
 
virtual void SetRegul ()=0
 
Standard_Boolean PerformElement (const Handle< ChFiDS_Spine > &CElement)
 
void PerformExtremity (const Handle< ChFiDS_Spine > &CElement)
 
void PerformSetOfSurf (Handle< ChFiDS_Stripe > &S, const Standard_Boolean Simul=Standard_False)
 
void PerformSetOfKPart (Handle< ChFiDS_Stripe > &S, const Standard_Boolean Simul=Standard_False)
 
void PerformSetOfKGen (Handle< ChFiDS_Stripe > &S, const Standard_Boolean Simul=Standard_False)
 
void Trunc (const Handle< ChFiDS_SurfData > &SD, const Handle< ChFiDS_Spine > &Spine, const Handle< Adaptor3d_HSurface > &S1, const Handle< Adaptor3d_HSurface > &S2, const Standard_Integer iedge, const Standard_Boolean isfirst, const Standard_Integer cntlFiOnS)
 
void CallPerformSurf (Handle< ChFiDS_Stripe > &Stripe, const Standard_Boolean Simul, ChFiDS_SequenceOfSurfData &SeqSD, Handle< ChFiDS_SurfData > &SD, const Handle< ChFiDS_HElSpine > &Guide, const Handle< ChFiDS_Spine > &Spine, const Handle< BRepAdaptor_HSurface > &HS1, const Handle< BRepAdaptor_HSurface > &HS3, const gp_Pnt2d &P1, const gp_Pnt2d &P3, const Handle< Adaptor3d_TopolTool > &I1, const Handle< BRepAdaptor_HSurface > &HS2, const Handle< BRepAdaptor_HSurface > &HS4, const gp_Pnt2d &P2, const gp_Pnt2d &P4, const Handle< Adaptor3d_TopolTool > &I2, const Standard_Real MaxStep, const Standard_Real Fleche, const Standard_Real TolGuide, Standard_Real &First, Standard_Real &Last, const Standard_Boolean Inside, const Standard_Boolean Appro, const Standard_Boolean Forward, const Standard_Boolean RecOnS1, const Standard_Boolean RecOnS2, math_Vector &Soldep, Standard_Integer &Intf, Standard_Integer &Intl, Handle< BRepAdaptor_HSurface > &Surf1, Handle< BRepAdaptor_HSurface > &Surf2)
 
virtual Standard_Boolean PerformSurf (ChFiDS_SequenceOfSurfData &Data, const Handle< ChFiDS_HElSpine > &Guide, const Handle< ChFiDS_Spine > &Spine, const Standard_Integer Choix, const Handle< BRepAdaptor_HSurface > &S1, const Handle< Adaptor3d_TopolTool > &I1, const Handle< BRepAdaptor_HSurface > &S2, const Handle< Adaptor3d_TopolTool > &I2, const Standard_Real MaxStep, const Standard_Real Fleche, const Standard_Real TolGuide, Standard_Real &First, Standard_Real &Last, const Standard_Boolean Inside, const Standard_Boolean Appro, const Standard_Boolean Forward, const Standard_Boolean RecOnS1, const Standard_Boolean RecOnS2, const math_Vector &Soldep, Standard_Integer &Intf, Standard_Integer &Intl)=0
 Method, implemented in the inheritants, calculating elements of construction of the surface (fillet or chamfer). More...
 
virtual void PerformSurf (ChFiDS_SequenceOfSurfData &Data, const Handle< ChFiDS_HElSpine > &Guide, const Handle< ChFiDS_Spine > &Spine, const Standard_Integer Choix, const Handle< BRepAdaptor_HSurface > &S1, const Handle< Adaptor3d_TopolTool > &I1, const Handle< BRepAdaptor_HCurve2d > &PC1, const Handle< BRepAdaptor_HSurface > &Sref1, const Handle< BRepAdaptor_HCurve2d > &PCref1, Standard_Boolean &Decroch1, const Handle< BRepAdaptor_HSurface > &S2, const Handle< Adaptor3d_TopolTool > &I2, const TopAbs_Orientation Or2, const Standard_Real MaxStep, const Standard_Real Fleche, const Standard_Real TolGuide, Standard_Real &First, Standard_Real &Last, const Standard_Boolean Inside, const Standard_Boolean Appro, const Standard_Boolean Forward, const Standard_Boolean RecP, const Standard_Boolean RecS, const Standard_Boolean RecRst, const math_Vector &Soldep)
 Method, implemented in inheritants, calculates the elements of construction of the surface (fillet or chamfer) contact edge/face. More...
 
virtual void PerformSurf (ChFiDS_SequenceOfSurfData &Data, const Handle< ChFiDS_HElSpine > &Guide, const Handle< ChFiDS_Spine > &Spine, const Standard_Integer Choix, const Handle< BRepAdaptor_HSurface > &S1, const Handle< Adaptor3d_TopolTool > &I1, const TopAbs_Orientation Or1, const Handle< BRepAdaptor_HSurface > &S2, const Handle< Adaptor3d_TopolTool > &I2, const Handle< BRepAdaptor_HCurve2d > &PC2, const Handle< BRepAdaptor_HSurface > &Sref2, const Handle< BRepAdaptor_HCurve2d > &PCref2, Standard_Boolean &Decroch2, const Standard_Real MaxStep, const Standard_Real Fleche, const Standard_Real TolGuide, Standard_Real &First, Standard_Real &Last, const Standard_Boolean Inside, const Standard_Boolean Appro, const Standard_Boolean Forward, const Standard_Boolean RecP, const Standard_Boolean RecS, const Standard_Boolean RecRst, const math_Vector &Soldep)
 Method, implemented in inheritants, calculates the elements of construction of the surface (fillet or chamfer) contact edge/face. More...
 
virtual void PerformSurf (ChFiDS_SequenceOfSurfData &Data, const Handle< ChFiDS_HElSpine > &Guide, const Handle< ChFiDS_Spine > &Spine, const Standard_Integer Choix, const Handle< BRepAdaptor_HSurface > &S1, const Handle< Adaptor3d_TopolTool > &I1, const Handle< BRepAdaptor_HCurve2d > &PC1, const Handle< BRepAdaptor_HSurface > &Sref1, const Handle< BRepAdaptor_HCurve2d > &PCref1, Standard_Boolean &Decroch1, const TopAbs_Orientation Or1, const Handle< BRepAdaptor_HSurface > &S2, const Handle< Adaptor3d_TopolTool > &I2, const Handle< BRepAdaptor_HCurve2d > &PC2, const Handle< BRepAdaptor_HSurface > &Sref2, const Handle< BRepAdaptor_HCurve2d > &PCref2, Standard_Boolean &Decroch2, const TopAbs_Orientation Or2, const Standard_Real MaxStep, const Standard_Real Fleche, const Standard_Real TolGuide, Standard_Real &First, Standard_Real &Last, const Standard_Boolean Inside, const Standard_Boolean Appro, const Standard_Boolean Forward, const Standard_Boolean RecP1, const Standard_Boolean RecRst1, const Standard_Boolean RecP2, const Standard_Boolean RecRst2, const math_Vector &Soldep)
 Method, implemented in inheritants, calculates the elements of construction of the surface (fillet or chamfer) contact edge/edge. More...
 
virtual void PerformTwoCorner (const Standard_Integer Index)=0
 
virtual void PerformThreeCorner (const Standard_Integer Index)=0
 
void PerformMoreThreeCorner (const Standard_Integer Index, const Standard_Integer nbcourb)
 
virtual void ExtentOneCorner (const TopoDS_Vertex &V, const Handle< ChFiDS_Stripe > &S)=0
 
virtual void ExtentTwoCorner (const TopoDS_Vertex &V, const ChFiDS_ListOfStripe &LS)=0
 
virtual void ExtentThreeCorner (const TopoDS_Vertex &V, const ChFiDS_ListOfStripe &LS)=0
 
virtual Standard_Boolean PerformFirstSection (const Handle< ChFiDS_Spine > &S, const Handle< ChFiDS_HElSpine > &HGuide, const Standard_Integer Choix, Handle< BRepAdaptor_HSurface > &S1, Handle< BRepAdaptor_HSurface > &S2, const Handle< Adaptor3d_TopolTool > &I1, const Handle< Adaptor3d_TopolTool > &I2, const Standard_Real Par, math_Vector &SolDep, TopAbs_State &Pos1, TopAbs_State &Pos2) const =0
 
Standard_Boolean SearchFace (const Handle< ChFiDS_Spine > &Sp, const ChFiDS_CommonPoint &Pc, const TopoDS_Face &FRef, TopoDS_Face &FVoi) const
 
Standard_Boolean StripeOrientations (const Handle< ChFiDS_Spine > &Sp, TopAbs_Orientation &Or1, TopAbs_Orientation &Or2, Standard_Integer &ChoixConge) const
 
Standard_Boolean ComputeData (Handle< ChFiDS_SurfData > &Data, const Handle< ChFiDS_HElSpine > &Guide, const Handle< ChFiDS_Spine > &Spine, Handle< BRepBlend_Line > &Lin, const Handle< Adaptor3d_HSurface > &S1, const Handle< Adaptor3d_TopolTool > &I1, const Handle< Adaptor3d_HSurface > &S2, const Handle< Adaptor3d_TopolTool > &I2, Blend_Function &Func, Blend_FuncInv &FInv, const Standard_Real PFirst, const Standard_Real MaxStep, const Standard_Real Fleche, const Standard_Real TolGuide, Standard_Real &First, Standard_Real &Last, const Standard_Boolean Inside, const Standard_Boolean Appro, const Standard_Boolean Forward, const math_Vector &Soldep, Standard_Integer &Intf, Standard_Integer &Intl, Standard_Boolean &Gd1, Standard_Boolean &Gd2, Standard_Boolean &Gf1, Standard_Boolean &Gf2, const Standard_Boolean RecOnS1=Standard_False, const Standard_Boolean RecOnS2=Standard_False)
 Calculates a Line of contact face/face. More...
 
Standard_Boolean ComputeData (Handle< ChFiDS_SurfData > &Data, const Handle< ChFiDS_HElSpine > &HGuide, Handle< BRepBlend_Line > &Lin, const Handle< Adaptor3d_HSurface > &S1, const Handle< Adaptor3d_TopolTool > &I1, const Handle< Adaptor3d_HSurface > &S2, const Handle< Adaptor2d_HCurve2d > &PC2, const Handle< Adaptor3d_TopolTool > &I2, Standard_Boolean &Decroch, Blend_SurfRstFunction &Func, Blend_FuncInv &FInv, Blend_SurfPointFuncInv &FInvP, Blend_SurfCurvFuncInv &FInvC, const Standard_Real PFirst, const Standard_Real MaxStep, const Standard_Real Fleche, const Standard_Real TolGuide, Standard_Real &First, Standard_Real &Last, const math_Vector &Soldep, const Standard_Boolean Inside, const Standard_Boolean Appro, const Standard_Boolean Forward, const Standard_Boolean RecP, const Standard_Boolean RecS, const Standard_Boolean RecRst)
 Calculates a Line of contact edge/face. More...
 
Standard_Boolean ComputeData (Handle< ChFiDS_SurfData > &Data, const Handle< ChFiDS_HElSpine > &HGuide, Handle< BRepBlend_Line > &Lin, const Handle< Adaptor3d_HSurface > &S1, const Handle< Adaptor2d_HCurve2d > &PC1, const Handle< Adaptor3d_TopolTool > &I1, Standard_Boolean &Decroch1, const Handle< Adaptor3d_HSurface > &S2, const Handle< Adaptor2d_HCurve2d > &PC2, const Handle< Adaptor3d_TopolTool > &I2, Standard_Boolean &Decroch2, Blend_RstRstFunction &Func, Blend_SurfCurvFuncInv &FInv1, Blend_CurvPointFuncInv &FInvP1, Blend_SurfCurvFuncInv &FInv2, Blend_CurvPointFuncInv &FInvP2, const Standard_Real PFirst, const Standard_Real MaxStep, const Standard_Real Fleche, const Standard_Real TolGuide, Standard_Real &First, Standard_Real &Last, const math_Vector &Soldep, const Standard_Boolean Inside, const Standard_Boolean Appro, const Standard_Boolean Forward, const Standard_Boolean RecP1, const Standard_Boolean RecRst1, const Standard_Boolean RecP2, const Standard_Boolean RecRst2)
 Calculates a Line of contact edge/edge. More...
 
Standard_Boolean CompleteData (Handle< ChFiDS_SurfData > &Data, Blend_Function &Func, Handle< BRepBlend_Line > &Lin, const Handle< Adaptor3d_HSurface > &S1, const Handle< Adaptor3d_HSurface > &S2, const TopAbs_Orientation Or1, const Standard_Boolean Gd1, const Standard_Boolean Gd2, const Standard_Boolean Gf1, const Standard_Boolean Gf2, const Standard_Boolean Reversed=Standard_False)
 
Standard_Boolean CompleteData (Handle< ChFiDS_SurfData > &Data, Blend_SurfRstFunction &Func, Handle< BRepBlend_Line > &Lin, const Handle< Adaptor3d_HSurface > &S1, const Handle< Adaptor3d_HSurface > &S2, const TopAbs_Orientation Or, const Standard_Boolean Reversed)
 
Standard_Boolean CompleteData (Handle< ChFiDS_SurfData > &Data, Blend_RstRstFunction &Func, Handle< BRepBlend_Line > &Lin, const Handle< Adaptor3d_HSurface > &S1, const Handle< Adaptor3d_HSurface > &S2, const TopAbs_Orientation Or)
 
Standard_Boolean StoreData (Handle< ChFiDS_SurfData > &Data, const AppBlend_Approx &Approx, const Handle< BRepBlend_Line > &Lin, const Handle< Adaptor3d_HSurface > &S1, const Handle< Adaptor3d_HSurface > &S2, const TopAbs_Orientation Or1, const Standard_Boolean Gd1, const Standard_Boolean Gd2, const Standard_Boolean Gf1, const Standard_Boolean Gf2, const Standard_Boolean Reversed=Standard_False)
 
Standard_Boolean CompleteData (Handle< ChFiDS_SurfData > &Data, const Handle< Geom_Surface > &Surfcoin, const Handle< Adaptor3d_HSurface > &S1, const Handle< Geom2d_Curve > &PC1, const Handle< Adaptor3d_HSurface > &S2, const Handle< Geom2d_Curve > &PC2, const TopAbs_Orientation Or, const Standard_Boolean On1, const Standard_Boolean Gd1, const Standard_Boolean Gd2, const Standard_Boolean Gf1, const Standard_Boolean Gf2)
 

Protected Attributes

Standard_Real tolappangle
 
Standard_Real tolesp
 
Standard_Real tol2d
 
Standard_Real tolapp3d
 
Standard_Real tolapp2d
 
Standard_Real fleche
 
GeomAbs_Shape myConti
 
ChFiDS_Map myEFMap
 
ChFiDS_Map myESoMap
 
ChFiDS_Map myEShMap
 
ChFiDS_Map myVFMap
 
ChFiDS_Map myVEMap
 
Handle< TopOpeBRepDS_HDataStructuremyDS
 
Handle< TopOpeBRepBuild_HBuildermyCoup
 
ChFiDS_ListOfStripe myListStripe
 
ChFiDS_StripeMap myVDataMap
 
ChFiDS_Regularities myRegul
 
ChFiDS_ListOfStripe badstripes
 
TopTools_ListOfShape badvertices
 
TopTools_DataMapOfShapeListOfInteger myEVIMap
 
Standard_Boolean done
 
Standard_Boolean hasresult
 

Detailed Description

Root class for calculation of surfaces (fillets, chamfers) destined to smooth edges of a gap on a Shape and the reconstruction of the Shape.

Constructor & Destructor Documentation

virtual ChFi3d_Builder::~ChFi3d_Builder ( )
virtual
ChFi3d_Builder::ChFi3d_Builder ( const TopoDS_Shape S,
const Standard_Real  Ta 
)
protected

Member Function Documentation

Standard_Real ChFi3d_Builder::Abscissa ( const Standard_Integer  IC,
const TopoDS_Vertex V 
) const

returns the abscissa of the vertex V on the contour of index IC.

TopoDS_Shape ChFi3d_Builder::BadShape ( ) const

if (HasResult()) returns partial result if (!HasResult())

Handle< TopOpeBRepBuild_HBuilder > ChFi3d_Builder::Builder ( ) const

Returns the Builder of topologic operations.

void ChFi3d_Builder::CallPerformSurf ( Handle< ChFiDS_Stripe > &  Stripe,
const Standard_Boolean  Simul,
ChFiDS_SequenceOfSurfData SeqSD,
Handle< ChFiDS_SurfData > &  SD,
const Handle< ChFiDS_HElSpine > &  Guide,
const Handle< ChFiDS_Spine > &  Spine,
const Handle< BRepAdaptor_HSurface > &  HS1,
const Handle< BRepAdaptor_HSurface > &  HS3,
const gp_Pnt2d P1,
const gp_Pnt2d P3,
const Handle< Adaptor3d_TopolTool > &  I1,
const Handle< BRepAdaptor_HSurface > &  HS2,
const Handle< BRepAdaptor_HSurface > &  HS4,
const gp_Pnt2d P2,
const gp_Pnt2d P4,
const Handle< Adaptor3d_TopolTool > &  I2,
const Standard_Real  MaxStep,
const Standard_Real  Fleche,
const Standard_Real  TolGuide,
Standard_Real First,
Standard_Real Last,
const Standard_Boolean  Inside,
const Standard_Boolean  Appro,
const Standard_Boolean  Forward,
const Standard_Boolean  RecOnS1,
const Standard_Boolean  RecOnS2,
math_Vector Soldep,
Standard_Integer Intf,
Standard_Integer Intl,
Handle< BRepAdaptor_HSurface > &  Surf1,
Handle< BRepAdaptor_HSurface > &  Surf2 
)
protected
Standard_Boolean ChFi3d_Builder::Closed ( const Standard_Integer  IC) const

returns true if the contour of index IC is closed

Standard_Boolean ChFi3d_Builder::ClosedAndTangent ( const Standard_Integer  IC) const

returns true if the contour of index IC is closed an tangent.

Standard_Boolean ChFi3d_Builder::CompleteData ( Handle< ChFiDS_SurfData > &  Data,
Blend_Function Func,
Handle< BRepBlend_Line > &  Lin,
const Handle< Adaptor3d_HSurface > &  S1,
const Handle< Adaptor3d_HSurface > &  S2,
const TopAbs_Orientation  Or1,
const Standard_Boolean  Gd1,
const Standard_Boolean  Gd2,
const Standard_Boolean  Gf1,
const Standard_Boolean  Gf2,
const Standard_Boolean  Reversed = Standard_False 
)
protected
Standard_Boolean ChFi3d_Builder::CompleteData ( Handle< ChFiDS_SurfData > &  Data,
Blend_SurfRstFunction Func,
Handle< BRepBlend_Line > &  Lin,
const Handle< Adaptor3d_HSurface > &  S1,
const Handle< Adaptor3d_HSurface > &  S2,
const TopAbs_Orientation  Or,
const Standard_Boolean  Reversed 
)
protected
Standard_Boolean ChFi3d_Builder::CompleteData ( Handle< ChFiDS_SurfData > &  Data,
Blend_RstRstFunction Func,
Handle< BRepBlend_Line > &  Lin,
const Handle< Adaptor3d_HSurface > &  S1,
const Handle< Adaptor3d_HSurface > &  S2,
const TopAbs_Orientation  Or 
)
protected
Standard_Boolean ChFi3d_Builder::CompleteData ( Handle< ChFiDS_SurfData > &  Data,
const Handle< Geom_Surface > &  Surfcoin,
const Handle< Adaptor3d_HSurface > &  S1,
const Handle< Geom2d_Curve > &  PC1,
const Handle< Adaptor3d_HSurface > &  S2,
const Handle< Geom2d_Curve > &  PC2,
const TopAbs_Orientation  Or,
const Standard_Boolean  On1,
const Standard_Boolean  Gd1,
const Standard_Boolean  Gd2,
const Standard_Boolean  Gf1,
const Standard_Boolean  Gf2 
)
protected
void ChFi3d_Builder::Compute ( )

general calculation of geometry on all edges, topologic reconstruction.

Standard_Boolean ChFi3d_Builder::ComputeData ( Handle< ChFiDS_SurfData > &  Data,
const Handle< ChFiDS_HElSpine > &  Guide,
const Handle< ChFiDS_Spine > &  Spine,
Handle< BRepBlend_Line > &  Lin,
const Handle< Adaptor3d_HSurface > &  S1,
const Handle< Adaptor3d_TopolTool > &  I1,
const Handle< Adaptor3d_HSurface > &  S2,
const Handle< Adaptor3d_TopolTool > &  I2,
Blend_Function Func,
Blend_FuncInv FInv,
const Standard_Real  PFirst,
const Standard_Real  MaxStep,
const Standard_Real  Fleche,
const Standard_Real  TolGuide,
Standard_Real First,
Standard_Real Last,
const Standard_Boolean  Inside,
const Standard_Boolean  Appro,
const Standard_Boolean  Forward,
const math_Vector Soldep,
Standard_Integer Intf,
Standard_Integer Intl,
Standard_Boolean Gd1,
Standard_Boolean Gd2,
Standard_Boolean Gf1,
Standard_Boolean Gf2,
const Standard_Boolean  RecOnS1 = Standard_False,
const Standard_Boolean  RecOnS2 = Standard_False 
)
protected

Calculates a Line of contact face/face.

Standard_Boolean ChFi3d_Builder::ComputeData ( Handle< ChFiDS_SurfData > &  Data,
const Handle< ChFiDS_HElSpine > &  HGuide,
Handle< BRepBlend_Line > &  Lin,
const Handle< Adaptor3d_HSurface > &  S1,
const Handle< Adaptor3d_TopolTool > &  I1,
const Handle< Adaptor3d_HSurface > &  S2,
const Handle< Adaptor2d_HCurve2d > &  PC2,
const Handle< Adaptor3d_TopolTool > &  I2,
Standard_Boolean Decroch,
Blend_SurfRstFunction Func,
Blend_FuncInv FInv,
Blend_SurfPointFuncInv FInvP,
Blend_SurfCurvFuncInv FInvC,
const Standard_Real  PFirst,
const Standard_Real  MaxStep,
const Standard_Real  Fleche,
const Standard_Real  TolGuide,
Standard_Real First,
Standard_Real Last,
const math_Vector Soldep,
const Standard_Boolean  Inside,
const Standard_Boolean  Appro,
const Standard_Boolean  Forward,
const Standard_Boolean  RecP,
const Standard_Boolean  RecS,
const Standard_Boolean  RecRst 
)
protected

Calculates a Line of contact edge/face.

Standard_Boolean ChFi3d_Builder::ComputeData ( Handle< ChFiDS_SurfData > &  Data,
const Handle< ChFiDS_HElSpine > &  HGuide,
Handle< BRepBlend_Line > &  Lin,
const Handle< Adaptor3d_HSurface > &  S1,
const Handle< Adaptor2d_HCurve2d > &  PC1,
const Handle< Adaptor3d_TopolTool > &  I1,
Standard_Boolean Decroch1,
const Handle< Adaptor3d_HSurface > &  S2,
const Handle< Adaptor2d_HCurve2d > &  PC2,
const Handle< Adaptor3d_TopolTool > &  I2,
Standard_Boolean Decroch2,
Blend_RstRstFunction Func,
Blend_SurfCurvFuncInv FInv1,
Blend_CurvPointFuncInv FInvP1,
Blend_SurfCurvFuncInv FInv2,
Blend_CurvPointFuncInv FInvP2,
const Standard_Real  PFirst,
const Standard_Real  MaxStep,
const Standard_Real  Fleche,
const Standard_Real  TolGuide,
Standard_Real First,
Standard_Real Last,
const math_Vector Soldep,
const Standard_Boolean  Inside,
const Standard_Boolean  Appro,
const Standard_Boolean  Forward,
const Standard_Boolean  RecP1,
const Standard_Boolean  RecRst1,
const Standard_Boolean  RecP2,
const Standard_Boolean  RecRst2 
)
protected

Calculates a Line of contact edge/edge.

Handle< Geom_Surface > ChFi3d_Builder::ComputedSurface ( const Standard_Integer  IC,
const Standard_Integer  IS 
) const

Returns the IS'th surface calculated on the contour IC.

Standard_Integer ChFi3d_Builder::Contains ( const TopoDS_Edge E) const

gives the number of the contour containing E or 0 if E does not belong to any contour.

Standard_Integer ChFi3d_Builder::Contains ( const TopoDS_Edge E,
Standard_Integer 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

virtual void ChFi3d_Builder::ExtentOneCorner ( const TopoDS_Vertex V,
const Handle< ChFiDS_Stripe > &  S 
)
protectedpure virtual

Implemented in ChFi3d_ChBuilder, and ChFi3d_FilBuilder.

virtual void ChFi3d_Builder::ExtentThreeCorner ( const TopoDS_Vertex V,
const ChFiDS_ListOfStripe LS 
)
protectedpure virtual

Implemented in ChFi3d_ChBuilder, and ChFi3d_FilBuilder.

virtual void ChFi3d_Builder::ExtentTwoCorner ( const TopoDS_Vertex V,
const ChFiDS_ListOfStripe LS 
)
protectedpure virtual

Implemented in ChFi3d_ChBuilder, and ChFi3d_FilBuilder.

Standard_Integer ChFi3d_Builder::FaultyContour ( const Standard_Integer  I) const

Returns the number of I'th contour on which the calculation has failed.

TopoDS_Vertex ChFi3d_Builder::FaultyVertex ( const Standard_Integer  IV) const

Returns the IV'th vertex on which the calculation has failed.

TopoDS_Vertex ChFi3d_Builder::FirstVertex ( const Standard_Integer  IC) const

returns the First vertex V of the contour of index IC.

const TopTools_ListOfShape& ChFi3d_Builder::Generated ( const TopoDS_Shape EouV)

Advanced function for the history.

Standard_Boolean ChFi3d_Builder::HasResult ( ) const

returns True if a partial result has been calculated

Standard_Boolean ChFi3d_Builder::IsDone ( ) const

returns True if the computation is success

TopoDS_Vertex ChFi3d_Builder::LastVertex ( const Standard_Integer  IC) const

returns the Last vertex V of the contour of index IC.

Standard_Real ChFi3d_Builder::Length ( const Standard_Integer  IC) const

returns the length of the contour of index IC.

Standard_Integer ChFi3d_Builder::NbComputedSurfaces ( const Standard_Integer  IC) const

Returns the number of surfaces calculated on the contour IC.

Standard_Integer ChFi3d_Builder::NbElements ( ) const

gives the number of disjoint contours on which the fillets are calculated

Standard_Integer ChFi3d_Builder::NbFaultyContours ( ) const

Returns the number of contours on which the calculation has failed.

Standard_Integer ChFi3d_Builder::NbFaultyVertices ( ) const

Returns the number of vertices on which the calculation has failed.

Standard_Boolean ChFi3d_Builder::PerformElement ( const Handle< ChFiDS_Spine > &  CElement)
protected
void ChFi3d_Builder::PerformExtremity ( const Handle< ChFiDS_Spine > &  CElement)
protected
virtual Standard_Boolean ChFi3d_Builder::PerformFirstSection ( const Handle< ChFiDS_Spine > &  S,
const Handle< ChFiDS_HElSpine > &  HGuide,
const Standard_Integer  Choix,
Handle< BRepAdaptor_HSurface > &  S1,
Handle< BRepAdaptor_HSurface > &  S2,
const Handle< Adaptor3d_TopolTool > &  I1,
const Handle< Adaptor3d_TopolTool > &  I2,
const Standard_Real  Par,
math_Vector SolDep,
TopAbs_State Pos1,
TopAbs_State Pos2 
) const
protectedpure virtual

Implemented in ChFi3d_ChBuilder, and ChFi3d_FilBuilder.

void ChFi3d_Builder::PerformMoreThreeCorner ( const Standard_Integer  Index,
const Standard_Integer  nbcourb 
)
protected
void ChFi3d_Builder::PerformSetOfKGen ( Handle< ChFiDS_Stripe > &  S,
const Standard_Boolean  Simul = Standard_False 
)
protected
void ChFi3d_Builder::PerformSetOfKPart ( Handle< ChFiDS_Stripe > &  S,
const Standard_Boolean  Simul = Standard_False 
)
protected
void ChFi3d_Builder::PerformSetOfSurf ( Handle< ChFiDS_Stripe > &  S,
const Standard_Boolean  Simul = Standard_False 
)
protected
virtual Standard_Boolean ChFi3d_Builder::PerformSurf ( ChFiDS_SequenceOfSurfData Data,
const Handle< ChFiDS_HElSpine > &  Guide,
const Handle< ChFiDS_Spine > &  Spine,
const Standard_Integer  Choix,
const Handle< BRepAdaptor_HSurface > &  S1,
const Handle< Adaptor3d_TopolTool > &  I1,
const Handle< BRepAdaptor_HSurface > &  S2,
const Handle< Adaptor3d_TopolTool > &  I2,
const Standard_Real  MaxStep,
const Standard_Real  Fleche,
const Standard_Real  TolGuide,
Standard_Real First,
Standard_Real Last,
const Standard_Boolean  Inside,
const Standard_Boolean  Appro,
const Standard_Boolean  Forward,
const Standard_Boolean  RecOnS1,
const Standard_Boolean  RecOnS2,
const math_Vector Soldep,
Standard_Integer Intf,
Standard_Integer Intl 
)
protectedpure virtual

Method, implemented in the inheritants, calculating elements of construction of the surface (fillet or chamfer).

Implemented in ChFi3d_FilBuilder, ChFi3d_ChBuilder, and FilletSurf_InternalBuilder.

virtual void ChFi3d_Builder::PerformSurf ( ChFiDS_SequenceOfSurfData Data,
const Handle< ChFiDS_HElSpine > &  Guide,
const Handle< ChFiDS_Spine > &  Spine,
const Standard_Integer  Choix,
const Handle< BRepAdaptor_HSurface > &  S1,
const Handle< Adaptor3d_TopolTool > &  I1,
const Handle< BRepAdaptor_HCurve2d > &  PC1,
const Handle< BRepAdaptor_HSurface > &  Sref1,
const Handle< BRepAdaptor_HCurve2d > &  PCref1,
Standard_Boolean Decroch1,
const Handle< BRepAdaptor_HSurface > &  S2,
const Handle< Adaptor3d_TopolTool > &  I2,
const TopAbs_Orientation  Or2,
const Standard_Real  MaxStep,
const Standard_Real  Fleche,
const Standard_Real  TolGuide,
Standard_Real First,
Standard_Real Last,
const Standard_Boolean  Inside,
const Standard_Boolean  Appro,
const Standard_Boolean  Forward,
const Standard_Boolean  RecP,
const Standard_Boolean  RecS,
const Standard_Boolean  RecRst,
const math_Vector Soldep 
)
protectedvirtual

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

Reimplemented in ChFi3d_FilBuilder, ChFi3d_ChBuilder, and FilletSurf_InternalBuilder.

virtual void ChFi3d_Builder::PerformSurf ( ChFiDS_SequenceOfSurfData Data,
const Handle< ChFiDS_HElSpine > &  Guide,
const Handle< ChFiDS_Spine > &  Spine,
const Standard_Integer  Choix,
const Handle< BRepAdaptor_HSurface > &  S1,
const Handle< Adaptor3d_TopolTool > &  I1,
const TopAbs_Orientation  Or1,
const Handle< BRepAdaptor_HSurface > &  S2,
const Handle< Adaptor3d_TopolTool > &  I2,
const Handle< BRepAdaptor_HCurve2d > &  PC2,
const Handle< BRepAdaptor_HSurface > &  Sref2,
const Handle< BRepAdaptor_HCurve2d > &  PCref2,
Standard_Boolean Decroch2,
const Standard_Real  MaxStep,
const Standard_Real  Fleche,
const Standard_Real  TolGuide,
Standard_Real First,
Standard_Real Last,
const Standard_Boolean  Inside,
const Standard_Boolean  Appro,
const Standard_Boolean  Forward,
const Standard_Boolean  RecP,
const Standard_Boolean  RecS,
const Standard_Boolean  RecRst,
const math_Vector Soldep 
)
protectedvirtual

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

Reimplemented in ChFi3d_FilBuilder, ChFi3d_ChBuilder, and FilletSurf_InternalBuilder.

virtual void ChFi3d_Builder::PerformSurf ( ChFiDS_SequenceOfSurfData Data,
const Handle< ChFiDS_HElSpine > &  Guide,
const Handle< ChFiDS_Spine > &  Spine,
const Standard_Integer  Choix,
const Handle< BRepAdaptor_HSurface > &  S1,
const Handle< Adaptor3d_TopolTool > &  I1,
const Handle< BRepAdaptor_HCurve2d > &  PC1,
const Handle< BRepAdaptor_HSurface > &  Sref1,
const Handle< BRepAdaptor_HCurve2d > &  PCref1,
Standard_Boolean Decroch1,
const TopAbs_Orientation  Or1,
const Handle< BRepAdaptor_HSurface > &  S2,
const Handle< Adaptor3d_TopolTool > &  I2,
const Handle< BRepAdaptor_HCurve2d > &  PC2,
const Handle< BRepAdaptor_HSurface > &  Sref2,
const Handle< BRepAdaptor_HCurve2d > &  PCref2,
Standard_Boolean Decroch2,
const TopAbs_Orientation  Or2,
const Standard_Real  MaxStep,
const Standard_Real  Fleche,
const Standard_Real  TolGuide,
Standard_Real First,
Standard_Real Last,
const Standard_Boolean  Inside,
const Standard_Boolean  Appro,
const Standard_Boolean  Forward,
const Standard_Boolean  RecP1,
const Standard_Boolean  RecRst1,
const Standard_Boolean  RecP2,
const Standard_Boolean  RecRst2,
const math_Vector Soldep 
)
protectedvirtual

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

Reimplemented in ChFi3d_FilBuilder, ChFi3d_ChBuilder, and FilletSurf_InternalBuilder.

virtual void ChFi3d_Builder::PerformThreeCorner ( const Standard_Integer  Index)
protectedpure virtual

Implemented in ChFi3d_ChBuilder, and ChFi3d_FilBuilder.

virtual void ChFi3d_Builder::PerformTwoCorner ( const Standard_Integer  Index)
protectedpure virtual

Implemented in ChFi3d_ChBuilder, and ChFi3d_FilBuilder.

Standard_Boolean ChFi3d_Builder::PerformTwoCornerbyInter ( const Standard_Integer  Index)
Standard_Real ChFi3d_Builder::RelativeAbscissa ( const Standard_Integer  IC,
const TopoDS_Vertex V 
) const

returns the relative abscissa([0.,1.]) of the vertex V on the contour of index IC.

void ChFi3d_Builder::Remove ( const TopoDS_Edge E)

extracts from the list the contour containing edge E.

void ChFi3d_Builder::Reset ( )

Reset all results of compute and returns the algorythm in the state of the last acquisition to enable modification of contours or areas.

Standard_Boolean ChFi3d_Builder::SearchFace ( const Handle< ChFiDS_Spine > &  Sp,
const ChFiDS_CommonPoint Pc,
const TopoDS_Face FRef,
TopoDS_Face FVoi 
) const
protected
void ChFi3d_Builder::SetContinuity ( const GeomAbs_Shape  InternalContinuity,
const Standard_Real  AngularTolerance 
)
void ChFi3d_Builder::SetParams ( const Standard_Real  Tang,
const Standard_Real  Tesp,
const Standard_Real  T2d,
const Standard_Real  TApp3d,
const Standard_Real  TolApp2d,
const Standard_Real  Fleche 
)
virtual void ChFi3d_Builder::SetRegul ( )
protectedpure virtual

Implemented in ChFi3d_ChBuilder, and ChFi3d_FilBuilder.

TopoDS_Shape ChFi3d_Builder::Shape ( ) const

if (Isdone()) makes the result. if (!Isdone())

Standard_Boolean ChFi3d_Builder::SimulData ( Handle< ChFiDS_SurfData > &  Data,
const Handle< ChFiDS_HElSpine > &  Guide,
Handle< BRepBlend_Line > &  Lin,
const Handle< Adaptor3d_HSurface > &  S1,
const Handle< Adaptor3d_TopolTool > &  I1,
const Handle< Adaptor3d_HSurface > &  S2,
const Handle< Adaptor3d_TopolTool > &  I2,
Blend_Function Func,
Blend_FuncInv FInv,
const Standard_Real  PFirst,
const Standard_Real  MaxStep,
const Standard_Real  Fleche,
const Standard_Real  TolGuide,
Standard_Real First,
Standard_Real Last,
const Standard_Boolean  Inside,
const Standard_Boolean  Appro,
const Standard_Boolean  Forward,
const math_Vector Soldep,
const Standard_Integer  NbSecMin,
const Standard_Boolean  RecOnS1 = Standard_False,
const Standard_Boolean  RecOnS2 = Standard_False 
)
protected
Standard_Boolean ChFi3d_Builder::SimulData ( Handle< ChFiDS_SurfData > &  Data,
const Handle< ChFiDS_HElSpine > &  HGuide,
Handle< BRepBlend_Line > &  Lin,
const Handle< Adaptor3d_HSurface > &  S1,
const Handle< Adaptor3d_TopolTool > &  I1,
const Handle< Adaptor3d_HSurface > &  S2,
const Handle< Adaptor2d_HCurve2d > &  PC2,
const Handle< Adaptor3d_TopolTool > &  I2,
Standard_Boolean Decroch,
Blend_SurfRstFunction Func,
Blend_FuncInv FInv,
Blend_SurfPointFuncInv FInvP,
Blend_SurfCurvFuncInv FInvC,
const Standard_Real  PFirst,
const Standard_Real  MaxStep,
const Standard_Real  Fleche,
const Standard_Real  TolGuide,
Standard_Real First,
Standard_Real Last,
const math_Vector Soldep,
const Standard_Integer  NbSecMin,
const Standard_Boolean  Inside,
const Standard_Boolean  Appro,
const Standard_Boolean  Forward,
const Standard_Boolean  RecP,
const Standard_Boolean  RecS,
const Standard_Boolean  RecRst 
)
protected
Standard_Boolean ChFi3d_Builder::SimulData ( Handle< ChFiDS_SurfData > &  Data,
const Handle< ChFiDS_HElSpine > &  HGuide,
Handle< BRepBlend_Line > &  Lin,
const Handle< Adaptor3d_HSurface > &  S1,
const Handle< Adaptor2d_HCurve2d > &  PC1,
const Handle< Adaptor3d_TopolTool > &  I1,
Standard_Boolean Decroch1,
const Handle< Adaptor3d_HSurface > &  S2,
const Handle< Adaptor2d_HCurve2d > &  PC2,
const Handle< Adaptor3d_TopolTool > &  I2,
Standard_Boolean Decroch2,
Blend_RstRstFunction Func,
Blend_SurfCurvFuncInv FInv1,
Blend_CurvPointFuncInv FInvP1,
Blend_SurfCurvFuncInv FInv2,
Blend_CurvPointFuncInv FInvP2,
const Standard_Real  PFirst,
const Standard_Real  MaxStep,
const Standard_Real  Fleche,
const Standard_Real  TolGuide,
Standard_Real First,
Standard_Real Last,
const math_Vector Soldep,
const Standard_Integer  NbSecMin,
const Standard_Boolean  Inside,
const Standard_Boolean  Appro,
const Standard_Boolean  Forward,
const Standard_Boolean  RecP1,
const Standard_Boolean  RecRst1,
const Standard_Boolean  RecP2,
const Standard_Boolean  RecRst2 
)
protected
virtual void ChFi3d_Builder::SimulKPart ( const Handle< ChFiDS_SurfData > &  SD) const
protectedpure virtual

Implemented in ChFi3d_ChBuilder, and ChFi3d_FilBuilder.

virtual Standard_Boolean ChFi3d_Builder::SimulSurf ( Handle< ChFiDS_SurfData > &  Data,
const Handle< ChFiDS_HElSpine > &  Guide,
const Handle< ChFiDS_Spine > &  Spine,
const Standard_Integer  Choix,
const Handle< BRepAdaptor_HSurface > &  S1,
const Handle< Adaptor3d_TopolTool > &  I1,
const Handle< BRepAdaptor_HSurface > &  S2,
const Handle< Adaptor3d_TopolTool > &  I2,
const Standard_Real  TolGuide,
Standard_Real First,
Standard_Real Last,
const Standard_Boolean  Inside,
const Standard_Boolean  Appro,
const Standard_Boolean  Forward,
const Standard_Boolean  RecOnS1,
const Standard_Boolean  RecOnS2,
const math_Vector Soldep,
Standard_Integer Intf,
Standard_Integer Intl 
)
protectedpure virtual

Implemented in ChFi3d_ChBuilder, and ChFi3d_FilBuilder.

virtual void ChFi3d_Builder::SimulSurf ( Handle< ChFiDS_SurfData > &  Data,
const Handle< ChFiDS_HElSpine > &  Guide,
const Handle< ChFiDS_Spine > &  Spine,
const Standard_Integer  Choix,
const Handle< BRepAdaptor_HSurface > &  S1,
const Handle< Adaptor3d_TopolTool > &  I1,
const Handle< BRepAdaptor_HCurve2d > &  PC1,
const Handle< BRepAdaptor_HSurface > &  Sref1,
const Handle< BRepAdaptor_HCurve2d > &  PCref1,
Standard_Boolean Decroch1,
const Handle< BRepAdaptor_HSurface > &  S2,
const Handle< Adaptor3d_TopolTool > &  I2,
const TopAbs_Orientation  Or2,
const Standard_Real  Fleche,
const Standard_Real  TolGuide,
Standard_Real First,
Standard_Real Last,
const Standard_Boolean  Inside,
const Standard_Boolean  Appro,
const Standard_Boolean  Forward,
const Standard_Boolean  RecP,
const Standard_Boolean  RecS,
const Standard_Boolean  RecRst,
const math_Vector Soldep 
)
protectedvirtual

Reimplemented in ChFi3d_FilBuilder, and ChFi3d_ChBuilder.

virtual void ChFi3d_Builder::SimulSurf ( Handle< ChFiDS_SurfData > &  Data,
const Handle< ChFiDS_HElSpine > &  Guide,
const Handle< ChFiDS_Spine > &  Spine,
const Standard_Integer  Choix,
const Handle< BRepAdaptor_HSurface > &  S1,
const Handle< Adaptor3d_TopolTool > &  I1,
const TopAbs_Orientation  Or1,
const Handle< BRepAdaptor_HSurface > &  S2,
const Handle< Adaptor3d_TopolTool > &  I2,
const Handle< BRepAdaptor_HCurve2d > &  PC2,
const Handle< BRepAdaptor_HSurface > &  Sref2,
const Handle< BRepAdaptor_HCurve2d > &  PCref2,
Standard_Boolean Decroch2,
const Standard_Real  Fleche,
const Standard_Real  TolGuide,
Standard_Real First,
Standard_Real Last,
const Standard_Boolean  Inside,
const Standard_Boolean  Appro,
const Standard_Boolean  Forward,
const Standard_Boolean  RecP,
const Standard_Boolean  RecS,
const Standard_Boolean  RecRst,
const math_Vector Soldep 
)
protectedvirtual

Reimplemented in ChFi3d_FilBuilder, and ChFi3d_ChBuilder.

virtual void ChFi3d_Builder::SimulSurf ( Handle< ChFiDS_SurfData > &  Data,
const Handle< ChFiDS_HElSpine > &  Guide,
const Handle< ChFiDS_Spine > &  Spine,
const Standard_Integer  Choix,
const Handle< BRepAdaptor_HSurface > &  S1,
const Handle< Adaptor3d_TopolTool > &  I1,
const Handle< BRepAdaptor_HCurve2d > &  PC1,
const Handle< BRepAdaptor_HSurface > &  Sref1,
const Handle< BRepAdaptor_HCurve2d > &  PCref1,
Standard_Boolean Decroch1,
const TopAbs_Orientation  Or1,
const Handle< BRepAdaptor_HSurface > &  S2,
const Handle< Adaptor3d_TopolTool > &  I2,
const Handle< BRepAdaptor_HCurve2d > &  PC2,
const Handle< BRepAdaptor_HSurface > &  Sref2,
const Handle< BRepAdaptor_HCurve2d > &  PCref2,
Standard_Boolean Decroch2,
const TopAbs_Orientation  Or2,
const Standard_Real  Fleche,
const Standard_Real  TolGuide,
Standard_Real First,
Standard_Real Last,
const Standard_Boolean  Inside,
const Standard_Boolean  Appro,
const Standard_Boolean  Forward,
const Standard_Boolean  RecP1,
const Standard_Boolean  RecRst1,
const Standard_Boolean  RecP2,
const Standard_Boolean  RecRst2,
const math_Vector Soldep 
)
protectedvirtual

Reimplemented in ChFi3d_FilBuilder, and ChFi3d_ChBuilder.

Standard_Boolean ChFi3d_Builder::SplitKPart ( const Handle< ChFiDS_SurfData > &  Data,
ChFiDS_SequenceOfSurfData SetData,
const Handle< ChFiDS_Spine > &  Spine,
const Standard_Integer  Iedge,
const Handle< Adaptor3d_HSurface > &  S1,
const Handle< Adaptor3d_TopolTool > &  I1,
const Handle< Adaptor3d_HSurface > &  S2,
const Handle< Adaptor3d_TopolTool > &  I2,
Standard_Boolean Intf,
Standard_Boolean Intl 
)

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

Standard_Boolean ChFi3d_Builder::StoreData ( Handle< ChFiDS_SurfData > &  Data,
const AppBlend_Approx Approx,
const Handle< BRepBlend_Line > &  Lin,
const Handle< Adaptor3d_HSurface > &  S1,
const Handle< Adaptor3d_HSurface > &  S2,
const TopAbs_Orientation  Or1,
const Standard_Boolean  Gd1,
const Standard_Boolean  Gd2,
const Standard_Boolean  Gf1,
const Standard_Boolean  Gf2,
const Standard_Boolean  Reversed = Standard_False 
)
protected
Standard_Boolean ChFi3d_Builder::StripeOrientations ( const Handle< ChFiDS_Spine > &  Sp,
TopAbs_Orientation Or1,
TopAbs_Orientation Or2,
Standard_Integer ChoixConge 
) const
protected
ChFiDS_ErrorStatus ChFi3d_Builder::StripeStatus ( const Standard_Integer  IC) const

for the stripe IC ,indication on the cause of failure WalkingFailure,TwistedSurface,Error, Ok

void ChFi3d_Builder::Trunc ( const Handle< ChFiDS_SurfData > &  SD,
const Handle< ChFiDS_Spine > &  Spine,
const Handle< Adaptor3d_HSurface > &  S1,
const Handle< Adaptor3d_HSurface > &  S2,
const Standard_Integer  iedge,
const Standard_Boolean  isfirst,
const Standard_Integer  cntlFiOnS 
)
protected
Handle< ChFiDS_Spine > ChFi3d_Builder::Value ( const Standard_Integer  I) const

gives the n'th set of edges (contour) if I >NbElements()

Field Documentation

ChFiDS_ListOfStripe ChFi3d_Builder::badstripes
protected
TopTools_ListOfShape ChFi3d_Builder::badvertices
protected
Standard_Boolean ChFi3d_Builder::done
protected
Standard_Real ChFi3d_Builder::fleche
protected
Standard_Boolean ChFi3d_Builder::hasresult
protected
GeomAbs_Shape ChFi3d_Builder::myConti
protected
Handle< TopOpeBRepBuild_HBuilder > ChFi3d_Builder::myCoup
protected
Handle< TopOpeBRepDS_HDataStructure > ChFi3d_Builder::myDS
protected
ChFiDS_Map ChFi3d_Builder::myEFMap
protected
ChFiDS_Map ChFi3d_Builder::myEShMap
protected
ChFiDS_Map ChFi3d_Builder::myESoMap
protected
TopTools_DataMapOfShapeListOfInteger ChFi3d_Builder::myEVIMap
protected
ChFiDS_ListOfStripe ChFi3d_Builder::myListStripe
protected
ChFiDS_Regularities ChFi3d_Builder::myRegul
protected
ChFiDS_StripeMap ChFi3d_Builder::myVDataMap
protected
ChFiDS_Map ChFi3d_Builder::myVEMap
protected
ChFiDS_Map ChFi3d_Builder::myVFMap
protected
Standard_Real ChFi3d_Builder::tol2d
protected
Standard_Real ChFi3d_Builder::tolapp2d
protected
Standard_Real ChFi3d_Builder::tolapp3d
protected
Standard_Real ChFi3d_Builder::tolappangle
protected
Standard_Real ChFi3d_Builder::tolesp
protected

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