# This file was automatically generated by SWIG (http://www.swig.org).
# Version 4.0.2
#
# Do not make changes to this file unless you know what you are doing--modify
# the SWIG interface file instead.

"""
TopOpeBRepTool module, see official documentation at
https://www.opencascade.com/doc/occt-7.4.0/refman/html/package_topopebreptool.html
"""

from sys import version_info as _swig_python_version_info
if _swig_python_version_info < (2, 7, 0):
    raise RuntimeError("Python 2.7 or later required")

# Import the low-level C/C++ module
if __package__ or "." in __name__:
    from . import _TopOpeBRepTool
else:
    import _TopOpeBRepTool

try:
    import builtins as __builtin__
except ImportError:
    import __builtin__

def _swig_repr(self):
    try:
        strthis = "proxy of " + self.this.__repr__()
    except __builtin__.Exception:
        strthis = ""
    return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,)


def _swig_setattr_nondynamic_instance_variable(set):
    def set_instance_attr(self, name, value):
        if name == "thisown":
            self.this.own(value)
        elif name == "this":
            set(self, name, value)
        elif hasattr(self, name) and isinstance(getattr(type(self), name), property):
            set(self, name, value)
        else:
            raise AttributeError("You cannot add instance attributes to %s" % self)
    return set_instance_attr


def _swig_setattr_nondynamic_class_variable(set):
    def set_class_attr(cls, name, value):
        if hasattr(cls, name) and not isinstance(getattr(cls, name), property):
            set(cls, name, value)
        else:
            raise AttributeError("You cannot add class attributes to %s" % cls)
    return set_class_attr


def _swig_add_metaclass(metaclass):
    """Class decorator for adding a metaclass to a SWIG wrapped class - a slimmed down version of six.add_metaclass"""
    def wrapper(cls):
        return metaclass(cls.__name__, cls.__bases__, cls.__dict__.copy())
    return wrapper


class _SwigNonDynamicMeta(type):
    """Meta class to enforce nondynamic attributes (no new attributes) for a class"""
    __setattr__ = _swig_setattr_nondynamic_class_variable(type.__setattr__)


