# OCC.ChFi3d module

class `ChFi3d_Builder`(*args, **kwargs)

  Bases: `object`

  `Abscissa`()
    - returns the abscissa of the vertex V on the contour of index IC.

    Parameters: | IC (int) – V (TopoDS_Vertex &) –
    Return type: | float

  `BadShape`()
    - if (HasResult()) returns partial result if (!HasResult())

    Return type: | TopoDS_Shape

  `Builder`()
    - Returns the Builder of topologic operations.

    Return type: | Handle_TopOpeBRepBuild_HBuilder

  `Closed`()
    - returns true if the contour of index IC is closed

    Parameters: | IC (int) –
    Return type: | bool

  `ClosedAndTangent`()
    - returns true if the contour of index IC is closed an tangent.

    Parameters: | IC (int) –
    Return type: | bool

  `Compute`()
    - general calculation of geometry on all edges, topologic reconstruction.

    Return type: | None

  `ComputedSurface`()
    - Returns the IS’th surface calculated on the contour IC.

    Parameters: | IC (int) – IS (int) –
    Return type: | Handle_Geom_Surface

  `Contains`()
    - gives the number of the contour containing E or 0 if E does not belong to any contour.

    Parameters: | E (TopoDS_Edge &) –
    Return type: | int

    - 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

    Parameters: | E (TopoDS_Edge &) – IndexInSpine (int &) –
    Return type: | int

  `Delete`()

    Return type: | void

  `FaultyContour`()
    - Returns the number of I’th contour on which the calculation has failed.

    Parameters: | I (int) –
    Return type: | int

  `FaultyVertex`()
    - Returns the IV’th vertex on which the calculation has failed.

    Parameters: | IV (int) –
    Return type: | TopoDS_Vertex

  `FirstVertex`()
    - returns the First vertex V of the contour of index IC.

    Parameters: | IC (int) –
    Return type: | TopoDS_Vertex

  `Generated`()
    - Advanced function for the history

    Parameters: | EouV (TopoDS_Shape &) –
    Return type: | TopTools_ListOfShape

  `HasResult`()
    - returns True if a partial result has been calculated

    Return type: | bool

  `IsDone`()
    - returns True if the computation is success

    Return type: | bool

  `LastVertex`()
    - returns the Last vertex V of the contour of index IC.

    Parameters: | IC (int) –
    Return type: | TopoDS_Vertex

  `Length`()
    - returns the length of the contour of index IC.

    Parameters: | IC (int) –
    Return type: | float

  `NbComputedSurfaces`()
    - Returns the number of surfaces calculated on the contour IC.

    Parameters: | IC (int) –
    Return type: | int

  `NbElements`()
    - gives the number of disjoint contours on which the fillets are calculated

    Return type: | int

  `NbFaultyContours`()
    - Returns the number of contours on which the calculation has failed.

    Return type: | int

  `NbFaultyVertices`()
    - Returns the number of vertices on which the calculation has failed.

    Return type: | int

  `PerformTwoCornerbyInter`()

    Parameters: | Index (int) –
    Return type: | bool

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

    Parameters: | IC (int) – V (TopoDS_Vertex &) –
    Return type: | float

  `Remove`()
    - extracts from the list the contour containing edge E.

    Parameters: | E (TopoDS_Edge &) –
    Return type: | None

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

    Return type: | None

  `SetContinuity`()

    Parameters: | InternalContinuity (GeomAbs_Shape) – AngularTolerance (float) –
    Return type: | None

  `SetParams`()

    Parameters: | Tang (float) – Tesp (float) – T2d (float) – TApp3d (float) – TolApp2d (float) – Fleche (float) –
    Return type: | None

  `Shape`()
    - if (Isdone()) makes the result. if (!Isdone())

    Return type: | TopoDS_Shape

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

    Parameters: | Data (Handle_ChFiDS_SurfData &) – SetData (ChFiDS_SequenceOfSurfData &) – Spine (Handle_ChFiDS_Spine &) – Iedge (int) – S1 (Handle_Adaptor3d_HSurface &) – I1 (Handle_Adaptor3d_TopolTool &) – S2 (Handle_Adaptor3d_HSurface &) – I2 (Handle_Adaptor3d_TopolTool &) – Intf (bool) – Intl (bool) –
    Return type: | bool

  `StripeStatus`()
    - for the stripe IC ,indication on the cause of failure WalkingFailure,TwistedSurface,Error, Ok

    Parameters: | IC (int) –
    Return type: | ChFiDS_ErrorStatus

  `Value`()
    - gives the n’th set of edges (contour) if I >NbElements()

    Parameters: | I (int) –
    Return type: | Handle_ChFiDS_Spine

  `thisown`

    The membership flag

