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

"""
HLRTopoBRep module, see official documentation at
https://www.opencascade.com/doc/occt-7.7.0/refman/html/package_hlrtopobrep.html
"""

from sys import version_info as _swig_python_version_info
# Import the low-level C/C++ module
if __package__ or "." in __name__:
    from . import _HLRTopoBRep
else:
    import _HLRTopoBRep

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 == "this":
            set(self, name, value)
        elif name == "thisown":
            self.this.own(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__ = _HLRTopoBRep.delete_SwigPyIterator

    def value(self):
        return _HLRTopoBRep.SwigPyIterator_value(self)

    def incr(self, n=1):
        return _HLRTopoBRep.SwigPyIterator_incr(self, n)

    def decr(self, n=1):
        return _HLRTopoBRep.SwigPyIterator_decr(self, n)

    def distance(self, x):
        return _HLRTopoBRep.SwigPyIterator_distance(self, x)

    def equal(self, x):
        return _HLRTopoBRep.SwigPyIterator_equal(self, x)

    def copy(self):
        return _HLRTopoBRep.SwigPyIterator_copy(self)

    def next(self):
        return _HLRTopoBRep.SwigPyIterator_next(self)

    def __next__(self):
        return _HLRTopoBRep.SwigPyIterator___next__(self)

    def previous(self):
        return _HLRTopoBRep.SwigPyIterator_previous(self)

    def advance(self, n):
        return _HLRTopoBRep.SwigPyIterator_advance(self, n)

    def __eq__(self, x):
        return _HLRTopoBRep.SwigPyIterator___eq__(self, x)

    def __ne__(self, x):
        return _HLRTopoBRep.SwigPyIterator___ne__(self, x)

    def __iadd__(self, n):
        return _HLRTopoBRep.SwigPyIterator___iadd__(self, n)

    def __isub__(self, n):
        return _HLRTopoBRep.SwigPyIterator___isub__(self, n)

    def __add__(self, n):
        return _HLRTopoBRep.SwigPyIterator___add__(self, n)

    def __sub__(self, *args):
        return _HLRTopoBRep.SwigPyIterator___sub__(self, *args)
    def __iter__(self):
        return self

# Register SwigPyIterator in _HLRTopoBRep:
_HLRTopoBRep.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, method_name, class_name):
    return _HLRTopoBRep.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.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.Contap
import OCC.Core.math
import OCC.Core.IntSurf
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.BRepTopAdaptor
import OCC.Core.BRepAdaptor
import OCC.Core.GeomAdaptor
import OCC.Core.Geom2dAdaptor
import OCC.Core.TopTools
import OCC.Core.HLRAlgo

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




def Handle_HLRTopoBRep_OutLiner_Create():
    return _HLRTopoBRep.Handle_HLRTopoBRep_OutLiner_Create()

def Handle_HLRTopoBRep_OutLiner_DownCast(t):
    return _HLRTopoBRep.Handle_HLRTopoBRep_OutLiner_DownCast(t)

def Handle_HLRTopoBRep_OutLiner_IsNull(t):
    return _HLRTopoBRep.Handle_HLRTopoBRep_OutLiner_IsNull(t)