class SwigPyIterator(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    __swig_destroy__ = _TopOpeBRepTool.delete_SwigPyIterator

    def value(self) -> "PyObject *":
        return _TopOpeBRepTool.SwigPyIterator_value(self)

    def incr(self, n: "size_t"=1) -> "swig::SwigPyIterator *":
        return _TopOpeBRepTool.SwigPyIterator_incr(self, n)

    def decr(self, n: "size_t"=1) -> "swig::SwigPyIterator *":
        return _TopOpeBRepTool.SwigPyIterator_decr(self, n)

    def distance(self, x: "SwigPyIterator") -> "ptrdiff_t":
        return _TopOpeBRepTool.SwigPyIterator_distance(self, x)

    def equal(self, x: "SwigPyIterator") -> "bool":
        return _TopOpeBRepTool.SwigPyIterator_equal(self, x)

    def copy(self) -> "swig::SwigPyIterator *":
        return _TopOpeBRepTool.SwigPyIterator_copy(self)

    def next(self) -> "PyObject *":
        return _TopOpeBRepTool.SwigPyIterator_next(self)

    def __next__(self) -> "PyObject *":
        return _TopOpeBRepTool.SwigPyIterator___next__(self)

    def previous(self) -> "PyObject *":
        return _TopOpeBRepTool.SwigPyIterator_previous(self)

    def advance(self, n: "ptrdiff_t") -> "swig::SwigPyIterator *":
        return _TopOpeBRepTool.SwigPyIterator_advance(self, n)

    def __eq__(self, x: "SwigPyIterator") -> "bool":
        return _TopOpeBRepTool.SwigPyIterator___eq__(self, x)

    def __ne__(self, x: "SwigPyIterator") -> "bool":
        return _TopOpeBRepTool.SwigPyIterator___ne__(self, x)

    def __iadd__(self, n: "ptrdiff_t") -> "swig::SwigPyIterator &":
        return _TopOpeBRepTool.SwigPyIterator___iadd__(self, n)

    def __isub__(self, n: "ptrdiff_t") -> "swig::SwigPyIterator &":
        return _TopOpeBRepTool.SwigPyIterator___isub__(self, n)

    def __add__(self, n: "ptrdiff_t") -> "swig::SwigPyIterator *":
        return _TopOpeBRepTool.SwigPyIterator___add__(self, n)

    def __sub__(self, *args) -> "ptrdiff_t":
        return _TopOpeBRepTool.SwigPyIterator___sub__(self, *args)
    def __iter__(self):
        return self

# Register SwigPyIterator in _TopOpeBRepTool:
_TopOpeBRepTool.SwigPyIterator_swigregister(SwigPyIterator)


def _dumps_object(klass):
    """ Overwrite default string output for any wrapped object.
    By default, __repr__ method returns something like:
    <OCC.Core.TopoDS.TopoDS_Shape; proxy of <Swig Object of type 'TopoDS_Shape *' at 0x02BB0758> >
    This is too much verbose.
    We prefer :
    <class 'gp_Pnt'>
    or
    <class 'TopoDS_Shape'>
    """
    klass_name = str(klass.__class__).split(".")[3].split("'")[0]
    repr_string = "<class '" + klass_name + "'"
# for TopoDS_Shape, we also look for the base type
    if klass_name == "TopoDS_Shape":
        if klass.IsNull():
            repr_string += ": Null>"
            return repr_string
        st = klass.ShapeType()
        types = {OCC.Core.TopAbs.TopAbs_VERTEX: "Vertex",
                 OCC.Core.TopAbs.TopAbs_SOLID: "Solid",
                 OCC.Core.TopAbs.TopAbs_EDGE: "Edge",
                 OCC.Core.TopAbs.TopAbs_FACE: "Face",
                 OCC.Core.TopAbs.TopAbs_SHELL: "Shell",
                 OCC.Core.TopAbs.TopAbs_WIRE: "Wire",
                 OCC.Core.TopAbs.TopAbs_COMPOUND: "Compound",
                 OCC.Core.TopAbs.TopAbs_COMPSOLID: "Compsolid"}
        repr_string += "; Type:%s" % types[st]        
    elif hasattr(klass, "IsNull"):
        if klass.IsNull():
            repr_string += "; Null"
    repr_string += ">"
    return repr_string


def process_exception(error: "Standard_Failure", method_name: "std::string", class_name: "std::string") -> "void":
    return _TopOpeBRepTool.process_exception(error, method_name, class_name)

from six import with_metaclass
import warnings
from OCC.Wrapper.wrapper_utils import Proxy, deprecated

import OCC.Core.Standard
import OCC.Core.NCollection
import OCC.Core.BRepClass3d
import OCC.Core.TopoDS
import OCC.Core.Message
import OCC.Core.TCollection
import OCC.Core.OSD
import OCC.Core.TColStd
import OCC.Core.TopAbs
import OCC.Core.TopLoc
import OCC.Core.gp
import OCC.Core.IntCurveSurface
import OCC.Core.math
import OCC.Core.Adaptor3d
import OCC.Core.Geom
import OCC.Core.GeomAbs
import OCC.Core.TColgp
import OCC.Core.Adaptor2d
import OCC.Core.Geom2d
import OCC.Core.Intf
import OCC.Core.Bnd
import OCC.Core.BVH
import OCC.Core.IntSurf
import OCC.Core.TopTools
import OCC.Core.IntCurvesFace
import OCC.Core.BRepAdaptor
import OCC.Core.GeomAdaptor
import OCC.Core.Geom2dAdaptor
import OCC.Core.TopExp
import OCC.Core.Extrema

from enum import IntEnum
from OCC.Core.Exception import *

TopOpeBRepTool_BSPLINE1 = _TopOpeBRepTool.TopOpeBRepTool_BSPLINE1
TopOpeBRepTool_APPROX = _TopOpeBRepTool.TopOpeBRepTool_APPROX
TopOpeBRepTool_INTERPOL = _TopOpeBRepTool.TopOpeBRepTool_INTERPOL


class TopOpeBRepTool_OutCurveType(IntEnum):
	TopOpeBRepTool_BSPLINE1 = 0
	TopOpeBRepTool_APPROX = 1
	TopOpeBRepTool_INTERPOL = 2
TopOpeBRepTool_BSPLINE1 = TopOpeBRepTool_OutCurveType.TopOpeBRepTool_BSPLINE1
TopOpeBRepTool_APPROX = TopOpeBRepTool_OutCurveType.TopOpeBRepTool_APPROX
TopOpeBRepTool_INTERPOL = TopOpeBRepTool_OutCurveType.TopOpeBRepTool_INTERPOL


def Handle_TopOpeBRepTool_HBoxTool_Create() -> "opencascade::handle< TopOpeBRepTool_HBoxTool >":
    return _TopOpeBRepTool.Handle_TopOpeBRepTool_HBoxTool_Create()

def Handle_TopOpeBRepTool_HBoxTool_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< TopOpeBRepTool_HBoxTool >":
    return _TopOpeBRepTool.Handle_TopOpeBRepTool_HBoxTool_DownCast(t)

def Handle_TopOpeBRepTool_HBoxTool_IsNull(t: "opencascade::handle< TopOpeBRepTool_HBoxTool > const &") -> "bool":
    return _TopOpeBRepTool.Handle_TopOpeBRepTool_HBoxTool_IsNull(t)
class TopOpeBRepTool_DataMapOfOrientedShapeC2DF(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def begin(self) -> "NCollection_DataMap< TopoDS_Shape,TopOpeBRepTool_C2DF,TopTools_OrientedShapeMapHasher >::iterator":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfOrientedShapeC2DF_begin(self)

    def end(self) -> "NCollection_DataMap< TopoDS_Shape,TopOpeBRepTool_C2DF,TopTools_OrientedShapeMapHasher >::iterator":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfOrientedShapeC2DF_end(self)

    def cbegin(self) -> "NCollection_DataMap< TopoDS_Shape,TopOpeBRepTool_C2DF,TopTools_OrientedShapeMapHasher >::const_iterator":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfOrientedShapeC2DF_cbegin(self)

    def cend(self) -> "NCollection_DataMap< TopoDS_Shape,TopOpeBRepTool_C2DF,TopTools_OrientedShapeMapHasher >::const_iterator":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfOrientedShapeC2DF_cend(self)

    def __init__(self, *args):
        _TopOpeBRepTool.TopOpeBRepTool_DataMapOfOrientedShapeC2DF_swiginit(self, _TopOpeBRepTool.new_TopOpeBRepTool_DataMapOfOrientedShapeC2DF(*args))

    def Exchange(self, theOther: "TopOpeBRepTool_DataMapOfOrientedShapeC2DF") -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfOrientedShapeC2DF_Exchange(self, theOther)

    def Assign(self, theOther: "TopOpeBRepTool_DataMapOfOrientedShapeC2DF") -> "NCollection_DataMap< TopoDS_Shape,TopOpeBRepTool_C2DF,TopTools_OrientedShapeMapHasher > &":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfOrientedShapeC2DF_Assign(self, theOther)

    def Set(self, theOther: "TopOpeBRepTool_DataMapOfOrientedShapeC2DF") -> "NCollection_DataMap< TopoDS_Shape,TopOpeBRepTool_C2DF,TopTools_OrientedShapeMapHasher > &":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfOrientedShapeC2DF_Set(self, theOther)

    def ReSize(self, N: "Standard_Integer const") -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfOrientedShapeC2DF_ReSize(self, N)

    def Bind(self, theKey: "TopoDS_Shape", theItem: "TopOpeBRepTool_C2DF") -> "Standard_Boolean":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfOrientedShapeC2DF_Bind(self, theKey, theItem)

    def Bound(self, theKey: "TopoDS_Shape", theItem: "TopOpeBRepTool_C2DF") -> "TopOpeBRepTool_C2DF *":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfOrientedShapeC2DF_Bound(self, theKey, theItem)

    def IsBound(self, theKey: "TopoDS_Shape") -> "Standard_Boolean":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfOrientedShapeC2DF_IsBound(self, theKey)

    def UnBind(self, theKey: "TopoDS_Shape") -> "Standard_Boolean":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfOrientedShapeC2DF_UnBind(self, theKey)

    def Seek(self, theKey: "TopoDS_Shape") -> "TopOpeBRepTool_C2DF const *":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfOrientedShapeC2DF_Seek(self, theKey)

    def Find(self, *args) -> "Standard_Boolean":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfOrientedShapeC2DF_Find(self, *args)

    def ChangeSeek(self, theKey: "TopoDS_Shape") -> "TopOpeBRepTool_C2DF *":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfOrientedShapeC2DF_ChangeSeek(self, theKey)

    def ChangeFind(self, theKey: "TopoDS_Shape") -> "TopOpeBRepTool_C2DF &":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfOrientedShapeC2DF_ChangeFind(self, theKey)

    def __call__(self, *args) -> "TopOpeBRepTool_C2DF &":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfOrientedShapeC2DF___call__(self, *args)

    def Clear(self, *args) -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfOrientedShapeC2DF_Clear(self, *args)
    __swig_destroy__ = _TopOpeBRepTool.delete_TopOpeBRepTool_DataMapOfOrientedShapeC2DF

    def Size(self) -> "Standard_Integer":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfOrientedShapeC2DF_Size(self)

# Register TopOpeBRepTool_DataMapOfOrientedShapeC2DF in _TopOpeBRepTool:
_TopOpeBRepTool.TopOpeBRepTool_DataMapOfOrientedShapeC2DF_swigregister(TopOpeBRepTool_DataMapOfOrientedShapeC2DF)

class TopOpeBRepTool_DataMapOfShapeListOfC2DF(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def begin(self) -> "NCollection_DataMap< TopoDS_Shape,TopOpeBRepTool_ListOfC2DF,TopTools_ShapeMapHasher >::iterator":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeListOfC2DF_begin(self)

    def end(self) -> "NCollection_DataMap< TopoDS_Shape,TopOpeBRepTool_ListOfC2DF,TopTools_ShapeMapHasher >::iterator":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeListOfC2DF_end(self)

    def cbegin(self) -> "NCollection_DataMap< TopoDS_Shape,TopOpeBRepTool_ListOfC2DF,TopTools_ShapeMapHasher >::const_iterator":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeListOfC2DF_cbegin(self)

    def cend(self) -> "NCollection_DataMap< TopoDS_Shape,TopOpeBRepTool_ListOfC2DF,TopTools_ShapeMapHasher >::const_iterator":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeListOfC2DF_cend(self)

    def __init__(self, *args):
        _TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeListOfC2DF_swiginit(self, _TopOpeBRepTool.new_TopOpeBRepTool_DataMapOfShapeListOfC2DF(*args))

    def Exchange(self, theOther: "TopOpeBRepTool_DataMapOfShapeListOfC2DF") -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeListOfC2DF_Exchange(self, theOther)

    def Assign(self, theOther: "TopOpeBRepTool_DataMapOfShapeListOfC2DF") -> "NCollection_DataMap< TopoDS_Shape,TopOpeBRepTool_ListOfC2DF,TopTools_ShapeMapHasher > &":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeListOfC2DF_Assign(self, theOther)

    def Set(self, theOther: "TopOpeBRepTool_DataMapOfShapeListOfC2DF") -> "NCollection_DataMap< TopoDS_Shape,TopOpeBRepTool_ListOfC2DF,TopTools_ShapeMapHasher > &":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeListOfC2DF_Set(self, theOther)

    def ReSize(self, N: "Standard_Integer const") -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeListOfC2DF_ReSize(self, N)

    def Bind(self, theKey: "TopoDS_Shape", theItem: "TopOpeBRepTool_ListOfC2DF") -> "Standard_Boolean":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeListOfC2DF_Bind(self, theKey, theItem)

    def Bound(self, theKey: "TopoDS_Shape", theItem: "TopOpeBRepTool_ListOfC2DF") -> "TopOpeBRepTool_ListOfC2DF *":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeListOfC2DF_Bound(self, theKey, theItem)

    def IsBound(self, theKey: "TopoDS_Shape") -> "Standard_Boolean":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeListOfC2DF_IsBound(self, theKey)

    def UnBind(self, theKey: "TopoDS_Shape") -> "Standard_Boolean":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeListOfC2DF_UnBind(self, theKey)

    def Seek(self, theKey: "TopoDS_Shape") -> "TopOpeBRepTool_ListOfC2DF const *":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeListOfC2DF_Seek(self, theKey)

    def Find(self, *args) -> "Standard_Boolean":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeListOfC2DF_Find(self, *args)

    def ChangeSeek(self, theKey: "TopoDS_Shape") -> "TopOpeBRepTool_ListOfC2DF *":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeListOfC2DF_ChangeSeek(self, theKey)

    def ChangeFind(self, theKey: "TopoDS_Shape") -> "TopOpeBRepTool_ListOfC2DF &":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeListOfC2DF_ChangeFind(self, theKey)

    def __call__(self, *args) -> "TopOpeBRepTool_ListOfC2DF &":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeListOfC2DF___call__(self, *args)

    def Clear(self, *args) -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeListOfC2DF_Clear(self, *args)
    __swig_destroy__ = _TopOpeBRepTool.delete_TopOpeBRepTool_DataMapOfShapeListOfC2DF

    def Size(self) -> "Standard_Integer":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeListOfC2DF_Size(self)

# Register TopOpeBRepTool_DataMapOfShapeListOfC2DF in _TopOpeBRepTool:
_TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeListOfC2DF_swigregister(TopOpeBRepTool_DataMapOfShapeListOfC2DF)

class TopOpeBRepTool_DataMapOfShapeface(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def begin(self) -> "NCollection_DataMap< TopoDS_Shape,TopOpeBRepTool_face,TopTools_ShapeMapHasher >::iterator":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeface_begin(self)

    def end(self) -> "NCollection_DataMap< TopoDS_Shape,TopOpeBRepTool_face,TopTools_ShapeMapHasher >::iterator":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeface_end(self)

    def cbegin(self) -> "NCollection_DataMap< TopoDS_Shape,TopOpeBRepTool_face,TopTools_ShapeMapHasher >::const_iterator":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeface_cbegin(self)

    def cend(self) -> "NCollection_DataMap< TopoDS_Shape,TopOpeBRepTool_face,TopTools_ShapeMapHasher >::const_iterator":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeface_cend(self)

    def __init__(self, *args):
        _TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeface_swiginit(self, _TopOpeBRepTool.new_TopOpeBRepTool_DataMapOfShapeface(*args))

    def Exchange(self, theOther: "TopOpeBRepTool_DataMapOfShapeface") -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeface_Exchange(self, theOther)

    def Assign(self, theOther: "TopOpeBRepTool_DataMapOfShapeface") -> "NCollection_DataMap< TopoDS_Shape,TopOpeBRepTool_face,TopTools_ShapeMapHasher > &":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeface_Assign(self, theOther)

    def Set(self, theOther: "TopOpeBRepTool_DataMapOfShapeface") -> "NCollection_DataMap< TopoDS_Shape,TopOpeBRepTool_face,TopTools_ShapeMapHasher > &":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeface_Set(self, theOther)

    def ReSize(self, N: "Standard_Integer const") -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeface_ReSize(self, N)

    def Bind(self, theKey: "TopoDS_Shape", theItem: "TopOpeBRepTool_face") -> "Standard_Boolean":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeface_Bind(self, theKey, theItem)

    def Bound(self, theKey: "TopoDS_Shape", theItem: "TopOpeBRepTool_face") -> "TopOpeBRepTool_face *":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeface_Bound(self, theKey, theItem)

    def IsBound(self, theKey: "TopoDS_Shape") -> "Standard_Boolean":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeface_IsBound(self, theKey)

    def UnBind(self, theKey: "TopoDS_Shape") -> "Standard_Boolean":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeface_UnBind(self, theKey)

    def Seek(self, theKey: "TopoDS_Shape") -> "TopOpeBRepTool_face const *":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeface_Seek(self, theKey)

    def Find(self, *args) -> "Standard_Boolean":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeface_Find(self, *args)

    def ChangeSeek(self, theKey: "TopoDS_Shape") -> "TopOpeBRepTool_face *":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeface_ChangeSeek(self, theKey)

    def ChangeFind(self, theKey: "TopoDS_Shape") -> "TopOpeBRepTool_face &":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeface_ChangeFind(self, theKey)

    def __call__(self, *args) -> "TopOpeBRepTool_face &":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeface___call__(self, *args)

    def Clear(self, *args) -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeface_Clear(self, *args)
    __swig_destroy__ = _TopOpeBRepTool.delete_TopOpeBRepTool_DataMapOfShapeface

    def Size(self) -> "Standard_Integer":
        return _TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeface_Size(self)

# Register TopOpeBRepTool_DataMapOfShapeface in _TopOpeBRepTool:
_TopOpeBRepTool.TopOpeBRepTool_DataMapOfShapeface_swigregister(TopOpeBRepTool_DataMapOfShapeface)

class TopOpeBRepTool_IndexedDataMapOfShapeBox(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def begin(self) -> "NCollection_IndexedDataMap< TopoDS_Shape,Bnd_Box,TopTools_OrientedShapeMapHasher >::iterator":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox_begin(self)

    def end(self) -> "NCollection_IndexedDataMap< TopoDS_Shape,Bnd_Box,TopTools_OrientedShapeMapHasher >::iterator":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox_end(self)

    def cbegin(self) -> "NCollection_IndexedDataMap< TopoDS_Shape,Bnd_Box,TopTools_OrientedShapeMapHasher >::const_iterator":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox_cbegin(self)

    def cend(self) -> "NCollection_IndexedDataMap< TopoDS_Shape,Bnd_Box,TopTools_OrientedShapeMapHasher >::const_iterator":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox_cend(self)

    def __init__(self, *args):
        _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox_swiginit(self, _TopOpeBRepTool.new_TopOpeBRepTool_IndexedDataMapOfShapeBox(*args))

    def Exchange(self, theOther: "TopOpeBRepTool_IndexedDataMapOfShapeBox") -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox_Exchange(self, theOther)

    def Assign(self, theOther: "TopOpeBRepTool_IndexedDataMapOfShapeBox") -> "NCollection_IndexedDataMap< TopoDS_Shape,Bnd_Box,TopTools_OrientedShapeMapHasher > &":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox_Assign(self, theOther)

    def Set(self, theOther: "TopOpeBRepTool_IndexedDataMapOfShapeBox") -> "NCollection_IndexedDataMap< TopoDS_Shape,Bnd_Box,TopTools_OrientedShapeMapHasher > &":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox_Set(self, theOther)

    def ReSize(self, N: "Standard_Integer const") -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox_ReSize(self, N)

    def Add(self, theKey1: "TopoDS_Shape", theItem: "Bnd_Box") -> "Standard_Integer":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox_Add(self, theKey1, theItem)

    def Contains(self, theKey1: "TopoDS_Shape") -> "Standard_Boolean":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox_Contains(self, theKey1)

    def Substitute(self, theIndex: "Standard_Integer const", theKey1: "TopoDS_Shape", theItem: "Bnd_Box") -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox_Substitute(self, theIndex, theKey1, theItem)

    def Swap(self, theIndex1: "Standard_Integer const", theIndex2: "Standard_Integer const") -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox_Swap(self, theIndex1, theIndex2)

    def RemoveLast(self) -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox_RemoveLast(self)

    def RemoveFromIndex(self, theIndex: "Standard_Integer const") -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox_RemoveFromIndex(self, theIndex)

    def RemoveKey(self, theKey1: "TopoDS_Shape") -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox_RemoveKey(self, theKey1)

    def FindKey(self, theIndex: "Standard_Integer const") -> "TopoDS_Shape const &":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox_FindKey(self, theIndex)

    def FindFromIndex(self, theIndex: "Standard_Integer const") -> "Bnd_Box const &":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox_FindFromIndex(self, theIndex)

    def ChangeFromIndex(self, theIndex: "Standard_Integer const") -> "Bnd_Box &":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox_ChangeFromIndex(self, theIndex)

    def __call__(self, *args) -> "Bnd_Box &":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox___call__(self, *args)

    def FindIndex(self, theKey1: "TopoDS_Shape") -> "Standard_Integer":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox_FindIndex(self, theKey1)

    def ChangeFromKey(self, theKey1: "TopoDS_Shape") -> "Bnd_Box &":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox_ChangeFromKey(self, theKey1)

    def Seek(self, theKey1: "TopoDS_Shape") -> "Bnd_Box const *":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox_Seek(self, theKey1)

    def ChangeSeek(self, theKey1: "TopoDS_Shape") -> "Bnd_Box *":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox_ChangeSeek(self, theKey1)

    def FindFromKey(self, *args) -> "Standard_Boolean":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox_FindFromKey(self, *args)

    def Clear(self, *args) -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox_Clear(self, *args)
    __swig_destroy__ = _TopOpeBRepTool.delete_TopOpeBRepTool_IndexedDataMapOfShapeBox

    def Size(self) -> "Standard_Integer":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox_Size(self)

# Register TopOpeBRepTool_IndexedDataMapOfShapeBox in _TopOpeBRepTool:
_TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox_swigregister(TopOpeBRepTool_IndexedDataMapOfShapeBox)

class TopOpeBRepTool_IndexedDataMapOfShapeBox2d(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def begin(self) -> "NCollection_IndexedDataMap< TopoDS_Shape,Bnd_Box2d,TopTools_OrientedShapeMapHasher >::iterator":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox2d_begin(self)

    def end(self) -> "NCollection_IndexedDataMap< TopoDS_Shape,Bnd_Box2d,TopTools_OrientedShapeMapHasher >::iterator":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox2d_end(self)

    def cbegin(self) -> "NCollection_IndexedDataMap< TopoDS_Shape,Bnd_Box2d,TopTools_OrientedShapeMapHasher >::const_iterator":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox2d_cbegin(self)

    def cend(self) -> "NCollection_IndexedDataMap< TopoDS_Shape,Bnd_Box2d,TopTools_OrientedShapeMapHasher >::const_iterator":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox2d_cend(self)

    def __init__(self, *args):
        _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox2d_swiginit(self, _TopOpeBRepTool.new_TopOpeBRepTool_IndexedDataMapOfShapeBox2d(*args))

    def Exchange(self, theOther: "TopOpeBRepTool_IndexedDataMapOfShapeBox2d") -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox2d_Exchange(self, theOther)

    def Assign(self, theOther: "TopOpeBRepTool_IndexedDataMapOfShapeBox2d") -> "NCollection_IndexedDataMap< TopoDS_Shape,Bnd_Box2d,TopTools_OrientedShapeMapHasher > &":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox2d_Assign(self, theOther)

    def Set(self, theOther: "TopOpeBRepTool_IndexedDataMapOfShapeBox2d") -> "NCollection_IndexedDataMap< TopoDS_Shape,Bnd_Box2d,TopTools_OrientedShapeMapHasher > &":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox2d_Set(self, theOther)

    def ReSize(self, N: "Standard_Integer const") -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox2d_ReSize(self, N)

    def Add(self, theKey1: "TopoDS_Shape", theItem: "Bnd_Box2d") -> "Standard_Integer":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox2d_Add(self, theKey1, theItem)

    def Contains(self, theKey1: "TopoDS_Shape") -> "Standard_Boolean":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox2d_Contains(self, theKey1)

    def Substitute(self, theIndex: "Standard_Integer const", theKey1: "TopoDS_Shape", theItem: "Bnd_Box2d") -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox2d_Substitute(self, theIndex, theKey1, theItem)

    def Swap(self, theIndex1: "Standard_Integer const", theIndex2: "Standard_Integer const") -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox2d_Swap(self, theIndex1, theIndex2)

    def RemoveLast(self) -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox2d_RemoveLast(self)

    def RemoveFromIndex(self, theIndex: "Standard_Integer const") -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox2d_RemoveFromIndex(self, theIndex)

    def RemoveKey(self, theKey1: "TopoDS_Shape") -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox2d_RemoveKey(self, theKey1)

    def FindKey(self, theIndex: "Standard_Integer const") -> "TopoDS_Shape const &":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox2d_FindKey(self, theIndex)

    def FindFromIndex(self, theIndex: "Standard_Integer const") -> "Bnd_Box2d const &":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox2d_FindFromIndex(self, theIndex)

    def ChangeFromIndex(self, theIndex: "Standard_Integer const") -> "Bnd_Box2d &":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox2d_ChangeFromIndex(self, theIndex)

    def __call__(self, *args) -> "Bnd_Box2d &":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox2d___call__(self, *args)

    def FindIndex(self, theKey1: "TopoDS_Shape") -> "Standard_Integer":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox2d_FindIndex(self, theKey1)

    def ChangeFromKey(self, theKey1: "TopoDS_Shape") -> "Bnd_Box2d &":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox2d_ChangeFromKey(self, theKey1)

    def Seek(self, theKey1: "TopoDS_Shape") -> "Bnd_Box2d const *":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox2d_Seek(self, theKey1)

    def ChangeSeek(self, theKey1: "TopoDS_Shape") -> "Bnd_Box2d *":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox2d_ChangeSeek(self, theKey1)

    def FindFromKey(self, *args) -> "Standard_Boolean":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox2d_FindFromKey(self, *args)

    def Clear(self, *args) -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox2d_Clear(self, *args)
    __swig_destroy__ = _TopOpeBRepTool.delete_TopOpeBRepTool_IndexedDataMapOfShapeBox2d

    def Size(self) -> "Standard_Integer":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox2d_Size(self)

# Register TopOpeBRepTool_IndexedDataMapOfShapeBox2d in _TopOpeBRepTool:
_TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeBox2d_swigregister(TopOpeBRepTool_IndexedDataMapOfShapeBox2d)

class TopOpeBRepTool_IndexedDataMapOfShapeconnexity(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def begin(self) -> "NCollection_IndexedDataMap< TopoDS_Shape,TopOpeBRepTool_connexity,TopTools_ShapeMapHasher >::iterator":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeconnexity_begin(self)

    def end(self) -> "NCollection_IndexedDataMap< TopoDS_Shape,TopOpeBRepTool_connexity,TopTools_ShapeMapHasher >::iterator":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeconnexity_end(self)

    def cbegin(self) -> "NCollection_IndexedDataMap< TopoDS_Shape,TopOpeBRepTool_connexity,TopTools_ShapeMapHasher >::const_iterator":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeconnexity_cbegin(self)

    def cend(self) -> "NCollection_IndexedDataMap< TopoDS_Shape,TopOpeBRepTool_connexity,TopTools_ShapeMapHasher >::const_iterator":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeconnexity_cend(self)

    def __init__(self, *args):
        _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeconnexity_swiginit(self, _TopOpeBRepTool.new_TopOpeBRepTool_IndexedDataMapOfShapeconnexity(*args))

    def Exchange(self, theOther: "TopOpeBRepTool_IndexedDataMapOfShapeconnexity") -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeconnexity_Exchange(self, theOther)

    def Assign(self, theOther: "TopOpeBRepTool_IndexedDataMapOfShapeconnexity") -> "NCollection_IndexedDataMap< TopoDS_Shape,TopOpeBRepTool_connexity,TopTools_ShapeMapHasher > &":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeconnexity_Assign(self, theOther)

    def Set(self, theOther: "TopOpeBRepTool_IndexedDataMapOfShapeconnexity") -> "NCollection_IndexedDataMap< TopoDS_Shape,TopOpeBRepTool_connexity,TopTools_ShapeMapHasher > &":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeconnexity_Set(self, theOther)

    def ReSize(self, N: "Standard_Integer const") -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeconnexity_ReSize(self, N)

    def Add(self, theKey1: "TopoDS_Shape", theItem: "TopOpeBRepTool_connexity") -> "Standard_Integer":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeconnexity_Add(self, theKey1, theItem)

    def Contains(self, theKey1: "TopoDS_Shape") -> "Standard_Boolean":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeconnexity_Contains(self, theKey1)

    def Substitute(self, theIndex: "Standard_Integer const", theKey1: "TopoDS_Shape", theItem: "TopOpeBRepTool_connexity") -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeconnexity_Substitute(self, theIndex, theKey1, theItem)

    def Swap(self, theIndex1: "Standard_Integer const", theIndex2: "Standard_Integer const") -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeconnexity_Swap(self, theIndex1, theIndex2)

    def RemoveLast(self) -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeconnexity_RemoveLast(self)

    def RemoveFromIndex(self, theIndex: "Standard_Integer const") -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeconnexity_RemoveFromIndex(self, theIndex)

    def RemoveKey(self, theKey1: "TopoDS_Shape") -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeconnexity_RemoveKey(self, theKey1)

    def FindKey(self, theIndex: "Standard_Integer const") -> "TopoDS_Shape const &":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeconnexity_FindKey(self, theIndex)

    def FindFromIndex(self, theIndex: "Standard_Integer const") -> "TopOpeBRepTool_connexity const &":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeconnexity_FindFromIndex(self, theIndex)

    def ChangeFromIndex(self, theIndex: "Standard_Integer const") -> "TopOpeBRepTool_connexity &":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeconnexity_ChangeFromIndex(self, theIndex)

    def __call__(self, *args) -> "TopOpeBRepTool_connexity &":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeconnexity___call__(self, *args)

    def FindIndex(self, theKey1: "TopoDS_Shape") -> "Standard_Integer":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeconnexity_FindIndex(self, theKey1)

    def ChangeFromKey(self, theKey1: "TopoDS_Shape") -> "TopOpeBRepTool_connexity &":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeconnexity_ChangeFromKey(self, theKey1)

    def Seek(self, theKey1: "TopoDS_Shape") -> "TopOpeBRepTool_connexity const *":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeconnexity_Seek(self, theKey1)

    def ChangeSeek(self, theKey1: "TopoDS_Shape") -> "TopOpeBRepTool_connexity *":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeconnexity_ChangeSeek(self, theKey1)

    def FindFromKey(self, *args) -> "Standard_Boolean":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeconnexity_FindFromKey(self, *args)

    def Clear(self, *args) -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeconnexity_Clear(self, *args)
    __swig_destroy__ = _TopOpeBRepTool.delete_TopOpeBRepTool_IndexedDataMapOfShapeconnexity

    def Size(self) -> "Standard_Integer":
        return _TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeconnexity_Size(self)

# Register TopOpeBRepTool_IndexedDataMapOfShapeconnexity in _TopOpeBRepTool:
_TopOpeBRepTool.TopOpeBRepTool_IndexedDataMapOfShapeconnexity_swigregister(TopOpeBRepTool_IndexedDataMapOfShapeconnexity)

class TopOpeBRepTool_ListIteratorOfListOfC2DF(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        _TopOpeBRepTool.TopOpeBRepTool_ListIteratorOfListOfC2DF_swiginit(self, _TopOpeBRepTool.new_TopOpeBRepTool_ListIteratorOfListOfC2DF(*args))

    def More(self) -> "Standard_Boolean":
        return _TopOpeBRepTool.TopOpeBRepTool_ListIteratorOfListOfC2DF_More(self)

    def Next(self) -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_ListIteratorOfListOfC2DF_Next(self)

    def Value(self) -> "TopOpeBRepTool_C2DF const &":
        return _TopOpeBRepTool.TopOpeBRepTool_ListIteratorOfListOfC2DF_Value(self)

    def ChangeValue(self) -> "TopOpeBRepTool_C2DF &":
        return _TopOpeBRepTool.TopOpeBRepTool_ListIteratorOfListOfC2DF_ChangeValue(self)
    __swig_destroy__ = _TopOpeBRepTool.delete_TopOpeBRepTool_ListIteratorOfListOfC2DF

# Register TopOpeBRepTool_ListIteratorOfListOfC2DF in _TopOpeBRepTool:
_TopOpeBRepTool.TopOpeBRepTool_ListIteratorOfListOfC2DF_swigregister(TopOpeBRepTool_ListIteratorOfListOfC2DF)

class TopOpeBRepTool_ListOfC2DF(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def begin(self) -> "NCollection_List< TopOpeBRepTool_C2DF >::iterator":
        return _TopOpeBRepTool.TopOpeBRepTool_ListOfC2DF_begin(self)

    def end(self) -> "NCollection_List< TopOpeBRepTool_C2DF >::iterator":
        return _TopOpeBRepTool.TopOpeBRepTool_ListOfC2DF_end(self)

    def cbegin(self) -> "NCollection_List< TopOpeBRepTool_C2DF >::const_iterator":
        return _TopOpeBRepTool.TopOpeBRepTool_ListOfC2DF_cbegin(self)

    def cend(self) -> "NCollection_List< TopOpeBRepTool_C2DF >::const_iterator":
        return _TopOpeBRepTool.TopOpeBRepTool_ListOfC2DF_cend(self)

    def __init__(self, *args):
        _TopOpeBRepTool.TopOpeBRepTool_ListOfC2DF_swiginit(self, _TopOpeBRepTool.new_TopOpeBRepTool_ListOfC2DF(*args))

    def Size(self) -> "Standard_Integer":
        return _TopOpeBRepTool.TopOpeBRepTool_ListOfC2DF_Size(self)

    def Assign(self, theOther: "TopOpeBRepTool_ListOfC2DF") -> "NCollection_List< TopOpeBRepTool_C2DF > &":
        return _TopOpeBRepTool.TopOpeBRepTool_ListOfC2DF_Assign(self, theOther)

    def Set(self, theOther: "TopOpeBRepTool_ListOfC2DF") -> "NCollection_List< TopOpeBRepTool_C2DF > &":
        return _TopOpeBRepTool.TopOpeBRepTool_ListOfC2DF_Set(self, theOther)

    def Clear(self, theAllocator: "IntSurf_Allocator"=0) -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_ListOfC2DF_Clear(self, theAllocator)

    def First(self) -> "TopOpeBRepTool_C2DF const &":
        return _TopOpeBRepTool.TopOpeBRepTool_ListOfC2DF_First(self)

    def Last(self) -> "TopOpeBRepTool_C2DF const &":
        return _TopOpeBRepTool.TopOpeBRepTool_ListOfC2DF_Last(self)

    def Append(self, *args) -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_ListOfC2DF_Append(self, *args)

    def Prepend(self, *args) -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_ListOfC2DF_Prepend(self, *args)

    def RemoveFirst(self) -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_ListOfC2DF_RemoveFirst(self)

    def Remove(self, theIter: "TopOpeBRepTool_ListIteratorOfListOfC2DF") -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_ListOfC2DF_Remove(self, theIter)

    def InsertBefore(self, *args) -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_ListOfC2DF_InsertBefore(self, *args)

    def InsertAfter(self, *args) -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_ListOfC2DF_InsertAfter(self, *args)

    def Reverse(self) -> "void":
        return _TopOpeBRepTool.TopOpeBRepTool_ListOfC2DF_Reverse(self)
    __swig_destroy__ = _TopOpeBRepTool.delete_TopOpeBRepTool_ListOfC2DF

    def __len__(self):
        return self.Size()


# Register TopOpeBRepTool_ListOfC2DF in _TopOpeBRepTool:
_TopOpeBRepTool.TopOpeBRepTool_ListOfC2DF_swigregister(TopOpeBRepTool_ListOfC2DF)

class topopebreptool(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    @staticmethod
    def CorrectONUVISO(*args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        F: TopoDS_Face
        Fsp: TopoDS_Face

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.topopebreptool_CorrectONUVISO(*args)

    @staticmethod
    def MakeFaces(*args) -> "Standard_Boolean":
        r"""
        Builds up the correct list of faces <loff> from <lof>, using faulty shapes from map <mshnok>. <lof> is the list of <f>'s descendant faces. returns false if building fails.

        Parameters
        ----------
        F: TopoDS_Face
        LOF: TopTools_ListOfShape
        MshNOK: TopTools_IndexedMapOfOrientedShape
        LOFF: TopTools_ListOfShape

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.topopebreptool_MakeFaces(*args)

    @staticmethod
    def PurgeClosingEdges(*args) -> "Standard_Boolean":
        r"""
        Fuse edges (in a wire) of a shape where we have useless vertex. in case face <ff> is built on uv-non-connexed wires (with the two closing edges forward and reversed, in spite of one only), we find out the faulty edge, add the faulty shapes (edge,wire,face) to <mshnok>. <ff> is a face descendant of <f>. <mwisold>(wire) = 1 if wire is wire of <f> 0 wire results from <f>'s wire splitted. returns false if purge fails.

        Parameters
        ----------
        F: TopoDS_Face
        FF: TopoDS_Face
        MWisOld: TopTools_DataMapOfShapeInteger
        MshNOK: TopTools_IndexedMapOfOrientedShape

        Returns
        -------
        bool
        No available documentation.

        Parameters
        ----------
        F: TopoDS_Face
        LOF: TopTools_ListOfShape
        MWisOld: TopTools_DataMapOfShapeInteger
        MshNOK: TopTools_IndexedMapOfOrientedShape

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.topopebreptool_PurgeClosingEdges(*args)

    @staticmethod
    def Regularize(*args) -> "Standard_Boolean":
        r"""
        Returns <false> if the face is valid (the uv representation of the face is a set of pcurves connexed by points with connexity 2). else, splits <aface> in order to return a list of valid faces.

        Parameters
        ----------
        aFace: TopoDS_Face
        aListOfFaces: TopTools_ListOfShape
        ESplits: TopTools_DataMapOfShapeListOfShape

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.topopebreptool_Regularize(*args)

    @staticmethod
    def RegularizeFace(*args) -> "Standard_Boolean":
        r"""
        Classify wire's splits of map <oldwiresnewwires> in order to compute <alistoffaces>, the splits of <aface>.

        Parameters
        ----------
        aFace: TopoDS_Face
        OldWiresnewWires: TopTools_DataMapOfShapeListOfShape
        aListOfFaces: TopTools_ListOfShape

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.topopebreptool_RegularizeFace(*args)

    @staticmethod
    def RegularizeShells(*args) -> "Standard_Boolean":
        r"""
        Returns <false> if the shell is valid (the solid is a set of faces connexed by edges with connexity 2). else, splits faces of the shell; <oldfacesnewfaces> describes (face, splits of face).

        Parameters
        ----------
        aSolid: TopoDS_Solid
        OldSheNewShe: TopTools_DataMapOfShapeListOfShape
        FSplits: TopTools_DataMapOfShapeListOfShape

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.topopebreptool_RegularizeShells(*args)

    @staticmethod
    def RegularizeWires(*args) -> "Standard_Boolean":
        r"""
        Returns <false> if the face is valid (the uv representation of the face is a set of pcurves connexed by points with connexity 2). else, splits wires of the face, these are boundaries of the new faces to build up; <oldwiresnewwires> describes (wire, splits of wire); <esplits> describes (edge, edge's splits).

        Parameters
        ----------
        aFace: TopoDS_Face
        OldWiresNewWires: TopTools_DataMapOfShapeListOfShape
        ESplits: TopTools_DataMapOfShapeListOfShape

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.topopebreptool_RegularizeWires(*args)

    __repr__ = _dumps_object


    def __init__(self):
        _TopOpeBRepTool.topopebreptool_swiginit(self, _TopOpeBRepTool.new_topopebreptool())
    __swig_destroy__ = _TopOpeBRepTool.delete_topopebreptool

# Register topopebreptool in _TopOpeBRepTool:
_TopOpeBRepTool.topopebreptool_swigregister(topopebreptool)

def topopebreptool_CorrectONUVISO(*args) -> "Standard_Boolean":
    r"""
    No available documentation.

    Parameters
    ----------
    F: TopoDS_Face
    Fsp: TopoDS_Face

    Returns
    -------
    bool

    """
    return _TopOpeBRepTool.topopebreptool_CorrectONUVISO(*args)

def topopebreptool_MakeFaces(*args) -> "Standard_Boolean":
    r"""
    Builds up the correct list of faces <loff> from <lof>, using faulty shapes from map <mshnok>. <lof> is the list of <f>'s descendant faces. returns false if building fails.

    Parameters
    ----------
    F: TopoDS_Face
    LOF: TopTools_ListOfShape
    MshNOK: TopTools_IndexedMapOfOrientedShape
    LOFF: TopTools_ListOfShape

    Returns
    -------
    bool

    """
    return _TopOpeBRepTool.topopebreptool_MakeFaces(*args)

def topopebreptool_PurgeClosingEdges(*args) -> "Standard_Boolean":
    r"""
    Fuse edges (in a wire) of a shape where we have useless vertex. in case face <ff> is built on uv-non-connexed wires (with the two closing edges forward and reversed, in spite of one only), we find out the faulty edge, add the faulty shapes (edge,wire,face) to <mshnok>. <ff> is a face descendant of <f>. <mwisold>(wire) = 1 if wire is wire of <f> 0 wire results from <f>'s wire splitted. returns false if purge fails.

    Parameters
    ----------
    F: TopoDS_Face
    FF: TopoDS_Face
    MWisOld: TopTools_DataMapOfShapeInteger
    MshNOK: TopTools_IndexedMapOfOrientedShape

    Returns
    -------
    bool
    No available documentation.

    Parameters
    ----------
    F: TopoDS_Face
    LOF: TopTools_ListOfShape
    MWisOld: TopTools_DataMapOfShapeInteger
    MshNOK: TopTools_IndexedMapOfOrientedShape

    Returns
    -------
    bool

    """
    return _TopOpeBRepTool.topopebreptool_PurgeClosingEdges(*args)

def topopebreptool_Regularize(*args) -> "Standard_Boolean":
    r"""
    Returns <false> if the face is valid (the uv representation of the face is a set of pcurves connexed by points with connexity 2). else, splits <aface> in order to return a list of valid faces.

    Parameters
    ----------
    aFace: TopoDS_Face
    aListOfFaces: TopTools_ListOfShape
    ESplits: TopTools_DataMapOfShapeListOfShape

    Returns
    -------
    bool

    """
    return _TopOpeBRepTool.topopebreptool_Regularize(*args)

def topopebreptool_RegularizeFace(*args) -> "Standard_Boolean":
    r"""
    Classify wire's splits of map <oldwiresnewwires> in order to compute <alistoffaces>, the splits of <aface>.

    Parameters
    ----------
    aFace: TopoDS_Face
    OldWiresnewWires: TopTools_DataMapOfShapeListOfShape
    aListOfFaces: TopTools_ListOfShape

    Returns
    -------
    bool

    """
    return _TopOpeBRepTool.topopebreptool_RegularizeFace(*args)

def topopebreptool_RegularizeShells(*args) -> "Standard_Boolean":
    r"""
    Returns <false> if the shell is valid (the solid is a set of faces connexed by edges with connexity 2). else, splits faces of the shell; <oldfacesnewfaces> describes (face, splits of face).

    Parameters
    ----------
    aSolid: TopoDS_Solid
    OldSheNewShe: TopTools_DataMapOfShapeListOfShape
    FSplits: TopTools_DataMapOfShapeListOfShape

    Returns
    -------
    bool

    """
    return _TopOpeBRepTool.topopebreptool_RegularizeShells(*args)

def topopebreptool_RegularizeWires(*args) -> "Standard_Boolean":
    r"""
    Returns <false> if the face is valid (the uv representation of the face is a set of pcurves connexed by points with connexity 2). else, splits wires of the face, these are boundaries of the new faces to build up; <oldwiresnewwires> describes (wire, splits of wire); <esplits> describes (edge, edge's splits).

    Parameters
    ----------
    aFace: TopoDS_Face
    OldWiresNewWires: TopTools_DataMapOfShapeListOfShape
    ESplits: TopTools_DataMapOfShapeListOfShape

    Returns
    -------
    bool

    """
    return _TopOpeBRepTool.topopebreptool_RegularizeWires(*args)

class TopOpeBRepTool_AncestorsTool(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    @staticmethod
    def MakeAncestors(*args) -> "void":
        r"""
        Same as package method topexp::mapshapelistofshapes().

        Parameters
        ----------
        S: TopoDS_Shape
        TS: TopAbs_ShapeEnum
        TA: TopAbs_ShapeEnum
        M: TopTools_IndexedDataMapOfShapeListOfShape

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_AncestorsTool_MakeAncestors(*args)

    __repr__ = _dumps_object


    def __init__(self):
        _TopOpeBRepTool.TopOpeBRepTool_AncestorsTool_swiginit(self, _TopOpeBRepTool.new_TopOpeBRepTool_AncestorsTool())
    __swig_destroy__ = _TopOpeBRepTool.delete_TopOpeBRepTool_AncestorsTool

# Register TopOpeBRepTool_AncestorsTool in _TopOpeBRepTool:
_TopOpeBRepTool.TopOpeBRepTool_AncestorsTool_swigregister(TopOpeBRepTool_AncestorsTool)

def TopOpeBRepTool_AncestorsTool_MakeAncestors(*args) -> "void":
    r"""
    Same as package method topexp::mapshapelistofshapes().

    Parameters
    ----------
    S: TopoDS_Shape
    TS: TopAbs_ShapeEnum
    TA: TopAbs_ShapeEnum
    M: TopTools_IndexedDataMapOfShapeListOfShape

    Returns
    -------
    None

    """
    return _TopOpeBRepTool.TopOpeBRepTool_AncestorsTool_MakeAncestors(*args)

class TopOpeBRepTool_BoxSort(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        No available documentation.

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        T: TopOpeBRepTool_HBoxTool

        Returns
        -------
        None

        """
        _TopOpeBRepTool.TopOpeBRepTool_BoxSort_swiginit(self, _TopOpeBRepTool.new_TopOpeBRepTool_BoxSort(*args))

    def AddBoxes(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape
        TS: TopAbs_ShapeEnum
        TA: TopAbs_ShapeEnum,optional
        	default value is TopAbs_SHAPE

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_BoxSort_AddBoxes(self, *args)

    def AddBoxesMakeCOB(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape
        TS: TopAbs_ShapeEnum
        TA: TopAbs_ShapeEnum,optional
        	default value is TopAbs_SHAPE

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_BoxSort_AddBoxesMakeCOB(self, *args)

    def Box(self, *args) -> "Bnd_Box const &":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape

        Returns
        -------
        Bnd_Box

        """
        return _TopOpeBRepTool.TopOpeBRepTool_BoxSort_Box(self, *args)

    def Clear(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_BoxSort_Clear(self, *args)

    def Compare(self, *args) -> "TColStd_ListIteratorOfListOfInteger const &":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape

        Returns
        -------
        TColStd_ListIteratorOfListOfInteger

        """
        return _TopOpeBRepTool.TopOpeBRepTool_BoxSort_Compare(self, *args)

    def HAB(self, *args) -> "opencascade::handle< Bnd_HArray1OfBox > const &":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<Bnd_HArray1OfBox>

        """
        return _TopOpeBRepTool.TopOpeBRepTool_BoxSort_HAB(self, *args)

    def HABShape(self, *args) -> "TopoDS_Shape const":
        r"""
        No available documentation.

        Parameters
        ----------
        I: int

        Returns
        -------
        TopoDS_Shape

        """
        return _TopOpeBRepTool.TopOpeBRepTool_BoxSort_HABShape(self, *args)

    def HBoxTool(self, *args) -> "opencascade::handle< TopOpeBRepTool_HBoxTool > const &":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<TopOpeBRepTool_HBoxTool>

        """
        return _TopOpeBRepTool.TopOpeBRepTool_BoxSort_HBoxTool(self, *args)

    def MakeCOB(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape
        TS: TopAbs_ShapeEnum
        TA: TopAbs_ShapeEnum,optional
        	default value is TopAbs_SHAPE

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_BoxSort_MakeCOB(self, *args)

    def MakeHAB(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape
        TS: TopAbs_ShapeEnum
        TA: TopAbs_ShapeEnum,optional
        	default value is TopAbs_SHAPE

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_BoxSort_MakeHAB(self, *args)

    @staticmethod
    def MakeHABCOB(*args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        HAB: Bnd_HArray1OfBox
        COB: Bnd_Box

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_BoxSort_MakeHABCOB(*args)

    def SetHBoxTool(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        T: TopOpeBRepTool_HBoxTool

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_BoxSort_SetHBoxTool(self, *args)

    def TouchedShape(self, *args) -> "TopoDS_Shape const":
        r"""
        No available documentation.

        Parameters
        ----------
        I: TColStd_ListIteratorOfListOfInteger

        Returns
        -------
        TopoDS_Shape

        """
        return _TopOpeBRepTool.TopOpeBRepTool_BoxSort_TouchedShape(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepTool.delete_TopOpeBRepTool_BoxSort

# Register TopOpeBRepTool_BoxSort in _TopOpeBRepTool:
_TopOpeBRepTool.TopOpeBRepTool_BoxSort_swigregister(TopOpeBRepTool_BoxSort)

def TopOpeBRepTool_BoxSort_MakeHABCOB(*args) -> "void":
    r"""
    No available documentation.

    Parameters
    ----------
    HAB: Bnd_HArray1OfBox
    COB: Bnd_Box

    Returns
    -------
    None

    """
    return _TopOpeBRepTool.TopOpeBRepTool_BoxSort_MakeHABCOB(*args)

class TopOpeBRepTool_C2DF(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        No available documentation.

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        PC: Geom2d_Curve
        f2d: float
        l2d: float
        tol: float
        F: TopoDS_Face

        Returns
        -------
        None

        """
        _TopOpeBRepTool.TopOpeBRepTool_C2DF_swiginit(self, _TopOpeBRepTool.new_TopOpeBRepTool_C2DF(*args))

    def Face(self, *args) -> "TopoDS_Face const":
        r"""
        No available documentation.

        Returns
        -------
        TopoDS_Face

        """
        return _TopOpeBRepTool.TopOpeBRepTool_C2DF_Face(self, *args)

    def IsFace(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        F: TopoDS_Face

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_C2DF_IsFace(self, *args)

    def IsPC(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        PC: Geom2d_Curve

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_C2DF_IsPC(self, *args)

    def PC(self, *args) -> "opencascade::handle< Geom2d_Curve > const &":
        r"""
        No available documentation.

        Parameters
        ----------

        Returns
        -------
        f2d: float
        l2d: float
        tol: float

        """
        return _TopOpeBRepTool.TopOpeBRepTool_C2DF_PC(self, *args)

    def SetFace(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        F: TopoDS_Face

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_C2DF_SetFace(self, *args)

    def SetPC(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        PC: Geom2d_Curve
        f2d: float
        l2d: float
        tol: float

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_C2DF_SetPC(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepTool.delete_TopOpeBRepTool_C2DF

# Register TopOpeBRepTool_C2DF in _TopOpeBRepTool:
_TopOpeBRepTool.TopOpeBRepTool_C2DF_swigregister(TopOpeBRepTool_C2DF)

class TopOpeBRepTool_CLASSI(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        No available documentation.

        Returns
        -------
        None

        """
        _TopOpeBRepTool.TopOpeBRepTool_CLASSI_swiginit(self, _TopOpeBRepTool.new_TopOpeBRepTool_CLASSI(*args))

    def Add2d(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_CLASSI_Add2d(self, *args)

    def ClassiBnd2d(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Parameters
        ----------
        S1: TopoDS_Shape
        S2: TopoDS_Shape
        tol: float
        checklarge: bool

        Returns
        -------
        int

        """
        return _TopOpeBRepTool.TopOpeBRepTool_CLASSI_ClassiBnd2d(self, *args)

    def Classilist(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        lS: TopTools_ListOfShape
        mapgreasma: TopTools_DataMapOfShapeListOfShape

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_CLASSI_Classilist(self, *args)

    def Classip2d(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Parameters
        ----------
        S1: TopoDS_Shape
        S2: TopoDS_Shape
        stabnd2d12: int

        Returns
        -------
        int

        """
        return _TopOpeBRepTool.TopOpeBRepTool_CLASSI_Classip2d(self, *args)

    def GetBox2d(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape
        Box2d: Bnd_Box2d

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_CLASSI_GetBox2d(self, *args)

    def Getface(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape
        fa: TopOpeBRepTool_face

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_CLASSI_Getface(self, *args)

    def HasInit2d(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_CLASSI_HasInit2d(self, *args)

    def Init2d(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        Fref: TopoDS_Face

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_CLASSI_Init2d(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepTool.delete_TopOpeBRepTool_CLASSI

# Register TopOpeBRepTool_CLASSI in _TopOpeBRepTool:
_TopOpeBRepTool.TopOpeBRepTool_CLASSI_swigregister(TopOpeBRepTool_CLASSI)

class TopOpeBRepTool_CORRISO(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        No available documentation.

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        FRef: TopoDS_Face

        Returns
        -------
        None

        """
        _TopOpeBRepTool.TopOpeBRepTool_CORRISO_swiginit(self, _TopOpeBRepTool.new_TopOpeBRepTool_CORRISO(*args))

    def AddNewConnexity(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        V: TopoDS_Vertex
        E: TopoDS_Edge

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_CORRISO_AddNewConnexity(self, *args)

    def Connexity(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        V: TopoDS_Vertex
        Eds: TopTools_ListOfShape

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_CORRISO_Connexity(self, *args)

    def EdgeOUTofBoundsUV(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Parameters
        ----------
        E: TopoDS_Edge
        onU: bool
        tolx: float

        Returns
        -------
        parspE: float

        """
        return _TopOpeBRepTool.TopOpeBRepTool_CORRISO_EdgeOUTofBoundsUV(self, *args)

    def EdgeWithFaultyUV(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        E: TopoDS_Edge

        Returns
        -------
        Ivfaulty: int
        No available documentation.

        Parameters
        ----------
        EdsToCheck: TopTools_ListOfShape
        nfybounds: int
        fyE: TopoDS_Shape

        Returns
        -------
        Ifaulty: int

        """
        return _TopOpeBRepTool.TopOpeBRepTool_CORRISO_EdgeWithFaultyUV(self, *args)

    def EdgesOUTofBoundsUV(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        EdsToCheck: TopTools_ListOfShape
        onU: bool
        tolx: float
        FyEds: TopTools_DataMapOfOrientedShapeInteger

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_CORRISO_EdgesOUTofBoundsUV(self, *args)

    def EdgesWithFaultyUV(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        EdsToCheck: TopTools_ListOfShape
        nfybounds: int
        FyEds: TopTools_DataMapOfOrientedShapeInteger
        stopatfirst: bool,optional
        	default value is Standard_False

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_CORRISO_EdgesWithFaultyUV(self, *args)

    def Eds(self, *args) -> "TopTools_ListOfShape const &":
        r"""
        No available documentation.

        Returns
        -------
        TopTools_ListOfShape

        """
        return _TopOpeBRepTool.TopOpeBRepTool_CORRISO_Eds(self, *args)

    def Fref(self, *args) -> "TopoDS_Face const":
        r"""
        No available documentation.

        Returns
        -------
        TopoDS_Face

        """
        return _TopOpeBRepTool.TopOpeBRepTool_CORRISO_Fref(self, *args)

    def GASref(self, *args) -> "GeomAdaptor_Surface const &":
        r"""
        No available documentation.

        Returns
        -------
        GeomAdaptor_Surface

        """
        return _TopOpeBRepTool.TopOpeBRepTool_CORRISO_GASref(self, *args)

    def GetnewS(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        newS: TopoDS_Face

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_CORRISO_GetnewS(self, *args)

    def Init(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_CORRISO_Init(self, *args)

    def PurgeFyClosingE(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        ClEds: TopTools_ListOfShape
        fyClEds: TopTools_ListOfShape

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_CORRISO_PurgeFyClosingE(self, *args)

    def Refclosed(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        x: int

        Returns
        -------
        xperiod: float

        """
        return _TopOpeBRepTool.TopOpeBRepTool_CORRISO_Refclosed(self, *args)

    def RemoveOldConnexity(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        V: TopoDS_Vertex
        E: TopoDS_Edge

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_CORRISO_RemoveOldConnexity(self, *args)

    def S(self, *args) -> "TopoDS_Shape const":
        r"""
        No available documentation.

        Returns
        -------
        TopoDS_Shape

        """
        return _TopOpeBRepTool.TopOpeBRepTool_CORRISO_S(self, *args)

    def SetConnexity(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        V: TopoDS_Vertex
        Eds: TopTools_ListOfShape

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_CORRISO_SetConnexity(self, *args)

    def SetUVRep(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        E: TopoDS_Edge
        C2DF: TopOpeBRepTool_C2DF

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_CORRISO_SetUVRep(self, *args)

    def Tol(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

        Parameters
        ----------
        I: int
        tol3d: float

        Returns
        -------
        float

        """
        return _TopOpeBRepTool.TopOpeBRepTool_CORRISO_Tol(self, *args)

    def TrslUV(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        onU: bool
        FyEds: TopTools_DataMapOfOrientedShapeInteger

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_CORRISO_TrslUV(self, *args)

    def UVClosed(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_CORRISO_UVClosed(self, *args)

    def UVRep(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        E: TopoDS_Edge
        C2DF: TopOpeBRepTool_C2DF

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_CORRISO_UVRep(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepTool.delete_TopOpeBRepTool_CORRISO

# Register TopOpeBRepTool_CORRISO in _TopOpeBRepTool:
_TopOpeBRepTool.TopOpeBRepTool_CORRISO_swigregister(TopOpeBRepTool_CORRISO)

class TopOpeBRepTool_CurveTool(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        No available documentation.

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        OCT: TopOpeBRepTool_OutCurveType

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        GT: TopOpeBRepTool_GeomTool

        Returns
        -------
        None

        """
        _TopOpeBRepTool.TopOpeBRepTool_CurveTool_swiginit(self, _TopOpeBRepTool.new_TopOpeBRepTool_CurveTool(*args))

    def ChangeGeomTool(self, *args) -> "TopOpeBRepTool_GeomTool &":
        r"""
        No available documentation.

        Returns
        -------
        TopOpeBRepTool_GeomTool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_CurveTool_ChangeGeomTool(self, *args)

    def GetGeomTool(self, *args) -> "TopOpeBRepTool_GeomTool const &":
        r"""
        No available documentation.

        Returns
        -------
        TopOpeBRepTool_GeomTool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_CurveTool_GetGeomTool(self, *args)

    @staticmethod
    def IsProjectable(*args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape
        C: Geom_Curve

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_CurveTool_IsProjectable(*args)

    @staticmethod
    def MakeBSpline1fromPnt(*args) -> "opencascade::handle< Geom_Curve >":
        r"""
        No available documentation.

        Parameters
        ----------
        P: TColgp_Array1OfPnt

        Returns
        -------
        opencascade::handle<Geom_Curve>

        """
        return _TopOpeBRepTool.TopOpeBRepTool_CurveTool_MakeBSpline1fromPnt(*args)

    @staticmethod
    def MakeBSpline1fromPnt2d(*args) -> "opencascade::handle< Geom2d_Curve >":
        r"""
        No available documentation.

        Parameters
        ----------
        P: TColgp_Array1OfPnt2d

        Returns
        -------
        opencascade::handle<Geom2d_Curve>

        """
        return _TopOpeBRepTool.TopOpeBRepTool_CurveTool_MakeBSpline1fromPnt2d(*args)

    def MakeCurves(self, *args) -> "Standard_Boolean":
        r"""
        Approximates curves. returns false in the case of failure.

        Parameters
        ----------
        min: float
        max: float
        C3D: Geom_Curve
        PC1: Geom2d_Curve
        PC2: Geom2d_Curve
        S1: TopoDS_Shape
        S2: TopoDS_Shape
        C3DN: Geom_Curve
        PC1N: Geom2d_Curve
        PC2N: Geom2d_Curve

        Returns
        -------
        Tol3d: float
        Tol2d: float

        """
        return _TopOpeBRepTool.TopOpeBRepTool_CurveTool_MakeCurves(self, *args)

    @staticmethod
    def MakePCurveOnFace(*args) -> "Standard_Real &":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape
        C: Geom_Curve
        first: float,optional
        	default value is 0.0
        last: float,optional
        	default value is 0.0

        Returns
        -------
        TolReached2d: float

        """
        return _TopOpeBRepTool.TopOpeBRepTool_CurveTool_MakePCurveOnFace(*args)

    def SetGeomTool(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        GT: TopOpeBRepTool_GeomTool

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_CurveTool_SetGeomTool(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepTool.delete_TopOpeBRepTool_CurveTool

# Register TopOpeBRepTool_CurveTool in _TopOpeBRepTool:
_TopOpeBRepTool.TopOpeBRepTool_CurveTool_swigregister(TopOpeBRepTool_CurveTool)

def TopOpeBRepTool_CurveTool_IsProjectable(*args) -> "Standard_Boolean":
    r"""
    No available documentation.

    Parameters
    ----------
    S: TopoDS_Shape
    C: Geom_Curve

    Returns
    -------
    bool

    """
    return _TopOpeBRepTool.TopOpeBRepTool_CurveTool_IsProjectable(*args)

def TopOpeBRepTool_CurveTool_MakeBSpline1fromPnt(*args) -> "opencascade::handle< Geom_Curve >":
    r"""
    No available documentation.

    Parameters
    ----------
    P: TColgp_Array1OfPnt

    Returns
    -------
    opencascade::handle<Geom_Curve>

    """
    return _TopOpeBRepTool.TopOpeBRepTool_CurveTool_MakeBSpline1fromPnt(*args)

def TopOpeBRepTool_CurveTool_MakeBSpline1fromPnt2d(*args) -> "opencascade::handle< Geom2d_Curve >":
    r"""
    No available documentation.

    Parameters
    ----------
    P: TColgp_Array1OfPnt2d

    Returns
    -------
    opencascade::handle<Geom2d_Curve>

    """
    return _TopOpeBRepTool.TopOpeBRepTool_CurveTool_MakeBSpline1fromPnt2d(*args)

def TopOpeBRepTool_CurveTool_MakePCurveOnFace(*args) -> "Standard_Real &":
    r"""
    No available documentation.

    Parameters
    ----------
    S: TopoDS_Shape
    C: Geom_Curve
    first: float,optional
    	default value is 0.0
    last: float,optional
    	default value is 0.0

    Returns
    -------
    TolReached2d: float

    """
    return _TopOpeBRepTool.TopOpeBRepTool_CurveTool_MakePCurveOnFace(*args)

class TopOpeBRepTool_FuseEdges(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        Initialise members and build construction of map of ancestors.

        Parameters
        ----------
        theShape: TopoDS_Shape
        PerformNow: bool,optional
        	default value is Standard_False

        Returns
        -------
        None

        """
        _TopOpeBRepTool.TopOpeBRepTool_FuseEdges_swiginit(self, _TopOpeBRepTool.new_TopOpeBRepTool_FuseEdges(*args))

    def AvoidEdges(self, *args) -> "void":
        r"""
        Set edges to avoid being fused.

        Parameters
        ----------
        theMapEdg: TopTools_IndexedMapOfShape

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_FuseEdges_AvoidEdges(self, *args)

    def Edges(self, *args) -> "void":
        r"""
        Returns all the list of edges to be fused each list of the map represent a set of connex edges that can be fused.

        Parameters
        ----------
        theMapLstEdg: TopTools_DataMapOfIntegerListOfShape

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_FuseEdges_Edges(self, *args)

    def Faces(self, *args) -> "void":
        r"""
        Returns the map of modified faces.

        Parameters
        ----------
        theMapFac: TopTools_DataMapOfShapeShape

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_FuseEdges_Faces(self, *args)

    def NbVertices(self, *args) -> "Standard_Integer":
        r"""
        Returns the number of vertices candidate to be removed.

        Returns
        -------
        int

        """
        return _TopOpeBRepTool.TopOpeBRepTool_FuseEdges_NbVertices(self, *args)

    def Perform(self, *args) -> "void":
        r"""
        Using map of list of connex edges, fuse each list to one edge and then update myshape.

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_FuseEdges_Perform(self, *args)

    def ResultEdges(self, *args) -> "void":
        r"""
        Returns all the fused edges. each integer entry in the map corresponds to the integer in the datamapofintegerlistofshape we get in method edges. that is to say, to the list of edges in themaplstedg(i) corresponds the resulting edge themapedge(i).

        Parameters
        ----------
        theMapEdg: TopTools_DataMapOfIntegerShape

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_FuseEdges_ResultEdges(self, *args)

    def Shape(self, *args) -> "TopoDS_Shape":
        r"""
        Returns myshape modified with the list of internal edges removed from it.

        Returns
        -------
        TopoDS_Shape

        """
        return _TopOpeBRepTool.TopOpeBRepTool_FuseEdges_Shape(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepTool.delete_TopOpeBRepTool_FuseEdges

# Register TopOpeBRepTool_FuseEdges in _TopOpeBRepTool:
_TopOpeBRepTool.TopOpeBRepTool_FuseEdges_swigregister(TopOpeBRepTool_FuseEdges)

class TopOpeBRepTool_GeomTool(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        Boolean flags <compc3d>, <comppc1>, <comppc2> indicate whether the corresponding result curves <c3d>, <pc1>, <pc2> of makecurves method must or not be computed from an intersection line <l>. when the line <l> is a walking one, <typec3d> is the kind of the 3d curve <c3d> to compute : - bspline1 to compute a bspline of degree 1 on the walking points of <l>, - approx to build an approximation curve on the walking points of <l>.

        Parameters
        ----------
        TypeC3D: TopOpeBRepTool_OutCurveType,optional
        	default value is TopOpeBRepTool_BSPLINE1
        CompC3D: bool,optional
        	default value is Standard_True
        CompPC1: bool,optional
        	default value is Standard_True
        CompPC2: bool,optional
        	default value is Standard_True

        Returns
        -------
        None

        """
        _TopOpeBRepTool.TopOpeBRepTool_GeomTool_swiginit(self, _TopOpeBRepTool.new_TopOpeBRepTool_GeomTool(*args))

    def CompC3D(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_GeomTool_CompC3D(self, *args)

    def CompPC1(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_GeomTool_CompPC1(self, *args)

    def CompPC2(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_GeomTool_CompPC2(self, *args)

    def Define(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        TypeC3D: TopOpeBRepTool_OutCurveType
        CompC3D: bool
        CompPC1: bool
        CompPC2: bool

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        TypeC3D: TopOpeBRepTool_OutCurveType

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        GT: TopOpeBRepTool_GeomTool

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_GeomTool_Define(self, *args)

    def DefineCurves(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        CompC3D: bool

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_GeomTool_DefineCurves(self, *args)

    def DefinePCurves1(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        CompPC1: bool

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_GeomTool_DefinePCurves1(self, *args)

    def DefinePCurves2(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        CompPC2: bool

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_GeomTool_DefinePCurves2(self, *args)

    def GetTolerances(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------

        Returns
        -------
        tol3d: float
        tol2d: float

        """
        return _TopOpeBRepTool.TopOpeBRepTool_GeomTool_GetTolerances(self, *args)

    def NbPntMax(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

        """
        return _TopOpeBRepTool.TopOpeBRepTool_GeomTool_NbPntMax(self, *args)

    def SetNbPntMax(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        NbPntMax: int

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_GeomTool_SetNbPntMax(self, *args)

    def SetTolerances(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        tol3d: float
        tol2d: float

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_GeomTool_SetTolerances(self, *args)

    def TypeC3D(self, *args) -> "TopOpeBRepTool_OutCurveType":
        r"""
        No available documentation.

        Returns
        -------
        TopOpeBRepTool_OutCurveType

        """
        return _TopOpeBRepTool.TopOpeBRepTool_GeomTool_TypeC3D(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepTool.delete_TopOpeBRepTool_GeomTool

# Register TopOpeBRepTool_GeomTool in _TopOpeBRepTool:
_TopOpeBRepTool.TopOpeBRepTool_GeomTool_swigregister(TopOpeBRepTool_GeomTool)

class TopOpeBRepTool_HBoxTool(OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        No available documentation.

        Returns
        -------
        None

        """
        _TopOpeBRepTool.TopOpeBRepTool_HBoxTool_swiginit(self, _TopOpeBRepTool.new_TopOpeBRepTool_HBoxTool(*args))

    def AddBox(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_HBoxTool_AddBox(self, *args)

    def AddBoxes(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape
        TS: TopAbs_ShapeEnum
        TA: TopAbs_ShapeEnum,optional
        	default value is TopAbs_SHAPE

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_HBoxTool_AddBoxes(self, *args)

    def Box(self, *args) -> "Bnd_Box const &":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape

        Returns
        -------
        Bnd_Box
        No available documentation.

        Parameters
        ----------
        I: int

        Returns
        -------
        Bnd_Box

        """
        return _TopOpeBRepTool.TopOpeBRepTool_HBoxTool_Box(self, *args)

    def ChangeIMS(self, *args) -> "TopOpeBRepTool_IndexedDataMapOfShapeBox &":
        r"""
        No available documentation.

        Returns
        -------
        TopOpeBRepTool_IndexedDataMapOfShapeBox

        """
        return _TopOpeBRepTool.TopOpeBRepTool_HBoxTool_ChangeIMS(self, *args)

    def Clear(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_HBoxTool_Clear(self, *args)

    @staticmethod
    def ComputeBox(*args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape
        B: Bnd_Box

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_HBoxTool_ComputeBox(*args)

    @staticmethod
    def ComputeBoxOnVertices(*args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape
        B: Bnd_Box

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_HBoxTool_ComputeBoxOnVertices(*args)

    @staticmethod
    def DumpB(*args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        B: Bnd_Box

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_HBoxTool_DumpB(*args)

    def Extent(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

        """
        return _TopOpeBRepTool.TopOpeBRepTool_HBoxTool_Extent(self, *args)

    def HasBox(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_HBoxTool_HasBox(self, *args)

    def IMS(self, *args) -> "TopOpeBRepTool_IndexedDataMapOfShapeBox const &":
        r"""
        No available documentation.

        Returns
        -------
        TopOpeBRepTool_IndexedDataMapOfShapeBox

        """
        return _TopOpeBRepTool.TopOpeBRepTool_HBoxTool_IMS(self, *args)

    def Index(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape

        Returns
        -------
        int

        """
        return _TopOpeBRepTool.TopOpeBRepTool_HBoxTool_Index(self, *args)

    def Shape(self, *args) -> "TopoDS_Shape const":
        r"""
        No available documentation.

        Parameters
        ----------
        I: int

        Returns
        -------
        TopoDS_Shape

        """
        return _TopOpeBRepTool.TopOpeBRepTool_HBoxTool_Shape(self, *args)


    @staticmethod
    def DownCast(t):
      return Handle_TopOpeBRepTool_HBoxTool_DownCast(t)


    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepTool.delete_TopOpeBRepTool_HBoxTool

# Register TopOpeBRepTool_HBoxTool in _TopOpeBRepTool:
_TopOpeBRepTool.TopOpeBRepTool_HBoxTool_swigregister(TopOpeBRepTool_HBoxTool)

def TopOpeBRepTool_HBoxTool_ComputeBox(*args) -> "void":
    r"""
    No available documentation.

    Parameters
    ----------
    S: TopoDS_Shape
    B: Bnd_Box

    Returns
    -------
    None

    """
    return _TopOpeBRepTool.TopOpeBRepTool_HBoxTool_ComputeBox(*args)

def TopOpeBRepTool_HBoxTool_ComputeBoxOnVertices(*args) -> "void":
    r"""
    No available documentation.

    Parameters
    ----------
    S: TopoDS_Shape
    B: Bnd_Box

    Returns
    -------
    None

    """
    return _TopOpeBRepTool.TopOpeBRepTool_HBoxTool_ComputeBoxOnVertices(*args)

def TopOpeBRepTool_HBoxTool_DumpB(*args) -> "void":
    r"""
    No available documentation.

    Parameters
    ----------
    B: Bnd_Box

    Returns
    -------
    None

    """
    return _TopOpeBRepTool.TopOpeBRepTool_HBoxTool_DumpB(*args)

class TopOpeBRepTool_PurgeInternalEdges(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        Initialize members and begin exploration of shape depending of the value of performnow.

        Parameters
        ----------
        theShape: TopoDS_Shape
        PerformNow: bool,optional
        	default value is Standard_True

        Returns
        -------
        None

        """
        _TopOpeBRepTool.TopOpeBRepTool_PurgeInternalEdges_swiginit(self, _TopOpeBRepTool.new_TopOpeBRepTool_PurgeInternalEdges(*args))

    def Faces(self, *args) -> "void":
        r"""
        Returns the list internal edges associated with the faces of the myshape. if performnow was false when created, then call the private perform method that do the main job.

        Parameters
        ----------
        theMapFacLstEdg: TopTools_DataMapOfShapeListOfShape

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_PurgeInternalEdges_Faces(self, *args)

    def IsDone(self, *args) -> "Standard_Boolean":
        r"""
        Returns false if the list of internal edges has not been extracted.

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_PurgeInternalEdges_IsDone(self, *args)

    def NbEdges(self, *args) -> "Standard_Integer":
        r"""
        Returns the number of edges candidate to be removed.

        Returns
        -------
        int

        """
        return _TopOpeBRepTool.TopOpeBRepTool_PurgeInternalEdges_NbEdges(self, *args)

    def Perform(self, *args) -> "void":
        r"""
        Using the list of internal edge from each face, rebuild myshape by removing thoses edges.

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_PurgeInternalEdges_Perform(self, *args)

    def Shape(self, *args) -> "TopoDS_Shape":
        r"""
        Returns myshape modified with the list of internal edges removed from it.

        Returns
        -------
        TopoDS_Shape

        """
        return _TopOpeBRepTool.TopOpeBRepTool_PurgeInternalEdges_Shape(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepTool.delete_TopOpeBRepTool_PurgeInternalEdges

# Register TopOpeBRepTool_PurgeInternalEdges in _TopOpeBRepTool:
_TopOpeBRepTool.TopOpeBRepTool_PurgeInternalEdges_swigregister(TopOpeBRepTool_PurgeInternalEdges)

class TopOpeBRepTool_REGUS(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        No available documentation.

        Returns
        -------
        None

        """
        _TopOpeBRepTool.TopOpeBRepTool_REGUS_swiginit(self, _TopOpeBRepTool.new_TopOpeBRepTool_REGUS(*args))

    def GetFsplits(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        Fsplits: TopTools_DataMapOfShapeListOfShape

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_REGUS_GetFsplits(self, *args)

    def GetOshNsh(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        OshNsh: TopTools_DataMapOfShapeListOfShape

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_REGUS_GetOshNsh(self, *args)

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_REGUS_Init(self, *args)

    def InitBlock(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_REGUS_InitBlock(self, *args)

    def MapS(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_REGUS_MapS(self, *args)

    def NearestF(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        e: TopoDS_Edge
        lof: TopTools_ListOfShape
        ffound: TopoDS_Face

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_REGUS_NearestF(self, *args)

    def NextinBlock(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_REGUS_NextinBlock(self, *args)

    def REGU(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_REGUS_REGU(self, *args)

    def S(self, *args) -> "TopoDS_Shape const":
        r"""
        No available documentation.

        Returns
        -------
        TopoDS_Shape

        """
        return _TopOpeBRepTool.TopOpeBRepTool_REGUS_S(self, *args)

    def SetFsplits(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        Fsplits: TopTools_DataMapOfShapeListOfShape

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_REGUS_SetFsplits(self, *args)

    def SetOshNsh(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        OshNsh: TopTools_DataMapOfShapeListOfShape

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_REGUS_SetOshNsh(self, *args)

    @staticmethod
    def SplitF(*args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        Fanc: TopoDS_Face
        FSplits: TopTools_ListOfShape

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_REGUS_SplitF(*args)

    def SplitFaces(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_REGUS_SplitFaces(self, *args)

    @staticmethod
    def WireToFace(*args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        Fanc: TopoDS_Face
        nWs: TopTools_ListOfShape
        nFs: TopTools_ListOfShape

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_REGUS_WireToFace(*args)

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepTool.delete_TopOpeBRepTool_REGUS

# Register TopOpeBRepTool_REGUS in _TopOpeBRepTool:
_TopOpeBRepTool.TopOpeBRepTool_REGUS_swigregister(TopOpeBRepTool_REGUS)

def TopOpeBRepTool_REGUS_SplitF(*args) -> "Standard_Boolean":
    r"""
    No available documentation.

    Parameters
    ----------
    Fanc: TopoDS_Face
    FSplits: TopTools_ListOfShape

    Returns
    -------
    bool

    """
    return _TopOpeBRepTool.TopOpeBRepTool_REGUS_SplitF(*args)

def TopOpeBRepTool_REGUS_WireToFace(*args) -> "Standard_Boolean":
    r"""
    No available documentation.

    Parameters
    ----------
    Fanc: TopoDS_Face
    nWs: TopTools_ListOfShape
    nFs: TopTools_ListOfShape

    Returns
    -------
    bool

    """
    return _TopOpeBRepTool.TopOpeBRepTool_REGUS_WireToFace(*args)

class TopOpeBRepTool_REGUW(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        No available documentation.

        Parameters
        ----------
        FRef: TopoDS_Face

        Returns
        -------
        None

        """
        _TopOpeBRepTool.TopOpeBRepTool_REGUW_swiginit(self, _TopOpeBRepTool.new_TopOpeBRepTool_REGUW(*args))

    def AddNewConnexity(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        v: TopoDS_Vertex
        OriKey: int
        e: TopoDS_Edge

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_REGUW_AddNewConnexity(self, *args)

    def Connexity(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        v: TopoDS_Vertex
        co: TopOpeBRepTool_connexity

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_REGUW_Connexity(self, *args)

    def Fref(self, *args) -> "TopoDS_Face const":
        r"""
        No available documentation.

        Returns
        -------
        TopoDS_Face

        """
        return _TopOpeBRepTool.TopOpeBRepTool_REGUW_Fref(self, *args)

    def GetEsplits(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        Esplits: TopTools_DataMapOfShapeListOfShape

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_REGUW_GetEsplits(self, *args)

    def GetOwNw(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        OwNw: TopTools_DataMapOfShapeListOfShape

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_REGUW_GetOwNw(self, *args)

    def GetSplits(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        Splits: TopTools_ListOfShape

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_REGUW_GetSplits(self, *args)

    def HasInit(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_REGUW_HasInit(self, *args)

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_REGUW_Init(self, *args)

    def InitBlock(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_REGUW_InitBlock(self, *args)

    def MapS(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_REGUW_MapS(self, *args)

    def NearestE(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        loe: TopTools_ListOfShape
        efound: TopoDS_Edge

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_REGUW_NearestE(self, *args)

    def NextinBlock(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_REGUW_NextinBlock(self, *args)

    def REGU(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        istep: int
        Scur: TopoDS_Shape
        Splits: TopTools_ListOfShape

        Returns
        -------
        bool
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_REGUW_REGU(self, *args)

    def RemoveOldConnexity(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        v: TopoDS_Vertex
        OriKey: int
        e: TopoDS_Edge

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_REGUW_RemoveOldConnexity(self, *args)

    def S(self, *args) -> "TopoDS_Shape const":
        r"""
        No available documentation.

        Returns
        -------
        TopoDS_Shape

        """
        return _TopOpeBRepTool.TopOpeBRepTool_REGUW_S(self, *args)

    def SetEsplits(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        Esplits: TopTools_DataMapOfShapeListOfShape

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_REGUW_SetEsplits(self, *args)

    def SetOwNw(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        OwNw: TopTools_DataMapOfShapeListOfShape

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_REGUW_SetOwNw(self, *args)

    def SplitEds(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_REGUW_SplitEds(self, *args)

    def UpdateMultiple(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        v: TopoDS_Vertex

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_REGUW_UpdateMultiple(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepTool.delete_TopOpeBRepTool_REGUW

# Register TopOpeBRepTool_REGUW in _TopOpeBRepTool:
_TopOpeBRepTool.TopOpeBRepTool_REGUW_swigregister(TopOpeBRepTool_REGUW)

class TopOpeBRepTool_ShapeClassifier(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        No available documentation.

        Returns
        -------
        None
        Sref is the reference shape. stateshapeshape(s) calls will classify s with sref.

        Parameters
        ----------
        SRef: TopoDS_Shape

        Returns
        -------
        None

        """
        _TopOpeBRepTool.TopOpeBRepTool_ShapeClassifier_swiginit(self, _TopOpeBRepTool.new_TopOpeBRepTool_ShapeClassifier(*args))

    def ChangeSolidClassifier(self, *args) -> "TopOpeBRepTool_SolidClassifier &":
        r"""
        No available documentation.

        Returns
        -------
        TopOpeBRepTool_SolidClassifier

        """
        return _TopOpeBRepTool.TopOpeBRepTool_ShapeClassifier_ChangeSolidClassifier(self, *args)

    def ClearAll(self, *args) -> "void":
        r"""
        Reset all internal data (solidclassifier included).

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_ShapeClassifier_ClearAll(self, *args)

    def ClearCurrent(self, *args) -> "void":
        r"""
        Reset all internal data (except solidclassified).

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_ShapeClassifier_ClearCurrent(self, *args)

    def P2D(self, *args) -> "gp_Pnt2d const":
        r"""
        No available documentation.

        Returns
        -------
        gp_Pnt2d

        """
        return _TopOpeBRepTool.TopOpeBRepTool_ShapeClassifier_P2D(self, *args)

    def P3D(self, *args) -> "gp_Pnt const":
        r"""
        No available documentation.

        Returns
        -------
        gp_Pnt

        """
        return _TopOpeBRepTool.TopOpeBRepTool_ShapeClassifier_P3D(self, *args)

    def SameDomain(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        int
        Set mode for next stateshapeshape call samedomain = true --> s,sref are same domain --> point on restriction (on s) is used to classify s. samedomain = false --> s,sref are not domain --> point not on restriction of s (in s) is used to classify s. samedomain value is used only in next stateshapeshape call.

        Parameters
        ----------
        samedomain: int

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_ShapeClassifier_SameDomain(self, *args)

    def SetReference(self, *args) -> "void":
        r"""
        Set sref as reference shape the next stateshapereference(s,avoids) calls will classify s with sref.

        Parameters
        ----------
        SRef: TopoDS_Shape

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_ShapeClassifier_SetReference(self, *args)

    def State(self, *args) -> "TopAbs_State":
        r"""
        Return field mystate.

        Returns
        -------
        TopAbs_State

        """
        return _TopOpeBRepTool.TopOpeBRepTool_ShapeClassifier_State(self, *args)

    def StateP2DReference(self, *args) -> "void":
        r"""
        Classify point p2d with myref.

        Parameters
        ----------
        P2D: gp_Pnt2d

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_ShapeClassifier_StateP2DReference(self, *args)

    def StateP3DReference(self, *args) -> "void":
        r"""
        Classify point p3d with myref.

        Parameters
        ----------
        P3D: gp_Pnt

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_ShapeClassifier_StateP3DReference(self, *args)

    def StateShapeReference(self, *args) -> "TopAbs_State":
        r"""
        Classify shape s compared with reference shape. avoids is not used in classification; avoids may be isnull(). (usefull to avoid on or unknown state in special cases).

        Parameters
        ----------
        S: TopoDS_Shape
        AvoidS: TopoDS_Shape

        Returns
        -------
        TopAbs_State
        Classify shape s compared with reference shape. lavoids is list of s subshapes to avoid in classification (usefull to avoid on or unknown state in special cases).

        Parameters
        ----------
        S: TopoDS_Shape
        LAvoidS: TopTools_ListOfShape

        Returns
        -------
        TopAbs_State

        """
        return _TopOpeBRepTool.TopOpeBRepTool_ShapeClassifier_StateShapeReference(self, *args)

    def StateShapeShape(self, *args) -> "TopAbs_State":
        r"""
        Classify shape s compared with shape sref. samedomain = 0 : s1,s2 are not same domain samedomain = 1 : s1,s2 are same domain.

        Parameters
        ----------
        S: TopoDS_Shape
        SRef: TopoDS_Shape
        samedomain: int,optional
        	default value is 0

        Returns
        -------
        TopAbs_State
        Classify shape s compared with shape sref. avoids is not used in classification; avoids may be isnull(). (usefull to avoid on or unknown state in special cases).

        Parameters
        ----------
        S: TopoDS_Shape
        AvoidS: TopoDS_Shape
        SRef: TopoDS_Shape

        Returns
        -------
        TopAbs_State
        Classify shape s compared with shape sref. lavoids is list of s subshapes to avoid in classification avoids is not used in classification; avoids may be isnull(). (usefull to avoid on or unknown state in special cases).

        Parameters
        ----------
        S: TopoDS_Shape
        LAvoidS: TopTools_ListOfShape
        SRef: TopoDS_Shape

        Returns
        -------
        TopAbs_State

        """
        return _TopOpeBRepTool.TopOpeBRepTool_ShapeClassifier_StateShapeShape(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepTool.delete_TopOpeBRepTool_ShapeClassifier

# Register TopOpeBRepTool_ShapeClassifier in _TopOpeBRepTool:
_TopOpeBRepTool.TopOpeBRepTool_ShapeClassifier_swigregister(TopOpeBRepTool_ShapeClassifier)

class TopOpeBRepTool_ShapeExplorer(OCC.Core.TopExp.TopExp_Explorer):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        Creates an empty explorer, becomes usefull after init.

        Returns
        -------
        None
        Creates an explorer on the shape <s>. //! <tofind> is the type of shapes to search. topabs_vertex, topabs_edge, ... //! <toavoid> is the type of shape to skip in the exploration. if <toavoid> is equal or less complex than <tofind> or if <toavoid> is shape it has no effect on the exploration.

        Parameters
        ----------
        S: TopoDS_Shape
        ToFind: TopAbs_ShapeEnum
        ToAvoid: TopAbs_ShapeEnum,optional
        	default value is TopAbs_SHAPE

        Returns
        -------
        None

        """
        _TopOpeBRepTool.TopOpeBRepTool_ShapeExplorer_swiginit(self, _TopOpeBRepTool.new_TopOpeBRepTool_ShapeExplorer(*args))

    def DumpCurrentToString(self) -> "std::string":
        r"""DumpCurrentToString(TopOpeBRepTool_ShapeExplorer self) -> std::string"""
        return _TopOpeBRepTool.TopOpeBRepTool_ShapeExplorer_DumpCurrentToString(self)

    def Index(self, *args) -> "Standard_Integer":
        r"""
        Index of current sub-shape.

        Returns
        -------
        int

        """
        return _TopOpeBRepTool.TopOpeBRepTool_ShapeExplorer_Index(self, *args)

    def Init(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shape
        ToFind: TopAbs_ShapeEnum
        ToAvoid: TopAbs_ShapeEnum,optional
        	default value is TopAbs_SHAPE

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_ShapeExplorer_Init(self, *args)

    def Next(self, *args) -> "void":
        r"""
        Moves to the next shape in the exploration.

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_ShapeExplorer_Next(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepTool.delete_TopOpeBRepTool_ShapeExplorer

# Register TopOpeBRepTool_ShapeExplorer in _TopOpeBRepTool:
_TopOpeBRepTool.TopOpeBRepTool_ShapeExplorer_swigregister(TopOpeBRepTool_ShapeExplorer)

class TopOpeBRepTool_ShapeTool(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    @staticmethod
    def AdjustOnPeriodic(*args) -> "Standard_Real &, Standard_Real &":
        r"""
        Ajust u,v values in uvbounds of the domain of the geometric shape <s>, according to uperiodicity and vperiodicity of the domain. <s> is assumed to be a face. u and/or v is/are not modified when the domain is not periodic in u and/or v .

        Parameters
        ----------
        S: TopoDS_Shape

        Returns
        -------
        u: float
        v: float

        """
        return _TopOpeBRepTool.TopOpeBRepTool_ShapeTool_AdjustOnPeriodic(*args)

    @staticmethod
    def BASISCURVE(*args) -> "opencascade::handle< Geom_Curve >":
        r"""
        No available documentation.

        Parameters
        ----------
        C: Geom_Curve

        Returns
        -------
        opencascade::handle<Geom_Curve>
        No available documentation.

        Parameters
        ----------
        E: TopoDS_Edge

        Returns
        -------
        opencascade::handle<Geom_Curve>

        """
        return _TopOpeBRepTool.TopOpeBRepTool_ShapeTool_BASISCURVE(*args)

    @staticmethod
    def BASISSURFACE(*args) -> "opencascade::handle< Geom_Surface >":
        r"""
        No available documentation.

        Parameters
        ----------
        S: Geom_Surface

        Returns
        -------
        opencascade::handle<Geom_Surface>
        No available documentation.

        Parameters
        ----------
        F: TopoDS_Face

        Returns
        -------
        opencascade::handle<Geom_Surface>

        """
        return _TopOpeBRepTool.TopOpeBRepTool_ShapeTool_BASISSURFACE(*args)

    @staticmethod
    def Closed(*args) -> "Standard_Boolean":
        r"""
        Indicates wheter shape s1 is a closing shape on s2 or not.

        Parameters
        ----------
        S1: TopoDS_Shape
        S2: TopoDS_Shape

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_ShapeTool_Closed(*args)

    @staticmethod
    def CurvesSameOriented(*args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        C1: BRepAdaptor_Curve
        C2: BRepAdaptor_Curve

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_ShapeTool_CurvesSameOriented(*args)

    @staticmethod
    def EdgeData(*args) -> "Standard_Real &":
        r"""
        Compute tangent t, normal n, curvature c at point of parameter p on curve brac. returns the tolerance indicating if t,n are null.

        Parameters
        ----------
        BRAC: BRepAdaptor_Curve
        P: float
        T: gp_Dir
        N: gp_Dir

        Returns
        -------
        C: float
        Same as previous on edge e.

        Parameters
        ----------
        E: TopoDS_Shape
        P: float
        T: gp_Dir
        N: gp_Dir

        Returns
        -------
        C: float

        """
        return _TopOpeBRepTool.TopOpeBRepTool_ShapeTool_EdgeData(*args)

    @staticmethod
    def EdgesSameOriented(*args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        E1: TopoDS_Shape
        E2: TopoDS_Shape

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_ShapeTool_EdgesSameOriented(*args)

    @staticmethod
    def FacesSameOriented(*args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        F1: TopoDS_Shape
        F2: TopoDS_Shape

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_ShapeTool_FacesSameOriented(*args)

    @staticmethod
    def PeriodizeParameter(*args) -> "Standard_Real":
        r"""
        No available documentation.

        Parameters
        ----------
        par: float
        EE: TopoDS_Shape
        FF: TopoDS_Shape

        Returns
        -------
        float

        """
        return _TopOpeBRepTool.TopOpeBRepTool_ShapeTool_PeriodizeParameter(*args)

    @staticmethod
    def Pnt(*args) -> "gp_Pnt":
        r"""
        Returns 3d point of vertex <s>.

        Parameters
        ----------
        S: TopoDS_Shape

        Returns
        -------
        gp_Pnt

        """
        return _TopOpeBRepTool.TopOpeBRepTool_ShapeTool_Pnt(*args)

    @staticmethod
    def Resolution3d(*args) -> "Standard_Real":
        r"""
        No available documentation.

        Parameters
        ----------
        SU: Geom_Surface
        Tol2d: float

        Returns
        -------
        float
        No available documentation.

        Parameters
        ----------
        F: TopoDS_Face
        Tol2d: float

        Returns
        -------
        float

        """
        return _TopOpeBRepTool.TopOpeBRepTool_ShapeTool_Resolution3d(*args)

    @staticmethod
    def Resolution3dU(*args) -> "Standard_Real":
        r"""
        No available documentation.

        Parameters
        ----------
        SU: Geom_Surface
        Tol2d: float

        Returns
        -------
        float

        """
        return _TopOpeBRepTool.TopOpeBRepTool_ShapeTool_Resolution3dU(*args)

    @staticmethod
    def Resolution3dV(*args) -> "Standard_Real":
        r"""
        No available documentation.

        Parameters
        ----------
        SU: Geom_Surface
        Tol2d: float

        Returns
        -------
        float

        """
        return _TopOpeBRepTool.TopOpeBRepTool_ShapeTool_Resolution3dV(*args)

    @staticmethod
    def ShapesSameOriented(*args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        S1: TopoDS_Shape
        S2: TopoDS_Shape

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_ShapeTool_ShapesSameOriented(*args)

    @staticmethod
    def SurfacesSameOriented(*args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        S1: BRepAdaptor_Surface
        S2: BRepAdaptor_Surface

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_ShapeTool_SurfacesSameOriented(*args)

    @staticmethod
    def Tolerance(*args) -> "Standard_Real":
        r"""
        Returns the tolerance of the shape <s>. if the shape <s> is null, returns 0.

        Parameters
        ----------
        S: TopoDS_Shape

        Returns
        -------
        float

        """
        return _TopOpeBRepTool.TopOpeBRepTool_ShapeTool_Tolerance(*args)

    @staticmethod
    def UVBOUNDS(*args) -> "Standard_Boolean &, Standard_Boolean &, Standard_Real &, Standard_Real &, Standard_Real &, Standard_Real &":
        r"""
        No available documentation.

        Parameters
        ----------
        S: Geom_Surface

        Returns
        -------
        UPeri: bool
        VPeri: bool
        Umin: float
        Umax: float
        Vmin: float
        Vmax: float
        No available documentation.

        Parameters
        ----------
        F: TopoDS_Face

        Returns
        -------
        UPeri: bool
        VPeri: bool
        Umin: float
        Umax: float
        Vmin: float
        Vmax: float

        """
        return _TopOpeBRepTool.TopOpeBRepTool_ShapeTool_UVBOUNDS(*args)

    __repr__ = _dumps_object


    def __init__(self):
        _TopOpeBRepTool.TopOpeBRepTool_ShapeTool_swiginit(self, _TopOpeBRepTool.new_TopOpeBRepTool_ShapeTool())
    __swig_destroy__ = _TopOpeBRepTool.delete_TopOpeBRepTool_ShapeTool

# Register TopOpeBRepTool_ShapeTool in _TopOpeBRepTool:
_TopOpeBRepTool.TopOpeBRepTool_ShapeTool_swigregister(TopOpeBRepTool_ShapeTool)

def TopOpeBRepTool_ShapeTool_AdjustOnPeriodic(*args) -> "Standard_Real &, Standard_Real &":
    r"""
    Ajust u,v values in uvbounds of the domain of the geometric shape <s>, according to uperiodicity and vperiodicity of the domain. <s> is assumed to be a face. u and/or v is/are not modified when the domain is not periodic in u and/or v .

    Parameters
    ----------
    S: TopoDS_Shape

    Returns
    -------
    u: float
    v: float

    """
    return _TopOpeBRepTool.TopOpeBRepTool_ShapeTool_AdjustOnPeriodic(*args)

def TopOpeBRepTool_ShapeTool_BASISCURVE(*args) -> "opencascade::handle< Geom_Curve >":
    r"""
    No available documentation.

    Parameters
    ----------
    C: Geom_Curve

    Returns
    -------
    opencascade::handle<Geom_Curve>
    No available documentation.

    Parameters
    ----------
    E: TopoDS_Edge

    Returns
    -------
    opencascade::handle<Geom_Curve>

    """
    return _TopOpeBRepTool.TopOpeBRepTool_ShapeTool_BASISCURVE(*args)

def TopOpeBRepTool_ShapeTool_BASISSURFACE(*args) -> "opencascade::handle< Geom_Surface >":
    r"""
    No available documentation.

    Parameters
    ----------
    S: Geom_Surface

    Returns
    -------
    opencascade::handle<Geom_Surface>
    No available documentation.

    Parameters
    ----------
    F: TopoDS_Face

    Returns
    -------
    opencascade::handle<Geom_Surface>

    """
    return _TopOpeBRepTool.TopOpeBRepTool_ShapeTool_BASISSURFACE(*args)

def TopOpeBRepTool_ShapeTool_Closed(*args) -> "Standard_Boolean":
    r"""
    Indicates wheter shape s1 is a closing shape on s2 or not.

    Parameters
    ----------
    S1: TopoDS_Shape
    S2: TopoDS_Shape

    Returns
    -------
    bool

    """
    return _TopOpeBRepTool.TopOpeBRepTool_ShapeTool_Closed(*args)

def TopOpeBRepTool_ShapeTool_CurvesSameOriented(*args) -> "Standard_Boolean":
    r"""
    No available documentation.

    Parameters
    ----------
    C1: BRepAdaptor_Curve
    C2: BRepAdaptor_Curve

    Returns
    -------
    bool

    """
    return _TopOpeBRepTool.TopOpeBRepTool_ShapeTool_CurvesSameOriented(*args)

def TopOpeBRepTool_ShapeTool_EdgeData(*args) -> "Standard_Real &":
    r"""
    Compute tangent t, normal n, curvature c at point of parameter p on curve brac. returns the tolerance indicating if t,n are null.

    Parameters
    ----------
    BRAC: BRepAdaptor_Curve
    P: float
    T: gp_Dir
    N: gp_Dir

    Returns
    -------
    C: float
    Same as previous on edge e.

    Parameters
    ----------
    E: TopoDS_Shape
    P: float
    T: gp_Dir
    N: gp_Dir

    Returns
    -------
    C: float

    """
    return _TopOpeBRepTool.TopOpeBRepTool_ShapeTool_EdgeData(*args)

def TopOpeBRepTool_ShapeTool_EdgesSameOriented(*args) -> "Standard_Boolean":
    r"""
    No available documentation.

    Parameters
    ----------
    E1: TopoDS_Shape
    E2: TopoDS_Shape

    Returns
    -------
    bool

    """
    return _TopOpeBRepTool.TopOpeBRepTool_ShapeTool_EdgesSameOriented(*args)

def TopOpeBRepTool_ShapeTool_FacesSameOriented(*args) -> "Standard_Boolean":
    r"""
    No available documentation.

    Parameters
    ----------
    F1: TopoDS_Shape
    F2: TopoDS_Shape

    Returns
    -------
    bool

    """
    return _TopOpeBRepTool.TopOpeBRepTool_ShapeTool_FacesSameOriented(*args)

def TopOpeBRepTool_ShapeTool_PeriodizeParameter(*args) -> "Standard_Real":
    r"""
    No available documentation.

    Parameters
    ----------
    par: float
    EE: TopoDS_Shape
    FF: TopoDS_Shape

    Returns
    -------
    float

    """
    return _TopOpeBRepTool.TopOpeBRepTool_ShapeTool_PeriodizeParameter(*args)

def TopOpeBRepTool_ShapeTool_Pnt(*args) -> "gp_Pnt":
    r"""
    Returns 3d point of vertex <s>.

    Parameters
    ----------
    S: TopoDS_Shape

    Returns
    -------
    gp_Pnt

    """
    return _TopOpeBRepTool.TopOpeBRepTool_ShapeTool_Pnt(*args)

def TopOpeBRepTool_ShapeTool_Resolution3d(*args) -> "Standard_Real":
    r"""
    No available documentation.

    Parameters
    ----------
    SU: Geom_Surface
    Tol2d: float

    Returns
    -------
    float
    No available documentation.

    Parameters
    ----------
    F: TopoDS_Face
    Tol2d: float

    Returns
    -------
    float

    """
    return _TopOpeBRepTool.TopOpeBRepTool_ShapeTool_Resolution3d(*args)

def TopOpeBRepTool_ShapeTool_Resolution3dU(*args) -> "Standard_Real":
    r"""
    No available documentation.

    Parameters
    ----------
    SU: Geom_Surface
    Tol2d: float

    Returns
    -------
    float

    """
    return _TopOpeBRepTool.TopOpeBRepTool_ShapeTool_Resolution3dU(*args)

def TopOpeBRepTool_ShapeTool_Resolution3dV(*args) -> "Standard_Real":
    r"""
    No available documentation.

    Parameters
    ----------
    SU: Geom_Surface
    Tol2d: float

    Returns
    -------
    float

    """
    return _TopOpeBRepTool.TopOpeBRepTool_ShapeTool_Resolution3dV(*args)

def TopOpeBRepTool_ShapeTool_ShapesSameOriented(*args) -> "Standard_Boolean":
    r"""
    No available documentation.

    Parameters
    ----------
    S1: TopoDS_Shape
    S2: TopoDS_Shape

    Returns
    -------
    bool

    """
    return _TopOpeBRepTool.TopOpeBRepTool_ShapeTool_ShapesSameOriented(*args)

def TopOpeBRepTool_ShapeTool_SurfacesSameOriented(*args) -> "Standard_Boolean":
    r"""
    No available documentation.

    Parameters
    ----------
    S1: BRepAdaptor_Surface
    S2: BRepAdaptor_Surface

    Returns
    -------
    bool

    """
    return _TopOpeBRepTool.TopOpeBRepTool_ShapeTool_SurfacesSameOriented(*args)

def TopOpeBRepTool_ShapeTool_Tolerance(*args) -> "Standard_Real":
    r"""
    Returns the tolerance of the shape <s>. if the shape <s> is null, returns 0.

    Parameters
    ----------
    S: TopoDS_Shape

    Returns
    -------
    float

    """
    return _TopOpeBRepTool.TopOpeBRepTool_ShapeTool_Tolerance(*args)

def TopOpeBRepTool_ShapeTool_UVBOUNDS(*args) -> "Standard_Boolean &, Standard_Boolean &, Standard_Real &, Standard_Real &, Standard_Real &, Standard_Real &":
    r"""
    No available documentation.

    Parameters
    ----------
    S: Geom_Surface

    Returns
    -------
    UPeri: bool
    VPeri: bool
    Umin: float
    Umax: float
    Vmin: float
    Vmax: float
    No available documentation.

    Parameters
    ----------
    F: TopoDS_Face

    Returns
    -------
    UPeri: bool
    VPeri: bool
    Umin: float
    Umax: float
    Vmin: float
    Vmax: float

    """
    return _TopOpeBRepTool.TopOpeBRepTool_ShapeTool_UVBOUNDS(*args)

class TopOpeBRepTool_SolidClassifier(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        No available documentation.

        Returns
        -------
        None

        """
        _TopOpeBRepTool.TopOpeBRepTool_SolidClassifier_swiginit(self, _TopOpeBRepTool.new_TopOpeBRepTool_SolidClassifier(*args))

    def Classify(self, *args) -> "TopAbs_State":
        r"""
        Compute the position of point <p> regarding with the geometric domain of the solid <s>.

        Parameters
        ----------
        S: TopoDS_Solid
        P: gp_Pnt
        Tol: float

        Returns
        -------
        TopAbs_State
        Compute the position of point <p> regarding with the geometric domain of the shell <s>.

        Parameters
        ----------
        S: TopoDS_Shell
        P: gp_Pnt
        Tol: float

        Returns
        -------
        TopAbs_State

        """
        return _TopOpeBRepTool.TopOpeBRepTool_SolidClassifier_Classify(self, *args)

    def Clear(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_SolidClassifier_Clear(self, *args)

    def LoadShell(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Shell

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_SolidClassifier_LoadShell(self, *args)

    def LoadSolid(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        S: TopoDS_Solid

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_SolidClassifier_LoadSolid(self, *args)

    def State(self, *args) -> "TopAbs_State":
        r"""
        No available documentation.

        Returns
        -------
        TopAbs_State

        """
        return _TopOpeBRepTool.TopOpeBRepTool_SolidClassifier_State(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepTool.delete_TopOpeBRepTool_SolidClassifier

# Register TopOpeBRepTool_SolidClassifier in _TopOpeBRepTool:
_TopOpeBRepTool.TopOpeBRepTool_SolidClassifier_swigregister(TopOpeBRepTool_SolidClassifier)

class TopOpeBRepTool_TOOL(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    @staticmethod
    def ClosedE(*args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        E: TopoDS_Edge
        vclo: TopoDS_Vertex

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_ClosedE(*args)

    @staticmethod
    def ClosedS(*args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        F: TopoDS_Face

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_ClosedS(*args)

    @staticmethod
    def CurvE(*args) -> "Standard_Real &":
        r"""
        No available documentation.

        Parameters
        ----------
        E: TopoDS_Edge
        par: float
        tg0: gp_Dir

        Returns
        -------
        Curv: float

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_CurvE(*args)

    @staticmethod
    def CurvF(*args) -> "Standard_Real &, Standard_Boolean &":
        r"""
        No available documentation.

        Parameters
        ----------
        F: TopoDS_Face
        uv: gp_Pnt2d
        tg0: gp_Dir

        Returns
        -------
        Curv: float
        direct: bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_CurvF(*args)

    @staticmethod
    def EdgeONFace(*args) -> "Standard_Boolean &":
        r"""
        No available documentation.

        Parameters
        ----------
        par: float
        ed: TopoDS_Edge
        uv: gp_Pnt2d
        fa: TopoDS_Face

        Returns
        -------
        isonfa: bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_EdgeONFace(*args)

    @staticmethod
    def Getduv(*args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        f: TopoDS_Face
        uv: gp_Pnt2d
        dir: gp_Vec
        factor: float
        duv: gp_Dir2d

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_Getduv(*args)

    @staticmethod
    def Getstp3dF(*args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        p: gp_Pnt
        f: TopoDS_Face
        uv: gp_Pnt2d
        st: TopAbs_State

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_Getstp3dF(*args)

    @staticmethod
    def IsClosingE(*args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        E: TopoDS_Edge
        F: TopoDS_Face

        Returns
        -------
        bool
        No available documentation.

        Parameters
        ----------
        E: TopoDS_Edge
        W: TopoDS_Shape
        F: TopoDS_Face

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_IsClosingE(*args)

    @staticmethod
    def IsQuad(*args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        E: TopoDS_Edge

        Returns
        -------
        bool
        No available documentation.

        Parameters
        ----------
        F: TopoDS_Face

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_IsQuad(*args)

    @staticmethod
    def IsonCLO(*args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        PC: Geom2d_Curve
        onU: bool
        xfirst: float
        xperiod: float
        xtol: float

        Returns
        -------
        bool
        No available documentation.

        Parameters
        ----------
        C2DF: TopOpeBRepTool_C2DF
        onU: bool
        xfirst: float
        xperiod: float
        xtol: float

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_IsonCLO(*args)

    @staticmethod
    def Matter(*args) -> "Standard_Real &":
        r"""
        No available documentation.

        Parameters
        ----------
        d1: gp_Vec
        d2: gp_Vec
        ref: gp_Vec

        Returns
        -------
        float
        No available documentation.

        Parameters
        ----------
        d1: gp_Vec2d
        d2: gp_Vec2d

        Returns
        -------
        float
        No available documentation.

        Parameters
        ----------
        xx1: gp_Dir
        nt1: gp_Dir
        xx2: gp_Dir
        nt2: gp_Dir
        tola: float

        Returns
        -------
        Ang: float
        No available documentation.

        Parameters
        ----------
        f1: TopoDS_Face
        f2: TopoDS_Face
        e: TopoDS_Edge
        pare: float
        tola: float

        Returns
        -------
        Ang: float

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_Matter(*args)

    @staticmethod
    def MatterKPtg(*args) -> "Standard_Real &":
        r"""
        No available documentation.

        Parameters
        ----------
        f1: TopoDS_Face
        f2: TopoDS_Face
        e: TopoDS_Edge

        Returns
        -------
        Ang: float

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_MatterKPtg(*args)

    @staticmethod
    def MkShell(*args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        lF: TopTools_ListOfShape
        She: TopoDS_Shape

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_MkShell(*args)

    @staticmethod
    def NgApp(*args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        par: float
        E: TopoDS_Edge
        F: TopoDS_Face
        tola: float
        ngApp: gp_Dir

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_NgApp(*args)

    @staticmethod
    def NggeomF(*args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        uv: gp_Pnt2d
        F: TopoDS_Face
        ng: gp_Vec

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_NggeomF(*args)

    @staticmethod
    def Nt(*args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        uv: gp_Pnt2d
        f: TopoDS_Face
        normt: gp_Dir

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_Nt(*args)

    @staticmethod
    def OnBoundary(*args) -> "Standard_Integer":
        r"""
        No available documentation.

        Parameters
        ----------
        par: float
        E: TopoDS_Edge

        Returns
        -------
        int

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_OnBoundary(*args)

    @staticmethod
    def OriinSor(*args) -> "Standard_Integer":
        r"""
        No available documentation.

        Parameters
        ----------
        sub: TopoDS_Shape
        S: TopoDS_Shape
        checkclo: bool,optional
        	default value is Standard_False

        Returns
        -------
        int

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_OriinSor(*args)

    @staticmethod
    def OriinSorclosed(*args) -> "Standard_Integer":
        r"""
        No available documentation.

        Parameters
        ----------
        sub: TopoDS_Shape
        S: TopoDS_Shape

        Returns
        -------
        int

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_OriinSorclosed(*args)

    @staticmethod
    def ParE(*args) -> "Standard_Real":
        r"""
        No available documentation.

        Parameters
        ----------
        Iv: int
        E: TopoDS_Edge

        Returns
        -------
        float

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_ParE(*args)

    @staticmethod
    def ParE2d(*args) -> "Standard_Real &, Standard_Real &":
        r"""
        No available documentation.

        Parameters
        ----------
        p2d: gp_Pnt2d
        e: TopoDS_Edge
        f: TopoDS_Face

        Returns
        -------
        par: float
        dist: float

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_ParE2d(*args)

    @staticmethod
    def ParISO(*args) -> "Standard_Real &":
        r"""
        No available documentation.

        Parameters
        ----------
        p2d: gp_Pnt2d
        e: TopoDS_Edge
        f: TopoDS_Face

        Returns
        -------
        pare: float

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_ParISO(*args)

    @staticmethod
    def Remove(*args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        loS: TopTools_ListOfShape
        toremove: TopoDS_Shape

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_Remove(*args)

    @staticmethod
    def SplitE(*args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        Eanc: TopoDS_Edge
        Splits: TopTools_ListOfShape

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_SplitE(*args)

    @staticmethod
    def Tg2d(*args) -> "gp_Vec2d":
        r"""
        No available documentation.

        Parameters
        ----------
        iv: int
        E: TopoDS_Edge
        C2DF: TopOpeBRepTool_C2DF

        Returns
        -------
        gp_Vec2d

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_Tg2d(*args)

    @staticmethod
    def Tg2dApp(*args) -> "gp_Vec2d":
        r"""
        No available documentation.

        Parameters
        ----------
        iv: int
        E: TopoDS_Edge
        C2DF: TopOpeBRepTool_C2DF
        factor: float

        Returns
        -------
        gp_Vec2d

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_Tg2dApp(*args)

    @staticmethod
    def TgINSIDE(*args) -> "Standard_Integer &":
        r"""
        No available documentation.

        Parameters
        ----------
        v: TopoDS_Vertex
        E: TopoDS_Edge
        Tg: gp_Vec

        Returns
        -------
        OvinE: int

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_TgINSIDE(*args)

    @staticmethod
    def TggeomE(*args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        par: float
        BC: BRepAdaptor_Curve
        Tg: gp_Vec

        Returns
        -------
        bool
        No available documentation.

        Parameters
        ----------
        par: float
        E: TopoDS_Edge
        Tg: gp_Vec

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_TggeomE(*args)

    @staticmethod
    def TolP(*args) -> "Standard_Real":
        r"""
        No available documentation.

        Parameters
        ----------
        E: TopoDS_Edge
        F: TopoDS_Face

        Returns
        -------
        float

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_TolP(*args)

    @staticmethod
    def TolUV(*args) -> "Standard_Real":
        r"""
        No available documentation.

        Parameters
        ----------
        F: TopoDS_Face
        tol3d: float

        Returns
        -------
        float

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_TolUV(*args)

    @staticmethod
    def TrslUV(*args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        t2d: gp_Vec2d
        C2DF: TopOpeBRepTool_C2DF

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_TrslUV(*args)

    @staticmethod
    def TrslUVModifE(*args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        t2d: gp_Vec2d
        F: TopoDS_Face
        E: TopoDS_Edge

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_TrslUVModifE(*args)

    @staticmethod
    def UVF(*args) -> "gp_Pnt2d":
        r"""
        No available documentation.

        Parameters
        ----------
        par: float
        C2DF: TopOpeBRepTool_C2DF

        Returns
        -------
        gp_Pnt2d

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_UVF(*args)

    @staticmethod
    def UVISO(*args) -> "Standard_Boolean &, Standard_Boolean &":
        r"""
        No available documentation.

        Parameters
        ----------
        PC: Geom2d_Curve
        d2d: gp_Dir2d
        o2d: gp_Pnt2d

        Returns
        -------
        isou: bool
        isov: bool
        No available documentation.

        Parameters
        ----------
        C2DF: TopOpeBRepTool_C2DF
        d2d: gp_Dir2d
        o2d: gp_Pnt2d

        Returns
        -------
        isou: bool
        isov: bool
        No available documentation.

        Parameters
        ----------
        E: TopoDS_Edge
        F: TopoDS_Face
        d2d: gp_Dir2d
        o2d: gp_Pnt2d

        Returns
        -------
        isou: bool
        isov: bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_UVISO(*args)

    @staticmethod
    def Vertex(*args) -> "TopoDS_Vertex":
        r"""
        No available documentation.

        Parameters
        ----------
        Iv: int
        E: TopoDS_Edge

        Returns
        -------
        TopoDS_Vertex

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_Vertex(*args)

    @staticmethod
    def Vertices(*args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        E: TopoDS_Edge
        Vces: TopTools_Array1OfShape

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_Vertices(*args)

    @staticmethod
    def WireToFace(*args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        Fref: TopoDS_Face
        mapWlow: TopTools_DataMapOfShapeListOfShape
        lFs: TopTools_ListOfShape

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_WireToFace(*args)

    @staticmethod
    def XX(*args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        uv: gp_Pnt2d
        f: TopoDS_Face
        par: float
        e: TopoDS_Edge
        xx: gp_Dir

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_XX(*args)

    @staticmethod
    def minDUV(*args) -> "Standard_Real":
        r"""
        No available documentation.

        Parameters
        ----------
        F: TopoDS_Face

        Returns
        -------
        float

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_minDUV(*args)

    @staticmethod
    def outUVbounds(*args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        uv: gp_Pnt2d
        F: TopoDS_Face

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_outUVbounds(*args)

    @staticmethod
    def stuvF(*args) -> "Standard_Integer &, Standard_Integer &":
        r"""
        No available documentation.

        Parameters
        ----------
        uv: gp_Pnt2d
        F: TopoDS_Face

        Returns
        -------
        onU: int
        onV: int

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_stuvF(*args)

    @staticmethod
    def tryNgApp(*args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        par: float
        E: TopoDS_Edge
        F: TopoDS_Face
        tola: float
        ng: gp_Dir

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_tryNgApp(*args)

    @staticmethod
    def tryOriEinF(*args) -> "Standard_Integer":
        r"""
        No available documentation.

        Parameters
        ----------
        par: float
        E: TopoDS_Edge
        F: TopoDS_Face

        Returns
        -------
        int

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_tryOriEinF(*args)

    @staticmethod
    def tryTg2dApp(*args) -> "gp_Vec2d":
        r"""
        No available documentation.

        Parameters
        ----------
        iv: int
        E: TopoDS_Edge
        C2DF: TopOpeBRepTool_C2DF
        factor: float

        Returns
        -------
        gp_Vec2d

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_tryTg2dApp(*args)

    @staticmethod
    def uvApp(*args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        f: TopoDS_Face
        e: TopoDS_Edge
        par: float
        eps: float
        uvapp: gp_Pnt2d

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_TOOL_uvApp(*args)

    __repr__ = _dumps_object


    def __init__(self):
        _TopOpeBRepTool.TopOpeBRepTool_TOOL_swiginit(self, _TopOpeBRepTool.new_TopOpeBRepTool_TOOL())
    __swig_destroy__ = _TopOpeBRepTool.delete_TopOpeBRepTool_TOOL

# Register TopOpeBRepTool_TOOL in _TopOpeBRepTool:
_TopOpeBRepTool.TopOpeBRepTool_TOOL_swigregister(TopOpeBRepTool_TOOL)

def TopOpeBRepTool_TOOL_ClosedE(*args) -> "Standard_Boolean":
    r"""
    No available documentation.

    Parameters
    ----------
    E: TopoDS_Edge
    vclo: TopoDS_Vertex

    Returns
    -------
    bool

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_ClosedE(*args)

def TopOpeBRepTool_TOOL_ClosedS(*args) -> "Standard_Boolean":
    r"""
    No available documentation.

    Parameters
    ----------
    F: TopoDS_Face

    Returns
    -------
    bool

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_ClosedS(*args)

def TopOpeBRepTool_TOOL_CurvE(*args) -> "Standard_Real &":
    r"""
    No available documentation.

    Parameters
    ----------
    E: TopoDS_Edge
    par: float
    tg0: gp_Dir

    Returns
    -------
    Curv: float

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_CurvE(*args)

def TopOpeBRepTool_TOOL_CurvF(*args) -> "Standard_Real &, Standard_Boolean &":
    r"""
    No available documentation.

    Parameters
    ----------
    F: TopoDS_Face
    uv: gp_Pnt2d
    tg0: gp_Dir

    Returns
    -------
    Curv: float
    direct: bool

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_CurvF(*args)

def TopOpeBRepTool_TOOL_EdgeONFace(*args) -> "Standard_Boolean &":
    r"""
    No available documentation.

    Parameters
    ----------
    par: float
    ed: TopoDS_Edge
    uv: gp_Pnt2d
    fa: TopoDS_Face

    Returns
    -------
    isonfa: bool

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_EdgeONFace(*args)

def TopOpeBRepTool_TOOL_Getduv(*args) -> "Standard_Boolean":
    r"""
    No available documentation.

    Parameters
    ----------
    f: TopoDS_Face
    uv: gp_Pnt2d
    dir: gp_Vec
    factor: float
    duv: gp_Dir2d

    Returns
    -------
    bool

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_Getduv(*args)

def TopOpeBRepTool_TOOL_Getstp3dF(*args) -> "Standard_Boolean":
    r"""
    No available documentation.

    Parameters
    ----------
    p: gp_Pnt
    f: TopoDS_Face
    uv: gp_Pnt2d
    st: TopAbs_State

    Returns
    -------
    bool

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_Getstp3dF(*args)

def TopOpeBRepTool_TOOL_IsClosingE(*args) -> "Standard_Boolean":
    r"""
    No available documentation.

    Parameters
    ----------
    E: TopoDS_Edge
    F: TopoDS_Face

    Returns
    -------
    bool
    No available documentation.

    Parameters
    ----------
    E: TopoDS_Edge
    W: TopoDS_Shape
    F: TopoDS_Face

    Returns
    -------
    bool

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_IsClosingE(*args)

def TopOpeBRepTool_TOOL_IsQuad(*args) -> "Standard_Boolean":
    r"""
    No available documentation.

    Parameters
    ----------
    E: TopoDS_Edge

    Returns
    -------
    bool
    No available documentation.

    Parameters
    ----------
    F: TopoDS_Face

    Returns
    -------
    bool

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_IsQuad(*args)

def TopOpeBRepTool_TOOL_IsonCLO(*args) -> "Standard_Boolean":
    r"""
    No available documentation.

    Parameters
    ----------
    PC: Geom2d_Curve
    onU: bool
    xfirst: float
    xperiod: float
    xtol: float

    Returns
    -------
    bool
    No available documentation.

    Parameters
    ----------
    C2DF: TopOpeBRepTool_C2DF
    onU: bool
    xfirst: float
    xperiod: float
    xtol: float

    Returns
    -------
    bool

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_IsonCLO(*args)

def TopOpeBRepTool_TOOL_Matter(*args) -> "Standard_Real &":
    r"""
    No available documentation.

    Parameters
    ----------
    d1: gp_Vec
    d2: gp_Vec
    ref: gp_Vec

    Returns
    -------
    float
    No available documentation.

    Parameters
    ----------
    d1: gp_Vec2d
    d2: gp_Vec2d

    Returns
    -------
    float
    No available documentation.

    Parameters
    ----------
    xx1: gp_Dir
    nt1: gp_Dir
    xx2: gp_Dir
    nt2: gp_Dir
    tola: float

    Returns
    -------
    Ang: float
    No available documentation.

    Parameters
    ----------
    f1: TopoDS_Face
    f2: TopoDS_Face
    e: TopoDS_Edge
    pare: float
    tola: float

    Returns
    -------
    Ang: float

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_Matter(*args)

def TopOpeBRepTool_TOOL_MatterKPtg(*args) -> "Standard_Real &":
    r"""
    No available documentation.

    Parameters
    ----------
    f1: TopoDS_Face
    f2: TopoDS_Face
    e: TopoDS_Edge

    Returns
    -------
    Ang: float

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_MatterKPtg(*args)

def TopOpeBRepTool_TOOL_MkShell(*args) -> "void":
    r"""
    No available documentation.

    Parameters
    ----------
    lF: TopTools_ListOfShape
    She: TopoDS_Shape

    Returns
    -------
    None

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_MkShell(*args)

def TopOpeBRepTool_TOOL_NgApp(*args) -> "Standard_Boolean":
    r"""
    No available documentation.

    Parameters
    ----------
    par: float
    E: TopoDS_Edge
    F: TopoDS_Face
    tola: float
    ngApp: gp_Dir

    Returns
    -------
    bool

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_NgApp(*args)

def TopOpeBRepTool_TOOL_NggeomF(*args) -> "Standard_Boolean":
    r"""
    No available documentation.

    Parameters
    ----------
    uv: gp_Pnt2d
    F: TopoDS_Face
    ng: gp_Vec

    Returns
    -------
    bool

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_NggeomF(*args)

def TopOpeBRepTool_TOOL_Nt(*args) -> "Standard_Boolean":
    r"""
    No available documentation.

    Parameters
    ----------
    uv: gp_Pnt2d
    f: TopoDS_Face
    normt: gp_Dir

    Returns
    -------
    bool

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_Nt(*args)

def TopOpeBRepTool_TOOL_OnBoundary(*args) -> "Standard_Integer":
    r"""
    No available documentation.

    Parameters
    ----------
    par: float
    E: TopoDS_Edge

    Returns
    -------
    int

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_OnBoundary(*args)

def TopOpeBRepTool_TOOL_OriinSor(*args) -> "Standard_Integer":
    r"""
    No available documentation.

    Parameters
    ----------
    sub: TopoDS_Shape
    S: TopoDS_Shape
    checkclo: bool,optional
    	default value is Standard_False

    Returns
    -------
    int

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_OriinSor(*args)

def TopOpeBRepTool_TOOL_OriinSorclosed(*args) -> "Standard_Integer":
    r"""
    No available documentation.

    Parameters
    ----------
    sub: TopoDS_Shape
    S: TopoDS_Shape

    Returns
    -------
    int

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_OriinSorclosed(*args)

def TopOpeBRepTool_TOOL_ParE(*args) -> "Standard_Real":
    r"""
    No available documentation.

    Parameters
    ----------
    Iv: int
    E: TopoDS_Edge

    Returns
    -------
    float

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_ParE(*args)

def TopOpeBRepTool_TOOL_ParE2d(*args) -> "Standard_Real &, Standard_Real &":
    r"""
    No available documentation.

    Parameters
    ----------
    p2d: gp_Pnt2d
    e: TopoDS_Edge
    f: TopoDS_Face

    Returns
    -------
    par: float
    dist: float

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_ParE2d(*args)

def TopOpeBRepTool_TOOL_ParISO(*args) -> "Standard_Real &":
    r"""
    No available documentation.

    Parameters
    ----------
    p2d: gp_Pnt2d
    e: TopoDS_Edge
    f: TopoDS_Face

    Returns
    -------
    pare: float

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_ParISO(*args)

def TopOpeBRepTool_TOOL_Remove(*args) -> "Standard_Boolean":
    r"""
    No available documentation.

    Parameters
    ----------
    loS: TopTools_ListOfShape
    toremove: TopoDS_Shape

    Returns
    -------
    bool

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_Remove(*args)

def TopOpeBRepTool_TOOL_SplitE(*args) -> "Standard_Boolean":
    r"""
    No available documentation.

    Parameters
    ----------
    Eanc: TopoDS_Edge
    Splits: TopTools_ListOfShape

    Returns
    -------
    bool

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_SplitE(*args)

def TopOpeBRepTool_TOOL_Tg2d(*args) -> "gp_Vec2d":
    r"""
    No available documentation.

    Parameters
    ----------
    iv: int
    E: TopoDS_Edge
    C2DF: TopOpeBRepTool_C2DF

    Returns
    -------
    gp_Vec2d

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_Tg2d(*args)

def TopOpeBRepTool_TOOL_Tg2dApp(*args) -> "gp_Vec2d":
    r"""
    No available documentation.

    Parameters
    ----------
    iv: int
    E: TopoDS_Edge
    C2DF: TopOpeBRepTool_C2DF
    factor: float

    Returns
    -------
    gp_Vec2d

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_Tg2dApp(*args)

def TopOpeBRepTool_TOOL_TgINSIDE(*args) -> "Standard_Integer &":
    r"""
    No available documentation.

    Parameters
    ----------
    v: TopoDS_Vertex
    E: TopoDS_Edge
    Tg: gp_Vec

    Returns
    -------
    OvinE: int

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_TgINSIDE(*args)

def TopOpeBRepTool_TOOL_TggeomE(*args) -> "Standard_Boolean":
    r"""
    No available documentation.

    Parameters
    ----------
    par: float
    BC: BRepAdaptor_Curve
    Tg: gp_Vec

    Returns
    -------
    bool
    No available documentation.

    Parameters
    ----------
    par: float
    E: TopoDS_Edge
    Tg: gp_Vec

    Returns
    -------
    bool

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_TggeomE(*args)

def TopOpeBRepTool_TOOL_TolP(*args) -> "Standard_Real":
    r"""
    No available documentation.

    Parameters
    ----------
    E: TopoDS_Edge
    F: TopoDS_Face

    Returns
    -------
    float

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_TolP(*args)

def TopOpeBRepTool_TOOL_TolUV(*args) -> "Standard_Real":
    r"""
    No available documentation.

    Parameters
    ----------
    F: TopoDS_Face
    tol3d: float

    Returns
    -------
    float

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_TolUV(*args)

def TopOpeBRepTool_TOOL_TrslUV(*args) -> "void":
    r"""
    No available documentation.

    Parameters
    ----------
    t2d: gp_Vec2d
    C2DF: TopOpeBRepTool_C2DF

    Returns
    -------
    None

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_TrslUV(*args)

def TopOpeBRepTool_TOOL_TrslUVModifE(*args) -> "Standard_Boolean":
    r"""
    No available documentation.

    Parameters
    ----------
    t2d: gp_Vec2d
    F: TopoDS_Face
    E: TopoDS_Edge

    Returns
    -------
    bool

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_TrslUVModifE(*args)

def TopOpeBRepTool_TOOL_UVF(*args) -> "gp_Pnt2d":
    r"""
    No available documentation.

    Parameters
    ----------
    par: float
    C2DF: TopOpeBRepTool_C2DF

    Returns
    -------
    gp_Pnt2d

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_UVF(*args)

def TopOpeBRepTool_TOOL_UVISO(*args) -> "Standard_Boolean &, Standard_Boolean &":
    r"""
    No available documentation.

    Parameters
    ----------
    PC: Geom2d_Curve
    d2d: gp_Dir2d
    o2d: gp_Pnt2d

    Returns
    -------
    isou: bool
    isov: bool
    No available documentation.

    Parameters
    ----------
    C2DF: TopOpeBRepTool_C2DF
    d2d: gp_Dir2d
    o2d: gp_Pnt2d

    Returns
    -------
    isou: bool
    isov: bool
    No available documentation.

    Parameters
    ----------
    E: TopoDS_Edge
    F: TopoDS_Face
    d2d: gp_Dir2d
    o2d: gp_Pnt2d

    Returns
    -------
    isou: bool
    isov: bool

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_UVISO(*args)

def TopOpeBRepTool_TOOL_Vertex(*args) -> "TopoDS_Vertex":
    r"""
    No available documentation.

    Parameters
    ----------
    Iv: int
    E: TopoDS_Edge

    Returns
    -------
    TopoDS_Vertex

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_Vertex(*args)

def TopOpeBRepTool_TOOL_Vertices(*args) -> "void":
    r"""
    No available documentation.

    Parameters
    ----------
    E: TopoDS_Edge
    Vces: TopTools_Array1OfShape

    Returns
    -------
    None

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_Vertices(*args)

def TopOpeBRepTool_TOOL_WireToFace(*args) -> "Standard_Boolean":
    r"""
    No available documentation.

    Parameters
    ----------
    Fref: TopoDS_Face
    mapWlow: TopTools_DataMapOfShapeListOfShape
    lFs: TopTools_ListOfShape

    Returns
    -------
    bool

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_WireToFace(*args)

def TopOpeBRepTool_TOOL_XX(*args) -> "Standard_Boolean":
    r"""
    No available documentation.

    Parameters
    ----------
    uv: gp_Pnt2d
    f: TopoDS_Face
    par: float
    e: TopoDS_Edge
    xx: gp_Dir

    Returns
    -------
    bool

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_XX(*args)

def TopOpeBRepTool_TOOL_minDUV(*args) -> "Standard_Real":
    r"""
    No available documentation.

    Parameters
    ----------
    F: TopoDS_Face

    Returns
    -------
    float

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_minDUV(*args)

def TopOpeBRepTool_TOOL_outUVbounds(*args) -> "Standard_Boolean":
    r"""
    No available documentation.

    Parameters
    ----------
    uv: gp_Pnt2d
    F: TopoDS_Face

    Returns
    -------
    bool

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_outUVbounds(*args)

def TopOpeBRepTool_TOOL_stuvF(*args) -> "Standard_Integer &, Standard_Integer &":
    r"""
    No available documentation.

    Parameters
    ----------
    uv: gp_Pnt2d
    F: TopoDS_Face

    Returns
    -------
    onU: int
    onV: int

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_stuvF(*args)

def TopOpeBRepTool_TOOL_tryNgApp(*args) -> "Standard_Boolean":
    r"""
    No available documentation.

    Parameters
    ----------
    par: float
    E: TopoDS_Edge
    F: TopoDS_Face
    tola: float
    ng: gp_Dir

    Returns
    -------
    bool

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_tryNgApp(*args)

def TopOpeBRepTool_TOOL_tryOriEinF(*args) -> "Standard_Integer":
    r"""
    No available documentation.

    Parameters
    ----------
    par: float
    E: TopoDS_Edge
    F: TopoDS_Face

    Returns
    -------
    int

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_tryOriEinF(*args)

def TopOpeBRepTool_TOOL_tryTg2dApp(*args) -> "gp_Vec2d":
    r"""
    No available documentation.

    Parameters
    ----------
    iv: int
    E: TopoDS_Edge
    C2DF: TopOpeBRepTool_C2DF
    factor: float

    Returns
    -------
    gp_Vec2d

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_tryTg2dApp(*args)

def TopOpeBRepTool_TOOL_uvApp(*args) -> "Standard_Boolean":
    r"""
    No available documentation.

    Parameters
    ----------
    f: TopoDS_Face
    e: TopoDS_Edge
    par: float
    eps: float
    uvapp: gp_Pnt2d

    Returns
    -------
    bool

    """
    return _TopOpeBRepTool.TopOpeBRepTool_TOOL_uvApp(*args)

class TopOpeBRepTool_connexity(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        No available documentation.

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        Key: TopoDS_Shape

        Returns
        -------
        None

        """
        _TopOpeBRepTool.TopOpeBRepTool_connexity_swiginit(self, _TopOpeBRepTool.new_TopOpeBRepTool_connexity(*args))

    def AddItem(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        OriKey: int
        Item: TopTools_ListOfShape

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        OriKey: int
        Item: TopoDS_Shape

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_connexity_AddItem(self, *args)

    def AllItems(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Parameters
        ----------
        Item: TopTools_ListOfShape

        Returns
        -------
        int

        """
        return _TopOpeBRepTool.TopOpeBRepTool_connexity_AllItems(self, *args)

    def ChangeItem(self, *args) -> "TopTools_ListOfShape &":
        r"""
        No available documentation.

        Parameters
        ----------
        OriKey: int

        Returns
        -------
        TopTools_ListOfShape

        """
        return _TopOpeBRepTool.TopOpeBRepTool_connexity_ChangeItem(self, *args)

    def IsFaulty(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_connexity_IsFaulty(self, *args)

    def IsInternal(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Parameters
        ----------
        Item: TopTools_ListOfShape

        Returns
        -------
        int

        """
        return _TopOpeBRepTool.TopOpeBRepTool_connexity_IsInternal(self, *args)

    def IsMultiple(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_connexity_IsMultiple(self, *args)

    def Item(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Parameters
        ----------
        OriKey: int
        Item: TopTools_ListOfShape

        Returns
        -------
        int

        """
        return _TopOpeBRepTool.TopOpeBRepTool_connexity_Item(self, *args)

    def Key(self, *args) -> "TopoDS_Shape const":
        r"""
        No available documentation.

        Returns
        -------
        TopoDS_Shape

        """
        return _TopOpeBRepTool.TopOpeBRepTool_connexity_Key(self, *args)

    def RemoveItem(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        OriKey: int
        Item: TopoDS_Shape

        Returns
        -------
        bool
        No available documentation.

        Parameters
        ----------
        Item: TopoDS_Shape

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_connexity_RemoveItem(self, *args)

    def SetKey(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        Key: TopoDS_Shape

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_connexity_SetKey(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepTool.delete_TopOpeBRepTool_connexity

# Register TopOpeBRepTool_connexity in _TopOpeBRepTool:
_TopOpeBRepTool.TopOpeBRepTool_connexity_swigregister(TopOpeBRepTool_connexity)

class TopOpeBRepTool_face(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        No available documentation.

        Returns
        -------
        None

        """
        _TopOpeBRepTool.TopOpeBRepTool_face_swiginit(self, _TopOpeBRepTool.new_TopOpeBRepTool_face(*args))

    def Ffinite(self, *args) -> "TopoDS_Face const":
        r"""
        No available documentation.

        Returns
        -------
        TopoDS_Face

        """
        return _TopOpeBRepTool.TopOpeBRepTool_face_Ffinite(self, *args)

    def Finite(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_face_Finite(self, *args)

    def Init(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        W: TopoDS_Wire
        Fref: TopoDS_Face

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_face_Init(self, *args)

    def IsDone(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_face_IsDone(self, *args)

    def RealF(self, *args) -> "TopoDS_Face":
        r"""
        No available documentation.

        Returns
        -------
        TopoDS_Face

        """
        return _TopOpeBRepTool.TopOpeBRepTool_face_RealF(self, *args)

    def W(self, *args) -> "TopoDS_Wire const":
        r"""
        No available documentation.

        Returns
        -------
        TopoDS_Wire

        """
        return _TopOpeBRepTool.TopOpeBRepTool_face_W(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepTool.delete_TopOpeBRepTool_face

# Register TopOpeBRepTool_face in _TopOpeBRepTool:
_TopOpeBRepTool.TopOpeBRepTool_face_swigregister(TopOpeBRepTool_face)

class TopOpeBRepTool_makeTransition(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, *args):
        r"""
        No available documentation.

        Returns
        -------
        None

        """
        _TopOpeBRepTool.TopOpeBRepTool_makeTransition_swiginit(self, _TopOpeBRepTool.new_TopOpeBRepTool_makeTransition(*args))

    def Getfactor(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

        Returns
        -------
        float

        """
        return _TopOpeBRepTool.TopOpeBRepTool_makeTransition_Getfactor(self, *args)

    def HasRest(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_makeTransition_HasRest(self, *args)

    def Initialize(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        E: TopoDS_Edge
        pbef: float
        paft: float
        parE: float
        FS: TopoDS_Face
        uv: gp_Pnt2d
        factor: float

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_makeTransition_Initialize(self, *args)

    def IsT2d(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_makeTransition_IsT2d(self, *args)

    def MkT2donE(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        stb: TopAbs_State
        sta: TopAbs_State

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_makeTransition_MkT2donE(self, *args)

    def MkT3dproj(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        stb: TopAbs_State
        sta: TopAbs_State

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_makeTransition_MkT3dproj(self, *args)

    def MkT3onE(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        stb: TopAbs_State
        sta: TopAbs_State

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_makeTransition_MkT3onE(self, *args)

    def MkTonE(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        stb: TopAbs_State
        sta: TopAbs_State

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_makeTransition_MkTonE(self, *args)

    def SetRest(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Parameters
        ----------
        ES: TopoDS_Edge
        parES: float

        Returns
        -------
        bool

        """
        return _TopOpeBRepTool.TopOpeBRepTool_makeTransition_SetRest(self, *args)

    def Setfactor(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        factor: float

        Returns
        -------
        None

        """
        return _TopOpeBRepTool.TopOpeBRepTool_makeTransition_Setfactor(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _TopOpeBRepTool.delete_TopOpeBRepTool_makeTransition

# Register TopOpeBRepTool_makeTransition in _TopOpeBRepTool:
_TopOpeBRepTool.TopOpeBRepTool_makeTransition_swigregister(TopOpeBRepTool_makeTransition)


@classnotwrapped
class TopOpeBRepTool_STATE:
	pass

@classnotwrapped
class TopOpeBRepTool_mkTondgE:
	pass