class `ChFi3d_ChBuilder`(*args)

  Bases: `OCC.ChFi3d.ChFi3d_Builder`

  - initializes the Builder with the Shape <S> for the computation of chamfers

  Parameters: | S (TopoDS_Shape &) – Ta (float) – default value is 1.0e-2
  Return type: | None

  `Add`()
    - initializes a contour with the edge <E> as first (the next are found by propagation ). The two distances (parameters of the chamfer) must be set after. if the edge <E> has more than 2 adjacent faces

    Parameters: | E (TopoDS_Edge &) –
    Return type: | None

    - initializes a new contour with the edge <E> as first (the next are found by propagation ), and the distance <Dis> if the edge <E> has more than 2 adjacent faces

    Parameters: | Dis (float) – E (TopoDS_Edge &) – F (TopoDS_Face &) –
    Return type: | None

    - initializes a new contour with the edge <E> as first (the next are found by propagation ), and the distance <Dis1> and <Dis2> if the edge <E> has more than 2 adjacent faces

    Parameters: | Dis1 (float) – Dis2 (float) – E (TopoDS_Edge &) – F (TopoDS_Face &) –
    Return type: | None

  `AddDA`()
    - initializes a new contour with the edge <E> as first (the next are found by propagation ), and the distance <Dis1> and <Angle> if the edge <E> has more than 2 adjacent faces

    Parameters: | Dis (float) – Angle (float) – E (TopoDS_Edge &) – F (TopoDS_Face &) –
    Return type: | None

  `Dists`()
    - gives the distances <Dis1> and <Dis2> of the fillet contour of index <IC> in the DS

    Parameters: | IC (int) – Dis1 (float &) – Dis2 (float &) –
    Return type: | None

  `FindChoiceDistAngle`()

    Parameters: | Choice (int) – DisOnF1 (bool) –
    Return type: | int

  `GetDist`()
    - gives the distances <Dis> of the fillet contour of index <IC> in the DS

    Parameters: | IC (int) – Dis (float &) –
    Return type: | None

  `GetDistAngle`()
    - gives the distances <Dis> and <Angle> of the fillet contour of index <IC> in the DS

    Parameters: | IC (int) – Dis (float &) – Angle (float &) – DisOnFace1 (bool) –
    Return type: | None

  `IsChamfer`()
    - renvoi la methode des chanfreins utilisee

    Parameters: | IC (int) –
    Return type: | ChFiDS_ChamfMethod

  `NbSurf`()

    Parameters: | IC (int) –
    Return type: | int

  `PerformSurf`()
    - Methode, implemented in inheritants, calculates the elements of construction of the surface (fillet or chamfer).

    Parameters: | Data (ChFiDS_SequenceOfSurfData &) – Guide (Handle_ChFiDS_HElSpine &) – Spine (Handle_ChFiDS_Spine &) – Choix (int) – S1 (Handle_BRepAdaptor_HSurface &) – I1 (Handle_Adaptor3d_TopolTool &) – S2 (Handle_BRepAdaptor_HSurface &) – I2 (Handle_Adaptor3d_TopolTool &) – MaxStep (float) – Fleche (float) – TolGuide (float) – First (float &) – Last (float &) – Inside (bool) – Appro (bool) – Forward (bool) – RecOnS1 (bool) – RecOnS2 (bool) – Soldep (math_Vector &) – Intf (int &) – Intl (int &) –
    Return type: | bool

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

    Parameters: | Data (ChFiDS_SequenceOfSurfData &) – Guide (Handle_ChFiDS_HElSpine &) – Spine (Handle_ChFiDS_Spine &) – Choix (int) – S1 (Handle_BRepAdaptor_HSurface &) – I1 (Handle_Adaptor3d_TopolTool &) – PC1 (Handle_BRepAdaptor_HCurve2d &) – Sref1 (Handle_BRepAdaptor_HSurface &) – PCref1 (Handle_BRepAdaptor_HCurve2d &) – Decroch1 (bool) – S2 (Handle_BRepAdaptor_HSurface &) – I2 (Handle_Adaptor3d_TopolTool &) – Or2 (TopAbs_Orientation) – MaxStep (float) – Fleche (float) – TolGuide (float) – First (float &) – Last (float &) – Inside (bool) – Appro (bool) – Forward (bool) – RecP (bool) – RecS (bool) – RecRst (bool) – Soldep (math_Vector &) –
    Return type: | void

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

    Parameters: | Data (ChFiDS_SequenceOfSurfData &) – Guide (Handle_ChFiDS_HElSpine &) – Spine (Handle_ChFiDS_Spine &) – Choix (int) – S1 (Handle_BRepAdaptor_HSurface &) – I1 (Handle_Adaptor3d_TopolTool &) – Or1 (TopAbs_Orientation) – S2 (Handle_BRepAdaptor_HSurface &) – I2 (Handle_Adaptor3d_TopolTool &) – PC2 (Handle_BRepAdaptor_HCurve2d &) – Sref2 (Handle_BRepAdaptor_HSurface &) – PCref2 (Handle_BRepAdaptor_HCurve2d &) – Decroch2 (bool) – MaxStep (float) – Fleche (float) – TolGuide (float) – First (float &) – Last (float &) – Inside (bool) – Appro (bool) – Forward (bool) – RecP (bool) – RecS (bool) – RecRst (bool) – Soldep (math_Vector &) –
    Return type: | void

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

    Parameters: | Data (ChFiDS_SequenceOfSurfData &) – Guide (Handle_ChFiDS_HElSpine &) – Spine (Handle_ChFiDS_Spine &) – Choix (int) – S1 (Handle_BRepAdaptor_HSurface &) – I1 (Handle_Adaptor3d_TopolTool &) – PC1 (Handle_BRepAdaptor_HCurve2d &) – Sref1 (Handle_BRepAdaptor_HSurface &) – PCref1 (Handle_BRepAdaptor_HCurve2d &) – Decroch1 (bool) – Or1 (TopAbs_Orientation) – S2 (Handle_BRepAdaptor_HSurface &) – I2 (Handle_Adaptor3d_TopolTool &) – PC2 (Handle_BRepAdaptor_HCurve2d &) – Sref2 (Handle_BRepAdaptor_HSurface &) – PCref2 (Handle_BRepAdaptor_HCurve2d &) – Decroch2 (bool) – Or2 (TopAbs_Orientation) – MaxStep (float) – Fleche (float) – TolGuide (float) – First (float &) – Last (float &) – Inside (bool) – Appro (bool) – Forward (bool) – RecP1 (bool) – RecRst1 (bool) – RecP2 (bool) – RecRst2 (bool) – Soldep (math_Vector &) –
    Return type: | void

  `ResetContour`()
    - Reset tous rayons du contour IC.

    Parameters: | IC (int) –
    Return type: | None

  `Sect`()

    Parameters: | IC (int) – IS (int) –
    Return type: | Handle_ChFiDS_SecHArray1

  `SetDist`()
    - set the distance <Dis> of the fillet contour of index <IC> in the DS with <Dis> on <F>. if the face <F> is not one of common faces of an edge of the contour <IC>

    Parameters: | Dis (float) – IC (int) – F (TopoDS_Face &) –
    Return type: | None

  `SetDistAngle`()
    - set the distance <Dis> and <Angle> of the fillet contour of index <IC> in the DS with <Dis> on <F>. if the face <F> is not one of common faces of an edge of the contour <IC>

    Parameters: | Dis (float) – Angle (float) – IC (int) – F (TopoDS_Face &) –
    Return type: | None

  `SetDists`()
    - set the distances <Dis1> and <Dis2> of the fillet contour of index <IC> in the DS with <Dis1> on <F>. if the face <F> is not one of common faces of an edge of the contour <IC>

    Parameters: | Dis1 (float) – Dis2 (float) – IC (int) – F (TopoDS_Face &) –
    Return type: | None

  `SimulSurf`()

    Parameters: | Data (Handle_ChFiDS_SurfData &) – Guide (Handle_ChFiDS_HElSpine &) – Spine (Handle_ChFiDS_Spine &) – Choix (int) – S1 (Handle_BRepAdaptor_HSurface &) – I1 (Handle_Adaptor3d_TopolTool &) – PC1 (Handle_BRepAdaptor_HCurve2d &) – Sref1 (Handle_BRepAdaptor_HSurface &) – PCref1 (Handle_BRepAdaptor_HCurve2d &) – Decroch1 (bool) – S2 (Handle_BRepAdaptor_HSurface &) – I2 (Handle_Adaptor3d_TopolTool &) – Or2 (TopAbs_Orientation) – Fleche (float) – TolGuide (float) – First (float &) – Last (float &) – Inside (bool) – Appro (bool) – Forward (bool) – RecP (bool) – RecS (bool) – RecRst (bool) – Soldep (math_Vector &) – Data – Guide – Spine – Choix – S1 – I1 – Or1 (TopAbs_Orientation) – S2 – I2 – PC2 (Handle_BRepAdaptor_HCurve2d &) – Sref2 (Handle_BRepAdaptor_HSurface &) – PCref2 (Handle_BRepAdaptor_HCurve2d &) – Decroch2 (bool) – Fleche – TolGuide – First – Last – Inside – Appro – Forward – RecP – RecS – RecRst – Soldep – Data – Guide – Spine – Choix – S1 – I1 – PC1 – Sref1 – PCref1 – Decroch1 – Or1 – S2 – I2 – PC2 – Sref2 – PCref2 – Decroch2 – Or2 – Fleche – TolGuide – First – Last – Inside – Appro – Forward – RecP1 (bool) – RecRst1 (bool) – RecP2 (bool) – RecRst2 (bool) – Soldep –
    Return type: | void
    Return type: | void
    Return type: | void

  `Simulate`()

    Parameters: | IC (int) –
    Return type: | None

  `thisown`

    The membership flag

