diff --git a/srcpkgs/python3-occ/patches/occt-7.7.1.patch b/srcpkgs/python3-occ/patches/occt-7.7.1.patch new file mode 100644 index 00000000000..70861a77853 --- /dev/null +++ b/srcpkgs/python3-occ/patches/occt-7.7.1.patch @@ -0,0 +1,2561 @@ +From 6ba4509edb333494d35a40c01192ab5e236acdda Mon Sep 17 00:00:00 2001 +From: tpaviot +Date: Mon, 3 Apr 2023 14:01:20 +0200 +Subject: [PATCH 1/4] update swig files to occt-771 + +--- + src/SWIG_files/common/EnumTemplates.i | 1 - + src/SWIG_files/headers/AIS_module.hxx | 2 + + src/SWIG_files/headers/BRepFill_module.hxx | 1 + + src/SWIG_files/wrapper/AIS.i | 127 ++++++++---- + src/SWIG_files/wrapper/AIS.pyi | 12 +- + src/SWIG_files/wrapper/BRepAlgo.i | 26 +++ + src/SWIG_files/wrapper/BRepAlgo.pyi | 2 + + src/SWIG_files/wrapper/BRepBlend.i | 44 +++-- + src/SWIG_files/wrapper/BRepBlend.pyi | 14 +- + src/SWIG_files/wrapper/BRepExtrema.i | 218 +++++---------------- + src/SWIG_files/wrapper/BRepExtrema.pyi | 23 +-- + src/SWIG_files/wrapper/BRepFill.i | 48 +++++ + src/SWIG_files/wrapper/BRepFill.pyi | 19 ++ + src/SWIG_files/wrapper/BRepOffset.i | 3 + + src/SWIG_files/wrapper/BRepOffset.pyi | 2 + + src/SWIG_files/wrapper/BRepOffsetAPI.i | 11 ++ + src/SWIG_files/wrapper/BRepOffsetAPI.pyi | 1 + + src/SWIG_files/wrapper/BSplCLib.i | 23 +++ + src/SWIG_files/wrapper/BSplCLib.pyi | 3 + + src/SWIG_files/wrapper/ChFiDS.i | 14 ++ + src/SWIG_files/wrapper/ChFiDS.pyi | 3 + + src/SWIG_files/wrapper/GeomInt.i | 23 +++ + src/SWIG_files/wrapper/GeomInt.pyi | 5 + + src/SWIG_files/wrapper/STEPCAFControl.i | 140 ++++++------- + src/SWIG_files/wrapper/STEPCAFControl.pyi | 32 +-- + src/SWIG_files/wrapper/STEPConstruct.i | 26 +++ + src/SWIG_files/wrapper/STEPConstruct.pyi | 2 + + src/SWIG_files/wrapper/ShapeUpgrade.i | 1 + + src/SWIG_files/wrapper/StdPrs.i | 12 +- + src/SWIG_files/wrapper/StdPrs.pyi | 4 +- + src/SWIG_files/wrapper/StepToGeom.i | 16 -- + src/SWIG_files/wrapper/XCAFDoc.i | 78 +++++--- + src/SWIG_files/wrapper/XCAFDoc.pyi | 56 ++++-- + src/SWIG_files/wrapper/XCAFPrs.i | 10 +- + 34 files changed, 592 insertions(+), 410 deletions(-) + +diff --git a/src/SWIG_files/common/EnumTemplates.i b/src/SWIG_files/common/EnumTemplates.i +index b66537d8..69af927f 100644 +--- a/src/SWIG_files/common/EnumTemplates.i ++++ b/src/SWIG_files/common/EnumTemplates.i +@@ -15,7 +15,6 @@ ENUM_OUTPUT_TYPEMAPS(BRepOffset_Status); + ENUM_OUTPUT_TYPEMAPS(Graphic3d_DisplayPriority); + ENUM_OUTPUT_TYPEMAPS(Graphic3d_NameOfMaterial); + ENUM_OUTPUT_TYPEMAPS(GeomAbs_Shape); +-ENUM_OUTPUT_TYPEMAPS(ProxPnt_Status); + ENUM_OUTPUT_TYPEMAPS(Aspect_TypeOfLine); + ENUM_OUTPUT_TYPEMAPS(PrsDim_KindOfSurface); + ENUM_OUTPUT_TYPEMAPS(DsgPrs_ArrowSide); +diff --git a/src/SWIG_files/headers/AIS_module.hxx b/src/SWIG_files/headers/AIS_module.hxx +index ee7050ea..97fb3b69 100644 +--- a/src/SWIG_files/headers/AIS_module.hxx ++++ b/src/SWIG_files/headers/AIS_module.hxx +@@ -22,12 +22,14 @@ along with pythonOCC. If not, see . + #include + #include + #include ++#include + #include + #include + #include + #include + #include + #include ++#include + #include + #include + #include +diff --git a/src/SWIG_files/headers/BRepFill_module.hxx b/src/SWIG_files/headers/BRepFill_module.hxx +index 73975e24..ef638100 100644 +--- a/src/SWIG_files/headers/BRepFill_module.hxx ++++ b/src/SWIG_files/headers/BRepFill_module.hxx +@@ -67,6 +67,7 @@ along with pythonOCC. If not, see . + #include + #include + #include ++#include + #include + #include + #include +diff --git a/src/SWIG_files/wrapper/AIS.i b/src/SWIG_files/wrapper/AIS.i +index bf1f6b10..8f58d69a 100644 +--- a/src/SWIG_files/wrapper/AIS.i ++++ b/src/SWIG_files/wrapper/AIS.i +@@ -577,8 +577,8 @@ AIS_TOPL_YZPlane = AIS_TypeOfPlane.AIS_TOPL_YZPlane + %wrap_handle(AIS_TrihedronOwner) + %wrap_handle(AIS_TypeFilter) + %wrap_handle(AIS_AnimationCamera) +-%wrap_handle(AIS_AnimationObject) + %wrap_handle(AIS_Axis) ++%wrap_handle(AIS_BaseAnimationObject) + %wrap_handle(AIS_Circle) + %wrap_handle(AIS_ColorScale) + %wrap_handle(AIS_ConnectedInteractive) +@@ -595,6 +595,8 @@ AIS_TOPL_YZPlane = AIS_TypeOfPlane.AIS_TOPL_YZPlane + %wrap_handle(AIS_TextLabel) + %wrap_handle(AIS_Triangulation) + %wrap_handle(AIS_Trihedron) ++%wrap_handle(AIS_AnimationAxisRotation) ++%wrap_handle(AIS_AnimationObject) + %wrap_handle(AIS_ColoredShape) + %wrap_handle(AIS_TexturedShape) + /* end handles declaration */ +@@ -8532,41 +8534,6 @@ opencascade::handle + } + }; + +-/**************************** +-* class AIS_AnimationObject * +-****************************/ +-class AIS_AnimationObject : public AIS_Animation { +- public: +- /****************** AIS_AnimationObject ******************/ +- /**** md5 signature: c16e60828b420c37f86bd653dd4d9c04 ****/ +- %feature("compactdefaultargs") AIS_AnimationObject; +- %feature("autodoc", "Constructor with initialization. note that start/end transformations specify exactly local transformation of the object, not the transformation to be applied to existing local transformation. @param theanimationname animation identifier @param thecontext interactive context where object have been displayed @param theobject object to apply local transformation @param thetrsfstart local transformation at the start of animation (e.g. theobject->localtransformation()) @param thetrsfend local transformation at the end of animation. +- +-Parameters +----------- +-theAnimationName: TCollection_AsciiString +-theContext: AIS_InteractiveContext +-theObject: AIS_InteractiveObject +-theTrsfStart: gp_Trsf +-theTrsfEnd: gp_Trsf +- +-Returns +-------- +-None +-") AIS_AnimationObject; +- AIS_AnimationObject(const TCollection_AsciiString & theAnimationName, const opencascade::handle & theContext, const opencascade::handle & theObject, const gp_Trsf & theTrsfStart, const gp_Trsf & theTrsfEnd); +- +-}; +- +- +-%make_alias(AIS_AnimationObject) +- +-%extend AIS_AnimationObject { +- %pythoncode { +- __repr__ = _dumps_object +- } +-}; +- + /***************** + * class AIS_Axis * + *****************/ +@@ -8855,6 +8822,23 @@ None + } + }; + ++/******************************** ++* class AIS_BaseAnimationObject * ++********************************/ ++%nodefaultctor AIS_BaseAnimationObject; ++class AIS_BaseAnimationObject : public AIS_Animation { ++ public: ++}; ++ ++ ++%make_alias(AIS_BaseAnimationObject) ++ ++%extend AIS_BaseAnimationObject { ++ %pythoncode { ++ __repr__ = _dumps_object ++ } ++}; ++ + /************************** + * class AIS_CameraFrustum * + **************************/ +@@ -16143,6 +16127,77 @@ Standard_ShortReal + } + }; + ++/********************************** ++* class AIS_AnimationAxisRotation * ++**********************************/ ++class AIS_AnimationAxisRotation : public AIS_BaseAnimationObject { ++ public: ++ /****************** AIS_AnimationAxisRotation ******************/ ++ /**** md5 signature: 819427e2c422233cc067da4633992952 ****/ ++ %feature("compactdefaultargs") AIS_AnimationAxisRotation; ++ %feature("autodoc", "Constructor with initialization. @param[in] theanimationname animation identifier @param[in] thecontext interactive context where object have been displayed @param[in] theobject object to apply rotation @param[in] theaxis rotation axis @param[in] theanglestart rotation angle at the start of animation @param[in] theangleend rotation angle at the end of animation. ++ ++Parameters ++---------- ++theAnimationName: str ++theContext: AIS_InteractiveContext ++theObject: AIS_InteractiveObject ++theAxis: gp_Ax1 ++theAngleStart: float ++theAngleEnd: float ++ ++Returns ++------- ++None ++") AIS_AnimationAxisRotation; ++ AIS_AnimationAxisRotation(TCollection_AsciiString theAnimationName, const opencascade::handle & theContext, const opencascade::handle & theObject, const gp_Ax1 & theAxis, const Standard_Real theAngleStart, const Standard_Real theAngleEnd); ++ ++}; ++ ++ ++%make_alias(AIS_AnimationAxisRotation) ++ ++%extend AIS_AnimationAxisRotation { ++ %pythoncode { ++ __repr__ = _dumps_object ++ } ++}; ++ ++/**************************** ++* class AIS_AnimationObject * ++****************************/ ++class AIS_AnimationObject : public AIS_BaseAnimationObject { ++ public: ++ /****************** AIS_AnimationObject ******************/ ++ /**** md5 signature: c16e60828b420c37f86bd653dd4d9c04 ****/ ++ %feature("compactdefaultargs") AIS_AnimationObject; ++ %feature("autodoc", "Constructor with initialization. note that start/end transformations specify exactly local transformation of the object, not the transformation to be applied to existing local transformation. @param[in] theanimationname animation identifier @param[in] thecontext interactive context where object have been displayed @param[in] theobject object to apply local transformation @param[in] thetrsfstart local transformation at the start of animation (e.g. theobject->localtransformation()) @param[in] thetrsfend local transformation at the end of animation. ++ ++Parameters ++---------- ++theAnimationName: str ++theContext: AIS_InteractiveContext ++theObject: AIS_InteractiveObject ++theTrsfStart: gp_Trsf ++theTrsfEnd: gp_Trsf ++ ++Returns ++------- ++None ++") AIS_AnimationObject; ++ AIS_AnimationObject(TCollection_AsciiString theAnimationName, const opencascade::handle & theContext, const opencascade::handle & theObject, const gp_Trsf & theTrsfStart, const gp_Trsf & theTrsfEnd); ++ ++}; ++ ++ ++%make_alias(AIS_AnimationObject) ++ ++%extend AIS_AnimationObject { ++ %pythoncode { ++ __repr__ = _dumps_object ++ } ++}; ++ + /************************* + * class AIS_ColoredShape * + *************************/ +diff --git a/src/SWIG_files/wrapper/AIS.pyi b/src/SWIG_files/wrapper/AIS.pyi +index a75ef4ba..da4a3977 100644 +--- a/src/SWIG_files/wrapper/AIS.pyi ++++ b/src/SWIG_files/wrapper/AIS.pyi +@@ -1021,9 +1021,6 @@ class AIS_AnimationCamera(AIS_Animation): + def SetView(self, theView: V3d_View) -> None: ... + def View(self) -> V3d_View: ... + +-class AIS_AnimationObject(AIS_Animation): +- def __init__(self, theAnimationName: TCollection_AsciiString, theContext: AIS_InteractiveContext, theObject: AIS_InteractiveObject, theTrsfStart: gp_Trsf, theTrsfEnd: gp_Trsf) -> None: ... +- + class AIS_Axis(AIS_InteractiveObject): + @overload + def __init__(self, aComponent: Geom_Line) -> None: ... +@@ -1050,6 +1047,9 @@ class AIS_Axis(AIS_InteractiveObject): + def UnsetColor(self) -> None: ... + def UnsetWidth(self) -> None: ... + ++class AIS_BaseAnimationObject(AIS_Animation): ++ pass ++ + class AIS_CameraFrustum(AIS_InteractiveObject): + def __init__(self) -> None: ... + def AcceptDisplayMode(self, theMode: int) -> bool: ... +@@ -1652,6 +1652,12 @@ class AIS_XRTrackedDevice(AIS_InteractiveObject): + def SetUnitFactor(self, theFactor: float) -> None: ... + def UnitFactor(self) -> float: ... + ++class AIS_AnimationAxisRotation(AIS_BaseAnimationObject): ++ def __init__(self, theAnimationName: str, theContext: AIS_InteractiveContext, theObject: AIS_InteractiveObject, theAxis: gp_Ax1, theAngleStart: float, theAngleEnd: float) -> None: ... ++ ++class AIS_AnimationObject(AIS_BaseAnimationObject): ++ def __init__(self, theAnimationName: str, theContext: AIS_InteractiveContext, theObject: AIS_InteractiveObject, theTrsfStart: gp_Trsf, theTrsfEnd: gp_Trsf) -> None: ... ++ + class AIS_ColoredShape(AIS_Shape): + @overload + def __init__(self, theShape: TopoDS_Shape) -> None: ... +diff --git a/src/SWIG_files/wrapper/BRepAlgo.i b/src/SWIG_files/wrapper/BRepAlgo.i +index 3860648e..bd9e2f38 100644 +--- a/src/SWIG_files/wrapper/BRepAlgo.i ++++ b/src/SWIG_files/wrapper/BRepAlgo.i +@@ -921,6 +921,17 @@ None + ") CutEdge; + void CutEdge(const TopoDS_Edge & E, const TopTools_ListOfShape & VonE, TopTools_ListOfShape & NE); + ++ /****************** GetTolConf ******************/ ++ /**** md5 signature: 7e9f7b87eb3b20edee9e3a86157928cd ****/ ++ %feature("compactdefaultargs") GetTolConf; ++ %feature("autodoc", "Get maximal tolerance used for comparing distaces between vertices. . ++ ++Returns ++------- ++float ++") GetTolConf; ++ Standard_Real GetTolConf(); ++ + /****************** GetVerticesForSubstitute ******************/ + /**** md5 signature: 3b0ea732ecf076dde3f931f0997c07aa ****/ + %feature("compactdefaultargs") GetVerticesForSubstitute; +@@ -1014,6 +1025,21 @@ None + ") SetImageVV; + void SetImageVV(const BRepAlgo_Image & theImageVV); + ++ /****************** SetTolConf ******************/ ++ /**** md5 signature: 1c312d5c00a3d856c91eb31857ae32c6 ****/ ++ %feature("compactdefaultargs") SetTolConf; ++ %feature("autodoc", "Set maximal tolerance used for comparing distaces between vertices. . ++ ++Parameters ++---------- ++theTolConf: float ++ ++Returns ++------- ++None ++") SetTolConf; ++ void SetTolConf(const Standard_Real theTolConf); ++ + /****************** UpdateVEmap ******************/ + /**** md5 signature: 491681c63af221fbd7247e01d389bbc0 ****/ + %feature("compactdefaultargs") UpdateVEmap; +diff --git a/src/SWIG_files/wrapper/BRepAlgo.pyi b/src/SWIG_files/wrapper/BRepAlgo.pyi +index 5ee7ab94..20ecddc9 100644 +--- a/src/SWIG_files/wrapper/BRepAlgo.pyi ++++ b/src/SWIG_files/wrapper/BRepAlgo.pyi +@@ -86,6 +86,7 @@ class BRepAlgo_Loop: + def AddConstEdges(self, LE: TopTools_ListOfShape) -> None: ... + def AddEdge(self, E: TopoDS_Edge, LV: TopTools_ListOfShape) -> None: ... + def CutEdge(self, E: TopoDS_Edge, VonE: TopTools_ListOfShape, NE: TopTools_ListOfShape) -> None: ... ++ def GetTolConf(self) -> float: ... + def GetVerticesForSubstitute(self, VerVerMap: TopTools_DataMapOfShapeShape) -> None: ... + def Init(self, F: TopoDS_Face) -> None: ... + def NewEdges(self, E: TopoDS_Edge) -> TopTools_ListOfShape: ... +@@ -93,6 +94,7 @@ class BRepAlgo_Loop: + def NewWires(self) -> TopTools_ListOfShape: ... + def Perform(self) -> None: ... + def SetImageVV(self, theImageVV: BRepAlgo_Image) -> None: ... ++ def SetTolConf(self, theTolConf: float) -> None: ... + def UpdateVEmap(self, theVEmap: TopTools_IndexedDataMapOfShapeListOfShape) -> None: ... + def VerticesForSubstitute(self, VerVerMap: TopTools_DataMapOfShapeShape) -> None: ... + def WiresToFaces(self) -> None: ... +diff --git a/src/SWIG_files/wrapper/BRepBlend.i b/src/SWIG_files/wrapper/BRepBlend.i +index 509a2525..b8131099 100644 +--- a/src/SWIG_files/wrapper/BRepBlend.i ++++ b/src/SWIG_files/wrapper/BRepBlend.i +@@ -3508,7 +3508,7 @@ opencascade::handle + const opencascade::handle & Line(); + + /****************** Perform ******************/ +- /**** md5 signature: e410fc1bc97982de557150e942b13c80 ****/ ++ /**** md5 signature: 5c6445d58f45808f7c3defd1db894a35 ****/ + %feature("compactdefaultargs") Perform; + %feature("autodoc", "No available documentation. + +@@ -3522,9 +3522,9 @@ FinvP2: Blend_CurvPointFuncInv + Pdep: float + Pmax: float + MaxStep: float ++Tol3d: float + TolGuide: float + Soldep: math_Vector +-Tolesp: float + Fleche: float + Appro: bool,optional + default value is Standard_False +@@ -3533,10 +3533,10 @@ Returns + ------- + None + ") Perform; +- void Perform(Blend_RstRstFunction & Func, Blend_SurfCurvFuncInv & Finv1, Blend_CurvPointFuncInv & FinvP1, Blend_SurfCurvFuncInv & Finv2, Blend_CurvPointFuncInv & FinvP2, const Standard_Real Pdep, const Standard_Real Pmax, const Standard_Real MaxStep, const Standard_Real TolGuide, const math_Vector & Soldep, const Standard_Real Tolesp, const Standard_Real Fleche, const Standard_Boolean Appro = Standard_False); ++ void Perform(Blend_RstRstFunction & Func, Blend_SurfCurvFuncInv & Finv1, Blend_CurvPointFuncInv & FinvP1, Blend_SurfCurvFuncInv & Finv2, Blend_CurvPointFuncInv & FinvP2, const Standard_Real Pdep, const Standard_Real Pmax, const Standard_Real MaxStep, const Standard_Real Tol3d, const Standard_Real TolGuide, const math_Vector & Soldep, const Standard_Real Fleche, const Standard_Boolean Appro = Standard_False); + + /****************** PerformFirstSection ******************/ +- /**** md5 signature: 78e8905aafd910d0fa3a7b23c096467b ****/ ++ /**** md5 signature: 452fb9b79df54fb801f2f70d066f611b ****/ + %feature("compactdefaultargs") PerformFirstSection; + %feature("autodoc", "No available documentation. + +@@ -3550,7 +3550,7 @@ FinvP2: Blend_CurvPointFuncInv + Pdep: float + Pmax: float + Soldep: math_Vector +-Tolesp: float ++Tol3d: float + TolGuide: float + RecRst1: bool + RecP1: bool +@@ -3562,7 +3562,7 @@ Returns + ------- + Psol: float + ") PerformFirstSection; +- Standard_Boolean PerformFirstSection(Blend_RstRstFunction & Func, Blend_SurfCurvFuncInv & Finv1, Blend_CurvPointFuncInv & FinvP1, Blend_SurfCurvFuncInv & Finv2, Blend_CurvPointFuncInv & FinvP2, const Standard_Real Pdep, const Standard_Real Pmax, const math_Vector & Soldep, const Standard_Real Tolesp, const Standard_Real TolGuide, const Standard_Boolean RecRst1, const Standard_Boolean RecP1, const Standard_Boolean RecRst2, const Standard_Boolean RecP2, Standard_Real &OutValue, math_Vector & ParSol); ++ Standard_Boolean PerformFirstSection(Blend_RstRstFunction & Func, Blend_SurfCurvFuncInv & Finv1, Blend_CurvPointFuncInv & FinvP1, Blend_SurfCurvFuncInv & Finv2, Blend_CurvPointFuncInv & FinvP2, const Standard_Real Pdep, const Standard_Real Pmax, const math_Vector & Soldep, const Standard_Real Tol3d, const Standard_Real TolGuide, const Standard_Boolean RecRst1, const Standard_Boolean RecP1, const Standard_Boolean RecRst2, const Standard_Boolean RecP2, Standard_Real &OutValue, math_Vector & ParSol); + + }; + +@@ -5559,7 +5559,7 @@ opencascade::handle + const opencascade::handle & Line(); + + /****************** Perform ******************/ +- /**** md5 signature: 3ebeca31e507208cd42bab74df3ed6e3 ****/ ++ /**** md5 signature: 86cf3650fa597d7655c244c1866126f2 ****/ + %feature("compactdefaultargs") Perform; + %feature("autodoc", "No available documentation. + +@@ -5572,9 +5572,10 @@ FinvC: Blend_SurfCurvFuncInv + Pdep: float + Pmax: float + MaxStep: float ++Tol3d: float ++Tol2d: float + TolGuide: float + Soldep: math_Vector +-Tolesp: float + Fleche: float + Appro: bool,optional + default value is Standard_False +@@ -5583,10 +5584,10 @@ Returns + ------- + None + ") Perform; +- void Perform(Blend_SurfRstFunction & Func, Blend_FuncInv & Finv, Blend_SurfPointFuncInv & FinvP, Blend_SurfCurvFuncInv & FinvC, const Standard_Real Pdep, const Standard_Real Pmax, const Standard_Real MaxStep, const Standard_Real TolGuide, const math_Vector & Soldep, const Standard_Real Tolesp, const Standard_Real Fleche, const Standard_Boolean Appro = Standard_False); ++ void Perform(Blend_SurfRstFunction & Func, Blend_FuncInv & Finv, Blend_SurfPointFuncInv & FinvP, Blend_SurfCurvFuncInv & FinvC, const Standard_Real Pdep, const Standard_Real Pmax, const Standard_Real MaxStep, const Standard_Real Tol3d, const Standard_Real Tol2d, const Standard_Real TolGuide, const math_Vector & Soldep, const Standard_Real Fleche, const Standard_Boolean Appro = Standard_False); + + /****************** PerformFirstSection ******************/ +- /**** md5 signature: 691664aa4fe132192d2ccf25ba05720a ****/ ++ /**** md5 signature: 429fbdc03f84a4a14fbebef94ad27ee5 ****/ + %feature("compactdefaultargs") PerformFirstSection; + %feature("autodoc", "No available documentation. + +@@ -5599,7 +5600,8 @@ FinvC: Blend_SurfCurvFuncInv + Pdep: float + Pmax: float + Soldep: math_Vector +-Tolesp: float ++Tol3d: float ++Tol2d: float + TolGuide: float + RecRst: bool + RecP: bool +@@ -5610,7 +5612,7 @@ Returns + ------- + Psol: float + ") PerformFirstSection; +- Standard_Boolean PerformFirstSection(Blend_SurfRstFunction & Func, Blend_FuncInv & Finv, Blend_SurfPointFuncInv & FinvP, Blend_SurfCurvFuncInv & FinvC, const Standard_Real Pdep, const Standard_Real Pmax, const math_Vector & Soldep, const Standard_Real Tolesp, const Standard_Real TolGuide, const Standard_Boolean RecRst, const Standard_Boolean RecP, const Standard_Boolean RecS, Standard_Real &OutValue, math_Vector & ParSol); ++ Standard_Boolean PerformFirstSection(Blend_SurfRstFunction & Func, Blend_FuncInv & Finv, Blend_SurfPointFuncInv & FinvP, Blend_SurfCurvFuncInv & FinvC, const Standard_Real Pdep, const Standard_Real Pmax, const math_Vector & Soldep, const Standard_Real Tol3d, const Standard_Real Tol2d, const Standard_Real TolGuide, const Standard_Boolean RecRst, const Standard_Boolean RecP, const Standard_Boolean RecS, Standard_Real &OutValue, math_Vector & ParSol); + + }; + +@@ -5795,7 +5797,7 @@ opencascade::handle + const opencascade::handle & Line(); + + /****************** Perform ******************/ +- /**** md5 signature: ef3b3700f467db4ea875b65f539d9955 ****/ ++ /**** md5 signature: 6d94e3dcc7c71857d2c24ced3358703f ****/ + %feature("compactdefaultargs") Perform; + %feature("autodoc", "No available documentation. + +@@ -5806,9 +5808,9 @@ FInv: Blend_FuncInv + Pdep: float + Pmax: float + MaxStep: float ++Tol3d: float + TolGuide: float + Soldep: math_Vector +-Tolesp: float + Fleche: float + Appro: bool,optional + default value is Standard_False +@@ -5817,10 +5819,10 @@ Returns + ------- + None + ") Perform; +- void Perform(Blend_Function & F, Blend_FuncInv & FInv, const Standard_Real Pdep, const Standard_Real Pmax, const Standard_Real MaxStep, const Standard_Real TolGuide, const math_Vector & Soldep, const Standard_Real Tolesp, const Standard_Real Fleche, const Standard_Boolean Appro = Standard_False); ++ void Perform(Blend_Function & F, Blend_FuncInv & FInv, const Standard_Real Pdep, const Standard_Real Pmax, const Standard_Real MaxStep, const Standard_Real Tol3d, const Standard_Real TolGuide, const math_Vector & Soldep, const Standard_Real Fleche, const Standard_Boolean Appro = Standard_False); + + /****************** PerformFirstSection ******************/ +- /**** md5 signature: a2bca51a10d7f020b86504fe9860626e ****/ ++ /**** md5 signature: 92db8d0914da0712dd54b302697b3aa3 ****/ + %feature("compactdefaultargs") PerformFirstSection; + %feature("autodoc", "No available documentation. + +@@ -5829,7 +5831,7 @@ Parameters + F: Blend_Function + Pdep: float + ParDep: math_Vector +-Tolesp: float ++Tol3d: float + TolGuide: float + Pos1: TopAbs_State + Pos2: TopAbs_State +@@ -5838,10 +5840,10 @@ Returns + ------- + bool + ") PerformFirstSection; +- Standard_Boolean PerformFirstSection(Blend_Function & F, const Standard_Real Pdep, math_Vector & ParDep, const Standard_Real Tolesp, const Standard_Real TolGuide, TopAbs_State & Pos1, TopAbs_State & Pos2); ++ Standard_Boolean PerformFirstSection(Blend_Function & F, const Standard_Real Pdep, math_Vector & ParDep, const Standard_Real Tol3d, const Standard_Real TolGuide, TopAbs_State & Pos1, TopAbs_State & Pos2); + + /****************** PerformFirstSection ******************/ +- /**** md5 signature: 39c72a7c59d31a28e720252eee26feee ****/ ++ /**** md5 signature: 7464aaa5cedcb060541546a3a1ff5540 ****/ + %feature("compactdefaultargs") PerformFirstSection; + %feature("autodoc", "No available documentation. + +@@ -5852,7 +5854,7 @@ FInv: Blend_FuncInv + Pdep: float + Pmax: float + ParDep: math_Vector +-Tolesp: float ++Tol3d: float + TolGuide: float + RecOnS1: bool + RecOnS2: bool +@@ -5862,7 +5864,7 @@ Returns + ------- + Psol: float + ") PerformFirstSection; +- Standard_Boolean PerformFirstSection(Blend_Function & F, Blend_FuncInv & FInv, const Standard_Real Pdep, const Standard_Real Pmax, const math_Vector & ParDep, const Standard_Real Tolesp, const Standard_Real TolGuide, const Standard_Boolean RecOnS1, const Standard_Boolean RecOnS2, Standard_Real &OutValue, math_Vector & ParSol); ++ Standard_Boolean PerformFirstSection(Blend_Function & F, Blend_FuncInv & FInv, const Standard_Real Pdep, const Standard_Real Pmax, const math_Vector & ParDep, const Standard_Real Tol3d, const Standard_Real TolGuide, const Standard_Boolean RecOnS1, const Standard_Boolean RecOnS2, Standard_Real &OutValue, math_Vector & ParSol); + + /****************** SetDomainsToRecadre ******************/ + /**** md5 signature: 10664ebffbd6ed784502d7d4acfa5a93 ****/ +diff --git a/src/SWIG_files/wrapper/BRepBlend.pyi b/src/SWIG_files/wrapper/BRepBlend.pyi +index 03deabc7..cbe9c845 100644 +--- a/src/SWIG_files/wrapper/BRepBlend.pyi ++++ b/src/SWIG_files/wrapper/BRepBlend.pyi +@@ -346,8 +346,8 @@ class BRepBlend_RstRstLineBuilder: + def Decroch2Start(self) -> bool: ... + def IsDone(self) -> bool: ... + def Line(self) -> BRepBlend_Line: ... +- def Perform(self, Func: Blend_RstRstFunction, Finv1: Blend_SurfCurvFuncInv, FinvP1: Blend_CurvPointFuncInv, Finv2: Blend_SurfCurvFuncInv, FinvP2: Blend_CurvPointFuncInv, Pdep: float, Pmax: float, MaxStep: float, TolGuide: float, Soldep: math_Vector, Tolesp: float, Fleche: float, Appro: Optional[bool] = False) -> None: ... +- def PerformFirstSection(self, Func: Blend_RstRstFunction, Finv1: Blend_SurfCurvFuncInv, FinvP1: Blend_CurvPointFuncInv, Finv2: Blend_SurfCurvFuncInv, FinvP2: Blend_CurvPointFuncInv, Pdep: float, Pmax: float, Soldep: math_Vector, Tolesp: float, TolGuide: float, RecRst1: bool, RecP1: bool, RecRst2: bool, RecP2: bool, ParSol: math_Vector) -> Tuple[bool, float]: ... ++ def Perform(self, Func: Blend_RstRstFunction, Finv1: Blend_SurfCurvFuncInv, FinvP1: Blend_CurvPointFuncInv, Finv2: Blend_SurfCurvFuncInv, FinvP2: Blend_CurvPointFuncInv, Pdep: float, Pmax: float, MaxStep: float, Tol3d: float, TolGuide: float, Soldep: math_Vector, Fleche: float, Appro: Optional[bool] = False) -> None: ... ++ def PerformFirstSection(self, Func: Blend_RstRstFunction, Finv1: Blend_SurfCurvFuncInv, FinvP1: Blend_CurvPointFuncInv, Finv2: Blend_SurfCurvFuncInv, FinvP2: Blend_CurvPointFuncInv, Pdep: float, Pmax: float, Soldep: math_Vector, Tol3d: float, TolGuide: float, RecRst1: bool, RecP1: bool, RecRst2: bool, RecP2: bool, ParSol: math_Vector) -> Tuple[bool, float]: ... + + class BRepBlend_SurfCurvConstRadInv(Blend_SurfCurvFuncInv): + def __init__(self, S: Adaptor3d_Surface, C: Adaptor3d_Curve, Cg: Adaptor3d_Curve) -> None: ... +@@ -519,8 +519,8 @@ class BRepBlend_SurfRstLineBuilder: + def DecrochStart(self) -> bool: ... + def IsDone(self) -> bool: ... + def Line(self) -> BRepBlend_Line: ... +- def Perform(self, Func: Blend_SurfRstFunction, Finv: Blend_FuncInv, FinvP: Blend_SurfPointFuncInv, FinvC: Blend_SurfCurvFuncInv, Pdep: float, Pmax: float, MaxStep: float, TolGuide: float, Soldep: math_Vector, Tolesp: float, Fleche: float, Appro: Optional[bool] = False) -> None: ... +- def PerformFirstSection(self, Func: Blend_SurfRstFunction, Finv: Blend_FuncInv, FinvP: Blend_SurfPointFuncInv, FinvC: Blend_SurfCurvFuncInv, Pdep: float, Pmax: float, Soldep: math_Vector, Tolesp: float, TolGuide: float, RecRst: bool, RecP: bool, RecS: bool, ParSol: math_Vector) -> Tuple[bool, float]: ... ++ def Perform(self, Func: Blend_SurfRstFunction, Finv: Blend_FuncInv, FinvP: Blend_SurfPointFuncInv, FinvC: Blend_SurfCurvFuncInv, Pdep: float, Pmax: float, MaxStep: float, Tol3d: float, Tol2d: float, TolGuide: float, Soldep: math_Vector, Fleche: float, Appro: Optional[bool] = False) -> None: ... ++ def PerformFirstSection(self, Func: Blend_SurfRstFunction, Finv: Blend_FuncInv, FinvP: Blend_SurfPointFuncInv, FinvC: Blend_SurfCurvFuncInv, Pdep: float, Pmax: float, Soldep: math_Vector, Tol3d: float, Tol2d: float, TolGuide: float, RecRst: bool, RecP: bool, RecS: bool, ParSol: math_Vector) -> Tuple[bool, float]: ... + + class BRepBlend_Walking: + def __init__(self, Surf1: Adaptor3d_Surface, Surf2: Adaptor3d_Surface, Domain1: Adaptor3d_TopolTool, Domain2: Adaptor3d_TopolTool, HGuide: ChFiDS_ElSpine) -> None: ... +@@ -536,11 +536,11 @@ class BRepBlend_Walking: + def Continu(self, F: Blend_Function, FInv: Blend_FuncInv, P: float, OnS1: bool) -> bool: ... + def IsDone(self) -> bool: ... + def Line(self) -> BRepBlend_Line: ... +- def Perform(self, F: Blend_Function, FInv: Blend_FuncInv, Pdep: float, Pmax: float, MaxStep: float, TolGuide: float, Soldep: math_Vector, Tolesp: float, Fleche: float, Appro: Optional[bool] = False) -> None: ... ++ def Perform(self, F: Blend_Function, FInv: Blend_FuncInv, Pdep: float, Pmax: float, MaxStep: float, Tol3d: float, TolGuide: float, Soldep: math_Vector, Fleche: float, Appro: Optional[bool] = False) -> None: ... + @overload +- def PerformFirstSection(self, F: Blend_Function, Pdep: float, ParDep: math_Vector, Tolesp: float, TolGuide: float, Pos1: TopAbs_State, Pos2: TopAbs_State) -> bool: ... ++ def PerformFirstSection(self, F: Blend_Function, Pdep: float, ParDep: math_Vector, Tol3d: float, TolGuide: float, Pos1: TopAbs_State, Pos2: TopAbs_State) -> bool: ... + @overload +- def PerformFirstSection(self, F: Blend_Function, FInv: Blend_FuncInv, Pdep: float, Pmax: float, ParDep: math_Vector, Tolesp: float, TolGuide: float, RecOnS1: bool, RecOnS2: bool, ParSol: math_Vector) -> Tuple[bool, float]: ... ++ def PerformFirstSection(self, F: Blend_Function, FInv: Blend_FuncInv, Pdep: float, Pmax: float, ParDep: math_Vector, Tol3d: float, TolGuide: float, RecOnS1: bool, RecOnS2: bool, ParSol: math_Vector) -> Tuple[bool, float]: ... + def SetDomainsToRecadre(self, RecDomain1: Adaptor3d_TopolTool, RecDomain2: Adaptor3d_TopolTool) -> None: ... + def TwistOnS1(self) -> bool: ... + def TwistOnS2(self) -> bool: ... +diff --git a/src/SWIG_files/wrapper/BRepExtrema.i b/src/SWIG_files/wrapper/BRepExtrema.i +index bc15b17e..18a48b42 100644 +--- a/src/SWIG_files/wrapper/BRepExtrema.i ++++ b/src/SWIG_files/wrapper/BRepExtrema.i +@@ -48,6 +48,7 @@ https://www.opencascade.com/doc/occt-7.6.0/refman/html/package_brepextrema.html" + #include + #include + #include ++#include + #include + #include + #include +@@ -55,6 +56,7 @@ https://www.opencascade.com/doc/occt-7.6.0/refman/html/package_brepextrema.html" + #include + #include + #include ++#include + #include + #include + #include +@@ -68,6 +70,7 @@ https://www.opencascade.com/doc/occt-7.6.0/refman/html/package_brepextrema.html" + %import gp.i + %import Bnd.i + %import BVH.i ++%import Poly.i + + %pythoncode { + from enum import IntEnum +@@ -1645,7 +1648,7 @@ None + BRepExtrema_ProximityDistTool(); + + /****************** BRepExtrema_ProximityDistTool ******************/ +- /**** md5 signature: b9731e05e5136c7110e50a313b036c02 ****/ ++ /**** md5 signature: b080844c8fa666dae8c0e8db8d27e87e ****/ + %feature("compactdefaultargs") BRepExtrema_ProximityDistTool; + %feature("autodoc", "Creates new tool for the given element sets. + +@@ -1653,6 +1656,8 @@ Parameters + ---------- + theSet1: BRepExtrema_TriangleSet + theNbSamples1: int ++theAddVertices1: BVH_Array3d ++theAddStatus1: NCollection_Vector + theSet2: BRepExtrema_TriangleSet + theShapeList1: BRepExtrema_ShapeList + theShapeList2: BRepExtrema_ShapeList +@@ -1661,7 +1666,7 @@ Returns + ------- + None + ") BRepExtrema_ProximityDistTool; +- BRepExtrema_ProximityDistTool(const opencascade::handle & theSet1, const Standard_Integer theNbSamples1, const opencascade::handle & theSet2, const BRepExtrema_ShapeList & theShapeList1, const BRepExtrema_ShapeList & theShapeList2); ++ BRepExtrema_ProximityDistTool(const opencascade::handle & theSet1, const Standard_Integer theNbSamples1, const BVH_Array3d & theAddVertices1, const NCollection_Vector & theAddStatus1, const opencascade::handle & theSet2, const BRepExtrema_ShapeList & theShapeList1, const BRepExtrema_ShapeList & theShapeList2); + + /****************** Accept ******************/ + /**** md5 signature: 47868288da8d60ae3574004f3eef6f3b ****/ +@@ -1679,6 +1684,40 @@ bool + ") Accept; + virtual Standard_Boolean Accept(const Standard_Integer theSgmIdx, const Standard_Real &); + ++ /****************** IsEdgeOnBorder ******************/ ++ /**** md5 signature: 7f2df1d45fe4dd10cb81da19c83428fd ****/ ++ %feature("compactdefaultargs") IsEdgeOnBorder; ++ %feature("autodoc", "Returns true if the edge is on the boarder. ++ ++Parameters ++---------- ++theTrgIdx: int ++theFirstEdgeNodeIdx: int ++theSecondEdgeNodeIdx: int ++theTr: Handle ( Poly_Triangulation ) ++ ++Returns ++------- ++bool ++") IsEdgeOnBorder; ++ static Standard_Boolean IsEdgeOnBorder(const Standard_Integer theTrgIdx, const Standard_Integer theFirstEdgeNodeIdx, const Standard_Integer theSecondEdgeNodeIdx, const Handle ( Poly_Triangulation ) & theTr); ++ ++ /****************** IsNodeOnBorder ******************/ ++ /**** md5 signature: 6a6c9031bf497d7acf6e95de1f2784f6 ****/ ++ %feature("compactdefaultargs") IsNodeOnBorder; ++ %feature("autodoc", "Returns true if the node is on the boarder. ++ ++Parameters ++---------- ++theNodeIdx: int ++theTr: Handle ( Poly_Triangulation ) ++ ++Returns ++------- ++bool ++") IsNodeOnBorder; ++ static Standard_Boolean IsNodeOnBorder(const Standard_Integer theNodeIdx, const Handle ( Poly_Triangulation ) & theTr); ++ + /****************** LoadShapeLists ******************/ + /**** md5 signature: 2ec9bfacd5c06102fdebe80e35402ca0 ****/ + %feature("compactdefaultargs") LoadShapeLists; +@@ -1787,178 +1826,10 @@ theMetric: float + %extend BRepExtrema_ProximityDistTool { + %pythoncode { + __repr__ = _dumps_object +- } +-}; +- +-/*************************************** +-* class BRepExtrema_ProximityValueTool * +-***************************************/ +-class BRepExtrema_ProximityValueTool { +- public: +-typedef typename BRepExtrema_ProximityDistTool ::ProxPnt_Status ProxPnt_Status; +- /****************** BRepExtrema_ProximityValueTool ******************/ +- /**** md5 signature: f01190ce189b90d5b9278fbee66731a1 ****/ +- %feature("compactdefaultargs") BRepExtrema_ProximityValueTool; +- %feature("autodoc", "Creates new unitialized proximity tool. +- +-Returns +-------- +-None +-") BRepExtrema_ProximityValueTool; +- BRepExtrema_ProximityValueTool(); +- +- /****************** BRepExtrema_ProximityValueTool ******************/ +- /**** md5 signature: 457895b0f954d4aa93c3b2011e47f0e1 ****/ +- %feature("compactdefaultargs") BRepExtrema_ProximityValueTool; +- %feature("autodoc", "Creates new proximity tool for the given element sets. +- +-Parameters +----------- +-theSet1: BRepExtrema_TriangleSet +-theSet2: BRepExtrema_TriangleSet +-theShapeList1: BRepExtrema_ShapeList +-theShapeList2: BRepExtrema_ShapeList +- +-Returns +-------- +-None +-") BRepExtrema_ProximityValueTool; +- BRepExtrema_ProximityValueTool(const opencascade::handle & theSet1, const opencascade::handle & theSet2, const BRepExtrema_ShapeList & theShapeList1, const BRepExtrema_ShapeList & theShapeList2); +- +- /****************** Distance ******************/ +- /**** md5 signature: d47317206a0fb34e540004324dbfafd8 ****/ +- %feature("compactdefaultargs") Distance; +- %feature("autodoc", "Returns the computed distance. +- +-Returns +-------- +-float +-") Distance; +- Standard_Real Distance(); +- +- /****************** IsDone ******************/ +- /**** md5 signature: e385477ab1bec806154173d4a550fd68 ****/ +- %feature("compactdefaultargs") IsDone; +- %feature("autodoc", "Is proximity test completed?. +- +-Returns +-------- +-bool +-") IsDone; +- Standard_Boolean IsDone(); +- +- /****************** LoadShapeLists ******************/ +- /**** md5 signature: 2ec9bfacd5c06102fdebe80e35402ca0 ****/ +- %feature("compactdefaultargs") LoadShapeLists; +- %feature("autodoc", "Loads the given list of subshapes into the proximity tool. +- +-Parameters +----------- +-theShapeList1: BRepExtrema_ShapeList +-theShapeList2: BRepExtrema_ShapeList +- +-Returns +-------- +-None +-") LoadShapeLists; +- void LoadShapeLists(const BRepExtrema_ShapeList & theShapeList1, const BRepExtrema_ShapeList & theShapeList2); +- +- /****************** LoadTriangleSets ******************/ +- /**** md5 signature: 3a94a7860b973acbc6838bfe75b5b812 ****/ +- %feature("compactdefaultargs") LoadTriangleSets; +- %feature("autodoc", "Loads the given element sets into the proximity tool. +- +-Parameters +----------- +-theSet1: Handle ( BRepExtrema_TriangleSet ) +-theSet2: Handle ( BRepExtrema_TriangleSet ) +- +-Returns +-------- +-None +-") LoadTriangleSets; +- void LoadTriangleSets(const Handle ( BRepExtrema_TriangleSet ) & theSet1, const Handle ( BRepExtrema_TriangleSet ) & theSet2); +- +- /****************** MarkDirty ******************/ +- /**** md5 signature: bd3f3e7de1b3b6a0c1da3082319fae2e ****/ +- %feature("compactdefaultargs") MarkDirty; +- %feature("autodoc", "Marks test results as outdated. +- +-Returns +-------- +-None +-") MarkDirty; +- void MarkDirty(); +- +- /****************** Perform ******************/ +- /**** md5 signature: c2c8700606b770cff797eb33824bf0aa ****/ +- %feature("compactdefaultargs") Perform; +- %feature("autodoc", "Performs the computation of the proximity value. +- +-Parameters +----------- +- +-Returns +-------- +-theTolerance: float +-") Perform; +- void Perform(Standard_Real &OutValue); +- +- /****************** ProximityPoints ******************/ +- /**** md5 signature: 4ddc607867ad4f349b192d8bb4196f92 ****/ +- %feature("compactdefaultargs") ProximityPoints; +- %feature("autodoc", "Returns points on triangles sets, which provide the proximity distance. +- +-Parameters +----------- +-thePoint1: gp_Pnt +-thePoint2: gp_Pnt + +-Returns +-------- +-None +-") ProximityPoints; +- void ProximityPoints(gp_Pnt & thePoint1, gp_Pnt & thePoint2); +- +- /****************** ProximityPointsStatus ******************/ +- /**** md5 signature: cbb67aeda5a68bd79cbb58089638d3f8 ****/ +- %feature("compactdefaultargs") ProximityPointsStatus; +- %feature("autodoc", "Returns status of points on triangles sets, which provide the proximity distance. +- +-Parameters +----------- +- +-Returns +-------- +-thePointStatus1: ProxPnt_Status +-thePointStatus2: ProxPnt_Status +-") ProximityPointsStatus; +- void ProximityPointsStatus(ProxPnt_Status &OutValue, ProxPnt_Status &OutValue); +- +- /****************** SetNbSamplePoints ******************/ +- /**** md5 signature: 200898431f5ab55f6d0477df1f50c3b9 ****/ +- %feature("compactdefaultargs") SetNbSamplePoints; +- %feature("autodoc", "Sets number of sample points used for proximity calculation for each shape. if number is less or equal zero, all triangulation nodes are used. +- +-Parameters +----------- +-theSamples1: int,optional +- default value is 0 +-theSamples2: int,optional +- default value is 0 +- +-Returns +-------- +-None +-") SetNbSamplePoints; +- void SetNbSamplePoints(const Standard_Integer theSamples1 = 0, const Standard_Integer theSamples2 = 0); +- +-}; +- +- +-%extend BRepExtrema_ProximityValueTool { +- %pythoncode { +- __repr__ = _dumps_object ++ @methodnotwrapped ++ def LoadAdditionalPointsFirstSet(self): ++ pass + } + }; + +@@ -1967,7 +1838,6 @@ None + ***********************************/ + class BRepExtrema_ShapeProximity { + public: +-typedef typename BRepExtrema_ProximityValueTool ::ProxPnt_Status ProxPnt_Status; + /****************** BRepExtrema_ShapeProximity ******************/ + /**** md5 signature: 73b29b290349b3955b499c712de97888 ****/ + %feature("compactdefaultargs") BRepExtrema_ShapeProximity; +diff --git a/src/SWIG_files/wrapper/BRepExtrema.pyi b/src/SWIG_files/wrapper/BRepExtrema.pyi +index 0738ed63..749fc5ef 100644 +--- a/src/SWIG_files/wrapper/BRepExtrema.pyi ++++ b/src/SWIG_files/wrapper/BRepExtrema.pyi +@@ -9,6 +9,7 @@ from OCC.Core.Message import * + from OCC.Core.gp import * + from OCC.Core.Bnd import * + from OCC.Core.BVH import * ++from OCC.Core.Poly import * + + #the following typedef cannot be wrapped as is + BRepExtrema_ShapeList = NewType('BRepExtrema_ShapeList', Any) +@@ -163,8 +164,10 @@ class BRepExtrema_Poly: + class BRepExtrema_ProximityDistTool(): + @overload + def __init__(self) -> None: ... +- @overload +- def __init__(self, theSet1: BRepExtrema_TriangleSet, theNbSamples1: int, theSet2: BRepExtrema_TriangleSet, theShapeList1: BRepExtrema_ShapeList, theShapeList2: BRepExtrema_ShapeList) -> None: ... ++ @staticmethod ++ def IsEdgeOnBorder(theTrgIdx: int, theFirstEdgeNodeIdx: int, theSecondEdgeNodeIdx: int, theTr: Poly_Triangulation) -> bool: ... ++ @staticmethod ++ def IsNodeOnBorder(theNodeIdx: int, theTr: Poly_Triangulation) -> bool: ... + def LoadShapeLists(self, theShapeList1: BRepExtrema_ShapeList, theShapeList2: BRepExtrema_ShapeList) -> None: ... + def LoadTriangleSets(self, theSet1: BRepExtrema_TriangleSet, theSet2: BRepExtrema_TriangleSet) -> None: ... + def Perform(self) -> None: ... +@@ -172,20 +175,6 @@ class BRepExtrema_ProximityDistTool(): + def ProximityPoints(self, thePoint1: BVH_Vec3d, thePoint2: BVH_Vec3d) -> None: ... + def RejectNode(self, theCornerMin: BVH_Vec3d, theCornerMax: BVH_Vec3d) -> Tuple[bool, float]: ... + +-class BRepExtrema_ProximityValueTool: +- @overload +- def __init__(self) -> None: ... +- @overload +- def __init__(self, theSet1: BRepExtrema_TriangleSet, theSet2: BRepExtrema_TriangleSet, theShapeList1: BRepExtrema_ShapeList, theShapeList2: BRepExtrema_ShapeList) -> None: ... +- def Distance(self) -> float: ... +- def IsDone(self) -> bool: ... +- def LoadShapeLists(self, theShapeList1: BRepExtrema_ShapeList, theShapeList2: BRepExtrema_ShapeList) -> None: ... +- def LoadTriangleSets(self, theSet1: BRepExtrema_TriangleSet, theSet2: BRepExtrema_TriangleSet) -> None: ... +- def MarkDirty(self) -> None: ... +- def Perform(self) -> float: ... +- def ProximityPoints(self, thePoint1: gp_Pnt, thePoint2: gp_Pnt) -> None: ... +- def SetNbSamplePoints(self, theSamples1: Optional[int] = 0, theSamples2: Optional[int] = 0) -> None: ... +- + class BRepExtrema_ShapeProximity: + @overload + def __init__(self, theTolerance: Optional[float] = precision_Infinite()) -> None: ... +@@ -271,3 +260,5 @@ class BRepExtrema_OverlapTool: ... + # hsequence classes + + BRepExtrema_Poly_Distance = BRepExtrema_Poly.Distance ++BRepExtrema_ProximityDistTool_IsEdgeOnBorder = BRepExtrema_ProximityDistTool.IsEdgeOnBorder ++BRepExtrema_ProximityDistTool_IsNodeOnBorder = BRepExtrema_ProximityDistTool.IsNodeOnBorder +diff --git a/src/SWIG_files/wrapper/BRepFill.i b/src/SWIG_files/wrapper/BRepFill.i +index 1b12746f..0281ab54 100644 +--- a/src/SWIG_files/wrapper/BRepFill.i ++++ b/src/SWIG_files/wrapper/BRepFill.i +@@ -105,6 +105,16 @@ from OCC.Core.Exception import * + }; + + /* public enums */ ++enum BRepFill_ThruSectionErrorStatus { ++ BRepFill_ThruSectionErrorStatus_Done = 0, ++ BRepFill_ThruSectionErrorStatus_NotDone = 1, ++ BRepFill_ThruSectionErrorStatus_NotSameTopology = 2, ++ BRepFill_ThruSectionErrorStatus_ProfilesInconsistent = 3, ++ BRepFill_ThruSectionErrorStatus_WrongUsage = 4, ++ BRepFill_ThruSectionErrorStatus_Null3DCurve = 5, ++ BRepFill_ThruSectionErrorStatus_Failed = 6, ++}; ++ + enum BRepFill_TypeOfContact { + BRepFill_NoContact = 0, + BRepFill_Contact = 1, +@@ -122,6 +132,22 @@ enum BRepFill_TransitionStyle { + /* python proxy classes for enums */ + %pythoncode { + ++class BRepFill_ThruSectionErrorStatus(IntEnum): ++ BRepFill_ThruSectionErrorStatus_Done = 0 ++ BRepFill_ThruSectionErrorStatus_NotDone = 1 ++ BRepFill_ThruSectionErrorStatus_NotSameTopology = 2 ++ BRepFill_ThruSectionErrorStatus_ProfilesInconsistent = 3 ++ BRepFill_ThruSectionErrorStatus_WrongUsage = 4 ++ BRepFill_ThruSectionErrorStatus_Null3DCurve = 5 ++ BRepFill_ThruSectionErrorStatus_Failed = 6 ++BRepFill_ThruSectionErrorStatus_Done = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_Done ++BRepFill_ThruSectionErrorStatus_NotDone = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_NotDone ++BRepFill_ThruSectionErrorStatus_NotSameTopology = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_NotSameTopology ++BRepFill_ThruSectionErrorStatus_ProfilesInconsistent = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_ProfilesInconsistent ++BRepFill_ThruSectionErrorStatus_WrongUsage = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_WrongUsage ++BRepFill_ThruSectionErrorStatus_Null3DCurve = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_Null3DCurve ++BRepFill_ThruSectionErrorStatus_Failed = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_Failed ++ + class BRepFill_TypeOfContact(IntEnum): + BRepFill_NoContact = 0 + BRepFill_Contact = 1 +@@ -575,6 +601,17 @@ TopTools_ListOfShape + ") GeneratedShapes; + const TopTools_ListOfShape & GeneratedShapes(const TopoDS_Edge & SubSection); + ++ /****************** GetStatus ******************/ ++ /**** md5 signature: d01d66bd030c1232d59d2b7253fc3b10 ****/ ++ %feature("compactdefaultargs") GetStatus; ++ %feature("autodoc", "No available documentation. ++ ++Returns ++------- ++BRepFill_ThruSectionErrorStatus ++") GetStatus; ++ BRepFill_ThruSectionErrorStatus GetStatus(); ++ + /****************** Init ******************/ + /**** md5 signature: 217046dd3125fb37abc6e15803e209f1 ****/ + %feature("compactdefaultargs") Init; +@@ -1816,6 +1853,17 @@ TopTools_ListOfShape + ") GeneratedShapes; + const TopTools_ListOfShape & GeneratedShapes(const TopoDS_Shape & SSection); + ++ /****************** GetStatus ******************/ ++ /**** md5 signature: d01d66bd030c1232d59d2b7253fc3b10 ****/ ++ %feature("compactdefaultargs") GetStatus; ++ %feature("autodoc", "Returns status of the operation. ++ ++Returns ++------- ++BRepFill_ThruSectionErrorStatus ++") GetStatus; ++ BRepFill_ThruSectionErrorStatus GetStatus(); ++ + /****************** IsMutableInput ******************/ + /**** md5 signature: 2df16e5a957577cfce65832aa2d90512 ****/ + %feature("compactdefaultargs") IsMutableInput; +diff --git a/src/SWIG_files/wrapper/BRepFill.pyi b/src/SWIG_files/wrapper/BRepFill.pyi +index b73b54f3..412b53b2 100644 +--- a/src/SWIG_files/wrapper/BRepFill.pyi ++++ b/src/SWIG_files/wrapper/BRepFill.pyi +@@ -83,6 +83,23 @@ class BRepFill_SequenceOfSection: + def Value(self, theIndex: int) -> BRepFill_Section: ... + def SetValue(self, theIndex: int, theValue: BRepFill_Section) -> None: ... + ++class BRepFill_ThruSectionErrorStatus(IntEnum): ++ BRepFill_ThruSectionErrorStatus_Done: int = ... ++ BRepFill_ThruSectionErrorStatus_NotDone: int = ... ++ BRepFill_ThruSectionErrorStatus_NotSameTopology: int = ... ++ BRepFill_ThruSectionErrorStatus_ProfilesInconsistent: int = ... ++ BRepFill_ThruSectionErrorStatus_WrongUsage: int = ... ++ BRepFill_ThruSectionErrorStatus_Null3DCurve: int = ... ++ BRepFill_ThruSectionErrorStatus_Failed: int = ... ++ ++BRepFill_ThruSectionErrorStatus_Done = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_Done ++BRepFill_ThruSectionErrorStatus_NotDone = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_NotDone ++BRepFill_ThruSectionErrorStatus_NotSameTopology = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_NotSameTopology ++BRepFill_ThruSectionErrorStatus_ProfilesInconsistent = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_ProfilesInconsistent ++BRepFill_ThruSectionErrorStatus_WrongUsage = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_WrongUsage ++BRepFill_ThruSectionErrorStatus_Null3DCurve = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_Null3DCurve ++BRepFill_ThruSectionErrorStatus_Failed = BRepFill_ThruSectionErrorStatus.BRepFill_ThruSectionErrorStatus_Failed ++ + class BRepFill_TypeOfContact(IntEnum): + BRepFill_NoContact: int = ... + BRepFill_Contact: int = ... +@@ -139,6 +156,7 @@ class BRepFill_CompatibleWires: + def __init__(self, Sections: TopTools_SequenceOfShape) -> None: ... + def Generated(self) -> TopTools_DataMapOfShapeListOfShape: ... + def GeneratedShapes(self, SubSection: TopoDS_Edge) -> TopTools_ListOfShape: ... ++ def GetStatus(self) -> BRepFill_ThruSectionErrorStatus: ... + def Init(self, Sections: TopTools_SequenceOfShape) -> None: ... + def IsDegeneratedFirstSection(self) -> bool: ... + def IsDegeneratedLastSection(self) -> bool: ... +@@ -255,6 +273,7 @@ class BRepFill_Generator: + def AddWire(self, Wire: TopoDS_Wire) -> None: ... + def Generated(self) -> TopTools_DataMapOfShapeListOfShape: ... + def GeneratedShapes(self, SSection: TopoDS_Shape) -> TopTools_ListOfShape: ... ++ def GetStatus(self) -> BRepFill_ThruSectionErrorStatus: ... + def IsMutableInput(self) -> bool: ... + def Perform(self) -> None: ... + def ResultShape(self, theShape: TopoDS_Shape) -> TopoDS_Shape: ... +diff --git a/src/SWIG_files/wrapper/BRepOffset.i b/src/SWIG_files/wrapper/BRepOffset.i +index d6800998..05add5f2 100644 +--- a/src/SWIG_files/wrapper/BRepOffset.i ++++ b/src/SWIG_files/wrapper/BRepOffset.i +@@ -131,6 +131,7 @@ enum BRepOffset_Error { + BRepOffset_CannotFuseVertices = 7, + BRepOffset_CannotExtentEdge = 8, + BRepOffset_UserBreak = 9, ++ BRepOffset_MixedConnectivity = 10, + }; + + enum BRepOffsetSimple_Status { +@@ -171,6 +172,7 @@ class BRepOffset_Error(IntEnum): + BRepOffset_CannotFuseVertices = 7 + BRepOffset_CannotExtentEdge = 8 + BRepOffset_UserBreak = 9 ++ BRepOffset_MixedConnectivity = 10 + BRepOffset_NoError = BRepOffset_Error.BRepOffset_NoError + BRepOffset_UnknownError = BRepOffset_Error.BRepOffset_UnknownError + BRepOffset_BadNormalsOnGeometry = BRepOffset_Error.BRepOffset_BadNormalsOnGeometry +@@ -181,6 +183,7 @@ BRepOffset_CannotTrimEdges = BRepOffset_Error.BRepOffset_CannotTrimEdges + BRepOffset_CannotFuseVertices = BRepOffset_Error.BRepOffset_CannotFuseVertices + BRepOffset_CannotExtentEdge = BRepOffset_Error.BRepOffset_CannotExtentEdge + BRepOffset_UserBreak = BRepOffset_Error.BRepOffset_UserBreak ++BRepOffset_MixedConnectivity = BRepOffset_Error.BRepOffset_MixedConnectivity + + class BRepOffsetSimple_Status(IntEnum): + BRepOffsetSimple_OK = 0 +diff --git a/src/SWIG_files/wrapper/BRepOffset.pyi b/src/SWIG_files/wrapper/BRepOffset.pyi +index 89a5e3e1..fd6f7478 100644 +--- a/src/SWIG_files/wrapper/BRepOffset.pyi ++++ b/src/SWIG_files/wrapper/BRepOffset.pyi +@@ -43,6 +43,7 @@ class BRepOffset_Error(IntEnum): + BRepOffset_CannotFuseVertices: int = ... + BRepOffset_CannotExtentEdge: int = ... + BRepOffset_UserBreak: int = ... ++ BRepOffset_MixedConnectivity: int = ... + + BRepOffset_NoError = BRepOffset_Error.BRepOffset_NoError + BRepOffset_UnknownError = BRepOffset_Error.BRepOffset_UnknownError +@@ -54,6 +55,7 @@ BRepOffset_CannotTrimEdges = BRepOffset_Error.BRepOffset_CannotTrimEdges + BRepOffset_CannotFuseVertices = BRepOffset_Error.BRepOffset_CannotFuseVertices + BRepOffset_CannotExtentEdge = BRepOffset_Error.BRepOffset_CannotExtentEdge + BRepOffset_UserBreak = BRepOffset_Error.BRepOffset_UserBreak ++BRepOffset_MixedConnectivity = BRepOffset_Error.BRepOffset_MixedConnectivity + + class BRepOffsetSimple_Status(IntEnum): + BRepOffsetSimple_OK: int = ... +diff --git a/src/SWIG_files/wrapper/BRepOffsetAPI.i b/src/SWIG_files/wrapper/BRepOffsetAPI.i +index 1f9ad1dd..df26f708 100644 +--- a/src/SWIG_files/wrapper/BRepOffsetAPI.i ++++ b/src/SWIG_files/wrapper/BRepOffsetAPI.i +@@ -2558,6 +2558,17 @@ TopoDS_Shape + ") GeneratedFace; + TopoDS_Shape GeneratedFace(const TopoDS_Shape & Edge); + ++ /****************** GetStatus ******************/ ++ /**** md5 signature: d01d66bd030c1232d59d2b7253fc3b10 ****/ ++ %feature("compactdefaultargs") GetStatus; ++ %feature("autodoc", "Returns the status of thrusection operation. ++ ++Returns ++------- ++BRepFill_ThruSectionErrorStatus ++") GetStatus; ++ BRepFill_ThruSectionErrorStatus GetStatus(); ++ + /****************** Init ******************/ + /**** md5 signature: 82b061dc05f66b08422610d2d7504487 ****/ + %feature("compactdefaultargs") Init; +diff --git a/src/SWIG_files/wrapper/BRepOffsetAPI.pyi b/src/SWIG_files/wrapper/BRepOffsetAPI.pyi +index 042de45f..815ee7e1 100644 +--- a/src/SWIG_files/wrapper/BRepOffsetAPI.pyi ++++ b/src/SWIG_files/wrapper/BRepOffsetAPI.pyi +@@ -260,6 +260,7 @@ class BRepOffsetAPI_ThruSections(BRepBuilderAPI_MakeShape): + def FirstShape(self) -> TopoDS_Shape: ... + def Generated(self, S: TopoDS_Shape) -> TopTools_ListOfShape: ... + def GeneratedFace(self, Edge: TopoDS_Shape) -> TopoDS_Shape: ... ++ def GetStatus(self) -> BRepFill_ThruSectionErrorStatus: ... + def Init(self, isSolid: Optional[bool] = False, ruled: Optional[bool] = False, pres3d: Optional[float] = 1.0e-06) -> None: ... + def IsMutableInput(self) -> bool: ... + def LastShape(self) -> TopoDS_Shape: ... +diff --git a/src/SWIG_files/wrapper/BSplCLib.i b/src/SWIG_files/wrapper/BSplCLib.i +index f0b6635f..80aa4d80 100644 +--- a/src/SWIG_files/wrapper/BSplCLib.i ++++ b/src/SWIG_files/wrapper/BSplCLib.i +@@ -2001,6 +2001,29 @@ InversionProblem: int + ") Interpolate; + static void Interpolate(const Standard_Integer Degree, const TColStd_Array1OfReal & FlatKnots, const TColStd_Array1OfReal & Parameters, const TColStd_Array1OfInteger & ContactOrderArray, const Standard_Integer ArrayDimension, Standard_Real &OutValue, Standard_Real &OutValue, Standard_Integer &OutValue); + ++ /****************** Intervals ******************/ ++ /**** md5 signature: 6005dd7b642eb153ae7f9293cf41ffb5 ****/ ++ %feature("compactdefaultargs") Intervals; ++ %feature("autodoc", "Splits the given range to bspline intervals of given continuity @param[in] theknots the knots of bspline @param[in] themults the knots' multiplicities @param[in] thedegree the degree of bspline @param[in] isperiodic the periodicity of bspline @param[in] thecontinuity the target interval's continuity @param[in] thefirst the begin of the target range @param[in] thelast the end of the target range @param[in] thetolerance the tolerance @param[in,out] theintervals the array to store intervals if isn't nullptr returns the number of intervals. ++ ++Parameters ++---------- ++theKnots: TColStd_Array1OfReal ++theMults: TColStd_Array1OfInteger ++theDegree: int ++isPeriodic: bool ++theContinuity: int ++theFirst: float ++theLast: float ++theTolerance: float ++theIntervals: TColStd_Array1OfReal * ++ ++Returns ++------- ++int ++") Intervals; ++ static Standard_Integer Intervals(const TColStd_Array1OfReal & theKnots, const TColStd_Array1OfInteger & theMults, Standard_Integer theDegree, Standard_Boolean isPeriodic, Standard_Integer theContinuity, Standard_Real theFirst, Standard_Real theLast, Standard_Real theTolerance, TColStd_Array1OfReal * theIntervals); ++ + /****************** IsRational ******************/ + /**** md5 signature: 5ee1bb4d64e0a78acc3cb994f1afcefa ****/ + %feature("compactdefaultargs") IsRational; +diff --git a/src/SWIG_files/wrapper/BSplCLib.pyi b/src/SWIG_files/wrapper/BSplCLib.pyi +index b8ac4682..671f76a0 100644 +--- a/src/SWIG_files/wrapper/BSplCLib.pyi ++++ b/src/SWIG_files/wrapper/BSplCLib.pyi +@@ -278,6 +278,8 @@ class bsplclib: + @staticmethod + def Interpolate(Degree: int, FlatKnots: TColStd_Array1OfReal, Parameters: TColStd_Array1OfReal, ContactOrderArray: TColStd_Array1OfInteger, ArrayDimension: int) -> Tuple[float, float, int]: ... + @staticmethod ++ def Intervals(theKnots: TColStd_Array1OfReal, theMults: TColStd_Array1OfInteger, theDegree: int, isPeriodic: bool, theContinuity: int, theFirst: float, theLast: float, theTolerance: float, theIntervals: TColStd_Array1OfReal) -> int: ... ++ @staticmethod + def IsRational(Weights: TColStd_Array1OfReal, I1: int, I2: int, Epsilon: Optional[float] = 0.0) -> bool: ... + @staticmethod + def KnotAnalysis(Degree: int, Periodic: bool, CKnots: TColStd_Array1OfReal, CMults: TColStd_Array1OfInteger, KnotForm: GeomAbs_BSplKnotDistribution) -> int: ... +@@ -566,6 +568,7 @@ bsplclib_Interpolate = bsplclib.Interpolate + bsplclib_Interpolate = bsplclib.Interpolate + bsplclib_Interpolate = bsplclib.Interpolate + bsplclib_Interpolate = bsplclib.Interpolate ++bsplclib_Intervals = bsplclib.Intervals + bsplclib_IsRational = bsplclib.IsRational + bsplclib_KnotAnalysis = bsplclib.KnotAnalysis + bsplclib_KnotForm = bsplclib.KnotForm +diff --git a/src/SWIG_files/wrapper/ChFiDS.i b/src/SWIG_files/wrapper/ChFiDS.i +index d60e552a..b8096939 100644 +--- a/src/SWIG_files/wrapper/ChFiDS.i ++++ b/src/SWIG_files/wrapper/ChFiDS.i +@@ -121,6 +121,7 @@ enum ChFiDS_TypeOfConcavity { + ChFiDS_Tangential = 2, + ChFiDS_FreeBound = 3, + ChFiDS_Other = 4, ++ ChFiDS_Mixed = 5, + }; + + /* end public enums declaration */ +@@ -178,11 +179,13 @@ class ChFiDS_TypeOfConcavity(IntEnum): + ChFiDS_Tangential = 2 + ChFiDS_FreeBound = 3 + ChFiDS_Other = 4 ++ ChFiDS_Mixed = 5 + ChFiDS_Concave = ChFiDS_TypeOfConcavity.ChFiDS_Concave + ChFiDS_Convex = ChFiDS_TypeOfConcavity.ChFiDS_Convex + ChFiDS_Tangential = ChFiDS_TypeOfConcavity.ChFiDS_Tangential + ChFiDS_FreeBound = ChFiDS_TypeOfConcavity.ChFiDS_FreeBound + ChFiDS_Other = ChFiDS_TypeOfConcavity.ChFiDS_Other ++ChFiDS_Mixed = ChFiDS_TypeOfConcavity.ChFiDS_Mixed + }; + /* end python proxy for enums */ + +@@ -2029,6 +2032,17 @@ TopoDS_Vertex + ") FirstVertex; + TopoDS_Vertex FirstVertex(); + ++ /****************** GetTolesp ******************/ ++ /**** md5 signature: 217c13748b3cb2bf2cc59e96cafe8207 ****/ ++ %feature("compactdefaultargs") GetTolesp; ++ %feature("autodoc", "Return tolesp parameter. ++ ++Returns ++------- ++float ++") GetTolesp; ++ Standard_Real GetTolesp(); ++ + /****************** GetType ******************/ + /**** md5 signature: 6d4e6ae7972633971ba343e8afc91aa1 ****/ + %feature("compactdefaultargs") GetType; +diff --git a/src/SWIG_files/wrapper/ChFiDS.pyi b/src/SWIG_files/wrapper/ChFiDS.pyi +index 6543ea1a..d1884594 100644 +--- a/src/SWIG_files/wrapper/ChFiDS.pyi ++++ b/src/SWIG_files/wrapper/ChFiDS.pyi +@@ -192,12 +192,14 @@ class ChFiDS_TypeOfConcavity(IntEnum): + ChFiDS_Tangential: int = ... + ChFiDS_FreeBound: int = ... + ChFiDS_Other: int = ... ++ ChFiDS_Mixed: int = ... + + ChFiDS_Concave = ChFiDS_TypeOfConcavity.ChFiDS_Concave + ChFiDS_Convex = ChFiDS_TypeOfConcavity.ChFiDS_Convex + ChFiDS_Tangential = ChFiDS_TypeOfConcavity.ChFiDS_Tangential + ChFiDS_FreeBound = ChFiDS_TypeOfConcavity.ChFiDS_FreeBound + ChFiDS_Other = ChFiDS_TypeOfConcavity.ChFiDS_Other ++ChFiDS_Mixed = ChFiDS_TypeOfConcavity.ChFiDS_Mixed + + class ChFiDS_CircSection: + def __init__(self) -> None: ... +@@ -351,6 +353,7 @@ class ChFiDS_Spine(Standard_Transient): + def FirstParameter(self, IndexSpine: int) -> float: ... + def FirstStatus(self) -> ChFiDS_State: ... + def FirstVertex(self) -> TopoDS_Vertex: ... ++ def GetTolesp(self) -> float: ... + def GetType(self) -> GeomAbs_CurveType: ... + def GetTypeOfConcavity(self) -> ChFiDS_TypeOfConcavity: ... + def HasFirstTgt(self) -> bool: ... +diff --git a/src/SWIG_files/wrapper/GeomInt.i b/src/SWIG_files/wrapper/GeomInt.i +index a01b7841..9d84060c 100644 +--- a/src/SWIG_files/wrapper/GeomInt.i ++++ b/src/SWIG_files/wrapper/GeomInt.i +@@ -936,6 +936,29 @@ opencascade::handle + ") Boundary; + const opencascade::handle & Boundary(const Standard_Integer Index); + ++ /****************** BuildPCurves ******************/ ++ /**** md5 signature: 6965f43fd020f13216b45cd065743faa ****/ ++ %feature("compactdefaultargs") BuildPCurves; ++ %feature("autodoc", "Creates 2d-curve on given surface from given 3d-curve. ++ ++Parameters ++---------- ++theFirst: float ++theLast: float ++theUmin: float ++theUmax: float ++theVmin: float ++theVmax: float ++theSurface: Geom_Surface ++theCurve: Geom_Curve ++theCurve2d: Geom2d_Curve ++ ++Returns ++------- ++theTol: float ++") BuildPCurves; ++ static void BuildPCurves(const Standard_Real theFirst, const Standard_Real theLast, const Standard_Real theUmin, const Standard_Real theUmax, const Standard_Real theVmin, const Standard_Real theVmax, Standard_Real &OutValue, const opencascade::handle & theSurface, const opencascade::handle & theCurve, opencascade::handle & theCurve2d); ++ + /****************** BuildPCurves ******************/ + /**** md5 signature: 2c2bdb53423075c70323712785098b12 ****/ + %feature("compactdefaultargs") BuildPCurves; +diff --git a/src/SWIG_files/wrapper/GeomInt.pyi b/src/SWIG_files/wrapper/GeomInt.pyi +index eae46ba0..c6076fec 100644 +--- a/src/SWIG_files/wrapper/GeomInt.pyi ++++ b/src/SWIG_files/wrapper/GeomInt.pyi +@@ -110,6 +110,10 @@ class GeomInt_IntSS: + @overload + def __init__(self, S1: Geom_Surface, S2: Geom_Surface, Tol: float, Approx: Optional[bool] = True, ApproxS1: Optional[bool] = False, ApproxS2: Optional[bool] = False) -> None: ... + def Boundary(self, Index: int) -> Geom_Curve: ... ++ @overload ++ @staticmethod ++ def BuildPCurves(theFirst: float, theLast: float, theUmin: float, theUmax: float, theVmin: float, theVmax: float, theSurface: Geom_Surface, theCurve: Geom_Curve, theCurve2d: Geom2d_Curve) -> float: ... ++ @overload + @staticmethod + def BuildPCurves(f: float, l: float, S: Geom_Surface, C: Geom_Curve, C2d: Geom2d_Curve) -> float: ... + def HasLineOnS1(self, Index: int) -> bool: ... +@@ -525,6 +529,7 @@ class GeomInt_WLApprox: ... + + geomint_AdjustPeriodic = geomint.AdjustPeriodic + GeomInt_IntSS_BuildPCurves = GeomInt_IntSS.BuildPCurves ++GeomInt_IntSS_BuildPCurves = GeomInt_IntSS.BuildPCurves + GeomInt_IntSS_MakeBSpline = GeomInt_IntSS.MakeBSpline + GeomInt_IntSS_MakeBSpline2d = GeomInt_IntSS.MakeBSpline2d + GeomInt_IntSS_TreatRLine = GeomInt_IntSS.TreatRLine +diff --git a/src/SWIG_files/wrapper/STEPCAFControl.i b/src/SWIG_files/wrapper/STEPCAFControl.i +index 3ddc1ba8..9372c840 100644 +--- a/src/SWIG_files/wrapper/STEPCAFControl.i ++++ b/src/SWIG_files/wrapper/STEPCAFControl.i +@@ -1849,24 +1849,24 @@ None + STEPCAFControl_Writer(); + + /****************** STEPCAFControl_Writer ******************/ +- /**** md5 signature: 70a513d4d628947fa1e98ed8e35359d9 ****/ ++ /**** md5 signature: dedf68dbebf4d519616966632e9764a8 ****/ + %feature("compactdefaultargs") STEPCAFControl_Writer; + %feature("autodoc", "Creates a reader tool and attaches it to an already existing session clears the session if it was not yet set for step clears the internal data structures. + + Parameters + ---------- +-WS: XSControl_WorkSession +-scratch: bool,optional ++theWS: XSControl_WorkSession ++theScratch: bool,optional + default value is Standard_True + + Returns + ------- + None + ") STEPCAFControl_Writer; +- STEPCAFControl_Writer(const opencascade::handle & WS, const Standard_Boolean scratch = Standard_True); ++ STEPCAFControl_Writer(const opencascade::handle & theWS, const Standard_Boolean theScratch = Standard_True); + + /****************** ChangeWriter ******************/ +- /**** md5 signature: 9719ebc8336482d007d450c0e3b00713 ****/ ++ /**** md5 signature: acee09144e4dec42ed602fde52975129 ****/ + %feature("compactdefaultargs") ChangeWriter; + %feature("autodoc", "Returns basic reader for root file. + +@@ -1877,39 +1877,39 @@ STEPControl_Writer + STEPControl_Writer & ChangeWriter(); + + /****************** ExternFile ******************/ +- /**** md5 signature: 4f90b7104efa0649e14f70ad09ab8e61 ****/ ++ /**** md5 signature: 0769b22e71152aabd75dace01164fc2b ****/ + %feature("compactdefaultargs") ExternFile; + %feature("autodoc", "Returns data on external file by its original label returns false if no external file with given name is read. + + Parameters + ---------- +-L: TDF_Label +-ef: STEPCAFControl_ExternFile ++theLabel: TDF_Label ++theExtFile: STEPCAFControl_ExternFile + + Returns + ------- + bool + ") ExternFile; +- Standard_Boolean ExternFile(const TDF_Label & L, opencascade::handle & ef); ++ Standard_Boolean ExternFile(const TDF_Label & theLabel, opencascade::handle & theExtFile); + + /****************** ExternFile ******************/ +- /**** md5 signature: ad0d6b0b3be01575d180dd24c55cd264 ****/ ++ /**** md5 signature: f77e0b8157371b505bc136b8bd33443e ****/ + %feature("compactdefaultargs") ExternFile; + %feature("autodoc", "Returns data on external file by its name returns false if no external file with given name is read. + + Parameters + ---------- +-name: char * +-ef: STEPCAFControl_ExternFile ++theName: str ++theExtFile: STEPCAFControl_ExternFile + + Returns + ------- + bool + ") ExternFile; +- Standard_Boolean ExternFile(const char * name, opencascade::handle & ef); ++ Standard_Boolean ExternFile(Standard_CString theName, opencascade::handle & theExtFile); + + /****************** ExternFiles ******************/ +- /**** md5 signature: 1154c88bc3253c7291077317c11363ab ****/ ++ /**** md5 signature: 08a0b41df731275c7119f8910e47970c ****/ + %feature("compactdefaultargs") ExternFiles; + %feature("autodoc", "Returns data on external files returns null handle if no external files are read. + +@@ -1920,7 +1920,7 @@ NCollection_DataMap> & ExternFiles(); + + /****************** GetColorMode ******************/ +- /**** md5 signature: 010da6a8a0e8a61fdb607fd6faba2b56 ****/ ++ /**** md5 signature: cddb885e605f1794a5a6486023f65736 ****/ + %feature("compactdefaultargs") GetColorMode; + %feature("autodoc", "No available documentation. + +@@ -1931,7 +1931,7 @@ bool + Standard_Boolean GetColorMode(); + + /****************** GetDimTolMode ******************/ +- /**** md5 signature: 2eed8e0bb30a6f85d0c500a8d4b9e16c ****/ ++ /**** md5 signature: 5f3c2fc2e581a2ea711f9607cd0a817a ****/ + %feature("compactdefaultargs") GetDimTolMode; + %feature("autodoc", "No available documentation. + +@@ -1942,7 +1942,7 @@ bool + Standard_Boolean GetDimTolMode(); + + /****************** GetLayerMode ******************/ +- /**** md5 signature: d677385c303e067613f92bc738509727 ****/ ++ /**** md5 signature: b6b1458608d2429d13e63a07c0b392d8 ****/ + %feature("compactdefaultargs") GetLayerMode; + %feature("autodoc", "No available documentation. + +@@ -1953,7 +1953,7 @@ bool + Standard_Boolean GetLayerMode(); + + /****************** GetMaterialMode ******************/ +- /**** md5 signature: cda125e3ff8f835393b9894e3f229aea ****/ ++ /**** md5 signature: 2057a4ef866086868ba91cb34e6ad09a ****/ + %feature("compactdefaultargs") GetMaterialMode; + %feature("autodoc", "No available documentation. + +@@ -1964,7 +1964,7 @@ bool + Standard_Boolean GetMaterialMode(); + + /****************** GetNameMode ******************/ +- /**** md5 signature: 2dd32a893d6f5f4666ac3752ace2d12f ****/ ++ /**** md5 signature: 1097f532a68b4625a0108cddc8366238 ****/ + %feature("compactdefaultargs") GetNameMode; + %feature("autodoc", "No available documentation. + +@@ -1975,7 +1975,7 @@ bool + Standard_Boolean GetNameMode(); + + /****************** GetPropsMode ******************/ +- /**** md5 signature: 3b2f4c2b61084d1e067d83421e0ea81d ****/ ++ /**** md5 signature: 99cee0ed60040ac88dbf6e950f82a10e ****/ + %feature("compactdefaultargs") GetPropsMode; + %feature("autodoc", "No available documentation. + +@@ -1986,7 +1986,7 @@ bool + Standard_Boolean GetPropsMode(); + + /****************** GetSHUOMode ******************/ +- /**** md5 signature: 74c5f048b04741ef5abfe259b5c453cd ****/ ++ /**** md5 signature: 4e3a3a7f89647ad6b4f35f24a42234d6 ****/ + %feature("compactdefaultargs") GetSHUOMode; + %feature("autodoc", "No available documentation. + +@@ -1997,31 +1997,31 @@ bool + Standard_Boolean GetSHUOMode(); + + /****************** Init ******************/ +- /**** md5 signature: 13544ae418c98602c6eaed6faea8f526 ****/ ++ /**** md5 signature: e7d3f870615865a6686f75c3aa077ff3 ****/ + %feature("compactdefaultargs") Init; + %feature("autodoc", "Clears the internal data structures and attaches to a new session clears the session if it was not yet set for step. + + Parameters + ---------- +-WS: XSControl_WorkSession +-scratch: bool,optional ++theWS: XSControl_WorkSession ++theScratch: bool,optional + default value is Standard_True + + Returns + ------- + None + ") Init; +- void Init(const opencascade::handle & WS, const Standard_Boolean scratch = Standard_True); ++ void Init(const opencascade::handle & theWS, const Standard_Boolean theScratch = Standard_True); + + /****************** Perform ******************/ +- /**** md5 signature: 82a9ff51a493dfcaea368ecaef792fdb ****/ ++ /**** md5 signature: 624f8c3670df66af47c4a9af2967eb2a ****/ + %feature("compactdefaultargs") Perform; + %feature("autodoc", "No available documentation. + + Parameters + ---------- +-doc: TDocStd_Document +-filename: TCollection_AsciiString ++theDoc: TDocStd_Document ++theFileName: str + theProgress: Message_ProgressRange,optional + default value is Message_ProgressRange() + +@@ -2029,17 +2029,17 @@ Returns + ------- + bool + ") Perform; +- Standard_Boolean Perform(const opencascade::handle & doc, const TCollection_AsciiString & filename, const Message_ProgressRange & theProgress = Message_ProgressRange()); ++ Standard_Boolean Perform(const opencascade::handle & theDoc, TCollection_AsciiString theFileName, const Message_ProgressRange & theProgress = Message_ProgressRange()); + + /****************** Perform ******************/ +- /**** md5 signature: 1ef00b1bd520cd3b05cc4f00e91c494d ****/ ++ /**** md5 signature: 90b76d8d692f1926baa1d9dd3db9018b ****/ + %feature("compactdefaultargs") Perform; + %feature("autodoc", "Transfers a document and writes it to a step file returns true if translation is ok. + + Parameters + ---------- +-doc: TDocStd_Document +-filename: char * ++theDoc: TDocStd_Document ++theFileName: str + theProgress: Message_ProgressRange,optional + default value is Message_ProgressRange() + +@@ -2047,124 +2047,124 @@ Returns + ------- + bool + ") Perform; +- Standard_Boolean Perform(const opencascade::handle & doc, const char * filename, const Message_ProgressRange & theProgress = Message_ProgressRange()); ++ Standard_Boolean Perform(const opencascade::handle & theDoc, Standard_CString theFileName, const Message_ProgressRange & theProgress = Message_ProgressRange()); + + /****************** SetColorMode ******************/ +- /**** md5 signature: e8d41838c31a9460a1c83d84b1f572a1 ****/ ++ /**** md5 signature: f341158b4cc5262e2e5cb7b941cc9031 ****/ + %feature("compactdefaultargs") SetColorMode; + %feature("autodoc", "Set colormode for indicate write colors or not. + + Parameters + ---------- +-colormode: bool ++theColorMode: bool + + Returns + ------- + None + ") SetColorMode; +- void SetColorMode(const Standard_Boolean colormode); ++ void SetColorMode(const Standard_Boolean theColorMode); + + /****************** SetDimTolMode ******************/ +- /**** md5 signature: 18d408609aea9a67d1d1e15d923773db ****/ ++ /**** md5 signature: 08cd53498196841f3c3a5c0e281a464f ****/ + %feature("compactdefaultargs") SetDimTolMode; + %feature("autodoc", "Set dimtolmode for indicate write d>s or not. + + Parameters + ---------- +-dimtolmode: bool ++theDimTolMode: bool + + Returns + ------- + None + ") SetDimTolMode; +- void SetDimTolMode(const Standard_Boolean dimtolmode); ++ void SetDimTolMode(const Standard_Boolean theDimTolMode); + + /****************** SetLayerMode ******************/ +- /**** md5 signature: 3ec21c8de4b114a83bb0b34cb3b98662 ****/ ++ /**** md5 signature: d164352478699d01fe5d59c680c2a74d ****/ + %feature("compactdefaultargs") SetLayerMode; + %feature("autodoc", "Set layermode for indicate write layers or not. + + Parameters + ---------- +-layermode: bool ++theLayerMode: bool + + Returns + ------- + None + ") SetLayerMode; +- void SetLayerMode(const Standard_Boolean layermode); ++ void SetLayerMode(const Standard_Boolean theLayerMode); + + /****************** SetMaterialMode ******************/ +- /**** md5 signature: ef4abdfa06b076742a69b17150f91d88 ****/ ++ /**** md5 signature: 932571d6d0df2e34fd2487f6025f4956 ****/ + %feature("compactdefaultargs") SetMaterialMode; + %feature("autodoc", "Set dimtolmode for indicate write d>s or not. + + Parameters + ---------- +-matmode: bool ++theMaterialMode: bool + + Returns + ------- + None + ") SetMaterialMode; +- void SetMaterialMode(const Standard_Boolean matmode); ++ void SetMaterialMode(const Standard_Boolean theMaterialMode); + + /****************** SetNameMode ******************/ +- /**** md5 signature: 43ccb5d3fb024d8191f251ee74d0f6ba ****/ ++ /**** md5 signature: a24984c6ce274882f02601c13cf73b9a ****/ + %feature("compactdefaultargs") SetNameMode; + %feature("autodoc", "Set namemode for indicate write name or not. + + Parameters + ---------- +-namemode: bool ++theNameMode: bool + + Returns + ------- + None + ") SetNameMode; +- void SetNameMode(const Standard_Boolean namemode); ++ void SetNameMode(const Standard_Boolean theNameMode); + + /****************** SetPropsMode ******************/ +- /**** md5 signature: 97f3b34eb7a1e38c6cf17d5c26f938a6 ****/ ++ /**** md5 signature: fbb288fb7a76bf6b9cd3acd70d056a7f ****/ + %feature("compactdefaultargs") SetPropsMode; + %feature("autodoc", "Propsmode for indicate write validation properties or not. + + Parameters + ---------- +-propsmode: bool ++thePropsMode: bool + + Returns + ------- + None + ") SetPropsMode; +- void SetPropsMode(const Standard_Boolean propsmode); ++ void SetPropsMode(const Standard_Boolean thePropsMode); + + /****************** SetSHUOMode ******************/ +- /**** md5 signature: ad06ed8b923731ee7b75bf3d7074f299 ****/ ++ /**** md5 signature: 39955bf97fe8d6a6d6b3b211a859f216 ****/ + %feature("compactdefaultargs") SetSHUOMode; + %feature("autodoc", "Set shuo mode for indicate write shuo or not. + + Parameters + ---------- +-shuomode: bool ++theSHUOMode: bool + + Returns + ------- + None + ") SetSHUOMode; +- void SetSHUOMode(const Standard_Boolean shuomode); ++ void SetSHUOMode(const Standard_Boolean theSHUOMode); + + /****************** Transfer ******************/ +- /**** md5 signature: 2616e7e1bc1f8548fb5e464651c0f720 ****/ ++ /**** md5 signature: dd7ebbdc1c22d7845ad531885273adee ****/ + %feature("compactdefaultargs") Transfer; + %feature("autodoc", "Transfers a document (or single label) to a step model the mode of translation of shape is asis if multi is not null pointer, it switches to multifile mode (with external refs), and string pointed by gives prefix for names of extern files (can be empty string) returns true if translation is ok. + + Parameters + ---------- +-doc: TDocStd_Document +-mode: STEPControl_StepModelType,optional ++theDoc: TDocStd_Document ++theMode: STEPControl_StepModelType,optional + default value is STEPControl_AsIs +-multi: char *,optional ++theIsMulti: str,optional + default value is 0 + theProgress: Message_ProgressRange,optional + default value is Message_ProgressRange() +@@ -2173,19 +2173,19 @@ Returns + ------- + bool + ") Transfer; +- Standard_Boolean Transfer(const opencascade::handle & doc, const STEPControl_StepModelType mode = STEPControl_AsIs, const char * multi = 0, const Message_ProgressRange & theProgress = Message_ProgressRange()); ++ Standard_Boolean Transfer(const opencascade::handle & theDoc, const STEPControl_StepModelType theMode = STEPControl_AsIs, Standard_CString theIsMulti = 0, const Message_ProgressRange & theProgress = Message_ProgressRange()); + + /****************** Transfer ******************/ +- /**** md5 signature: 3230c3763f234bd8211762a290f20e3d ****/ ++ /**** md5 signature: 40f710aeab310ab1eff9bbdbe733b162 ****/ + %feature("compactdefaultargs") Transfer; + %feature("autodoc", "Method to transfer part of the document specified by label. + + Parameters + ---------- +-L: TDF_Label +-mode: STEPControl_StepModelType,optional ++theLabel: TDF_Label ++theMode: STEPControl_StepModelType,optional + default value is STEPControl_AsIs +-multi: char *,optional ++theIsMulti: str,optional + default value is 0 + theProgress: Message_ProgressRange,optional + default value is Message_ProgressRange() +@@ -2194,19 +2194,19 @@ Returns + ------- + bool + ") Transfer; +- Standard_Boolean Transfer(const TDF_Label & L, const STEPControl_StepModelType mode = STEPControl_AsIs, const char * multi = 0, const Message_ProgressRange & theProgress = Message_ProgressRange()); ++ Standard_Boolean Transfer(const TDF_Label & theLabel, const STEPControl_StepModelType theMode = STEPControl_AsIs, Standard_CString theIsMulti = 0, const Message_ProgressRange & theProgress = Message_ProgressRange()); + + /****************** Transfer ******************/ +- /**** md5 signature: 7533cb05eb0d45c4c5142f45de14069a ****/ ++ /**** md5 signature: 4e3f0900d966cc07a5e2191b2b4ba7a6 ****/ + %feature("compactdefaultargs") Transfer; + %feature("autodoc", "Mehod to writing sequence of root assemblies or part of the file specified by use by one label . + + Parameters + ---------- +-L: TDF_LabelSequence +-mode: STEPControl_StepModelType,optional ++theLabelSeq: TDF_LabelSequence ++theMode: STEPControl_StepModelType,optional + default value is STEPControl_AsIs +-multi: char *,optional ++theIsMulti: str,optional + default value is 0 + theProgress: Message_ProgressRange,optional + default value is Message_ProgressRange() +@@ -2215,7 +2215,7 @@ Returns + ------- + bool + ") Transfer; +- Standard_Boolean Transfer(const TDF_LabelSequence & L, const STEPControl_StepModelType mode = STEPControl_AsIs, const char * multi = 0, const Message_ProgressRange & theProgress = Message_ProgressRange()); ++ Standard_Boolean Transfer(const TDF_LabelSequence & theLabelSeq, const STEPControl_StepModelType theMode = STEPControl_AsIs, Standard_CString theIsMulti = 0, const Message_ProgressRange & theProgress = Message_ProgressRange()); + + /****************** Write ******************/ + /**** md5 signature: 14544d6ececf228a5871ef6afa0279ae ****/ +@@ -2248,7 +2248,7 @@ IFSelect_ReturnStatus + IFSelect_ReturnStatus WriteStream(std::ostream & theStream); + + /****************** Writer ******************/ +- /**** md5 signature: 70b6d632350a5ba6ff972c4b437432a0 ****/ ++ /**** md5 signature: 056d4f3221d283b7d58d92ddd5c40dd7 ****/ + %feature("compactdefaultargs") Writer; + %feature("autodoc", "Returns basic reader as const. + +diff --git a/src/SWIG_files/wrapper/STEPCAFControl.pyi b/src/SWIG_files/wrapper/STEPCAFControl.pyi +index 896eedcf..9160ffa9 100644 +--- a/src/SWIG_files/wrapper/STEPCAFControl.pyi ++++ b/src/SWIG_files/wrapper/STEPCAFControl.pyi +@@ -175,12 +175,12 @@ class STEPCAFControl_Writer: + @overload + def __init__(self) -> None: ... + @overload +- def __init__(self, WS: XSControl_WorkSession, scratch: Optional[bool] = True) -> None: ... ++ def __init__(self, theWS: XSControl_WorkSession, theScratch: Optional[bool] = True) -> None: ... + def ChangeWriter(self) -> STEPControl_Writer: ... + @overload +- def ExternFile(self, L: TDF_Label, ef: STEPCAFControl_ExternFile) -> bool: ... ++ def ExternFile(self, theLabel: TDF_Label, theExtFile: STEPCAFControl_ExternFile) -> bool: ... + @overload +- def ExternFile(self, name: str, ef: STEPCAFControl_ExternFile) -> bool: ... ++ def ExternFile(self, theName: str, theExtFile: STEPCAFControl_ExternFile) -> bool: ... + def ExternFiles(self) -> False: ... + def GetColorMode(self) -> bool: ... + def GetDimTolMode(self) -> bool: ... +@@ -189,24 +189,24 @@ class STEPCAFControl_Writer: + def GetNameMode(self) -> bool: ... + def GetPropsMode(self) -> bool: ... + def GetSHUOMode(self) -> bool: ... +- def Init(self, WS: XSControl_WorkSession, scratch: Optional[bool] = True) -> None: ... ++ def Init(self, theWS: XSControl_WorkSession, theScratch: Optional[bool] = True) -> None: ... + @overload +- def Perform(self, doc: TDocStd_Document, filename: TCollection_AsciiString, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ... ++ def Perform(self, theDoc: TDocStd_Document, theFileName: str, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ... + @overload +- def Perform(self, doc: TDocStd_Document, filename: str, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ... +- def SetColorMode(self, colormode: bool) -> None: ... +- def SetDimTolMode(self, dimtolmode: bool) -> None: ... +- def SetLayerMode(self, layermode: bool) -> None: ... +- def SetMaterialMode(self, matmode: bool) -> None: ... +- def SetNameMode(self, namemode: bool) -> None: ... +- def SetPropsMode(self, propsmode: bool) -> None: ... +- def SetSHUOMode(self, shuomode: bool) -> None: ... ++ def Perform(self, theDoc: TDocStd_Document, theFileName: str, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ... ++ def SetColorMode(self, theColorMode: bool) -> None: ... ++ def SetDimTolMode(self, theDimTolMode: bool) -> None: ... ++ def SetLayerMode(self, theLayerMode: bool) -> None: ... ++ def SetMaterialMode(self, theMaterialMode: bool) -> None: ... ++ def SetNameMode(self, theNameMode: bool) -> None: ... ++ def SetPropsMode(self, thePropsMode: bool) -> None: ... ++ def SetSHUOMode(self, theSHUOMode: bool) -> None: ... + @overload +- def Transfer(self, doc: TDocStd_Document, mode: Optional[STEPControl_StepModelType] = STEPControl_AsIs, multi: Optional[str] = 0, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ... ++ def Transfer(self, theDoc: TDocStd_Document, theMode: Optional[STEPControl_StepModelType] = STEPControl_AsIs, theIsMulti: Optional[str] = 0, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ... + @overload +- def Transfer(self, L: TDF_Label, mode: Optional[STEPControl_StepModelType] = STEPControl_AsIs, multi: Optional[str] = 0, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ... ++ def Transfer(self, theLabel: TDF_Label, theMode: Optional[STEPControl_StepModelType] = STEPControl_AsIs, theIsMulti: Optional[str] = 0, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ... + @overload +- def Transfer(self, L: TDF_LabelSequence, mode: Optional[STEPControl_StepModelType] = STEPControl_AsIs, multi: Optional[str] = 0, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ... ++ def Transfer(self, theLabelSeq: TDF_LabelSequence, theMode: Optional[STEPControl_StepModelType] = STEPControl_AsIs, theIsMulti: Optional[str] = 0, theProgress: Optional[Message_ProgressRange] = Message_ProgressRange()) -> bool: ... + def Write(self, theFileName: str) -> IFSelect_ReturnStatus: ... + def Writer(self) -> STEPControl_Writer: ... + +diff --git a/src/SWIG_files/wrapper/STEPConstruct.i b/src/SWIG_files/wrapper/STEPConstruct.i +index f1221c33..d9eaffc8 100644 +--- a/src/SWIG_files/wrapper/STEPConstruct.i ++++ b/src/SWIG_files/wrapper/STEPConstruct.i +@@ -2598,6 +2598,17 @@ opencascade::handle + ") MakeColorPSA; + opencascade::handle MakeColorPSA(const opencascade::handle & item, const opencascade::handle & SurfCol, const opencascade::handle & CurveCol, const opencascade::handle & RenderCol, const Standard_Real RenderTransp, const Standard_Boolean isForNAUO = Standard_False); + ++ /****************** NbRootStyles ******************/ ++ /**** md5 signature: 4bb6a5a6f49e5abb7085f5ef57337a5a ****/ ++ %feature("compactdefaultargs") NbRootStyles; ++ %feature("autodoc", "Returns number of override styles. ++ ++Returns ++------- ++int ++") NbRootStyles; ++ Standard_Integer NbRootStyles(); ++ + /****************** NbStyles ******************/ + /**** md5 signature: 9f5fbd515247307ce70e63c6f585ddb7 ****/ + %feature("compactdefaultargs") NbStyles; +@@ -2609,6 +2620,21 @@ int + ") NbStyles; + Standard_Integer NbStyles(); + ++ /****************** RootStyle ******************/ ++ /**** md5 signature: 97e67ad6592e4e36a6444e18652921fc ****/ ++ %feature("compactdefaultargs") RootStyle; ++ %feature("autodoc", "Returns override style with given index. ++ ++Parameters ++---------- ++i: int ++ ++Returns ++------- ++opencascade::handle ++") RootStyle; ++ opencascade::handle RootStyle(const Standard_Integer i); ++ + /****************** Style ******************/ + /**** md5 signature: e152f39ac13e328dca6d350a6f881da8 ****/ + %feature("compactdefaultargs") Style; +diff --git a/src/SWIG_files/wrapper/STEPConstruct.pyi b/src/SWIG_files/wrapper/STEPConstruct.pyi +index ca04fc33..0f3aa64d 100644 +--- a/src/SWIG_files/wrapper/STEPConstruct.pyi ++++ b/src/SWIG_files/wrapper/STEPConstruct.pyi +@@ -253,7 +253,9 @@ class STEPConstruct_Styles(STEPConstruct_Tool): + def LoadInvisStyles(self, InvSyles: TColStd_HSequenceOfTransient) -> bool: ... + def LoadStyles(self) -> bool: ... + def MakeColorPSA(self, item: StepRepr_RepresentationItem, SurfCol: StepVisual_Colour, CurveCol: StepVisual_Colour, RenderCol: StepVisual_Colour, RenderTransp: float, isForNAUO: Optional[bool] = False) -> StepVisual_PresentationStyleAssignment: ... ++ def NbRootStyles(self) -> int: ... + def NbStyles(self) -> int: ... ++ def RootStyle(self, i: int) -> StepVisual_StyledItem: ... + def Style(self, i: int) -> StepVisual_StyledItem: ... + + class STEPConstruct_ValidationProps(STEPConstruct_Tool): +diff --git a/src/SWIG_files/wrapper/ShapeUpgrade.i b/src/SWIG_files/wrapper/ShapeUpgrade.i +index 1fd11ef9..b3c16c8c 100644 +--- a/src/SWIG_files/wrapper/ShapeUpgrade.i ++++ b/src/SWIG_files/wrapper/ShapeUpgrade.i +@@ -1064,6 +1064,7 @@ None + class ShapeUpgrade_UnifySameDomain : public Standard_Transient { + public: + typedef NCollection_DataMap, TopTools_ShapeMapHasher> DataMapOfFacePlane; ++typedef NCollection_DataMap DataMapOfShapeMapOfShape; + /****************** ShapeUpgrade_UnifySameDomain ******************/ + /**** md5 signature: 81e68dd91fd764ff95aa62b12dc88ed6 ****/ + %feature("compactdefaultargs") ShapeUpgrade_UnifySameDomain; +diff --git a/src/SWIG_files/wrapper/StdPrs.i b/src/SWIG_files/wrapper/StdPrs.i +index 0d01b154..bcdbf6c2 100644 +--- a/src/SWIG_files/wrapper/StdPrs.i ++++ b/src/SWIG_files/wrapper/StdPrs.i +@@ -1220,7 +1220,7 @@ int + class StdPrs_ShadedShape : public Prs3d_Root { + public: + /****************** Add ******************/ +- /**** md5 signature: 4361c97ebfd2d178620c977d5eabb386 ****/ ++ /**** md5 signature: eb25cffb7e72ca49100cdcc43a05ee8c ****/ + %feature("compactdefaultargs") Add; + %feature("autodoc", "Shades . @param thevolumetype defines the way how to interpret input shapes - as closed volumes (to activate back-face culling and capping plane algorithms), as open volumes (shells or solids with holes) or to perform autodetection (would split input shape into two groups). + +@@ -1231,15 +1231,17 @@ theShape: TopoDS_Shape + theDrawer: Prs3d_Drawer + theVolume: StdPrs_Volume,optional + default value is StdPrs_Volume_Autodetection ++theGroup: Graphic3d_Group,optional ++ default value is NULL + + Returns + ------- + None + ") Add; +- static void Add(const opencascade::handle & thePresentation, const TopoDS_Shape & theShape, const opencascade::handle & theDrawer, const StdPrs_Volume theVolume = StdPrs_Volume_Autodetection); ++ static void Add(const opencascade::handle & thePresentation, const TopoDS_Shape & theShape, const opencascade::handle & theDrawer, const StdPrs_Volume theVolume = StdPrs_Volume_Autodetection, const opencascade::handle & theGroup = NULL); + + /****************** Add ******************/ +- /**** md5 signature: c21dc028b4eb82bb3707a6e95d6e5c3b ****/ ++ /**** md5 signature: c2784d9b78f332340fcb1d6c9293a2a1 ****/ + %feature("compactdefaultargs") Add; + %feature("autodoc", "Shades with texture coordinates. @param thevolumetype defines the way how to interpret input shapes - as closed volumes (to activate back-face culling and capping plane algorithms), as open volumes (shells or solids with holes) or to perform autodetection (would split input shape into two groups). + +@@ -1254,12 +1256,14 @@ theUVRepeat: gp_Pnt2d + theUVScale: gp_Pnt2d + theVolume: StdPrs_Volume,optional + default value is StdPrs_Volume_Autodetection ++theGroup: Graphic3d_Group,optional ++ default value is NULL + + Returns + ------- + None + ") Add; +- static void Add(const opencascade::handle & thePresentation, const TopoDS_Shape & theShape, const opencascade::handle & theDrawer, const Standard_Boolean theHasTexels, const gp_Pnt2d & theUVOrigin, const gp_Pnt2d & theUVRepeat, const gp_Pnt2d & theUVScale, const StdPrs_Volume theVolume = StdPrs_Volume_Autodetection); ++ static void Add(const opencascade::handle & thePresentation, const TopoDS_Shape & theShape, const opencascade::handle & theDrawer, const Standard_Boolean theHasTexels, const gp_Pnt2d & theUVOrigin, const gp_Pnt2d & theUVRepeat, const gp_Pnt2d & theUVScale, const StdPrs_Volume theVolume = StdPrs_Volume_Autodetection, const opencascade::handle & theGroup = NULL); + + /****************** AddWireframeForFacesWithoutTriangles ******************/ + /**** md5 signature: 2399101e036cd3b0540bfa37732d6fc1 ****/ +diff --git a/src/SWIG_files/wrapper/StdPrs.pyi b/src/SWIG_files/wrapper/StdPrs.pyi +index 3a01af7b..4df76eb5 100644 +--- a/src/SWIG_files/wrapper/StdPrs.pyi ++++ b/src/SWIG_files/wrapper/StdPrs.pyi +@@ -156,10 +156,10 @@ class StdPrs_PoleCurve(Prs3d_Root): + class StdPrs_ShadedShape(Prs3d_Root): + @overload + @staticmethod +- def Add(thePresentation: Prs3d_Presentation, theShape: TopoDS_Shape, theDrawer: Prs3d_Drawer, theVolume: Optional[StdPrs_Volume] = StdPrs_Volume_Autodetection) -> None: ... ++ def Add(thePresentation: Prs3d_Presentation, theShape: TopoDS_Shape, theDrawer: Prs3d_Drawer, theVolume: Optional[StdPrs_Volume] = StdPrs_Volume_Autodetection, theGroup: Optional[Graphic3d_Group] = None) -> None: ... + @overload + @staticmethod +- def Add(thePresentation: Prs3d_Presentation, theShape: TopoDS_Shape, theDrawer: Prs3d_Drawer, theHasTexels: bool, theUVOrigin: gp_Pnt2d, theUVRepeat: gp_Pnt2d, theUVScale: gp_Pnt2d, theVolume: Optional[StdPrs_Volume] = StdPrs_Volume_Autodetection) -> None: ... ++ def Add(thePresentation: Prs3d_Presentation, theShape: TopoDS_Shape, theDrawer: Prs3d_Drawer, theHasTexels: bool, theUVOrigin: gp_Pnt2d, theUVRepeat: gp_Pnt2d, theUVScale: gp_Pnt2d, theVolume: Optional[StdPrs_Volume] = StdPrs_Volume_Autodetection, theGroup: Optional[Graphic3d_Group] = None) -> None: ... + @staticmethod + def AddWireframeForFacesWithoutTriangles(thePrs: Prs3d_Presentation, theShape: TopoDS_Shape, theDrawer: Prs3d_Drawer) -> None: ... + @staticmethod +diff --git a/src/SWIG_files/wrapper/StepToGeom.i b/src/SWIG_files/wrapper/StepToGeom.i +index a91cc710..f4ab236f 100644 +--- a/src/SWIG_files/wrapper/StepToGeom.i ++++ b/src/SWIG_files/wrapper/StepToGeom.i +@@ -808,22 +808,6 @@ opencascade::handle + ") MakeVectorWithMagnitude2d; + static opencascade::handle MakeVectorWithMagnitude2d(const opencascade::handle & SV); + +- /****************** MakeYprRotation ******************/ +- /**** md5 signature: de9dc847a92c9949d29654e63b9eb686 ****/ +- %feature("compactdefaultargs") MakeYprRotation; +- %feature("autodoc", "No available documentation. +- +-Parameters +----------- +-SR: StepKinematics_SpatialRotation +-theCntxt: StepRepr_GlobalUnitAssignedContext +- +-Returns +-------- +-opencascade::handle +-") MakeYprRotation; +- static opencascade::handle MakeYprRotation(const StepKinematics_SpatialRotation & SR, const opencascade::handle & theCntxt); +- + }; + + +diff --git a/src/SWIG_files/wrapper/XCAFDoc.i b/src/SWIG_files/wrapper/XCAFDoc.i +index 791919dd..e5c716a9 100644 +--- a/src/SWIG_files/wrapper/XCAFDoc.i ++++ b/src/SWIG_files/wrapper/XCAFDoc.i +@@ -2317,7 +2317,7 @@ TDF_Label + TDF_Label FindColor(const Quantity_ColorRGBA & col); + + /****************** GetColor ******************/ +- /**** md5 signature: be86e43f2f2ac06163dce467a9739527 ****/ ++ /**** md5 signature: 7092ec33c89b067e1ceab0d67b5ed02d ****/ + %feature("compactdefaultargs") GetColor; + %feature("autodoc", "Returns color defined by label lab returns false if the label is not in colortable or does not define a color. + +@@ -2330,10 +2330,10 @@ Returns + ------- + bool + ") GetColor; +- Standard_Boolean GetColor(const TDF_Label & lab, Quantity_Color & col); ++ static Standard_Boolean GetColor(const TDF_Label & lab, Quantity_Color & col); + + /****************** GetColor ******************/ +- /**** md5 signature: a7a6506d3132240934c87e97ec6b28ed ****/ ++ /**** md5 signature: 7252a98dd463a84602d0b7516d6cfc04 ****/ + %feature("compactdefaultargs") GetColor; + %feature("autodoc", "Returns color defined by label lab returns false if the label is not in colortable or does not define a color. + +@@ -2346,7 +2346,7 @@ Returns + ------- + bool + ") GetColor; +- Standard_Boolean GetColor(const TDF_Label & lab, Quantity_ColorRGBA & col); ++ static Standard_Boolean GetColor(const TDF_Label & lab, Quantity_ColorRGBA & col); + + /****************** GetColor ******************/ + /**** md5 signature: 869ec12dba73e125e4d66d2a85d2d496 ****/ +@@ -2366,7 +2366,7 @@ bool + static Standard_Boolean GetColor(const TDF_Label & L, const XCAFDoc_ColorType type, TDF_Label & colorL); + + /****************** GetColor ******************/ +- /**** md5 signature: 5801253cfaf9cc63278aa2d80d15b2c3 ****/ ++ /**** md5 signature: 9f42bc515522bf5857381b8ed56f5af6 ****/ + %feature("compactdefaultargs") GetColor; + %feature("autodoc", "Returns color assigned to as returns false if no such color is assigned. + +@@ -2380,10 +2380,10 @@ Returns + ------- + bool + ") GetColor; +- Standard_Boolean GetColor(const TDF_Label & L, const XCAFDoc_ColorType type, Quantity_Color & color); ++ static Standard_Boolean GetColor(const TDF_Label & L, const XCAFDoc_ColorType type, Quantity_Color & color); + + /****************** GetColor ******************/ +- /**** md5 signature: f56e146c8c1c603ab9bcf2d6c801e3b4 ****/ ++ /**** md5 signature: 175af0eadf13dd6e8e7059280dcebe1e ****/ + %feature("compactdefaultargs") GetColor; + %feature("autodoc", "Returns color assigned to as returns false if no such color is assigned. + +@@ -2397,7 +2397,7 @@ Returns + ------- + bool + ") GetColor; +- Standard_Boolean GetColor(const TDF_Label & L, const XCAFDoc_ColorType type, Quantity_ColorRGBA & color); ++ static Standard_Boolean GetColor(const TDF_Label & L, const XCAFDoc_ColorType type, Quantity_ColorRGBA & color); + + /****************** GetColor ******************/ + /**** md5 signature: 6e439ce30113cabaadf18ee4ce1d0971 ****/ +@@ -2599,7 +2599,7 @@ bool + Standard_Boolean IsSet(const TopoDS_Shape & S, const XCAFDoc_ColorType type); + + /****************** IsVisible ******************/ +- /**** md5 signature: e84f73aaf1ac293dea741c71b9f10a4b ****/ ++ /**** md5 signature: bcc14ce19df050eb884b5911b48c4b59 ****/ + %feature("compactdefaultargs") IsVisible; + %feature("autodoc", "Return true if object on this label is visible, false if invisible. + +@@ -2611,7 +2611,7 @@ Returns + ------- + bool + ") IsVisible; +- Standard_Boolean IsVisible(const TDF_Label & L); ++ static Standard_Boolean IsVisible(const TDF_Label & L); + + /****************** RemoveColor ******************/ + /**** md5 signature: 3e1749f5696dd21fe53c3eb3d8e77952 ****/ +@@ -3477,7 +3477,7 @@ None + void GetDatumLabels(TDF_LabelSequence & Labels); + + /****************** GetDatumOfTolerLabels ******************/ +- /**** md5 signature: ed65059da2973245ec5c0f5e0dfd7526 ****/ ++ /**** md5 signature: 581e63a0a9642866e1575d216f9b4d3d ****/ + %feature("compactdefaultargs") GetDatumOfTolerLabels; + %feature("autodoc", "Returns all datum labels defined for thedimtoll label. + +@@ -3490,10 +3490,10 @@ Returns + ------- + bool + ") GetDatumOfTolerLabels; +- Standard_Boolean GetDatumOfTolerLabels(const TDF_Label & theDimTolL, TDF_LabelSequence & theDatums); ++ static Standard_Boolean GetDatumOfTolerLabels(const TDF_Label & theDimTolL, TDF_LabelSequence & theDatums); + + /****************** GetDatumWithObjectOfTolerLabels ******************/ +- /**** md5 signature: da94437dec84c797c8bab6e76d5e373f ****/ ++ /**** md5 signature: d5f3a53d01bb6038ce1c82b7e4989ce4 ****/ + %feature("compactdefaultargs") GetDatumWithObjectOfTolerLabels; + %feature("autodoc", "Returns all datum labels with xcafdimtolobjects_datumobject defined for label thedimtoll. + +@@ -3506,7 +3506,7 @@ Returns + ------- + bool + ") GetDatumWithObjectOfTolerLabels; +- Standard_Boolean GetDatumWithObjectOfTolerLabels(const TDF_Label & theDimTolL, TDF_LabelSequence & theDatums); ++ static Standard_Boolean GetDatumWithObjectOfTolerLabels(const TDF_Label & theDimTolL, TDF_LabelSequence & theDatums); + + /****************** GetDimTol ******************/ + /**** md5 signature: 5f2928d077835acfc683c0b7e312ac72 ****/ +@@ -3646,7 +3646,7 @@ bool + Standard_Boolean GetRefGeomToleranceLabels(const TDF_Label & theShapeL, TDF_LabelSequence & theDimTols); + + /****************** GetRefShapeLabel ******************/ +- /**** md5 signature: e25d6989472f0a0e102c1daa5f739a29 ****/ ++ /**** md5 signature: b09dac51ded70edf3dd23cc545931b1a ****/ + %feature("compactdefaultargs") GetRefShapeLabel; + %feature("autodoc", "Gets all shape labels referred by thel label of the gd&t table. returns false if there are no shape labels added to the sequences. + +@@ -3660,7 +3660,7 @@ Returns + ------- + bool + ") GetRefShapeLabel; +- Standard_Boolean GetRefShapeLabel(const TDF_Label & theL, TDF_LabelSequence & theShapeLFirst, TDF_LabelSequence & theShapeLSecond); ++ static Standard_Boolean GetRefShapeLabel(const TDF_Label & theL, TDF_LabelSequence & theShapeLFirst, TDF_LabelSequence & theShapeLSecond); + + /****************** GetTolerOfDatumLabels ******************/ + /**** md5 signature: b4d4047d58bcf3d1d31d5586d788da7e ****/ +@@ -5490,20 +5490,20 @@ opencascade::handle + opencascade::handle GetLayers(const TopoDS_Shape & Sh); + + /****************** GetShapesOfLayer ******************/ +- /**** md5 signature: 8b01d3b5f0a0832996031f609b876e7c ****/ ++ /**** md5 signature: 2bcd2de1711ebf8ae0d1ddf5d01dce52 ****/ + %feature("compactdefaultargs") GetShapesOfLayer; + %feature("autodoc", "Return sequanese of shape labels that assigned with layers to . + + Parameters + ---------- +-layerL: TDF_Label +-ShLabels: TDF_LabelSequence ++theLayerL: TDF_Label ++theShLabels: TDF_LabelSequence + + Returns + ------- + None + ") GetShapesOfLayer; +- void GetShapesOfLayer(const TDF_Label & layerL, TDF_LabelSequence & ShLabels); ++ static void GetShapesOfLayer(const TDF_Label & theLayerL, TDF_LabelSequence & theShLabels); + + /****************** ID ******************/ + /**** md5 signature: 4697ce8a095fa6dcef0217708d19718f ****/ +@@ -6456,7 +6456,7 @@ Standard_GUID + static const Standard_GUID & GetID(); + + /****************** GetMaterial ******************/ +- /**** md5 signature: 806c54e68af730f31f3353b2ba682bd0 ****/ ++ /**** md5 signature: cf930e538eb371f96b92c4f439c49612 ****/ + %feature("compactdefaultargs") GetMaterial; + %feature("autodoc", "Returns material assigned to returns false if no such material is assigned. + +@@ -6472,7 +6472,7 @@ Returns + ------- + aDensity: float + ") GetMaterial; +- Standard_Boolean GetMaterial(const TDF_Label & MatL, opencascade::handle & aName, opencascade::handle & aDescription, Standard_Real &OutValue, opencascade::handle & aDensName, opencascade::handle & aDensValType); ++ static Standard_Boolean GetMaterial(const TDF_Label & MatL, opencascade::handle &OutValue, opencascade::handle &OutValue, Standard_Real &OutValue, opencascade::handle &OutValue, opencascade::handle &OutValue); + + /****************** GetMaterialLabels ******************/ + /**** md5 signature: cd3883adc849957e7e10d763ad936071 ****/ +@@ -8152,6 +8152,32 @@ opencascade::handle + ") GetNamedProperties; + opencascade::handle GetNamedProperties(const TopoDS_Shape & theShape, const Standard_Boolean theToCreate = Standard_False); + ++ /****************** GetOneShape ******************/ ++ /**** md5 signature: 3215690f7fd49b341401d78832c630e0 ****/ ++ %feature("compactdefaultargs") GetOneShape; ++ %feature("autodoc", "Gets shape from a sequence of shape's labels @param[in] thelabels a sequence of labels to get shapes from returns original shape in case of one label and a compound of shapes in case of more. ++ ++Parameters ++---------- ++theLabels: TDF_LabelSequence ++ ++Returns ++------- ++TopoDS_Shape ++") GetOneShape; ++ static TopoDS_Shape GetOneShape(const TDF_LabelSequence & theLabels); ++ ++ /****************** GetOneShape ******************/ ++ /**** md5 signature: 5c1df85e1e2a72b0b93fde509f26a709 ****/ ++ %feature("compactdefaultargs") GetOneShape; ++ %feature("autodoc", "Gets shape from a sequence of all top-level shapes which are free returns original shape in case of one label and a compound of shapes in case of more. ++ ++Returns ++------- ++TopoDS_Shape ++") GetOneShape; ++ TopoDS_Shape GetOneShape(); ++ + /****************** GetReferredShape ******************/ + /**** md5 signature: 63acc4d5460c835c166b1fc0b2913030 ****/ + %feature("compactdefaultargs") GetReferredShape; +@@ -9844,7 +9870,7 @@ Standard_GUID + static const Standard_GUID & GetID(); + + /****************** GetMaterial ******************/ +- /**** md5 signature: 83194336f7abcf51085de62960d38361 ****/ ++ /**** md5 signature: 694e93123423187642f68fe8d4e64f2a ****/ + %feature("compactdefaultargs") GetMaterial; + %feature("autodoc", "Returns material defined by specified label, or null if the label is not in material table. + +@@ -9856,7 +9882,7 @@ Returns + ------- + opencascade::handle + ") GetMaterial; +- opencascade::handle GetMaterial(const TDF_Label & theMatLabel); ++ static opencascade::handle GetMaterial(const TDF_Label & theMatLabel); + + /****************** GetMaterials ******************/ + /**** md5 signature: a96d68af36051bd063fefc1e10aabb79 ****/ +@@ -9890,7 +9916,7 @@ bool + static Standard_Boolean GetShapeMaterial(const TDF_Label & theShapeLabel, TDF_Label & theMaterialLabel); + + /****************** GetShapeMaterial ******************/ +- /**** md5 signature: 86335bfdea98c720bcf3af0fe4fb0fe0 ****/ ++ /**** md5 signature: 04847c1ad68cdd465933ffa2a713f244 ****/ + %feature("compactdefaultargs") GetShapeMaterial; + %feature("autodoc", "Returns material assigned to the shape label. + +@@ -9902,7 +9928,7 @@ Returns + ------- + opencascade::handle + ") GetShapeMaterial; +- opencascade::handle GetShapeMaterial(const TDF_Label & theShapeLabel); ++ static opencascade::handle GetShapeMaterial(const TDF_Label & theShapeLabel); + + /****************** GetShapeMaterial ******************/ + /**** md5 signature: b4d2560c50c52f8b49c713aa67731929 ****/ +diff --git a/src/SWIG_files/wrapper/XCAFDoc.pyi b/src/SWIG_files/wrapper/XCAFDoc.pyi +index b3036a2f..9fed3910 100644 +--- a/src/SWIG_files/wrapper/XCAFDoc.pyi ++++ b/src/SWIG_files/wrapper/XCAFDoc.pyi +@@ -299,16 +299,20 @@ class XCAFDoc_ColorTool(TDataStd_GenericEmpty): + @overload + def FindColor(self, col: Quantity_ColorRGBA) -> TDF_Label: ... + @overload +- def GetColor(self, lab: TDF_Label, col: Quantity_Color) -> bool: ... ++ @staticmethod ++ def GetColor(lab: TDF_Label, col: Quantity_Color) -> bool: ... + @overload +- def GetColor(self, lab: TDF_Label, col: Quantity_ColorRGBA) -> bool: ... ++ @staticmethod ++ def GetColor(lab: TDF_Label, col: Quantity_ColorRGBA) -> bool: ... + @overload + @staticmethod + def GetColor(L: TDF_Label, type: XCAFDoc_ColorType, colorL: TDF_Label) -> bool: ... + @overload +- def GetColor(self, L: TDF_Label, type: XCAFDoc_ColorType, color: Quantity_Color) -> bool: ... ++ @staticmethod ++ def GetColor(L: TDF_Label, type: XCAFDoc_ColorType, color: Quantity_Color) -> bool: ... + @overload +- def GetColor(self, L: TDF_Label, type: XCAFDoc_ColorType, color: Quantity_ColorRGBA) -> bool: ... ++ @staticmethod ++ def GetColor(L: TDF_Label, type: XCAFDoc_ColorType, color: Quantity_ColorRGBA) -> bool: ... + @overload + def GetColor(self, S: TopoDS_Shape, type: XCAFDoc_ColorType, colorL: TDF_Label) -> bool: ... + @overload +@@ -330,7 +334,8 @@ class XCAFDoc_ColorTool(TDataStd_GenericEmpty): + def IsSet(self, L: TDF_Label, type: XCAFDoc_ColorType) -> bool: ... + @overload + def IsSet(self, S: TopoDS_Shape, type: XCAFDoc_ColorType) -> bool: ... +- def IsVisible(self, L: TDF_Label) -> bool: ... ++ @staticmethod ++ def IsVisible(L: TDF_Label) -> bool: ... + def RemoveColor(self, lab: TDF_Label) -> None: ... + def ReverseChainsOfTreeNodes(self) -> bool: ... + @staticmethod +@@ -418,9 +423,11 @@ class XCAFDoc_DimTolTool(TDataStd_GenericEmpty): + def FindDimTol(self, theKind: int, theVal: TColStd_HArray1OfReal, theName: TCollection_HAsciiString, theDescription: TCollection_HAsciiString) -> TDF_Label: ... + def GetDatum(self, theDatumL: TDF_Label, theName: TCollection_HAsciiString, theDescription: TCollection_HAsciiString, theIdentification: TCollection_HAsciiString) -> bool: ... + def GetDatumLabels(self, Labels: TDF_LabelSequence) -> None: ... +- def GetDatumOfTolerLabels(self, theDimTolL: TDF_Label, theDatums: TDF_LabelSequence) -> bool: ... +- def GetDatumWithObjectOfTolerLabels(self, theDimTolL: TDF_Label, theDatums: TDF_LabelSequence) -> bool: ... +- def GetDimTol(self, theDimTolL: TDF_Label, theVal: TColStd_HArray1OfReal, theName: TCollection_HAsciiString, theDescription: TCollection_HAsciiString) -> Tuple[bool, int]: ... ++ @staticmethod ++ def GetDatumOfTolerLabels(theDimTolL: TDF_Label, theDatums: TDF_LabelSequence) -> bool: ... ++ @staticmethod ++ def GetDatumWithObjectOfTolerLabels(theDimTolL: TDF_Label, theDatums: TDF_LabelSequence) -> bool: ... ++ def GetDimTol(self, theDimTolL: TDF_Label, theVal: TColStd_HArray1OfReal) -> Tuple[bool, int, str, str]: ... + def GetDimTolLabels(self, Labels: TDF_LabelSequence) -> None: ... + def GetDimensionLabels(self, theLabels: TDF_LabelSequence) -> None: ... + def GetGeomToleranceLabels(self, theLabels: TDF_LabelSequence) -> None: ... +@@ -429,7 +436,8 @@ class XCAFDoc_DimTolTool(TDataStd_GenericEmpty): + def GetRefDatumLabel(self, theShapeL: TDF_Label, theDatum: TDF_LabelSequence) -> bool: ... + def GetRefDimensionLabels(self, theShapeL: TDF_Label, theDimensions: TDF_LabelSequence) -> bool: ... + def GetRefGeomToleranceLabels(self, theShapeL: TDF_Label, theDimTols: TDF_LabelSequence) -> bool: ... +- def GetRefShapeLabel(self, theL: TDF_Label, theShapeLFirst: TDF_LabelSequence, theShapeLSecond: TDF_LabelSequence) -> bool: ... ++ @staticmethod ++ def GetRefShapeLabel(theL: TDF_Label, theShapeLFirst: TDF_LabelSequence, theShapeLSecond: TDF_LabelSequence) -> bool: ... + def GetTolerOfDatumLabels(self, theDatumL: TDF_Label, theTols: TDF_LabelSequence) -> bool: ... + def ID(self) -> Standard_GUID: ... + def IsDatum(self, lab: TDF_Label) -> bool: ... +@@ -629,7 +637,8 @@ class XCAFDoc_LayerTool(TDataStd_GenericEmpty): + def GetLayers(self, Sh: TopoDS_Shape, aLayerLS: TDF_LabelSequence) -> bool: ... + @overload + def GetLayers(self, Sh: TopoDS_Shape) -> TColStd_HSequenceOfExtendedString: ... +- def GetShapesOfLayer(self, layerL: TDF_Label, ShLabels: TDF_LabelSequence) -> None: ... ++ @staticmethod ++ def GetShapesOfLayer(theLayerL: TDF_Label, theShLabels: TDF_LabelSequence) -> None: ... + def ID(self) -> Standard_GUID: ... + def IsLayer(self, lab: TDF_Label) -> bool: ... + @overload +@@ -731,7 +740,8 @@ class XCAFDoc_MaterialTool(TDataStd_GenericEmpty): + def GetDensityForShape(ShapeL: TDF_Label) -> float: ... + @staticmethod + def GetID() -> Standard_GUID: ... +- def GetMaterial(self, MatL: TDF_Label, aName: TCollection_HAsciiString, aDescription: TCollection_HAsciiString, aDensName: TCollection_HAsciiString, aDensValType: TCollection_HAsciiString) -> Tuple[bool, float]: ... ++ @staticmethod ++ def GetMaterial(MatL: TDF_Label) -> Tuple[bool, str, str, float, str, str]: ... + def GetMaterialLabels(self, Labels: TDF_LabelSequence) -> None: ... + def ID(self) -> Standard_GUID: ... + def IsMaterial(self, lab: TDF_Label) -> bool: ... +@@ -899,6 +909,11 @@ class XCAFDoc_ShapeTool(TDataStd_GenericEmpty): + def GetNamedProperties(self, theLabel: TDF_Label, theToCreate: Optional[bool] = False) -> TDataStd_NamedData: ... + @overload + def GetNamedProperties(self, theShape: TopoDS_Shape, theToCreate: Optional[bool] = False) -> TDataStd_NamedData: ... ++ @overload ++ @staticmethod ++ def GetOneShape(theLabels: TDF_LabelSequence) -> TopoDS_Shape: ... ++ @overload ++ def GetOneShape(self) -> TopoDS_Shape: ... + @staticmethod + def GetReferredShape(L: TDF_Label, Label: TDF_Label) -> bool: ... + @staticmethod +@@ -1058,13 +1073,15 @@ class XCAFDoc_VisMaterialTool(TDF_Attribute): + def BaseLabel(self) -> TDF_Label: ... + @staticmethod + def GetID() -> Standard_GUID: ... +- def GetMaterial(self, theMatLabel: TDF_Label) -> XCAFDoc_VisMaterial: ... ++ @staticmethod ++ def GetMaterial(theMatLabel: TDF_Label) -> XCAFDoc_VisMaterial: ... + def GetMaterials(self, Labels: TDF_LabelSequence) -> None: ... + @overload + @staticmethod + def GetShapeMaterial(theShapeLabel: TDF_Label, theMaterialLabel: TDF_Label) -> bool: ... + @overload +- def GetShapeMaterial(self, theShapeLabel: TDF_Label) -> XCAFDoc_VisMaterial: ... ++ @staticmethod ++ def GetShapeMaterial(theShapeLabel: TDF_Label) -> XCAFDoc_VisMaterial: ... + @overload + def GetShapeMaterial(self, theShape: TopoDS_Shape, theMaterialLabel: TDF_Label) -> bool: ... + @overload +@@ -1209,7 +1226,12 @@ XCAFDoc_Color_Set = XCAFDoc_Color.Set + XCAFDoc_Color_Set = XCAFDoc_Color.Set + XCAFDoc_ColorTool_AutoNaming = XCAFDoc_ColorTool.AutoNaming + XCAFDoc_ColorTool_GetColor = XCAFDoc_ColorTool.GetColor ++XCAFDoc_ColorTool_GetColor = XCAFDoc_ColorTool.GetColor ++XCAFDoc_ColorTool_GetColor = XCAFDoc_ColorTool.GetColor ++XCAFDoc_ColorTool_GetColor = XCAFDoc_ColorTool.GetColor ++XCAFDoc_ColorTool_GetColor = XCAFDoc_ColorTool.GetColor + XCAFDoc_ColorTool_GetID = XCAFDoc_ColorTool.GetID ++XCAFDoc_ColorTool_IsVisible = XCAFDoc_ColorTool.IsVisible + XCAFDoc_ColorTool_Set = XCAFDoc_ColorTool.Set + XCAFDoc_ColorTool_SetAutoNaming = XCAFDoc_ColorTool.SetAutoNaming + XCAFDoc_Datum_GetID = XCAFDoc_Datum.GetID +@@ -1217,7 +1239,10 @@ XCAFDoc_Datum_Set = XCAFDoc_Datum.Set + XCAFDoc_Datum_Set = XCAFDoc_Datum.Set + XCAFDoc_DimTol_GetID = XCAFDoc_DimTol.GetID + XCAFDoc_DimTol_Set = XCAFDoc_DimTol.Set ++XCAFDoc_DimTolTool_GetDatumOfTolerLabels = XCAFDoc_DimTolTool.GetDatumOfTolerLabels ++XCAFDoc_DimTolTool_GetDatumWithObjectOfTolerLabels = XCAFDoc_DimTolTool.GetDatumWithObjectOfTolerLabels + XCAFDoc_DimTolTool_GetID = XCAFDoc_DimTolTool.GetID ++XCAFDoc_DimTolTool_GetRefShapeLabel = XCAFDoc_DimTolTool.GetRefShapeLabel + XCAFDoc_DimTolTool_Set = XCAFDoc_DimTolTool.Set + XCAFDoc_Dimension_GetID = XCAFDoc_Dimension.GetID + XCAFDoc_Dimension_Set = XCAFDoc_Dimension.Set +@@ -1268,6 +1293,7 @@ XCAFDoc_GraphNode_GetDefaultGraphID = XCAFDoc_GraphNode.GetDefaultGraphID + XCAFDoc_GraphNode_Set = XCAFDoc_GraphNode.Set + XCAFDoc_GraphNode_Set = XCAFDoc_GraphNode.Set + XCAFDoc_LayerTool_GetID = XCAFDoc_LayerTool.GetID ++XCAFDoc_LayerTool_GetShapesOfLayer = XCAFDoc_LayerTool.GetShapesOfLayer + XCAFDoc_LayerTool_Set = XCAFDoc_LayerTool.Set + XCAFDoc_LengthUnit_GetID = XCAFDoc_LengthUnit.GetID + XCAFDoc_LengthUnit_Set = XCAFDoc_LengthUnit.Set +@@ -1279,6 +1305,7 @@ XCAFDoc_Material_GetID = XCAFDoc_Material.GetID + XCAFDoc_Material_Set = XCAFDoc_Material.Set + XCAFDoc_MaterialTool_GetDensityForShape = XCAFDoc_MaterialTool.GetDensityForShape + XCAFDoc_MaterialTool_GetID = XCAFDoc_MaterialTool.GetID ++XCAFDoc_MaterialTool_GetMaterial = XCAFDoc_MaterialTool.GetMaterial + XCAFDoc_MaterialTool_Set = XCAFDoc_MaterialTool.Set + XCAFDoc_Note_Get = XCAFDoc_Note.Get + XCAFDoc_Note_IsMine = XCAFDoc_Note.IsMine +@@ -1294,6 +1321,7 @@ XCAFDoc_ShapeTool_GetComponents = XCAFDoc_ShapeTool.GetComponents + XCAFDoc_ShapeTool_GetExternRefs = XCAFDoc_ShapeTool.GetExternRefs + XCAFDoc_ShapeTool_GetID = XCAFDoc_ShapeTool.GetID + XCAFDoc_ShapeTool_GetLocation = XCAFDoc_ShapeTool.GetLocation ++XCAFDoc_ShapeTool_GetOneShape = XCAFDoc_ShapeTool.GetOneShape + XCAFDoc_ShapeTool_GetReferredShape = XCAFDoc_ShapeTool.GetReferredShape + XCAFDoc_ShapeTool_GetSHUO = XCAFDoc_ShapeTool.GetSHUO + XCAFDoc_ShapeTool_GetSHUONextUsage = XCAFDoc_ShapeTool.GetSHUONextUsage +@@ -1320,6 +1348,8 @@ XCAFDoc_ViewTool_GetID = XCAFDoc_ViewTool.GetID + XCAFDoc_ViewTool_Set = XCAFDoc_ViewTool.Set + XCAFDoc_VisMaterial_GetID = XCAFDoc_VisMaterial.GetID + XCAFDoc_VisMaterialTool_GetID = XCAFDoc_VisMaterialTool.GetID ++XCAFDoc_VisMaterialTool_GetMaterial = XCAFDoc_VisMaterialTool.GetMaterial ++XCAFDoc_VisMaterialTool_GetShapeMaterial = XCAFDoc_VisMaterialTool.GetShapeMaterial + XCAFDoc_VisMaterialTool_GetShapeMaterial = XCAFDoc_VisMaterialTool.GetShapeMaterial + XCAFDoc_VisMaterialTool_Set = XCAFDoc_VisMaterialTool.Set + XCAFDoc_Volume_Get = XCAFDoc_Volume.Get +diff --git a/src/SWIG_files/wrapper/XCAFPrs.i b/src/SWIG_files/wrapper/XCAFPrs.i +index 51f661e0..efa0d4b0 100644 +--- a/src/SWIG_files/wrapper/XCAFPrs.i ++++ b/src/SWIG_files/wrapper/XCAFPrs.i +@@ -1019,7 +1019,7 @@ None + class XCAFPrs_Texture : public Graphic3d_Texture2D { + public: + /****************** XCAFPrs_Texture ******************/ +- /**** md5 signature: f9dbe9d0fe880b67c047fad8716af896 ****/ ++ /**** md5 signature: 000bd876aad38ca74535015d5e9463d7 ****/ + %feature("compactdefaultargs") XCAFPrs_Texture; + %feature("autodoc", "Constructor. + +@@ -1032,7 +1032,7 @@ Returns + ------- + None + ") XCAFPrs_Texture; +- XCAFPrs_Texture(const Image_Texture & theImageSource, const Graphic3d_TextureUnit theUnit); ++ XCAFPrs_Texture(const opencascade::handle & theImageSource, const Graphic3d_TextureUnit theUnit); + + /****************** GetCompressedImage ******************/ + /**** md5 signature: bad0c95151f5a884e9dbc72217977538 ****/ +@@ -1065,15 +1065,15 @@ opencascade::handle + virtual opencascade::handle GetImage(const opencascade::handle & theSupported); + + /****************** GetImageSource ******************/ +- /**** md5 signature: 1fa59174d8d0d408df072137f5b3fe0e ****/ ++ /**** md5 signature: c24f99a1f3e5bf7521b240aa232d6d28 ****/ + %feature("compactdefaultargs") GetImageSource; + %feature("autodoc", "Return image source. + + Returns + ------- +-Image_Texture ++opencascade::handle + ") GetImageSource; +- const Image_Texture & GetImageSource(); ++ const opencascade::handle & GetImageSource(); + + }; + + +From 44af64d633d315e52e3f18247ff8e26d0619effb Mon Sep 17 00:00:00 2001 +From: tpaviot +Date: Tue, 4 Apr 2023 03:57:57 +0200 +Subject: [PATCH 2/4] bump occt version to 7.7.1 + +--- + CMakeLists.txt | 6 +++--- + ci/conda/meta.yaml | 6 +++--- + src/PkgBase/__init__.py | 2 +- + 3 files changed, 7 insertions(+), 7 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 14a60d09..8cef86b0 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -21,8 +21,8 @@ project(PYTHONOCC) + + # set pythonOCC version + set(PYTHONOCC_VERSION_MAJOR 7) +-set(PYTHONOCC_VERSION_MINOR 6) +-set(PYTHONOCC_VERSION_PATCH 3) ++set(PYTHONOCC_VERSION_MINOR 7) ++set(PYTHONOCC_VERSION_PATCH 1) + + # Empty for official releases, set to -dev, -rc1, etc for development releases + set(PYTHONOCC_VERSION_DEVEL ) +@@ -147,7 +147,7 @@ if(DEFINED OCE_INCLUDE_PATH) + # if OCE_INCLUDE_PATH is not passed at command line, + # find OCE automatically + else(OCE_INCLUDE_PATH) +- find_package(OpenCASCADE 7.7.0 REQUIRED) ++ find_package(OpenCASCADE 7.7.1 REQUIRED) + if(OpenCASCADE_FOUND) + message(STATUS "OpenCASCADE version found: " ${OpenCASCADE_MAJOR_VERSION} "." ${OpenCASCADE_MINOR_VERSION} "." ${OpenCASCADE_MAINTENANCE_VERSION}) + message(STATUS "OpenCASCADE include directory: " ${OpenCASCADE_INCLUDE_DIR}) +diff --git a/ci/conda/meta.yaml b/ci/conda/meta.yaml +index 33d91edc..8ca381de 100644 +--- a/ci/conda/meta.yaml ++++ b/ci/conda/meta.yaml +@@ -1,4 +1,4 @@ +-{% set version = "7.7.0" %} ++{% set version = "7.7.1" %} + + package: + name: pythonocc-core +@@ -26,11 +26,11 @@ requirements: + + host: + - python {{ python }} +- - occt ==7.7.0 ++ - occt ==7.7.1 + - numpy >=1.17 + + run: +- - occt ==7.7.0 ++ - occt ==7.7.1 + - six + - numpy >=1.17 + +diff --git a/src/PkgBase/__init__.py b/src/PkgBase/__init__.py +index 898fb48e..e90690b0 100644 +--- a/src/PkgBase/__init__.py ++++ b/src/PkgBase/__init__.py +@@ -1,6 +1,6 @@ + PYTHONOCC_VERSION_MAJOR = 7 + PYTHONOCC_VERSION_MINOR = 7 +-PYTHONOCC_VERSION_PATCH = 0 ++PYTHONOCC_VERSION_PATCH = 1 + + # Empty for official releases, set to -dev, -rc1, etc for development releases + PYTHONOCC_VERSION_DEVEL = '' + +From 6ec7cc9095631de070573fc26164578f2e2c87bf Mon Sep 17 00:00:00 2001 +From: tpaviot +Date: Thu, 13 Apr 2023 16:40:05 +0200 +Subject: [PATCH 3/4] remove xvfb tests from conda build + +--- + ci/conda/run_test.sh | 7 ------- + 1 file changed, 7 deletions(-) + +diff --git a/ci/conda/run_test.sh b/ci/conda/run_test.sh +index 8d0acf0a..6610b84e 100644 +--- a/ci/conda/run_test.sh ++++ b/ci/conda/run_test.sh +@@ -2,10 +2,3 @@ + cd ../work/test + python run_tests.py + mypy test_mypy_classic_occ_bottle.py +- +-if [ $(uname) == Linux ]; then +- # start xvfb +- xvfb-run --auto-servernum --server-args='-screen 0, 1024x768x24' python core_display_pyqt5_unittest.py +- xvfb-run --auto-servernum --server-args='-screen 0, 1024x768x24' python core_display_pyside2_unittest.py +- xvfb-run --auto-servernum --server-args='-screen 0, 1024x768x24' python core_display_wx_unittest.py +-fi + +From bcd7a2c2e0b12801416db9c0d73f2c01992e8ab5 Mon Sep 17 00:00:00 2001 +From: tpaviot +Date: Thu, 13 Apr 2023 17:08:51 +0200 +Subject: [PATCH 4/4] Fix DataEchange load colrs + +--- + src/Extend/DataExchange.py | 15 ++++++++------- + 1 file changed, 8 insertions(+), 7 deletions(-) + +diff --git a/src/Extend/DataExchange.py b/src/Extend/DataExchange.py +index 20f0c9b8..6545d83a 100644 +--- a/src/Extend/DataExchange.py ++++ b/src/Extend/DataExchange.py +@@ -41,6 +41,7 @@ from OCC.Core.TDocStd import TDocStd_Document + from OCC.Core.XCAFDoc import ( + XCAFDoc_DocumentTool_ShapeTool, + XCAFDoc_DocumentTool_ColorTool, ++ XCAFDoc_ColorTool, + ) + from OCC.Core.STEPCAFControl import STEPCAFControl_Reader + from OCC.Core.TDF import TDF_LabelSequence, TDF_Label +@@ -62,6 +63,7 @@ try: + except ImportError: + HAVE_SVGWRITE = False + ++ + ########################## + # Step import and export # + ########################## +@@ -280,11 +282,10 @@ def read_step_file_with_names_colors(filename): + + if not color_set: + if ( +- color_tool.GetColor(lab, 0, c) +- or color_tool.GetColor(lab, 1, c) +- or color_tool.GetColor(lab, 2, c) ++ XCAFDoc_ColorTool.GetColor(lab, 0, c) ++ or XCAFDoc_ColorTool.GetColor(lab, 1, c) ++ or XCAFDoc_ColorTool.GetColor(lab, 2, c) + ): +- + color_tool.SetInstanceColor(shape, 0, c) + color_tool.SetInstanceColor(shape, 1, c) + color_tool.SetInstanceColor(shape, 2, c) +@@ -330,9 +331,9 @@ def read_step_file_with_names_colors(filename): + + if not color_set: + if ( +- color_tool.GetColor(lab_subs, 0, c) +- or color_tool.GetColor(lab_subs, 1, c) +- or color_tool.GetColor(lab_subs, 2, c) ++ XCAFDoc_ColorTool.GetColor(lab_subs, 0, c) ++ or XCAFDoc_ColorTool.GetColor(lab_subs, 1, c) ++ or XCAFDoc_ColorTool.GetColor(lab_subs, 2, c) + ): + color_tool.SetInstanceColor(shape, 0, c) + color_tool.SetInstanceColor(shape, 1, c) diff --git a/srcpkgs/python3-occ/template b/srcpkgs/python3-occ/template index 1fd02e0b26a..947435fe886 100644 --- a/srcpkgs/python3-occ/template +++ b/srcpkgs/python3-occ/template @@ -6,7 +6,7 @@ archs="i686* x86_64* armv7l* aarch64* ppc*" build_style=cmake configure_args="-DPYTHONOCC_BUILD_TYPE=None -DCMAKE_BUILD_TYPE=None" hostmakedepends="python3 swig" -makedepends="python3-devel occt-devel freetype-devel swig" +makedepends="python3-devel occt-devel freetype-devel swig rapidjson" depends="python3 occt freetype" short_desc="Industrial strength 3D CAD Python3 package" maintainer="Karl Nilsson "