class HLRTopoBRep_DataMapOfShapeFaceData(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):
        return _HLRTopoBRep.HLRTopoBRep_DataMapOfShapeFaceData_begin(self)

    def end(self):
        return _HLRTopoBRep.HLRTopoBRep_DataMapOfShapeFaceData_end(self)

    def cbegin(self):
        return _HLRTopoBRep.HLRTopoBRep_DataMapOfShapeFaceData_cbegin(self)

    def cend(self):
        return _HLRTopoBRep.HLRTopoBRep_DataMapOfShapeFaceData_cend(self)

    def __init__(self, *args):
        _HLRTopoBRep.HLRTopoBRep_DataMapOfShapeFaceData_swiginit(self, _HLRTopoBRep.new_HLRTopoBRep_DataMapOfShapeFaceData(*args))

    def Exchange(self, theOther):
        return _HLRTopoBRep.HLRTopoBRep_DataMapOfShapeFaceData_Exchange(self, theOther)

    def Assign(self, theOther):
        return _HLRTopoBRep.HLRTopoBRep_DataMapOfShapeFaceData_Assign(self, theOther)

    def Set(self, theOther):
        return _HLRTopoBRep.HLRTopoBRep_DataMapOfShapeFaceData_Set(self, theOther)

    def ReSize(self, N):
        return _HLRTopoBRep.HLRTopoBRep_DataMapOfShapeFaceData_ReSize(self, N)

    def Bind(self, theKey, theItem):
        return _HLRTopoBRep.HLRTopoBRep_DataMapOfShapeFaceData_Bind(self, theKey, theItem)

    def Bound(self, theKey, theItem):
        return _HLRTopoBRep.HLRTopoBRep_DataMapOfShapeFaceData_Bound(self, theKey, theItem)

    def IsBound(self, theKey):
        return _HLRTopoBRep.HLRTopoBRep_DataMapOfShapeFaceData_IsBound(self, theKey)

    def UnBind(self, theKey):
        return _HLRTopoBRep.HLRTopoBRep_DataMapOfShapeFaceData_UnBind(self, theKey)

    def Seek(self, theKey):
        return _HLRTopoBRep.HLRTopoBRep_DataMapOfShapeFaceData_Seek(self, theKey)

    def Find(self, *args):
        return _HLRTopoBRep.HLRTopoBRep_DataMapOfShapeFaceData_Find(self, *args)

    def ChangeSeek(self, theKey):
        return _HLRTopoBRep.HLRTopoBRep_DataMapOfShapeFaceData_ChangeSeek(self, theKey)

    def ChangeFind(self, theKey):
        return _HLRTopoBRep.HLRTopoBRep_DataMapOfShapeFaceData_ChangeFind(self, theKey)

    def __call__(self, *args):
        return _HLRTopoBRep.HLRTopoBRep_DataMapOfShapeFaceData___call__(self, *args)

    def Clear(self, *args):
        return _HLRTopoBRep.HLRTopoBRep_DataMapOfShapeFaceData_Clear(self, *args)
    __swig_destroy__ = _HLRTopoBRep.delete_HLRTopoBRep_DataMapOfShapeFaceData

    def Size(self):
        return _HLRTopoBRep.HLRTopoBRep_DataMapOfShapeFaceData_Size(self)

# Register HLRTopoBRep_DataMapOfShapeFaceData in _HLRTopoBRep:
_HLRTopoBRep.HLRTopoBRep_DataMapOfShapeFaceData_swigregister(HLRTopoBRep_DataMapOfShapeFaceData)
class HLRTopoBRep_ListIteratorOfListOfVData(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):
        _HLRTopoBRep.HLRTopoBRep_ListIteratorOfListOfVData_swiginit(self, _HLRTopoBRep.new_HLRTopoBRep_ListIteratorOfListOfVData(*args))

    def More(self):
        return _HLRTopoBRep.HLRTopoBRep_ListIteratorOfListOfVData_More(self)

    def Next(self):
        return _HLRTopoBRep.HLRTopoBRep_ListIteratorOfListOfVData_Next(self)

    def Value(self):
        return _HLRTopoBRep.HLRTopoBRep_ListIteratorOfListOfVData_Value(self)

    def ChangeValue(self):
        return _HLRTopoBRep.HLRTopoBRep_ListIteratorOfListOfVData_ChangeValue(self)
    __swig_destroy__ = _HLRTopoBRep.delete_HLRTopoBRep_ListIteratorOfListOfVData