class `ChFi3d_FilBuilder`(*args)

  Bases: `OCC.ChFi3d.ChFi3d_Builder`

  Parameters: | S (TopoDS_Shape &) – FShape (ChFi3d_FilletShape) – default value is ChFi3d_Rational Ta (float) – default value is 1.0e-2
  Return type: | None

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

    Parameters: | E (TopoDS_Edge &) –
    Return type: | None

    - initialisation of the constant vector the corresponding 1st edge.

    Parameters: | Radius (float) – E (TopoDS_Edge &) –
    Return type: | None

  `GetBounds`()
    - Returns in First and Last les extremities of the part of variable vector framing E, returns False if E is flagged as edge constant.

    Parameters: | IC (int) – E (TopoDS_Edge &) – First (float &) – Last (float &) –
    Return type: | bool

  `GetFilletShape`()
    - Returns the type of fillet surface.

    Return type: | ChFi3d_FilletShape

  `GetLaw`()
    - 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.

    Parameters: | IC (int) – E (TopoDS_Edge &) –
    Return type: | Handle_Law_Function

  `IsConstant`()
    - Returns true the contour is flaged as edge constant.

    Parameters: | IC (int) –
    Return type: | bool

    - Returns true E is flagged as edge constant.

    Parameters: | IC (int) – E (TopoDS_Edge &) –
    Return type: | bool

  `NbSurf`()

    Parameters: | IC (int) –
    Return type: | int

  `Radius`()
    - Returns the vector if the contour is flagged as edge constant.

    Parameters: | IC (int) –
    Return type: | float

    - Returns the vector if E is flagged as edge constant.

    Parameters: | IC (int) – E (TopoDS_Edge &) –
    Return type: | float

  `ResetContour`()
    - Reset all vectors of contour IC.

    Parameters: | IC (int) –
    Return type: | None

  `Sect`()

    Parameters: | IC (int) – IS (int) –
    Return type: | Handle_ChFiDS_SecHArray1

  `SetFilletShape`()
    - Sets the type of fillet surface.

    Parameters: | FShape (ChFi3d_FilletShape) –
    Return type: | None

  `SetLaw`()
    - Sets the rule of elementary evolution of the part to variable vector framing E.

    Parameters: | IC (int) – E (TopoDS_Edge &) – L (Handle_Law_Function &) –
    Return type: | None

  `SetRadius`()
    - Set the radius of the contour of index IC.

    Parameters: | C (Handle_Law_Function &) – IC (int) – IinC (int) –
    Return type: | None

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

    Parameters: | Radius (float) – IC (int) – E (TopoDS_Edge &) –
    Return type: | None

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

    Parameters: | Radius (float) – IC (int) – V (TopoDS_Vertex &) –
    Return type: | None

    - Set a vertex on the point of parametre U in the edge IinC of the contour of index IC

    Parameters: | UandR (gp_XY) – IC (int) – IinC (int) –
    Return type: | None

  `Simulate`()

    Parameters: | IC (int) –
    Return type: | None

  `UnSet`()
    - Extracts the flag constant and the vector of edge E.

    Parameters: | IC (int) – E (TopoDS_Edge &) –
    Return type: | None

    - Extracts the vector of the vertex V.

    Parameters: | IC (int) – V (TopoDS_Vertex &) –
    Return type: | None

  `thisown`

    The membership flag

class `ChFi3d_SearchSing`(*args)

  Bases: `OCC.math.math_FunctionWithDerivative`

  Parameters: | C1 (Handle_Geom_Curve &) – C2 (Handle_Geom_Curve &) –
  Return type: | None

  `thisown`

    The membership flag

class `SwigPyIterator`(*args, **kwargs)

  Bases: `object`

  `advance`()
  `copy`()
  `decr`()
  `distance`()
  `equal`()
  `incr`()
  `next`()
  `previous`()
  `thisown`

    The membership flag

  `value`()

class `chfi3d`

  Bases: `object`

  static `ConcaveSide`(*args)
    - Returns Reversed in Or1 and(or) Or2 if the concave edge defined by the interior of faces F1 and F2, in the neighbourhood of their boundary E is of the edge opposite to the normal of their surface support. The orientation of faces is not taken into consideration in the calculation. The function returns 0 if the calculation fails (tangence), if not, it returns the number of choice of the fillet or chamfer corresponding to the orientations calculated and to the tangent to the guide line read in E.

    Parameters: | S1 (BRepAdaptor_Surface &) – S2 (BRepAdaptor_Surface &) – E (TopoDS_Edge &) – Or1 (TopAbs_Orientation &) – Or2 (TopAbs_Orientation &) –
    Return type: | int

  static `NextSide`(*args)
    - Same as ConcaveSide, but the orientations are logically deduced from the result of the call of ConcaveSide on the first pair of faces of the fillet or chamnfer.

    Parameters: | Or1 (TopAbs_Orientation &) – Or2 (TopAbs_Orientation &) – OrSave1 (TopAbs_Orientation) – OrSave2 (TopAbs_Orientation) – ChoixSauv (int) –
    Return type: | int

    - Same as the other NextSide, but the calculation is done on an edge only.

    Parameters: | Or (TopAbs_Orientation &) – OrSave (TopAbs_Orientation) – OrFace (TopAbs_Orientation) –
    Return type: | void

  static `SameSide`(*args)
    - Enables to determine while processing an angle, if two fillets or chamfers constituting a face have identic or opposed concave edges.

    Parameters: | Or (TopAbs_Orientation) – OrSave1 (TopAbs_Orientation) – OrSave2 (TopAbs_Orientation) – OrFace1 (TopAbs_Orientation) – OrFace2 (TopAbs_Orientation) –
    Return type: | bool

  `thisown`

    The membership flag