# Register HLRTopoBRep_ListIteratorOfListOfVData in _HLRTopoBRep:
_HLRTopoBRep.HLRTopoBRep_ListIteratorOfListOfVData_swigregister(HLRTopoBRep_ListIteratorOfListOfVData)
class HLRTopoBRep_ListOfVData(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):
        return _HLRTopoBRep.HLRTopoBRep_ListOfVData_begin(self)

    def end(self):
        return _HLRTopoBRep.HLRTopoBRep_ListOfVData_end(self)

    def cbegin(self):
        return _HLRTopoBRep.HLRTopoBRep_ListOfVData_cbegin(self)

    def cend(self):
        return _HLRTopoBRep.HLRTopoBRep_ListOfVData_cend(self)

    def __init__(self, *args):
        _HLRTopoBRep.HLRTopoBRep_ListOfVData_swiginit(self, _HLRTopoBRep.new_HLRTopoBRep_ListOfVData(*args))

    def Size(self):
        return _HLRTopoBRep.HLRTopoBRep_ListOfVData_Size(self)

    def Assign(self, theOther):
        return _HLRTopoBRep.HLRTopoBRep_ListOfVData_Assign(self, theOther)

    def Set(self, theOther):
        return _HLRTopoBRep.HLRTopoBRep_ListOfVData_Set(self, theOther)

    def Clear(self, theAllocator=0):
        return _HLRTopoBRep.HLRTopoBRep_ListOfVData_Clear(self, theAllocator)

    def First(self):
        return _HLRTopoBRep.HLRTopoBRep_ListOfVData_First(self)

    def Last(self):
        return _HLRTopoBRep.HLRTopoBRep_ListOfVData_Last(self)

    def Append(self, *args):
        return _HLRTopoBRep.HLRTopoBRep_ListOfVData_Append(self, *args)

    def Prepend(self, *args):
        return _HLRTopoBRep.HLRTopoBRep_ListOfVData_Prepend(self, *args)

    def RemoveFirst(self):
        return _HLRTopoBRep.HLRTopoBRep_ListOfVData_RemoveFirst(self)

    def Remove(self, theIter):
        return _HLRTopoBRep.HLRTopoBRep_ListOfVData_Remove(self, theIter)

    def InsertBefore(self, *args):
        return _HLRTopoBRep.HLRTopoBRep_ListOfVData_InsertBefore(self, *args)

    def InsertAfter(self, *args):
        return _HLRTopoBRep.HLRTopoBRep_ListOfVData_InsertAfter(self, *args)

    def Reverse(self):
        return _HLRTopoBRep.HLRTopoBRep_ListOfVData_Reverse(self)
    __swig_destroy__ = _HLRTopoBRep.delete_HLRTopoBRep_ListOfVData

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


# Register HLRTopoBRep_ListOfVData in _HLRTopoBRep:
_HLRTopoBRep.HLRTopoBRep_ListOfVData_swigregister(HLRTopoBRep_ListOfVData)
class HLRTopoBRep_MapOfShapeListOfVData(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):
        return _HLRTopoBRep.HLRTopoBRep_MapOfShapeListOfVData_begin(self)

    def end(self):
        return _HLRTopoBRep.HLRTopoBRep_MapOfShapeListOfVData_end(self)

    def cbegin(self):
        return _HLRTopoBRep.HLRTopoBRep_MapOfShapeListOfVData_cbegin(self)

    def cend(self):
        return _HLRTopoBRep.HLRTopoBRep_MapOfShapeListOfVData_cend(self)

    def __init__(self, *args):
        _HLRTopoBRep.HLRTopoBRep_MapOfShapeListOfVData_swiginit(self, _HLRTopoBRep.new_HLRTopoBRep_MapOfShapeListOfVData(*args))

    def Exchange(self, theOther):
        return _HLRTopoBRep.HLRTopoBRep_MapOfShapeListOfVData_Exchange(self, theOther)

    def Assign(self, theOther):
        return _HLRTopoBRep.HLRTopoBRep_MapOfShapeListOfVData_Assign(self, theOther)

    def Set(self, theOther):
        return _HLRTopoBRep.HLRTopoBRep_MapOfShapeListOfVData_Set(self, theOther)

    def ReSize(self, N):
        return _HLRTopoBRep.HLRTopoBRep_MapOfShapeListOfVData_ReSize(self, N)

    def Bind(self, theKey, theItem):
        return _HLRTopoBRep.HLRTopoBRep_MapOfShapeListOfVData_Bind(self, theKey, theItem)

    def Bound(self, theKey, theItem):
        return _HLRTopoBRep.HLRTopoBRep_MapOfShapeListOfVData_Bound(self, theKey, theItem)

    def IsBound(self, theKey):
        return _HLRTopoBRep.HLRTopoBRep_MapOfShapeListOfVData_IsBound(self, theKey)

    def UnBind(self, theKey):
        return _HLRTopoBRep.HLRTopoBRep_MapOfShapeListOfVData_UnBind(self, theKey)

    def Seek(self, theKey):
        return _HLRTopoBRep.HLRTopoBRep_MapOfShapeListOfVData_Seek(self, theKey)

    def Find(self, *args):
        return _HLRTopoBRep.HLRTopoBRep_MapOfShapeListOfVData_Find(self, *args)

    def ChangeSeek(self, theKey):
        return _HLRTopoBRep.HLRTopoBRep_MapOfShapeListOfVData_ChangeSeek(self, theKey)

    def ChangeFind(self, theKey):
        return _HLRTopoBRep.HLRTopoBRep_MapOfShapeListOfVData_ChangeFind(self, theKey)

    def __call__(self, *args):
        return _HLRTopoBRep.HLRTopoBRep_MapOfShapeListOfVData___call__(self, *args)

    def Clear(self, *args):
        return _HLRTopoBRep.HLRTopoBRep_MapOfShapeListOfVData_Clear(self, *args)
    __swig_destroy__ = _HLRTopoBRep.delete_HLRTopoBRep_MapOfShapeListOfVData

    def Size(self):
        return _HLRTopoBRep.HLRTopoBRep_MapOfShapeListOfVData_Size(self)