`chfi3d_ConcaveSide`(*args)
  - Returns Reversed in Or1 and(or) Or2 if the concave edge defined by the interior of faces F1 and F2, in the neighbourhood of their boundary E is of the edge opposite to the normal of their surface support. The orientation of faces is not taken into consideration in the calculation. The function returns 0 if the calculation fails (tangence), if not, it returns the number of choice of the fillet or chamfer corresponding to the orientations calculated and to the tangent to the guide line read in E.

  Parameters: | S1 (BRepAdaptor_Surface &) – S2 (BRepAdaptor_Surface &) – E (TopoDS_Edge &) – Or1 (TopAbs_Orientation &) – Or2 (TopAbs_Orientation &) –
  Return type: | int

`chfi3d_NextSide`(*args)
  - Same as ConcaveSide, but the orientations are logically deduced from the result of the call of ConcaveSide on the first pair of faces of the fillet or chamnfer.

  Parameters: | Or1 (TopAbs_Orientation &) – Or2 (TopAbs_Orientation &) – OrSave1 (TopAbs_Orientation) – OrSave2 (TopAbs_Orientation) – ChoixSauv (int) –
  Return type: | int

  - Same as the other NextSide, but the calculation is done on an edge only.

  Parameters: | Or (TopAbs_Orientation &) – OrSave (TopAbs_Orientation) – OrFace (TopAbs_Orientation) –
  Return type: | void

`chfi3d_SameSide`(*args)
  - Enables to determine while processing an angle, if two fillets or chamfers constituting a face have identic or opposed concave edges.

  Parameters: | Or (TopAbs_Orientation) – OrSave1 (TopAbs_Orientation) – OrSave2 (TopAbs_Orientation) – OrFace1 (TopAbs_Orientation) – OrFace2 (TopAbs_Orientation) –
  Return type: | bool

`register_handle`(handle, base_object)

  Inserts the handle into the base object to prevent memory corruption in certain cases