# Register HLRTopoBRep_MapOfShapeListOfVData in _HLRTopoBRep:
_HLRTopoBRep.HLRTopoBRep_MapOfShapeListOfVData_swigregister(HLRTopoBRep_MapOfShapeListOfVData)
class HLRTopoBRep_DSFiller(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    @staticmethod
    def Insert(*args):
        r"""

        Parameters
        ----------
        S: TopoDS_Shape
        FO: Contap_Contour
        DS: HLRTopoBRep_Data
        MST: BRepTopAdaptor_MapOfShapeTool
        nbIso: int

        Return
        -------
        None

        Description
        -----------
        Stores in <ds> the outlines of <s> using the current outliner and stores the isolines in <ds> using a hatcher.

        """
        return _HLRTopoBRep.HLRTopoBRep_DSFiller_Insert(*args)

    __repr__ = _dumps_object


    def __init__(self):
        _HLRTopoBRep.HLRTopoBRep_DSFiller_swiginit(self, _HLRTopoBRep.new_HLRTopoBRep_DSFiller())
    __swig_destroy__ = _HLRTopoBRep.delete_HLRTopoBRep_DSFiller

# Register HLRTopoBRep_DSFiller in _HLRTopoBRep:
_HLRTopoBRep.HLRTopoBRep_DSFiller_swigregister(HLRTopoBRep_DSFiller)
class HLRTopoBRep_Data(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"""
        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        _HLRTopoBRep.HLRTopoBRep_Data_swiginit(self, _HLRTopoBRep.new_HLRTopoBRep_Data(*args))

    def AddIntL(self, *args):
        r"""

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

        Return
        -------
        TopTools_ListOfShape

        Description
        -----------
        No available documentation.

        """
        return _HLRTopoBRep.HLRTopoBRep_Data_AddIntL(self, *args)

    def AddIntV(self, *args):
        r"""

        Parameters
        ----------
        V: TopoDS_Vertex

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _HLRTopoBRep.HLRTopoBRep_Data_AddIntV(self, *args)

    def AddIsoL(self, *args):
        r"""

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

        Return
        -------
        TopTools_ListOfShape

        Description
        -----------
        No available documentation.

        """
        return _HLRTopoBRep.HLRTopoBRep_Data_AddIsoL(self, *args)

    def AddOldS(self, *args):
        r"""

        Parameters
        ----------
        NewS: TopoDS_Shape
        OldS: TopoDS_Shape

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _HLRTopoBRep.HLRTopoBRep_Data_AddOldS(self, *args)

    def AddOutL(self, *args):
        r"""

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

        Return
        -------
        TopTools_ListOfShape

        Description
        -----------
        No available documentation.

        """
        return _HLRTopoBRep.HLRTopoBRep_Data_AddOutL(self, *args)

    def AddOutV(self, *args):
        r"""

        Parameters
        ----------
        V: TopoDS_Vertex

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _HLRTopoBRep.HLRTopoBRep_Data_AddOutV(self, *args)

    def AddSplE(self, *args):
        r"""

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

        Return
        -------
        TopTools_ListOfShape

        Description
        -----------
        No available documentation.

        """
        return _HLRTopoBRep.HLRTopoBRep_Data_AddSplE(self, *args)

    def Append(self, *args):
        r"""

        Parameters
        ----------
        V: TopoDS_Vertex
        P: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _HLRTopoBRep.HLRTopoBRep_Data_Append(self, *args)

    def Clean(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Clear of all the data not needed during and after the hiding process.

        """
        return _HLRTopoBRep.HLRTopoBRep_Data_Clean(self, *args)

    def Clear(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Clear of all the maps.

        """
        return _HLRTopoBRep.HLRTopoBRep_Data_Clear(self, *args)

    def Edge(self, *args):
        r"""
        Return
        -------
        TopoDS_Edge

        Description
        -----------
        No available documentation.

        """
        return _HLRTopoBRep.HLRTopoBRep_Data_Edge(self, *args)

    def EdgeHasSplE(self, *args):
        r"""

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

        Return
        -------
        bool

        Description
        -----------
        Returns true if the edge is split.

        """
        return _HLRTopoBRep.HLRTopoBRep_Data_EdgeHasSplE(self, *args)

    def EdgeSplE(self, *args):
        r"""

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

        Return
        -------
        TopTools_ListOfShape

        Description
        -----------
        Returns the list of the edges.

        """
        return _HLRTopoBRep.HLRTopoBRep_Data_EdgeSplE(self, *args)

    def FaceHasIntL(self, *args):
        r"""

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

        Return
        -------
        bool

        Description
        -----------
        Returns true if the face has internal outline.

        """
        return _HLRTopoBRep.HLRTopoBRep_Data_FaceHasIntL(self, *args)

    def FaceHasIsoL(self, *args):
        r"""

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

        Return
        -------
        bool

        Description
        -----------
        Returns true if the face has isolines.

        """
        return _HLRTopoBRep.HLRTopoBRep_Data_FaceHasIsoL(self, *args)

    def FaceHasOutL(self, *args):
        r"""

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

        Return
        -------
        bool

        Description
        -----------
        Returns true if the face has outlines on restriction.

        """
        return _HLRTopoBRep.HLRTopoBRep_Data_FaceHasOutL(self, *args)

    def FaceIntL(self, *args):
        r"""

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

        Return
        -------
        TopTools_ListOfShape

        Description
        -----------
        Returns the list of the internal outlines.

        """
        return _HLRTopoBRep.HLRTopoBRep_Data_FaceIntL(self, *args)

    def FaceIsoL(self, *args):
        r"""

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

        Return
        -------
        TopTools_ListOfShape

        Description
        -----------
        Returns the list of the isolines.

        """
        return _HLRTopoBRep.HLRTopoBRep_Data_FaceIsoL(self, *args)

    def FaceOutL(self, *args):
        r"""

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

        Return
        -------
        TopTools_ListOfShape

        Description
        -----------
        Returns the list of the outlines on restriction.

        """
        return _HLRTopoBRep.HLRTopoBRep_Data_FaceOutL(self, *args)

    def InitEdge(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _HLRTopoBRep.HLRTopoBRep_Data_InitEdge(self, *args)

    def InitVertex(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Start an iteration on the vertices of e.

        """
        return _HLRTopoBRep.HLRTopoBRep_Data_InitVertex(self, *args)

    def InsertBefore(self, *args):
        r"""

        Parameters
        ----------
        V: TopoDS_Vertex
        P: float

        Return
        -------
        None

        Description
        -----------
        Insert before the current position.

        """
        return _HLRTopoBRep.HLRTopoBRep_Data_InsertBefore(self, *args)

    def IsIntLFaceEdge(self, *args):
        r"""

        Parameters
        ----------
        F: TopoDS_Face
        E: TopoDS_Edge

        Return
        -------
        bool

        Description
        -----------
        No available documentation.

        """
        return _HLRTopoBRep.HLRTopoBRep_Data_IsIntLFaceEdge(self, *args)

    def IsIntV(self, *args):
        r"""

        Parameters
        ----------
        V: TopoDS_Vertex

        Return
        -------
        bool

        Description
        -----------
        Returns true if v is an internal outline vertex.

        """
        return _HLRTopoBRep.HLRTopoBRep_Data_IsIntV(self, *args)

    def IsIsoLFaceEdge(self, *args):
        r"""

        Parameters
        ----------
        F: TopoDS_Face
        E: TopoDS_Edge

        Return
        -------
        bool

        Description
        -----------
        No available documentation.

        """
        return _HLRTopoBRep.HLRTopoBRep_Data_IsIsoLFaceEdge(self, *args)

    def IsOutLFaceEdge(self, *args):
        r"""

        Parameters
        ----------
        F: TopoDS_Face
        E: TopoDS_Edge

        Return
        -------
        bool

        Description
        -----------
        No available documentation.

        """
        return _HLRTopoBRep.HLRTopoBRep_Data_IsOutLFaceEdge(self, *args)

    def IsOutV(self, *args):
        r"""

        Parameters
        ----------
        V: TopoDS_Vertex

        Return
        -------
        bool

        Description
        -----------
        Returns true if v is an outline vertex on a restriction.

        """
        return _HLRTopoBRep.HLRTopoBRep_Data_IsOutV(self, *args)

    def IsSplEEdgeEdge(self, *args):
        r"""

        Parameters
        ----------
        E1: TopoDS_Edge
        E2: TopoDS_Edge

        Return
        -------
        bool

        Description
        -----------
        No available documentation.

        """
        return _HLRTopoBRep.HLRTopoBRep_Data_IsSplEEdgeEdge(self, *args)

    def MoreEdge(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        No available documentation.

        """
        return _HLRTopoBRep.HLRTopoBRep_Data_MoreEdge(self, *args)

    def MoreVertex(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        No available documentation.

        """
        return _HLRTopoBRep.HLRTopoBRep_Data_MoreVertex(self, *args)

    def NewSOldS(self, *args):
        r"""

        Parameters
        ----------
        New: TopoDS_Shape

        Return
        -------
        TopoDS_Shape

        Description
        -----------
        No available documentation.

        """
        return _HLRTopoBRep.HLRTopoBRep_Data_NewSOldS(self, *args)

    def NextEdge(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _HLRTopoBRep.HLRTopoBRep_Data_NextEdge(self, *args)

    def NextVertex(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _HLRTopoBRep.HLRTopoBRep_Data_NextVertex(self, *args)

    def Parameter(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _HLRTopoBRep.HLRTopoBRep_Data_Parameter(self, *args)

    def Vertex(self, *args):
        r"""
        Return
        -------
        TopoDS_Vertex

        Description
        -----------
        No available documentation.

        """
        return _HLRTopoBRep.HLRTopoBRep_Data_Vertex(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _HLRTopoBRep.delete_HLRTopoBRep_Data

# Register HLRTopoBRep_Data in _HLRTopoBRep:
_HLRTopoBRep.HLRTopoBRep_Data_swigregister(HLRTopoBRep_Data)
class HLRTopoBRep_FaceData(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"""
        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        _HLRTopoBRep.HLRTopoBRep_FaceData_swiginit(self, _HLRTopoBRep.new_HLRTopoBRep_FaceData(*args))

    def AddIntL(self, *args):
        r"""
        Return
        -------
        TopTools_ListOfShape

        Description
        -----------
        No available documentation.

        """
        return _HLRTopoBRep.HLRTopoBRep_FaceData_AddIntL(self, *args)

    def AddIsoL(self, *args):
        r"""
        Return
        -------
        TopTools_ListOfShape

        Description
        -----------
        No available documentation.

        """
        return _HLRTopoBRep.HLRTopoBRep_FaceData_AddIsoL(self, *args)

    def AddOutL(self, *args):
        r"""
        Return
        -------
        TopTools_ListOfShape

        Description
        -----------
        No available documentation.

        """
        return _HLRTopoBRep.HLRTopoBRep_FaceData_AddOutL(self, *args)

    def FaceIntL(self, *args):
        r"""
        Return
        -------
        TopTools_ListOfShape

        Description
        -----------
        No available documentation.

        """
        return _HLRTopoBRep.HLRTopoBRep_FaceData_FaceIntL(self, *args)

    def FaceIsoL(self, *args):
        r"""
        Return
        -------
        TopTools_ListOfShape

        Description
        -----------
        No available documentation.

        """
        return _HLRTopoBRep.HLRTopoBRep_FaceData_FaceIsoL(self, *args)

    def FaceOutL(self, *args):
        r"""
        Return
        -------
        TopTools_ListOfShape

        Description
        -----------
        No available documentation.

        """
        return _HLRTopoBRep.HLRTopoBRep_FaceData_FaceOutL(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _HLRTopoBRep.delete_HLRTopoBRep_FaceData

# Register HLRTopoBRep_FaceData in _HLRTopoBRep:
_HLRTopoBRep.HLRTopoBRep_FaceData_swigregister(HLRTopoBRep_FaceData)
class HLRTopoBRep_FaceIsoLiner(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    @staticmethod
    def MakeIsoLine(*args):
        r"""

        Parameters
        ----------
        F: TopoDS_Face
        Iso: Geom2d_Line
        V1: TopoDS_Vertex
        V2: TopoDS_Vertex
        U1: float
        U2: float
        Tol: float
        DS: HLRTopoBRep_Data

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _HLRTopoBRep.HLRTopoBRep_FaceIsoLiner_MakeIsoLine(*args)

    @staticmethod
    def MakeVertex(*args):
        r"""

        Parameters
        ----------
        E: TopoDS_Edge
        P: gp_Pnt
        Par: float
        Tol: float
        DS: HLRTopoBRep_Data

        Return
        -------
        TopoDS_Vertex

        Description
        -----------
        No available documentation.

        """
        return _HLRTopoBRep.HLRTopoBRep_FaceIsoLiner_MakeVertex(*args)

    @staticmethod
    def Perform(*args):
        r"""

        Parameters
        ----------
        FI: int
        F: TopoDS_Face
        DS: HLRTopoBRep_Data
        nbIsos: int

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _HLRTopoBRep.HLRTopoBRep_FaceIsoLiner_Perform(*args)

    __repr__ = _dumps_object


    def __init__(self):
        _HLRTopoBRep.HLRTopoBRep_FaceIsoLiner_swiginit(self, _HLRTopoBRep.new_HLRTopoBRep_FaceIsoLiner())
    __swig_destroy__ = _HLRTopoBRep.delete_HLRTopoBRep_FaceIsoLiner

# Register HLRTopoBRep_FaceIsoLiner in _HLRTopoBRep:
_HLRTopoBRep.HLRTopoBRep_FaceIsoLiner_swigregister(HLRTopoBRep_FaceIsoLiner)
class HLRTopoBRep_OutLiner(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"""
        Return
        -------
        None

        Description
        -----------
        No available documentation.

        Parameters
        ----------
        OriSh: TopoDS_Shape

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        Parameters
        ----------
        OriS: TopoDS_Shape
        OutS: TopoDS_Shape

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        _HLRTopoBRep.HLRTopoBRep_OutLiner_swiginit(self, _HLRTopoBRep.new_HLRTopoBRep_OutLiner(*args))

    def DataStructure(self, *args):
        r"""
        Return
        -------
        HLRTopoBRep_Data

        Description
        -----------
        No available documentation.

        """
        return _HLRTopoBRep.HLRTopoBRep_OutLiner_DataStructure(self, *args)

    def Fill(self, *args):
        r"""

        Parameters
        ----------
        P: HLRAlgo_Projector
        MST: BRepTopAdaptor_MapOfShapeTool
        nbIso: int

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _HLRTopoBRep.HLRTopoBRep_OutLiner_Fill(self, *args)

    def OriginalShape(self, *args):
        r"""

        Parameters
        ----------
        OriS: TopoDS_Shape

        Return
        -------
        None

        Description
        -----------
        No available documentation.
        Return
        -------
        TopoDS_Shape

        Description
        -----------
        No available documentation.

        """
        return _HLRTopoBRep.HLRTopoBRep_OutLiner_OriginalShape(self, *args)

    def OutLinedShape(self, *args):
        r"""

        Parameters
        ----------
        OutS: TopoDS_Shape

        Return
        -------
        None

        Description
        -----------
        No available documentation.
        Return
        -------
        TopoDS_Shape

        Description
        -----------
        No available documentation.

        """
        return _HLRTopoBRep.HLRTopoBRep_OutLiner_OutLinedShape(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _HLRTopoBRep.delete_HLRTopoBRep_OutLiner

# Register HLRTopoBRep_OutLiner in _HLRTopoBRep:
_HLRTopoBRep.HLRTopoBRep_OutLiner_swigregister(HLRTopoBRep_OutLiner)
class HLRTopoBRep_VData(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"""
        Return
        -------
        None

        Description
        -----------
        No available documentation.

        Parameters
        ----------
        P: float
        V: TopoDS_Shape

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        _HLRTopoBRep.HLRTopoBRep_VData_swiginit(self, _HLRTopoBRep.new_HLRTopoBRep_VData(*args))

    def Parameter(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _HLRTopoBRep.HLRTopoBRep_VData_Parameter(self, *args)

    def Vertex(self, *args):
        r"""
        Return
        -------
        TopoDS_Shape

        Description
        -----------
        No available documentation.

        """
        return _HLRTopoBRep.HLRTopoBRep_VData_Vertex(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _HLRTopoBRep.delete_HLRTopoBRep_VData

# Register HLRTopoBRep_VData in _HLRTopoBRep:
_HLRTopoBRep.HLRTopoBRep_VData_swigregister(HLRTopoBRep_VData)



@deprecated
def HLRTopoBRep_DSFiller_Insert(*args):
	return HLRTopoBRep_DSFiller.Insert(*args)

@deprecated
def HLRTopoBRep_FaceIsoLiner_MakeIsoLine(*args):
	return HLRTopoBRep_FaceIsoLiner.MakeIsoLine(*args)

@deprecated
def HLRTopoBRep_FaceIsoLiner_MakeVertex(*args):
	return HLRTopoBRep_FaceIsoLiner.MakeVertex(*args)

@deprecated
def HLRTopoBRep_FaceIsoLiner_Perform(*args):
	return HLRTopoBRep_FaceIsoLiner.Perform(*args)



