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

"""
BRep module, see official documentation at
https://www.opencascade.com/doc/occt-7.7.0/refman/html/package_brep.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 _BRep
else:
    import _BRep

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__ = _BRep.delete_SwigPyIterator

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

# Register SwigPyIterator in _BRep:
_BRep.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 _BRep.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.GeomAbs
import OCC.Core.Geom
import OCC.Core.TColgp
import OCC.Core.Poly
import OCC.Core.Bnd
import OCC.Core.BVH
import OCC.Core.TShort
import OCC.Core.Geom2d

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




def Handle_BRep_CurveRepresentation_Create():
    return _BRep.Handle_BRep_CurveRepresentation_Create()

def Handle_BRep_CurveRepresentation_DownCast(t):
    return _BRep.Handle_BRep_CurveRepresentation_DownCast(t)

def Handle_BRep_CurveRepresentation_IsNull(t):
    return _BRep.Handle_BRep_CurveRepresentation_IsNull(t)

def Handle_BRep_PointRepresentation_Create():
    return _BRep.Handle_BRep_PointRepresentation_Create()

def Handle_BRep_PointRepresentation_DownCast(t):
    return _BRep.Handle_BRep_PointRepresentation_DownCast(t)

def Handle_BRep_PointRepresentation_IsNull(t):
    return _BRep.Handle_BRep_PointRepresentation_IsNull(t)

def Handle_BRep_TEdge_Create():
    return _BRep.Handle_BRep_TEdge_Create()

def Handle_BRep_TEdge_DownCast(t):
    return _BRep.Handle_BRep_TEdge_DownCast(t)

def Handle_BRep_TEdge_IsNull(t):
    return _BRep.Handle_BRep_TEdge_IsNull(t)

def Handle_BRep_TFace_Create():
    return _BRep.Handle_BRep_TFace_Create()

def Handle_BRep_TFace_DownCast(t):
    return _BRep.Handle_BRep_TFace_DownCast(t)

def Handle_BRep_TFace_IsNull(t):
    return _BRep.Handle_BRep_TFace_IsNull(t)

def Handle_BRep_TVertex_Create():
    return _BRep.Handle_BRep_TVertex_Create()

def Handle_BRep_TVertex_DownCast(t):
    return _BRep.Handle_BRep_TVertex_DownCast(t)

def Handle_BRep_TVertex_IsNull(t):
    return _BRep.Handle_BRep_TVertex_IsNull(t)

def Handle_BRep_CurveOn2Surfaces_Create():
    return _BRep.Handle_BRep_CurveOn2Surfaces_Create()

def Handle_BRep_CurveOn2Surfaces_DownCast(t):
    return _BRep.Handle_BRep_CurveOn2Surfaces_DownCast(t)

def Handle_BRep_CurveOn2Surfaces_IsNull(t):
    return _BRep.Handle_BRep_CurveOn2Surfaces_IsNull(t)

def Handle_BRep_GCurve_Create():
    return _BRep.Handle_BRep_GCurve_Create()

def Handle_BRep_GCurve_DownCast(t):
    return _BRep.Handle_BRep_GCurve_DownCast(t)

def Handle_BRep_GCurve_IsNull(t):
    return _BRep.Handle_BRep_GCurve_IsNull(t)

def Handle_BRep_PointOnCurve_Create():
    return _BRep.Handle_BRep_PointOnCurve_Create()

def Handle_BRep_PointOnCurve_DownCast(t):
    return _BRep.Handle_BRep_PointOnCurve_DownCast(t)

def Handle_BRep_PointOnCurve_IsNull(t):
    return _BRep.Handle_BRep_PointOnCurve_IsNull(t)

def Handle_BRep_PointsOnSurface_Create():
    return _BRep.Handle_BRep_PointsOnSurface_Create()

def Handle_BRep_PointsOnSurface_DownCast(t):
    return _BRep.Handle_BRep_PointsOnSurface_DownCast(t)

def Handle_BRep_PointsOnSurface_IsNull(t):
    return _BRep.Handle_BRep_PointsOnSurface_IsNull(t)

def Handle_BRep_Polygon3D_Create():
    return _BRep.Handle_BRep_Polygon3D_Create()

def Handle_BRep_Polygon3D_DownCast(t):
    return _BRep.Handle_BRep_Polygon3D_DownCast(t)

def Handle_BRep_Polygon3D_IsNull(t):
    return _BRep.Handle_BRep_Polygon3D_IsNull(t)

def Handle_BRep_PolygonOnSurface_Create():
    return _BRep.Handle_BRep_PolygonOnSurface_Create()

def Handle_BRep_PolygonOnSurface_DownCast(t):
    return _BRep.Handle_BRep_PolygonOnSurface_DownCast(t)

def Handle_BRep_PolygonOnSurface_IsNull(t):
    return _BRep.Handle_BRep_PolygonOnSurface_IsNull(t)

def Handle_BRep_PolygonOnTriangulation_Create():
    return _BRep.Handle_BRep_PolygonOnTriangulation_Create()

def Handle_BRep_PolygonOnTriangulation_DownCast(t):
    return _BRep.Handle_BRep_PolygonOnTriangulation_DownCast(t)

def Handle_BRep_PolygonOnTriangulation_IsNull(t):
    return _BRep.Handle_BRep_PolygonOnTriangulation_IsNull(t)

def Handle_BRep_Curve3D_Create():
    return _BRep.Handle_BRep_Curve3D_Create()

def Handle_BRep_Curve3D_DownCast(t):
    return _BRep.Handle_BRep_Curve3D_DownCast(t)

def Handle_BRep_Curve3D_IsNull(t):
    return _BRep.Handle_BRep_Curve3D_IsNull(t)

def Handle_BRep_CurveOnSurface_Create():
    return _BRep.Handle_BRep_CurveOnSurface_Create()

def Handle_BRep_CurveOnSurface_DownCast(t):
    return _BRep.Handle_BRep_CurveOnSurface_DownCast(t)

def Handle_BRep_CurveOnSurface_IsNull(t):
    return _BRep.Handle_BRep_CurveOnSurface_IsNull(t)

def Handle_BRep_PointOnCurveOnSurface_Create():
    return _BRep.Handle_BRep_PointOnCurveOnSurface_Create()

def Handle_BRep_PointOnCurveOnSurface_DownCast(t):
    return _BRep.Handle_BRep_PointOnCurveOnSurface_DownCast(t)

def Handle_BRep_PointOnCurveOnSurface_IsNull(t):
    return _BRep.Handle_BRep_PointOnCurveOnSurface_IsNull(t)

def Handle_BRep_PointOnSurface_Create():
    return _BRep.Handle_BRep_PointOnSurface_Create()

def Handle_BRep_PointOnSurface_DownCast(t):
    return _BRep.Handle_BRep_PointOnSurface_DownCast(t)

def Handle_BRep_PointOnSurface_IsNull(t):
    return _BRep.Handle_BRep_PointOnSurface_IsNull(t)

def Handle_BRep_PolygonOnClosedSurface_Create():
    return _BRep.Handle_BRep_PolygonOnClosedSurface_Create()

def Handle_BRep_PolygonOnClosedSurface_DownCast(t):
    return _BRep.Handle_BRep_PolygonOnClosedSurface_DownCast(t)

def Handle_BRep_PolygonOnClosedSurface_IsNull(t):
    return _BRep.Handle_BRep_PolygonOnClosedSurface_IsNull(t)

def Handle_BRep_PolygonOnClosedTriangulation_Create():
    return _BRep.Handle_BRep_PolygonOnClosedTriangulation_Create()

def Handle_BRep_PolygonOnClosedTriangulation_DownCast(t):
    return _BRep.Handle_BRep_PolygonOnClosedTriangulation_DownCast(t)

def Handle_BRep_PolygonOnClosedTriangulation_IsNull(t):
    return _BRep.Handle_BRep_PolygonOnClosedTriangulation_IsNull(t)

def Handle_BRep_CurveOnClosedSurface_Create():
    return _BRep.Handle_BRep_CurveOnClosedSurface_Create()

def Handle_BRep_CurveOnClosedSurface_DownCast(t):
    return _BRep.Handle_BRep_CurveOnClosedSurface_DownCast(t)

def Handle_BRep_CurveOnClosedSurface_IsNull(t):
    return _BRep.Handle_BRep_CurveOnClosedSurface_IsNull(t)
class BRep_ListIteratorOfListOfCurveRepresentation(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):
        _BRep.BRep_ListIteratorOfListOfCurveRepresentation_swiginit(self, _BRep.new_BRep_ListIteratorOfListOfCurveRepresentation(*args))

    def More(self):
        return _BRep.BRep_ListIteratorOfListOfCurveRepresentation_More(self)

    def Next(self):
        return _BRep.BRep_ListIteratorOfListOfCurveRepresentation_Next(self)

    def Value(self):
        return _BRep.BRep_ListIteratorOfListOfCurveRepresentation_Value(self)

    def ChangeValue(self):
        return _BRep.BRep_ListIteratorOfListOfCurveRepresentation_ChangeValue(self)
    __swig_destroy__ = _BRep.delete_BRep_ListIteratorOfListOfCurveRepresentation

# Register BRep_ListIteratorOfListOfCurveRepresentation in _BRep:
_BRep.BRep_ListIteratorOfListOfCurveRepresentation_swigregister(BRep_ListIteratorOfListOfCurveRepresentation)
class BRep_ListIteratorOfListOfPointRepresentation(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):
        _BRep.BRep_ListIteratorOfListOfPointRepresentation_swiginit(self, _BRep.new_BRep_ListIteratorOfListOfPointRepresentation(*args))

    def More(self):
        return _BRep.BRep_ListIteratorOfListOfPointRepresentation_More(self)

    def Next(self):
        return _BRep.BRep_ListIteratorOfListOfPointRepresentation_Next(self)

    def Value(self):
        return _BRep.BRep_ListIteratorOfListOfPointRepresentation_Value(self)

    def ChangeValue(self):
        return _BRep.BRep_ListIteratorOfListOfPointRepresentation_ChangeValue(self)
    __swig_destroy__ = _BRep.delete_BRep_ListIteratorOfListOfPointRepresentation

# Register BRep_ListIteratorOfListOfPointRepresentation in _BRep:
_BRep.BRep_ListIteratorOfListOfPointRepresentation_swigregister(BRep_ListIteratorOfListOfPointRepresentation)
class BRep_ListOfCurveRepresentation(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 _BRep.BRep_ListOfCurveRepresentation_begin(self)

    def end(self):
        return _BRep.BRep_ListOfCurveRepresentation_end(self)

    def cbegin(self):
        return _BRep.BRep_ListOfCurveRepresentation_cbegin(self)

    def cend(self):
        return _BRep.BRep_ListOfCurveRepresentation_cend(self)

    def __init__(self, *args):
        _BRep.BRep_ListOfCurveRepresentation_swiginit(self, _BRep.new_BRep_ListOfCurveRepresentation(*args))

    def Size(self):
        return _BRep.BRep_ListOfCurveRepresentation_Size(self)

    def Assign(self, theOther):
        return _BRep.BRep_ListOfCurveRepresentation_Assign(self, theOther)

    def Set(self, theOther):
        return _BRep.BRep_ListOfCurveRepresentation_Set(self, theOther)

    def Clear(self, theAllocator=0):
        return _BRep.BRep_ListOfCurveRepresentation_Clear(self, theAllocator)

    def First(self):
        return _BRep.BRep_ListOfCurveRepresentation_First(self)

    def Last(self):
        return _BRep.BRep_ListOfCurveRepresentation_Last(self)

    def Append(self, *args):
        return _BRep.BRep_ListOfCurveRepresentation_Append(self, *args)

    def Prepend(self, *args):
        return _BRep.BRep_ListOfCurveRepresentation_Prepend(self, *args)

    def RemoveFirst(self):
        return _BRep.BRep_ListOfCurveRepresentation_RemoveFirst(self)

    def Remove(self, theIter):
        return _BRep.BRep_ListOfCurveRepresentation_Remove(self, theIter)

    def InsertBefore(self, *args):
        return _BRep.BRep_ListOfCurveRepresentation_InsertBefore(self, *args)

    def InsertAfter(self, *args):
        return _BRep.BRep_ListOfCurveRepresentation_InsertAfter(self, *args)

    def Reverse(self):
        return _BRep.BRep_ListOfCurveRepresentation_Reverse(self)
    __swig_destroy__ = _BRep.delete_BRep_ListOfCurveRepresentation

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


# Register BRep_ListOfCurveRepresentation in _BRep:
_BRep.BRep_ListOfCurveRepresentation_swigregister(BRep_ListOfCurveRepresentation)
class BRep_ListOfPointRepresentation(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 _BRep.BRep_ListOfPointRepresentation_begin(self)

    def end(self):
        return _BRep.BRep_ListOfPointRepresentation_end(self)

    def cbegin(self):
        return _BRep.BRep_ListOfPointRepresentation_cbegin(self)

    def cend(self):
        return _BRep.BRep_ListOfPointRepresentation_cend(self)

    def __init__(self, *args):
        _BRep.BRep_ListOfPointRepresentation_swiginit(self, _BRep.new_BRep_ListOfPointRepresentation(*args))

    def Size(self):
        return _BRep.BRep_ListOfPointRepresentation_Size(self)

    def Assign(self, theOther):
        return _BRep.BRep_ListOfPointRepresentation_Assign(self, theOther)

    def Set(self, theOther):
        return _BRep.BRep_ListOfPointRepresentation_Set(self, theOther)

    def Clear(self, theAllocator=0):
        return _BRep.BRep_ListOfPointRepresentation_Clear(self, theAllocator)

    def First(self):
        return _BRep.BRep_ListOfPointRepresentation_First(self)

    def Last(self):
        return _BRep.BRep_ListOfPointRepresentation_Last(self)

    def Append(self, *args):
        return _BRep.BRep_ListOfPointRepresentation_Append(self, *args)

    def Prepend(self, *args):
        return _BRep.BRep_ListOfPointRepresentation_Prepend(self, *args)

    def RemoveFirst(self):
        return _BRep.BRep_ListOfPointRepresentation_RemoveFirst(self)

    def Remove(self, theIter):
        return _BRep.BRep_ListOfPointRepresentation_Remove(self, theIter)

    def InsertBefore(self, *args):
        return _BRep.BRep_ListOfPointRepresentation_InsertBefore(self, *args)

    def InsertAfter(self, *args):
        return _BRep.BRep_ListOfPointRepresentation_InsertAfter(self, *args)

    def Reverse(self):
        return _BRep.BRep_ListOfPointRepresentation_Reverse(self)
    __swig_destroy__ = _BRep.delete_BRep_ListOfPointRepresentation

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


# Register BRep_ListOfPointRepresentation in _BRep:
_BRep.BRep_ListOfPointRepresentation_swigregister(BRep_ListOfPointRepresentation)
class BRep_Builder(OCC.Core.TopoDS.TopoDS_Builder):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

        Parameters
        ----------
        E: TopoDS_Edge
        F1: TopoDS_Face
        F2: TopoDS_Face
        C: GeomAbs_Shape

        Return
        -------
        None

        Description
        -----------
        Sets the geometric continuity on the edge.

        Parameters
        ----------
        E: TopoDS_Edge
        S1: Geom_Surface
        S2: Geom_Surface
        L1: TopLoc_Location
        L2: TopLoc_Location
        C: GeomAbs_Shape

        Return
        -------
        None

        Description
        -----------
        Sets the geometric continuity on the edge.

        """
        return _BRep.BRep_Builder_Continuity(self, *args)

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

        Parameters
        ----------
        E: TopoDS_Edge
        D: bool

        Return
        -------
        None

        Description
        -----------
        Sets the degenerated flag for the edge <e>.

        """
        return _BRep.BRep_Builder_Degenerated(self, *args)

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

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

        Return
        -------
        None

        Description
        -----------
        Makes an undefined edge (no geometry).

        Parameters
        ----------
        E: TopoDS_Edge
        C: Geom_Curve
        Tol: float

        Return
        -------
        None

        Description
        -----------
        Makes an edge with a curve.

        Parameters
        ----------
        E: TopoDS_Edge
        C: Geom_Curve
        L: TopLoc_Location
        Tol: float

        Return
        -------
        None

        Description
        -----------
        Makes an edge with a curve and a location.

        Parameters
        ----------
        E: TopoDS_Edge
        P: Poly_Polygon3D

        Return
        -------
        None

        Description
        -----------
        Makes an edge with a polygon 3d.

        Parameters
        ----------
        E: TopoDS_Edge
        N: Poly_PolygonOnTriangulation
        T: Poly_Triangulation

        Return
        -------
        None

        Description
        -----------
        Makes an edge polygon on triangulation.

        Parameters
        ----------
        E: TopoDS_Edge
        N: Poly_PolygonOnTriangulation
        T: Poly_Triangulation
        L: TopLoc_Location

        Return
        -------
        None

        Description
        -----------
        Makes an edge polygon on triangulation.

        """
        return _BRep.BRep_Builder_MakeEdge(self, *args)

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

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

        Return
        -------
        None

        Description
        -----------
        Makes an undefined face.

        Parameters
        ----------
        F: TopoDS_Face
        S: Geom_Surface
        Tol: float

        Return
        -------
        None

        Description
        -----------
        Makes a face with a surface.

        Parameters
        ----------
        F: TopoDS_Face
        S: Geom_Surface
        L: TopLoc_Location
        Tol: float

        Return
        -------
        None

        Description
        -----------
        Makes a face with a surface and a location.

        Parameters
        ----------
        theFace: TopoDS_Face
        theTriangulation: Poly_Triangulation

        Return
        -------
        None

        Description
        -----------
        Makes a theface with a single triangulation. the triangulation is in the same reference system than the tface.

        Parameters
        ----------
        theFace: TopoDS_Face
        theTriangulations: Poly_ListOfTriangulation
        theActiveTriangulation: Poly_Triangulation (optional, default to opencascade::handle<Poly_Triangulation>())

        Return
        -------
        None

        Description
        -----------
        Makes a face with a list of triangulations and active one. use null active triangulation to set the first triangulation in list as active. the triangulations is in the same reference system than the tface.

        """
        return _BRep.BRep_Builder_MakeFace(self, *args)

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

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

        Return
        -------
        None

        Description
        -----------
        Makes an udefined vertex without geometry.

        Parameters
        ----------
        V: TopoDS_Vertex
        P: gp_Pnt
        Tol: float

        Return
        -------
        None

        Description
        -----------
        Makes a vertex from a 3d point.

        """
        return _BRep.BRep_Builder_MakeVertex(self, *args)

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

        Parameters
        ----------
        F: TopoDS_Face
        N: bool

        Return
        -------
        None

        Description
        -----------
        Sets the naturalrestriction flag of the face.

        """
        return _BRep.BRep_Builder_NaturalRestriction(self, *args)

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

        Parameters
        ----------
        E: TopoDS_Edge
        First: float
        Last: float
        Only3d: bool (optional, default to Standard_False)

        Return
        -------
        None

        Description
        -----------
        Sets the range of the 3d curve if only3d=true, otherwise sets the range to all the representations.

        Parameters
        ----------
        E: TopoDS_Edge
        S: Geom_Surface
        L: TopLoc_Location
        First: float
        Last: float

        Return
        -------
        None

        Description
        -----------
        Sets the range of the edge on the pcurve on the surface.

        Parameters
        ----------
        E: TopoDS_Edge
        F: TopoDS_Face
        First: float
        Last: float

        Return
        -------
        None

        Description
        -----------
        Sets the range of the edge on the pcurve on the face.

        """
        return _BRep.BRep_Builder_Range(self, *args)

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

        Parameters
        ----------
        E: TopoDS_Edge
        S: bool

        Return
        -------
        None

        Description
        -----------
        Sets the same parameter flag for the edge <e>.

        """
        return _BRep.BRep_Builder_SameParameter(self, *args)

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

        Parameters
        ----------
        E: TopoDS_Edge
        S: bool

        Return
        -------
        None

        Description
        -----------
        Sets the same range flag for the edge <e>.

        """
        return _BRep.BRep_Builder_SameRange(self, *args)

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

        Parameters
        ----------
        Ein: TopoDS_Edge
        Eout: TopoDS_Edge

        Return
        -------
        None

        Description
        -----------
        Add to <eout> the geometric representations of <ein>.

        Parameters
        ----------
        Ein: TopoDS_Edge
        Eout: TopoDS_Edge
        Vin: TopoDS_Vertex
        Vout: TopoDS_Vertex

        Return
        -------
        None

        Description
        -----------
        Transfert the parameters of vin on ein as the parameter of vout on eout.

        """
        return _BRep.BRep_Builder_Transfert(self, *args)

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

        Parameters
        ----------
        E: TopoDS_Edge
        C: Geom_Curve
        Tol: float

        Return
        -------
        None

        Description
        -----------
        Sets a 3d curve for the edge. if <c> is a null handle, remove any existing 3d curve.

        Parameters
        ----------
        E: TopoDS_Edge
        C: Geom_Curve
        L: TopLoc_Location
        Tol: float

        Return
        -------
        None

        Description
        -----------
        Sets a 3d curve for the edge. if <c> is a null handle, remove any existing 3d curve.

        Parameters
        ----------
        E: TopoDS_Edge
        C: Geom2d_Curve
        F: TopoDS_Face
        Tol: float

        Return
        -------
        None

        Description
        -----------
        Sets a pcurve for the edge on the face. if <c> is a null handle, remove any existing pcurve.

        Parameters
        ----------
        E: TopoDS_Edge
        C1: Geom2d_Curve
        C2: Geom2d_Curve
        F: TopoDS_Face
        Tol: float

        Return
        -------
        None

        Description
        -----------
        Sets pcurves for the edge on the closed face. if <c1> or <c2> is a null handle, remove any existing pcurve.

        Parameters
        ----------
        E: TopoDS_Edge
        C: Geom2d_Curve
        S: Geom_Surface
        L: TopLoc_Location
        Tol: float

        Return
        -------
        None

        Description
        -----------
        Sets a pcurve for the edge on the face. if <c> is a null handle, remove any existing pcurve.

        Parameters
        ----------
        E: TopoDS_Edge
        C: Geom2d_Curve
        S: Geom_Surface
        L: TopLoc_Location
        Tol: float
        Pf: gp_Pnt2d
        Pl: gp_Pnt2d

        Return
        -------
        None

        Description
        -----------
        Sets a pcurve for the edge on the face. if <c> is a null handle, remove any existing pcurve. sets uv bounds for curve repsentation.

        Parameters
        ----------
        E: TopoDS_Edge
        C1: Geom2d_Curve
        C2: Geom2d_Curve
        S: Geom_Surface
        L: TopLoc_Location
        Tol: float

        Return
        -------
        None

        Description
        -----------
        Sets pcurves for the edge on the closed surface. <c1> or <c2> is a null handle, remove any existing pcurve.

        Parameters
        ----------
        E: TopoDS_Edge
        C1: Geom2d_Curve
        C2: Geom2d_Curve
        S: Geom_Surface
        L: TopLoc_Location
        Tol: float
        Pf: gp_Pnt2d
        Pl: gp_Pnt2d

        Return
        -------
        None

        Description
        -----------
        Sets pcurves for the edge on the closed surface. <c1> or <c2> is a null handle, remove any existing pcurve. sets uv bounds for curve repsentation.

        Parameters
        ----------
        E: TopoDS_Edge
        P: Poly_Polygon3D

        Return
        -------
        None

        Description
        -----------
        Changes an edge 3d polygon. a null polygon removes the 3d polygon.

        Parameters
        ----------
        E: TopoDS_Edge
        P: Poly_Polygon3D
        L: TopLoc_Location

        Return
        -------
        None

        Description
        -----------
        Changes an edge 3d polygon. a null polygon removes the 3d polygon.

        Parameters
        ----------
        E: TopoDS_Edge
        N: Poly_PolygonOnTriangulation
        T: Poly_Triangulation

        Return
        -------
        None

        Description
        -----------
        Changes an edge polygon on triangulation.

        Parameters
        ----------
        E: TopoDS_Edge
        N: Poly_PolygonOnTriangulation
        T: Poly_Triangulation
        L: TopLoc_Location

        Return
        -------
        None

        Description
        -----------
        Changes an edge polygon on triangulation.

        Parameters
        ----------
        E: TopoDS_Edge
        N1: Poly_PolygonOnTriangulation
        N2: Poly_PolygonOnTriangulation
        T: Poly_Triangulation

        Return
        -------
        None

        Description
        -----------
        Changes an edge polygon on triangulation.

        Parameters
        ----------
        E: TopoDS_Edge
        N1: Poly_PolygonOnTriangulation
        N2: Poly_PolygonOnTriangulation
        T: Poly_Triangulation
        L: TopLoc_Location

        Return
        -------
        None

        Description
        -----------
        Changes an edge polygon on triangulation.

        Parameters
        ----------
        E: TopoDS_Edge
        P: Poly_Polygon2D
        S: TopoDS_Face

        Return
        -------
        None

        Description
        -----------
        Changes edge polygon on a face.

        Parameters
        ----------
        E: TopoDS_Edge
        P: Poly_Polygon2D
        S: Geom_Surface
        T: TopLoc_Location

        Return
        -------
        None

        Description
        -----------
        Changes edge polygon on a face.

        Parameters
        ----------
        E: TopoDS_Edge
        P1: Poly_Polygon2D
        P2: Poly_Polygon2D
        S: TopoDS_Face

        Return
        -------
        None

        Description
        -----------
        Changes edge polygons on a face. //! a null polygon removes the 2d polygon.

        Parameters
        ----------
        E: TopoDS_Edge
        P1: Poly_Polygon2D
        P2: Poly_Polygon2D
        S: Geom_Surface
        L: TopLoc_Location

        Return
        -------
        None

        Description
        -----------
        Changes edge polygons on a face. //! a null polygon removes the 2d polygon.

        Parameters
        ----------
        E: TopoDS_Edge
        Tol: float

        Return
        -------
        None

        Description
        -----------
        Updates the edge tolerance.

        """
        return _BRep.BRep_Builder_UpdateEdge(self, *args)

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

        Parameters
        ----------
        F: TopoDS_Face
        S: Geom_Surface
        L: TopLoc_Location
        Tol: float

        Return
        -------
        None

        Description
        -----------
        Updates the face f using the tolerance value tol, surface s and location location.

        Parameters
        ----------
        theFace: TopoDS_Face
        theTriangulation: Poly_Triangulation
        theToReset: bool (optional, default to true)

        Return
        -------
        None

        Description
        -----------
        Changes a face triangulation. a null thetriangulation removes face triangulations. if thetoreset is true face triangulations will be reset to new list with only one input triangulation that will be active. else if thetriangulation is contained in internal triangulations list it will be made active, else the active triangulation will be replaced to thetriangulation one.

        Parameters
        ----------
        F: TopoDS_Face
        Tol: float

        Return
        -------
        None

        Description
        -----------
        Updates the face tolerance.

        """
        return _BRep.BRep_Builder_UpdateFace(self, *args)

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

        Parameters
        ----------
        V: TopoDS_Vertex
        P: gp_Pnt
        Tol: float

        Return
        -------
        None

        Description
        -----------
        Sets a 3d point on the vertex.

        Parameters
        ----------
        V: TopoDS_Vertex
        P: float
        E: TopoDS_Edge
        Tol: float

        Return
        -------
        None

        Description
        -----------
        Sets the parameter for the vertex on the edge curves.

        Parameters
        ----------
        V: TopoDS_Vertex
        P: float
        E: TopoDS_Edge
        F: TopoDS_Face
        Tol: float

        Return
        -------
        None

        Description
        -----------
        Sets the parameter for the vertex on the edge pcurve on the face.

        Parameters
        ----------
        V: TopoDS_Vertex
        P: float
        E: TopoDS_Edge
        S: Geom_Surface
        L: TopLoc_Location
        Tol: float

        Return
        -------
        None

        Description
        -----------
        Sets the parameter for the vertex on the edge pcurve on the surface.

        Parameters
        ----------
        Ve: TopoDS_Vertex
        U: float
        V: float
        F: TopoDS_Face
        Tol: float

        Return
        -------
        None

        Description
        -----------
        Sets the parameters for the vertex on the face.

        Parameters
        ----------
        V: TopoDS_Vertex
        Tol: float

        Return
        -------
        None

        Description
        -----------
        Updates the vertex tolerance.

        """
        return _BRep.BRep_Builder_UpdateVertex(self, *args)

    __repr__ = _dumps_object


    def __init__(self):
        _BRep.BRep_Builder_swiginit(self, _BRep.new_BRep_Builder())
    __swig_destroy__ = _BRep.delete_BRep_Builder

# Register BRep_Builder in _BRep:
_BRep.BRep_Builder_swigregister(BRep_Builder)
class BRep_CurveRepresentation(OCC.Core.Standard.Standard_Transient):
    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")
    __repr__ = _swig_repr

    def Continuity(self, *args):
        r"""
        Return
        -------
        GeomAbs_Shape

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

        Parameters
        ----------
        C: GeomAbs_Shape

        Return
        -------
        None

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

        """
        return _BRep.BRep_CurveRepresentation_Continuity(self, *args)

    def Copy(self, *args):
        r"""
        Return
        -------
        opencascade::handle<BRep_CurveRepresentation>

        Description
        -----------
        Return a copy of this representation.

        """
        return _BRep.BRep_CurveRepresentation_Copy(self, *args)

    def Curve3D(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Geom_Curve>

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

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

        Return
        -------
        None

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

        """
        return _BRep.BRep_CurveRepresentation_Curve3D(self, *args)

    def DumpJsonToString(self, depth=-1):
        r"""Json string serializer.Json string serializer."""
        return _BRep.BRep_CurveRepresentation_DumpJsonToString(self, depth)

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

        Description
        -----------
        A 3d curve representation.

        """
        return _BRep.BRep_CurveRepresentation_IsCurve3D(self, *args)

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

        Description
        -----------
        A curve with two parametric curves on the same surface.

        """
        return _BRep.BRep_CurveRepresentation_IsCurveOnClosedSurface(self, *args)

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

        Description
        -----------
        A curve in the parametric space of a surface.

        Parameters
        ----------
        S: Geom_Surface
        L: TopLoc_Location

        Return
        -------
        bool

        Description
        -----------
        Is it a curve in the parametric space of <s> with location <l>.

        """
        return _BRep.BRep_CurveRepresentation_IsCurveOnSurface(self, *args)

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

        Description
        -----------
        A 3d polygon representation.

        """
        return _BRep.BRep_CurveRepresentation_IsPolygon3D(self, *args)

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

        Description
        -----------
        Two 2d polygon representations in the parametric space of a surface.

        """
        return _BRep.BRep_CurveRepresentation_IsPolygonOnClosedSurface(self, *args)

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

        Description
        -----------
        A representation by two arrays of nodes on a triangulation.

        """
        return _BRep.BRep_CurveRepresentation_IsPolygonOnClosedTriangulation(self, *args)

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

        Description
        -----------
        A polygon in the parametric space of a surface.

        Parameters
        ----------
        S: Geom_Surface
        L: TopLoc_Location

        Return
        -------
        bool

        Description
        -----------
        Is it a polygon in the parametric space of <s> with location <l>.

        """
        return _BRep.BRep_CurveRepresentation_IsPolygonOnSurface(self, *args)

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

        Description
        -----------
        A representation by an array of nodes on a triangulation.

        Parameters
        ----------
        T: Poly_Triangulation
        L: TopLoc_Location

        Return
        -------
        bool

        Description
        -----------
        Is it a polygon in the definition of <t> with location <l>.

        """
        return _BRep.BRep_CurveRepresentation_IsPolygonOnTriangulation(self, *args)

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

        Description
        -----------
        A continuity between two surfaces.

        Parameters
        ----------
        S1: Geom_Surface
        S2: Geom_Surface
        L1: TopLoc_Location
        L2: TopLoc_Location

        Return
        -------
        bool

        Description
        -----------
        Is it a regularity between <s1> and <s2> with location <l1> and <l2>.

        """
        return _BRep.BRep_CurveRepresentation_IsRegularity(self, *args)

    def Location(self, *args):
        r"""
        Return
        -------
        TopLoc_Location

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

        Parameters
        ----------
        L: TopLoc_Location

        Return
        -------
        None

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

        """
        return _BRep.BRep_CurveRepresentation_Location(self, *args)

    def Location2(self, *args):
        r"""
        Return
        -------
        TopLoc_Location

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

        """
        return _BRep.BRep_CurveRepresentation_Location2(self, *args)

    def PCurve(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Geom2d_Curve>

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

        Parameters
        ----------
        C: Geom2d_Curve

        Return
        -------
        None

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

        """
        return _BRep.BRep_CurveRepresentation_PCurve(self, *args)

    def PCurve2(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Geom2d_Curve>

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

        Parameters
        ----------
        C: Geom2d_Curve

        Return
        -------
        None

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

        """
        return _BRep.BRep_CurveRepresentation_PCurve2(self, *args)

    def Polygon(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Poly_Polygon2D>

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

        Parameters
        ----------
        P: Poly_Polygon2D

        Return
        -------
        None

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

        """
        return _BRep.BRep_CurveRepresentation_Polygon(self, *args)

    def Polygon2(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Poly_Polygon2D>

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

        Parameters
        ----------
        P: Poly_Polygon2D

        Return
        -------
        None

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

        """
        return _BRep.BRep_CurveRepresentation_Polygon2(self, *args)

    def Polygon3D(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Poly_Polygon3D>

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

        Parameters
        ----------
        P: Poly_Polygon3D

        Return
        -------
        None

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

        """
        return _BRep.BRep_CurveRepresentation_Polygon3D(self, *args)

    def PolygonOnTriangulation(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Poly_PolygonOnTriangulation>

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

        Parameters
        ----------
        P: Poly_PolygonOnTriangulation

        Return
        -------
        None

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

        """
        return _BRep.BRep_CurveRepresentation_PolygonOnTriangulation(self, *args)

    def PolygonOnTriangulation2(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Poly_PolygonOnTriangulation>

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

        Parameters
        ----------
        P2: Poly_PolygonOnTriangulation

        Return
        -------
        None

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

        """
        return _BRep.BRep_CurveRepresentation_PolygonOnTriangulation2(self, *args)

    def Surface(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Geom_Surface>

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

        """
        return _BRep.BRep_CurveRepresentation_Surface(self, *args)

    def Surface2(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Geom_Surface>

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

        """
        return _BRep.BRep_CurveRepresentation_Surface2(self, *args)

    def Triangulation(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Poly_Triangulation>

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

        """
        return _BRep.BRep_CurveRepresentation_Triangulation(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BRep.delete_BRep_CurveRepresentation

# Register BRep_CurveRepresentation in _BRep:
_BRep.BRep_CurveRepresentation_swigregister(BRep_CurveRepresentation)
class BRep_PointRepresentation(OCC.Core.Standard.Standard_Transient):
    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")
    __repr__ = _swig_repr

    def Curve(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Geom_Curve>

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

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

        Return
        -------
        None

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

        """
        return _BRep.BRep_PointRepresentation_Curve(self, *args)

    def DumpJsonToString(self, depth=-1):
        r"""Json string serializer.Json string serializer."""
        return _BRep.BRep_PointRepresentation_DumpJsonToString(self, depth)

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

        Description
        -----------
        A point on a 3d curve.

        Parameters
        ----------
        C: Geom_Curve
        L: TopLoc_Location

        Return
        -------
        bool

        Description
        -----------
        A point on the curve <c>.

        """
        return _BRep.BRep_PointRepresentation_IsPointOnCurve(self, *args)

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

        Description
        -----------
        A point on a 2d curve on a surface.

        Parameters
        ----------
        PC: Geom2d_Curve
        S: Geom_Surface
        L: TopLoc_Location

        Return
        -------
        bool

        Description
        -----------
        A point on the 2d curve <pc> on the surface <s>.

        """
        return _BRep.BRep_PointRepresentation_IsPointOnCurveOnSurface(self, *args)

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

        Description
        -----------
        A point on a surface.

        Parameters
        ----------
        S: Geom_Surface
        L: TopLoc_Location

        Return
        -------
        bool

        Description
        -----------
        A point on the surface <s>.

        """
        return _BRep.BRep_PointRepresentation_IsPointOnSurface(self, *args)

    def Location(self, *args):
        r"""
        Return
        -------
        TopLoc_Location

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

        Parameters
        ----------
        L: TopLoc_Location

        Return
        -------
        None

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

        """
        return _BRep.BRep_PointRepresentation_Location(self, *args)

    def PCurve(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Geom2d_Curve>

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

        Parameters
        ----------
        C: Geom2d_Curve

        Return
        -------
        None

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

        """
        return _BRep.BRep_PointRepresentation_PCurve(self, *args)

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

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

        Parameters
        ----------
        P: float

        Return
        -------
        None

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

        """
        return _BRep.BRep_PointRepresentation_Parameter(self, *args)

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

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

        Parameters
        ----------
        P: float

        Return
        -------
        None

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

        """
        return _BRep.BRep_PointRepresentation_Parameter2(self, *args)

    def Surface(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Geom_Surface>

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

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

        Return
        -------
        None

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

        """
        return _BRep.BRep_PointRepresentation_Surface(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BRep.delete_BRep_PointRepresentation

# Register BRep_PointRepresentation in _BRep:
_BRep.BRep_PointRepresentation_swigregister(BRep_PointRepresentation)
class BRep_TEdge(OCC.Core.TopoDS.TopoDS_TEdge):
    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
        -----------
        Creates an empty tedge.

        """
        _BRep.BRep_TEdge_swiginit(self, _BRep.new_BRep_TEdge(*args))

    def ChangeCurves(self, *args):
        r"""
        Return
        -------
        BRep_ListOfCurveRepresentation

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

        """
        return _BRep.BRep_TEdge_ChangeCurves(self, *args)

    def Curves(self, *args):
        r"""
        Return
        -------
        BRep_ListOfCurveRepresentation

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

        """
        return _BRep.BRep_TEdge_Curves(self, *args)

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

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

        Parameters
        ----------
        S: bool

        Return
        -------
        None

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

        """
        return _BRep.BRep_TEdge_Degenerated(self, *args)

    def DumpJsonToString(self, depth=-1):
        r"""Json string serializer.Json string serializer."""
        return _BRep.BRep_TEdge_DumpJsonToString(self, depth)

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

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

        Parameters
        ----------
        S: bool

        Return
        -------
        None

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

        """
        return _BRep.BRep_TEdge_SameParameter(self, *args)

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

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

        Parameters
        ----------
        S: bool

        Return
        -------
        None

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

        """
        return _BRep.BRep_TEdge_SameRange(self, *args)

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

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

        Parameters
        ----------
        T: float

        Return
        -------
        None

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

        """
        return _BRep.BRep_TEdge_Tolerance(self, *args)

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

        Parameters
        ----------
        T: float

        Return
        -------
        None

        Description
        -----------
        Sets the tolerance to the max of <t> and the current tolerance.

        """
        return _BRep.BRep_TEdge_UpdateTolerance(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BRep.delete_BRep_TEdge

# Register BRep_TEdge in _BRep:
_BRep.BRep_TEdge_swigregister(BRep_TEdge)
class BRep_TFace(OCC.Core.TopoDS.TopoDS_TFace):
    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
        -----------
        Creates an empty tface.

        """
        _BRep.BRep_TFace_swiginit(self, _BRep.new_BRep_TFace(*args))

    def ActiveTriangulation(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Poly_Triangulation>

        Description
        -----------
        Returns current active triangulation.

        """
        return _BRep.BRep_TFace_ActiveTriangulation(self, *args)

    def DumpJsonToString(self, depth=-1):
        r"""Json string serializer.Json string serializer."""
        return _BRep.BRep_TFace_DumpJsonToString(self, depth)

    def Location(self, *args):
        r"""
        Return
        -------
        TopLoc_Location

        Description
        -----------
        Returns the face location.

        Parameters
        ----------
        theLocation: TopLoc_Location

        Return
        -------
        None

        Description
        -----------
        Sets the location for this face.

        """
        return _BRep.BRep_TFace_Location(self, *args)

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

        Description
        -----------
        Returns true if the boundary of this face is known to be the parametric space (umin, umax, vmin, vmax).

        Parameters
        ----------
        theRestriction: bool

        Return
        -------
        None

        Description
        -----------
        Sets the flag that is true if the boundary of this face is known to be the parametric space.

        """
        return _BRep.BRep_TFace_NaturalRestriction(self, *args)

    def NbTriangulations(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Returns number of available face triangulations.

        """
        return _BRep.BRep_TFace_NbTriangulations(self, *args)

    def Surface(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Geom_Surface>

        Description
        -----------
        Returns face surface.

        Parameters
        ----------
        theSurface: Geom_Surface

        Return
        -------
        None

        Description
        -----------
        Sets surface for this face.

        """
        return _BRep.BRep_TFace_Surface(self, *args)

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

        Description
        -----------
        Returns the face tolerance.

        Parameters
        ----------
        theTolerance: float

        Return
        -------
        None

        Description
        -----------
        Sets the tolerance for this face.

        """
        return _BRep.BRep_TFace_Tolerance(self, *args)

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

        Parameters
        ----------
        thePurpose: Poly_MeshPurpose (optional, default to Poly_MeshPurpose_NONE)

        Return
        -------
        opencascade::handle<Poly_Triangulation>

        Description
        -----------
        Returns the triangulation of this face according to the mesh purpose. @param[in] thepurpose a mesh purpose to find appropriate triangulation (none by default). return an active triangulation in case of none purpose, the first triangulation appropriate for the input purpose, just the first triangulation if none matching other criteria and input purpose is anyfallback or null handle if there is no any suitable triangulation.

        Parameters
        ----------
        theTriangulation: Poly_Triangulation
        theToReset: bool (optional, default to true)

        Return
        -------
        None

        Description
        -----------
        Sets input triangulation for this face. @param thetriangulation [in] triangulation to be set @param thetoreset [in] flag to reset triangulations list to new list with only one input triangulation. if thetriangulation is null internal list of triangulations will be cleared and active triangulation will be nullified. if thetoreset is true internal list of triangulations will be reset to new list with only one input triangulation that will be active. else if input triangulation is contained in internal triangulations list it will be made active, else the active triangulation will be replaced to input one.

        """
        return _BRep.BRep_TFace_Triangulation(self, *args)

    def Triangulations(self, *args):
        r"""
        Return
        -------
        Poly_ListOfTriangulation

        Description
        -----------
        Returns the list of available face triangulations.

        Parameters
        ----------
        theTriangulations: Poly_ListOfTriangulation
        theActiveTriangulation: Poly_Triangulation

        Return
        -------
        None

        Description
        -----------
        Sets input list of triangulations and currently active triangulation for this face. if list is empty internal list of triangulations will be cleared and active triangulation will be nullified. else this list will be saved and the input active triangulation be saved as active. use null active triangulation to set the first triangulation in list as active. note: the method throws exception if there is any null triangulation in input list or if this list doesn't contain input active triangulation.

        """
        return _BRep.BRep_TFace_Triangulations(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BRep.delete_BRep_TFace

# Register BRep_TFace in _BRep:
_BRep.BRep_TFace_swigregister(BRep_TFace)
class BRep_TVertex(OCC.Core.TopoDS.TopoDS_TVertex):
    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.

        """
        _BRep.BRep_TVertex_swiginit(self, _BRep.new_BRep_TVertex(*args))

    def ChangePoints(self, *args):
        r"""
        Return
        -------
        BRep_ListOfPointRepresentation

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

        """
        return _BRep.BRep_TVertex_ChangePoints(self, *args)

    def DumpJsonToString(self, depth=-1):
        r"""Json string serializer.Json string serializer."""
        return _BRep.BRep_TVertex_DumpJsonToString(self, depth)

    def Pnt(self, *args):
        r"""
        Return
        -------
        gp_Pnt

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

        Parameters
        ----------
        P: gp_Pnt

        Return
        -------
        None

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

        """
        return _BRep.BRep_TVertex_Pnt(self, *args)

    def Points(self, *args):
        r"""
        Return
        -------
        BRep_ListOfPointRepresentation

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

        """
        return _BRep.BRep_TVertex_Points(self, *args)

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

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

        Parameters
        ----------
        T: float

        Return
        -------
        None

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

        """
        return _BRep.BRep_TVertex_Tolerance(self, *args)

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

        Parameters
        ----------
        T: float

        Return
        -------
        None

        Description
        -----------
        Sets the tolerance to the max of <t> and the current tolerance.

        """
        return _BRep.BRep_TVertex_UpdateTolerance(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BRep.delete_BRep_TVertex

# Register BRep_TVertex in _BRep:
_BRep.BRep_TVertex_swigregister(BRep_TVertex)
class BRep_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 Continuity(*args):
        r"""

        Parameters
        ----------
        E: TopoDS_Edge
        F1: TopoDS_Face
        F2: TopoDS_Face

        Return
        -------
        GeomAbs_Shape

        Description
        -----------
        Returns the continuity.

        Parameters
        ----------
        E: TopoDS_Edge
        S1: Geom_Surface
        S2: Geom_Surface
        L1: TopLoc_Location
        L2: TopLoc_Location

        Return
        -------
        GeomAbs_Shape

        Description
        -----------
        Returns the continuity.

        """
        return _BRep.BRep_Tool_Continuity(*args)

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

        Parameters
        ----------
        E: TopoDS_Edge
        L: TopLoc_Location

        Return
        -------
        First: float
        Last: float

        Description
        -----------
        Returns the 3d curve of the edge. may be a null handle. returns in <l> the location for the curve. in <first> and <last> the parameter range.

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

        Return
        -------
        First: float
        Last: float

        Description
        -----------
        Returns the 3d curve of the edge. may be a null handle. in <first> and <last> the parameter range. it can be a copy if there is a location.

        """
        return _BRep.BRep_Tool_Curve(*args)

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

        Parameters
        ----------
        E: TopoDS_Edge
        S: Geom_Surface
        L: TopLoc_Location

        Return
        -------
        First: float
        Last: float

        Description
        -----------
        For the planar surface builds the 2d curve for the edge by projection of the edge on plane. returns a null handle if the surface is not planar or the projection failed.

        """
        return _BRep.BRep_Tool_CurveOnPlane(*args)

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

        Parameters
        ----------
        E: TopoDS_Edge
        F: TopoDS_Face
        theIsStored: bool * (optional, default to NULL)

        Return
        -------
        First: float
        Last: float

        Description
        -----------
        Returns the curve associated to the edge in the parametric space of the face. returns a null handle if this curve does not exist. returns in <first> and <last> the parameter range. if the surface is a plane the curve can be not stored but created a new each time. the flag pointed by <theisstored> serves to indicate storage status. it is valued if the pointer is non-null.

        Parameters
        ----------
        E: TopoDS_Edge
        S: Geom_Surface
        L: TopLoc_Location
        theIsStored: bool * (optional, default to NULL)

        Return
        -------
        First: float
        Last: float

        Description
        -----------
        Returns the curve associated to the edge in the parametric space of the surface. returns a null handle if this curve does not exist. returns in <first> and <last> the parameter range. if the surface is a plane the curve can be not stored but created a new each time. the flag pointed by <theisstored> serves to indicate storage status. it is valued if the pointer is non-null.

        Parameters
        ----------
        E: TopoDS_Edge
        C: Geom2d_Curve
        S: Geom_Surface
        L: TopLoc_Location

        Return
        -------
        First: float
        Last: float

        Description
        -----------
        Returns in <c>, <s>, <l> a 2d curve, a surface and a location for the edge <e>. <c> and <s> are null if the edge has no curve on surface. returns in <first> and <last> the parameter range.

        Parameters
        ----------
        E: TopoDS_Edge
        C: Geom2d_Curve
        S: Geom_Surface
        L: TopLoc_Location
        Index: int

        Return
        -------
        First: float
        Last: float

        Description
        -----------
        Returns in <c>, <s>, <l> the 2d curve, the surface and the location for the edge <e> of rank <index>. <c> and <s> are null if the index is out of range. returns in <first> and <last> the parameter range.

        """
        return _BRep.BRep_Tool_CurveOnSurface(*args)

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

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

        Return
        -------
        bool

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

        """
        return _BRep.BRep_Tool_Degenerated(*args)

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

        Parameters
        ----------
        E: TopoDS_Edge
        F1: TopoDS_Face
        F2: TopoDS_Face

        Return
        -------
        bool

        Description
        -----------
        Returns true if the edge is on the surfaces of the two faces.

        Parameters
        ----------
        E: TopoDS_Edge
        S1: Geom_Surface
        S2: Geom_Surface
        L1: TopLoc_Location
        L2: TopLoc_Location

        Return
        -------
        bool

        Description
        -----------
        Returns true if the edge is on the surfaces.

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

        Return
        -------
        bool

        Description
        -----------
        Returns true if the edge has regularity on some two surfaces.

        """
        return _BRep.BRep_Tool_HasContinuity(*args)

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

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

        Return
        -------
        bool

        Description
        -----------
        If s is shell, returns true if it has no free boundaries (edges). if s is wire, returns true if it has no free ends (vertices). (internal and external sub-shepes are ignored in these checks) if s is edge, returns true if its vertices are the same. for other shape types returns s.closed().

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

        Return
        -------
        bool

        Description
        -----------
        Returns true if <e> has two pcurves in the parametric space of <f>. i.e. <f> is on a closed surface and <e> is on the closing curve.

        Parameters
        ----------
        E: TopoDS_Edge
        S: Geom_Surface
        L: TopLoc_Location

        Return
        -------
        bool

        Description
        -----------
        Returns true if <e> has two pcurves in the parametric space of <s>. i.e. <s> is a closed surface and <e> is on the closing curve.

        Parameters
        ----------
        E: TopoDS_Edge
        T: Poly_Triangulation
        L: TopLoc_Location

        Return
        -------
        bool

        Description
        -----------
        Returns true if <e> has two arrays of indices in the triangulation <t>.

        """
        return _BRep.BRep_Tool_IsClosed(*args)

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

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

        Return
        -------
        bool

        Description
        -----------
        Returns true if <f> has a surface, false otherwise.

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

        Return
        -------
        bool

        Description
        -----------
        Returns true if <e> is a 3d curve or a curve on surface.

        """
        return _BRep.BRep_Tool_IsGeometric(*args)

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

        Parameters
        ----------
        theEdge: TopoDS_Edge

        Return
        -------
        GeomAbs_Shape

        Description
        -----------
        Returns the max continuity of edge between some surfaces or geomabs_c0 if there no such surfaces.

        """
        return _BRep.BRep_Tool_MaxContinuity(*args)

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

        Parameters
        ----------
        theShape: TopoDS_Shape
        theSubShape: TopAbs_ShapeEnum

        Return
        -------
        float

        Description
        -----------
        Returns the maximum tolerance of input shape subshapes.

        """
        return _BRep.BRep_Tool_MaxTolerance(*args)

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

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

        Return
        -------
        bool

        Description
        -----------
        Returns the naturalrestriction flag of the face.

        """
        return _BRep.BRep_Tool_NaturalRestriction(*args)

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

        Parameters
        ----------
        theV: TopoDS_Vertex
        theE: TopoDS_Edge

        Return
        -------
        theParam: float

        Description
        -----------
        Finds the parameter of <thev> on <thee>. @param thev [in] input vertex @param thee [in] input edge @param theparam [out] calculated parameter on the curve return true if done.

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

        Return
        -------
        float

        Description
        -----------
        Returns the parameter of <v> on <e>. throws standard_nosuchobject if no parameter on edge.

        Parameters
        ----------
        V: TopoDS_Vertex
        E: TopoDS_Edge
        F: TopoDS_Face

        Return
        -------
        float

        Description
        -----------
        Returns the parameters of the vertex on the pcurve of the edge on the face.

        Parameters
        ----------
        V: TopoDS_Vertex
        E: TopoDS_Edge
        S: Geom_Surface
        L: TopLoc_Location

        Return
        -------
        float

        Description
        -----------
        Returns the parameters of the vertex on the pcurve of the edge on the surface.

        """
        return _BRep.BRep_Tool_Parameter(*args)

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

        Parameters
        ----------
        V: TopoDS_Vertex
        F: TopoDS_Face

        Return
        -------
        gp_Pnt2d

        Description
        -----------
        Returns the parameters of the vertex on the face.

        """
        return _BRep.BRep_Tool_Parameters(*args)

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

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

        Return
        -------
        gp_Pnt

        Description
        -----------
        Returns the 3d point.

        """
        return _BRep.BRep_Tool_Pnt(*args)

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

        Parameters
        ----------
        E: TopoDS_Edge
        L: TopLoc_Location

        Return
        -------
        opencascade::handle<Poly_Polygon3D>

        Description
        -----------
        Returns the 3d polygon of the edge. may be a null handle. returns in <l> the location for the polygon.

        """
        return _BRep.BRep_Tool_Polygon3D(*args)

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

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

        Return
        -------
        opencascade::handle<Poly_Polygon2D>

        Description
        -----------
        Returns the polygon associated to the edge in the parametric space of the face. returns a null handle if this polygon does not exist.

        Parameters
        ----------
        E: TopoDS_Edge
        S: Geom_Surface
        L: TopLoc_Location

        Return
        -------
        opencascade::handle<Poly_Polygon2D>

        Description
        -----------
        Returns the polygon associated to the edge in the parametric space of the surface. returns a null handle if this polygon does not exist.

        Parameters
        ----------
        E: TopoDS_Edge
        C: Poly_Polygon2D
        S: Geom_Surface
        L: TopLoc_Location

        Return
        -------
        None

        Description
        -----------
        Returns in <c>, <s>, <l> a 2d curve, a surface and a location for the edge <e>. <c> and <s> are null if the edge has no polygon on surface.

        Parameters
        ----------
        E: TopoDS_Edge
        C: Poly_Polygon2D
        S: Geom_Surface
        L: TopLoc_Location
        Index: int

        Return
        -------
        None

        Description
        -----------
        Returns in <c>, <s>, <l> the 2d curve, the surface and the location for the edge <e> of rank <index>. <c> and <s> are null if the index is out of range.

        """
        return _BRep.BRep_Tool_PolygonOnSurface(*args)

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

        Parameters
        ----------
        E: TopoDS_Edge
        T: Poly_Triangulation
        L: TopLoc_Location

        Return
        -------
        opencascade::handle<Poly_PolygonOnTriangulation>

        Description
        -----------
        Returns the polygon associated to the edge in the parametric space of the face. returns a null handle if this polygon does not exist.

        Parameters
        ----------
        E: TopoDS_Edge
        P: Poly_PolygonOnTriangulation
        T: Poly_Triangulation
        L: TopLoc_Location

        Return
        -------
        None

        Description
        -----------
        Returns in <p>, <t>, <l> a polygon on triangulation, a triangulation and a location for the edge <e>. <p> and <t> are null if the edge has no polygon on triangulation.

        Parameters
        ----------
        E: TopoDS_Edge
        P: Poly_PolygonOnTriangulation
        T: Poly_Triangulation
        L: TopLoc_Location
        Index: int

        Return
        -------
        None

        Description
        -----------
        Returns in <p>, <t>, <l> a polygon on triangulation, a triangulation and a location for the edge <e> for the range index. <c> and <s> are null if the edge has no polygon on triangulation.

        """
        return _BRep.BRep_Tool_PolygonOnTriangulation(*args)

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

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

        Return
        -------
        First: float
        Last: float

        Description
        -----------
        Gets the range of the 3d curve.

        Parameters
        ----------
        E: TopoDS_Edge
        S: Geom_Surface
        L: TopLoc_Location

        Return
        -------
        First: float
        Last: float

        Description
        -----------
        Gets the range of the edge on the pcurve on the surface.

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

        Return
        -------
        First: float
        Last: float

        Description
        -----------
        Gets the range of the edge on the pcurve on the face.

        """
        return _BRep.BRep_Tool_Range(*args)

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

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

        Return
        -------
        bool

        Description
        -----------
        Returns the sameparameter flag for the edge.

        """
        return _BRep.BRep_Tool_SameParameter(*args)

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

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

        Return
        -------
        bool

        Description
        -----------
        Returns the samerange flag for the edge.

        """
        return _BRep.BRep_Tool_SameRange(*args)

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

        Parameters
        ----------
        E: TopoDS_Edge
        S: Geom_Surface
        L: TopLoc_Location
        PFirst: gp_Pnt2d
        PLast: gp_Pnt2d

        Return
        -------
        None

        Description
        -----------
        Sets the uv locations of the extremities of the edge.

        Parameters
        ----------
        E: TopoDS_Edge
        F: TopoDS_Face
        PFirst: gp_Pnt2d
        PLast: gp_Pnt2d

        Return
        -------
        None

        Description
        -----------
        Sets the uv locations of the extremities of the edge.

        """
        return _BRep.BRep_Tool_SetUVPoints(*args)

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

        Parameters
        ----------
        F: TopoDS_Face
        L: TopLoc_Location

        Return
        -------
        opencascade::handle<Geom_Surface>

        Description
        -----------
        Returns the geometric surface of the face. returns in <l> the location for the surface.

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

        Return
        -------
        opencascade::handle<Geom_Surface>

        Description
        -----------
        Returns the geometric surface of the face. it can be a copy if there is a location.

        """
        return _BRep.BRep_Tool_Surface(*args)

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

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

        Return
        -------
        float

        Description
        -----------
        Returns the tolerance of the face.

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

        Return
        -------
        float

        Description
        -----------
        Returns the tolerance for <e>.

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

        Return
        -------
        float

        Description
        -----------
        Returns the tolerance.

        """
        return _BRep.BRep_Tool_Tolerance(*args)

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

        Parameters
        ----------
        theFace: TopoDS_Face
        theLocation: TopLoc_Location
        theMeshPurpose: Poly_MeshPurpose (optional, default to Poly_MeshPurpose_NONE)

        Return
        -------
        opencascade::handle<Poly_Triangulation>

        Description
        -----------
        Returns the triangulation of the face according to the mesh purpose. @param theface [in] the input face to find triangulation. @param thelocation [out] the face location. @param themeshpurpose [in] a mesh purpose to find appropriate triangulation (none by default). return an active triangulation in case of none purpose, the first triangulation appropriate for the input purpose, just the first triangulation if none matching other criteria and input purpose is anyfallback or null handle if there is no any suitable triangulation.

        """
        return _BRep.BRep_Tool_Triangulation(*args)

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

        Parameters
        ----------
        theFace: TopoDS_Face
        theLocation: TopLoc_Location

        Return
        -------
        Poly_ListOfTriangulation

        Description
        -----------
        Returns all triangulations of the face. @param theface [in] the input face. @param thelocation [out] the face location. return list of all available face triangulations.

        """
        return _BRep.BRep_Tool_Triangulations(*args)

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

        Parameters
        ----------
        E: TopoDS_Edge
        S: Geom_Surface
        L: TopLoc_Location
        PFirst: gp_Pnt2d
        PLast: gp_Pnt2d

        Return
        -------
        None

        Description
        -----------
        Gets the uv locations of the extremities of the edge.

        Parameters
        ----------
        E: TopoDS_Edge
        F: TopoDS_Face
        PFirst: gp_Pnt2d
        PLast: gp_Pnt2d

        Return
        -------
        None

        Description
        -----------
        Gets the uv locations of the extremities of the edge.

        """
        return _BRep.BRep_Tool_UVPoints(*args)

    __repr__ = _dumps_object


    def __init__(self):
        _BRep.BRep_Tool_swiginit(self, _BRep.new_BRep_Tool())
    __swig_destroy__ = _BRep.delete_BRep_Tool

# Register BRep_Tool in _BRep:
_BRep.BRep_Tool_swigregister(BRep_Tool)
class BRep_CurveOn2Surfaces(BRep_CurveRepresentation):
    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"""

        Parameters
        ----------
        S1: Geom_Surface
        S2: Geom_Surface
        L1: TopLoc_Location
        L2: TopLoc_Location
        C: GeomAbs_Shape

        Return
        -------
        None

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

        """
        _BRep.BRep_CurveOn2Surfaces_swiginit(self, _BRep.new_BRep_CurveOn2Surfaces(*args))

    def Continuity(self, *args):
        r"""
        Return
        -------
        GeomAbs_Shape

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

        Parameters
        ----------
        C: GeomAbs_Shape

        Return
        -------
        None

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

        """
        return _BRep.BRep_CurveOn2Surfaces_Continuity(self, *args)

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

        Parameters
        ----------
        U: float
        P: gp_Pnt

        Return
        -------
        None

        Description
        -----------
        Raises an error.

        """
        return _BRep.BRep_CurveOn2Surfaces_D0(self, *args)

    def DumpJsonToString(self, depth=-1):
        r"""Json string serializer.Json string serializer."""
        return _BRep.BRep_CurveOn2Surfaces_DumpJsonToString(self, depth)

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

        Description
        -----------
        Returns true.

        Parameters
        ----------
        S1: Geom_Surface
        S2: Geom_Surface
        L1: TopLoc_Location
        L2: TopLoc_Location

        Return
        -------
        bool

        Description
        -----------
        A curve on two surfaces (continuity).

        """
        return _BRep.BRep_CurveOn2Surfaces_IsRegularity(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BRep.delete_BRep_CurveOn2Surfaces

# Register BRep_CurveOn2Surfaces in _BRep:
_BRep.BRep_CurveOn2Surfaces_swigregister(BRep_CurveOn2Surfaces)
class BRep_GCurve(BRep_CurveRepresentation):
    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")
    __repr__ = _swig_repr

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

        Parameters
        ----------
        U: float
        P: gp_Pnt

        Return
        -------
        None

        Description
        -----------
        Computes the point at parameter u.

        """
        return _BRep.BRep_GCurve_D0(self, *args)

    def DumpJsonToString(self, depth=-1):
        r"""Json string serializer.Json string serializer."""
        return _BRep.BRep_GCurve_DumpJsonToString(self, depth)

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

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

        Parameters
        ----------
        F: float

        Return
        -------
        None

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

        """
        return _BRep.BRep_GCurve_First(self, *args)

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

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

        Parameters
        ----------
        L: float

        Return
        -------
        None

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

        """
        return _BRep.BRep_GCurve_Last(self, *args)

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

        Parameters
        ----------

        Return
        -------
        First: float
        Last: float

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

        """
        return _BRep.BRep_GCurve_Range(self, *args)

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

        Parameters
        ----------
        First: float
        Last: float

        Return
        -------
        None

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

        """
        return _BRep.BRep_GCurve_SetRange(self, *args)

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

        Description
        -----------
        Recomputes any derived data after a modification. this is called when the range is modified.

        """
        return _BRep.BRep_GCurve_Update(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BRep.delete_BRep_GCurve

# Register BRep_GCurve in _BRep:
_BRep.BRep_GCurve_swigregister(BRep_GCurve)
class BRep_PointOnCurve(BRep_PointRepresentation):
    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"""

        Parameters
        ----------
        P: float
        C: Geom_Curve
        L: TopLoc_Location

        Return
        -------
        None

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

        """
        _BRep.BRep_PointOnCurve_swiginit(self, _BRep.new_BRep_PointOnCurve(*args))

    def Curve(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Geom_Curve>

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

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

        Return
        -------
        None

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

        """
        return _BRep.BRep_PointOnCurve_Curve(self, *args)

    def DumpJsonToString(self, depth=-1):
        r"""Json string serializer.Json string serializer."""
        return _BRep.BRep_PointOnCurve_DumpJsonToString(self, depth)

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

        Description
        -----------
        Returns true.

        Parameters
        ----------
        C: Geom_Curve
        L: TopLoc_Location

        Return
        -------
        bool

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

        """
        return _BRep.BRep_PointOnCurve_IsPointOnCurve(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BRep.delete_BRep_PointOnCurve

# Register BRep_PointOnCurve in _BRep:
_BRep.BRep_PointOnCurve_swigregister(BRep_PointOnCurve)
class BRep_PointsOnSurface(BRep_PointRepresentation):
    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")
    __repr__ = _swig_repr

    def DumpJsonToString(self, depth=-1):
        r"""Json string serializer.Json string serializer."""
        return _BRep.BRep_PointsOnSurface_DumpJsonToString(self, depth)

    def Surface(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Geom_Surface>

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

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

        Return
        -------
        None

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

        """
        return _BRep.BRep_PointsOnSurface_Surface(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BRep.delete_BRep_PointsOnSurface

# Register BRep_PointsOnSurface in _BRep:
_BRep.BRep_PointsOnSurface_swigregister(BRep_PointsOnSurface)
class BRep_Polygon3D(BRep_CurveRepresentation):
    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"""

        Parameters
        ----------
        P: Poly_Polygon3D
        L: TopLoc_Location

        Return
        -------
        None

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

        """
        _BRep.BRep_Polygon3D_swiginit(self, _BRep.new_BRep_Polygon3D(*args))

    def DumpJsonToString(self, depth=-1):
        r"""Json string serializer.Json string serializer."""
        return _BRep.BRep_Polygon3D_DumpJsonToString(self, depth)

    def Polygon3D(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Poly_Polygon3D>

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

        Parameters
        ----------
        P: Poly_Polygon3D

        Return
        -------
        None

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

        """
        return _BRep.BRep_Polygon3D_Polygon3D(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BRep.delete_BRep_Polygon3D

# Register BRep_Polygon3D in _BRep:
_BRep.BRep_Polygon3D_swigregister(BRep_Polygon3D)
class BRep_PolygonOnSurface(BRep_CurveRepresentation):
    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"""

        Parameters
        ----------
        P: Poly_Polygon2D
        S: Geom_Surface
        L: TopLoc_Location

        Return
        -------
        None

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

        """
        _BRep.BRep_PolygonOnSurface_swiginit(self, _BRep.new_BRep_PolygonOnSurface(*args))

    def DumpJsonToString(self, depth=-1):
        r"""Json string serializer.Json string serializer."""
        return _BRep.BRep_PolygonOnSurface_DumpJsonToString(self, depth)

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

        Description
        -----------
        A 2d polygon representation in the parametric space of a surface.

        Parameters
        ----------
        S: Geom_Surface
        L: TopLoc_Location

        Return
        -------
        bool

        Description
        -----------
        A 2d polygon representation in the parametric space of a surface.

        """
        return _BRep.BRep_PolygonOnSurface_IsPolygonOnSurface(self, *args)

    def Polygon(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Poly_Polygon2D>

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

        Parameters
        ----------
        P: Poly_Polygon2D

        Return
        -------
        None

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

        """
        return _BRep.BRep_PolygonOnSurface_Polygon(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BRep.delete_BRep_PolygonOnSurface

# Register BRep_PolygonOnSurface in _BRep:
_BRep.BRep_PolygonOnSurface_swigregister(BRep_PolygonOnSurface)
class BRep_PolygonOnTriangulation(BRep_CurveRepresentation):
    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"""

        Parameters
        ----------
        P: Poly_PolygonOnTriangulation
        T: Poly_Triangulation
        L: TopLoc_Location

        Return
        -------
        None

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

        """
        _BRep.BRep_PolygonOnTriangulation_swiginit(self, _BRep.new_BRep_PolygonOnTriangulation(*args))

    def DumpJsonToString(self, depth=-1):
        r"""Json string serializer.Json string serializer."""
        return _BRep.BRep_PolygonOnTriangulation_DumpJsonToString(self, depth)

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

        Description
        -----------
        Returns true.

        Parameters
        ----------
        T: Poly_Triangulation
        L: TopLoc_Location

        Return
        -------
        bool

        Description
        -----------
        Is it a polygon in the definition of <t> with location <l>.

        """
        return _BRep.BRep_PolygonOnTriangulation_IsPolygonOnTriangulation(self, *args)

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

        Parameters
        ----------
        P: Poly_PolygonOnTriangulation

        Return
        -------
        None

        Description
        -----------
        Returns true.
        Return
        -------
        opencascade::handle<Poly_PolygonOnTriangulation>

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

        """
        return _BRep.BRep_PolygonOnTriangulation_PolygonOnTriangulation(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BRep.delete_BRep_PolygonOnTriangulation

# Register BRep_PolygonOnTriangulation in _BRep:
_BRep.BRep_PolygonOnTriangulation_swigregister(BRep_PolygonOnTriangulation)
class BRep_Curve3D(BRep_GCurve):
    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"""

        Parameters
        ----------
        C: Geom_Curve
        L: TopLoc_Location

        Return
        -------
        None

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

        """
        _BRep.BRep_Curve3D_swiginit(self, _BRep.new_BRep_Curve3D(*args))

    def Curve3D(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Geom_Curve>

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

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

        Return
        -------
        None

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

        """
        return _BRep.BRep_Curve3D_Curve3D(self, *args)

    def DumpJsonToString(self, depth=-1):
        r"""Json string serializer.Json string serializer."""
        return _BRep.BRep_Curve3D_DumpJsonToString(self, depth)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BRep.delete_BRep_Curve3D

# Register BRep_Curve3D in _BRep:
_BRep.BRep_Curve3D_swigregister(BRep_Curve3D)
class BRep_CurveOnSurface(BRep_GCurve):
    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"""

        Parameters
        ----------
        PC: Geom2d_Curve
        S: Geom_Surface
        L: TopLoc_Location

        Return
        -------
        None

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

        """
        _BRep.BRep_CurveOnSurface_swiginit(self, _BRep.new_BRep_CurveOnSurface(*args))

    def DumpJsonToString(self, depth=-1):
        r"""Json string serializer.Json string serializer."""
        return _BRep.BRep_CurveOnSurface_DumpJsonToString(self, depth)

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

        Description
        -----------
        Returns true.

        Parameters
        ----------
        S: Geom_Surface
        L: TopLoc_Location

        Return
        -------
        bool

        Description
        -----------
        A curve in the parametric space of a surface.

        """
        return _BRep.BRep_CurveOnSurface_IsCurveOnSurface(self, *args)

    def PCurve(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Geom2d_Curve>

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

        Parameters
        ----------
        C: Geom2d_Curve

        Return
        -------
        None

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

        """
        return _BRep.BRep_CurveOnSurface_PCurve(self, *args)

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

        Parameters
        ----------
        P1: gp_Pnt2d
        P2: gp_Pnt2d

        Return
        -------
        None

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

        """
        return _BRep.BRep_CurveOnSurface_SetUVPoints(self, *args)

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

        Parameters
        ----------
        P1: gp_Pnt2d
        P2: gp_Pnt2d

        Return
        -------
        None

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

        """
        return _BRep.BRep_CurveOnSurface_UVPoints(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BRep.delete_BRep_CurveOnSurface

# Register BRep_CurveOnSurface in _BRep:
_BRep.BRep_CurveOnSurface_swigregister(BRep_CurveOnSurface)
class BRep_PointOnCurveOnSurface(BRep_PointsOnSurface):
    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"""

        Parameters
        ----------
        P: float
        C: Geom2d_Curve
        S: Geom_Surface
        L: TopLoc_Location

        Return
        -------
        None

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

        """
        _BRep.BRep_PointOnCurveOnSurface_swiginit(self, _BRep.new_BRep_PointOnCurveOnSurface(*args))

    def DumpJsonToString(self, depth=-1):
        r"""Json string serializer.Json string serializer."""
        return _BRep.BRep_PointOnCurveOnSurface_DumpJsonToString(self, depth)

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

        Description
        -----------
        Returns true.

        Parameters
        ----------
        PC: Geom2d_Curve
        S: Geom_Surface
        L: TopLoc_Location

        Return
        -------
        bool

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

        """
        return _BRep.BRep_PointOnCurveOnSurface_IsPointOnCurveOnSurface(self, *args)

    def PCurve(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Geom2d_Curve>

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

        Parameters
        ----------
        C: Geom2d_Curve

        Return
        -------
        None

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

        """
        return _BRep.BRep_PointOnCurveOnSurface_PCurve(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BRep.delete_BRep_PointOnCurveOnSurface

# Register BRep_PointOnCurveOnSurface in _BRep:
_BRep.BRep_PointOnCurveOnSurface_swigregister(BRep_PointOnCurveOnSurface)
class BRep_PointOnSurface(BRep_PointsOnSurface):
    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"""

        Parameters
        ----------
        P1: float
        P2: float
        S: Geom_Surface
        L: TopLoc_Location

        Return
        -------
        None

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

        """
        _BRep.BRep_PointOnSurface_swiginit(self, _BRep.new_BRep_PointOnSurface(*args))

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

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

        Parameters
        ----------
        S: Geom_Surface
        L: TopLoc_Location

        Return
        -------
        bool

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

        """
        return _BRep.BRep_PointOnSurface_IsPointOnSurface(self, *args)

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

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

        Parameters
        ----------
        P: float

        Return
        -------
        None

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

        """
        return _BRep.BRep_PointOnSurface_Parameter2(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BRep.delete_BRep_PointOnSurface

# Register BRep_PointOnSurface in _BRep:
_BRep.BRep_PointOnSurface_swigregister(BRep_PointOnSurface)
class BRep_PolygonOnClosedSurface(BRep_PolygonOnSurface):
    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"""

        Parameters
        ----------
        P1: Poly_Polygon2D
        P2: Poly_Polygon2D
        S: Geom_Surface
        L: TopLoc_Location

        Return
        -------
        None

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

        """
        _BRep.BRep_PolygonOnClosedSurface_swiginit(self, _BRep.new_BRep_PolygonOnClosedSurface(*args))

    def DumpJsonToString(self, depth=-1):
        r"""Json string serializer.Json string serializer."""
        return _BRep.BRep_PolygonOnClosedSurface_DumpJsonToString(self, depth)

    def Polygon2(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Poly_Polygon2D>

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

        Parameters
        ----------
        P: Poly_Polygon2D

        Return
        -------
        None

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

        """
        return _BRep.BRep_PolygonOnClosedSurface_Polygon2(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BRep.delete_BRep_PolygonOnClosedSurface

# Register BRep_PolygonOnClosedSurface in _BRep:
_BRep.BRep_PolygonOnClosedSurface_swigregister(BRep_PolygonOnClosedSurface)
class BRep_PolygonOnClosedTriangulation(BRep_PolygonOnTriangulation):
    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"""

        Parameters
        ----------
        P1: Poly_PolygonOnTriangulation
        P2: Poly_PolygonOnTriangulation
        Tr: Poly_Triangulation
        L: TopLoc_Location

        Return
        -------
        None

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

        """
        _BRep.BRep_PolygonOnClosedTriangulation_swiginit(self, _BRep.new_BRep_PolygonOnClosedTriangulation(*args))

    def DumpJsonToString(self, depth=-1):
        r"""Json string serializer.Json string serializer."""
        return _BRep.BRep_PolygonOnClosedTriangulation_DumpJsonToString(self, depth)

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

        Parameters
        ----------
        P2: Poly_PolygonOnTriangulation

        Return
        -------
        None

        Description
        -----------
        No available documentation.
        Return
        -------
        opencascade::handle<Poly_PolygonOnTriangulation>

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

        """
        return _BRep.BRep_PolygonOnClosedTriangulation_PolygonOnTriangulation2(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BRep.delete_BRep_PolygonOnClosedTriangulation

# Register BRep_PolygonOnClosedTriangulation in _BRep:
_BRep.BRep_PolygonOnClosedTriangulation_swigregister(BRep_PolygonOnClosedTriangulation)
class BRep_CurveOnClosedSurface(BRep_CurveOnSurface):
    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"""

        Parameters
        ----------
        PC1: Geom2d_Curve
        PC2: Geom2d_Curve
        S: Geom_Surface
        L: TopLoc_Location
        C: GeomAbs_Shape

        Return
        -------
        None

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

        """
        _BRep.BRep_CurveOnClosedSurface_swiginit(self, _BRep.new_BRep_CurveOnClosedSurface(*args))

    def Continuity(self, *args):
        r"""
        Return
        -------
        GeomAbs_Shape

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

        Parameters
        ----------
        C: GeomAbs_Shape

        Return
        -------
        None

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

        """
        return _BRep.BRep_CurveOnClosedSurface_Continuity(self, *args)

    def DumpJsonToString(self, depth=-1):
        r"""Json string serializer.Json string serializer."""
        return _BRep.BRep_CurveOnClosedSurface_DumpJsonToString(self, depth)

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

        Description
        -----------
        Returns true.

        Parameters
        ----------
        S1: Geom_Surface
        S2: Geom_Surface
        L1: TopLoc_Location
        L2: TopLoc_Location

        Return
        -------
        bool

        Description
        -----------
        A curve on two surfaces (continuity).

        """
        return _BRep.BRep_CurveOnClosedSurface_IsRegularity(self, *args)

    def PCurve2(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Geom2d_Curve>

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

        Parameters
        ----------
        C: Geom2d_Curve

        Return
        -------
        None

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

        """
        return _BRep.BRep_CurveOnClosedSurface_PCurve2(self, *args)

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

        Parameters
        ----------
        P1: gp_Pnt2d
        P2: gp_Pnt2d

        Return
        -------
        None

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

        """
        return _BRep.BRep_CurveOnClosedSurface_SetUVPoints2(self, *args)

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

        Parameters
        ----------
        P1: gp_Pnt2d
        P2: gp_Pnt2d

        Return
        -------
        None

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

        """
        return _BRep.BRep_CurveOnClosedSurface_UVPoints2(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BRep.delete_BRep_CurveOnClosedSurface

# Register BRep_CurveOnClosedSurface in _BRep:
_BRep.BRep_CurveOnClosedSurface_swigregister(BRep_CurveOnClosedSurface)



@deprecated
def BRep_Tool_Continuity(*args):
	return BRep_Tool.Continuity(*args)

@deprecated
def BRep_Tool_Continuity(*args):
	return BRep_Tool.Continuity(*args)

@deprecated
def BRep_Tool_Curve(*args):
	return BRep_Tool.Curve(*args)

@deprecated
def BRep_Tool_Curve(*args):
	return BRep_Tool.Curve(*args)

@deprecated
def BRep_Tool_CurveOnPlane(*args):
	return BRep_Tool.CurveOnPlane(*args)

@deprecated
def BRep_Tool_CurveOnSurface(*args):
	return BRep_Tool.CurveOnSurface(*args)

@deprecated
def BRep_Tool_CurveOnSurface(*args):
	return BRep_Tool.CurveOnSurface(*args)

@deprecated
def BRep_Tool_CurveOnSurface(*args):
	return BRep_Tool.CurveOnSurface(*args)

@deprecated
def BRep_Tool_CurveOnSurface(*args):
	return BRep_Tool.CurveOnSurface(*args)

@deprecated
def BRep_Tool_Degenerated(*args):
	return BRep_Tool.Degenerated(*args)

@deprecated
def BRep_Tool_HasContinuity(*args):
	return BRep_Tool.HasContinuity(*args)

@deprecated
def BRep_Tool_HasContinuity(*args):
	return BRep_Tool.HasContinuity(*args)

@deprecated
def BRep_Tool_HasContinuity(*args):
	return BRep_Tool.HasContinuity(*args)

@deprecated
def BRep_Tool_IsClosed(*args):
	return BRep_Tool.IsClosed(*args)

@deprecated
def BRep_Tool_IsClosed(*args):
	return BRep_Tool.IsClosed(*args)

@deprecated
def BRep_Tool_IsClosed(*args):
	return BRep_Tool.IsClosed(*args)

@deprecated
def BRep_Tool_IsClosed(*args):
	return BRep_Tool.IsClosed(*args)

@deprecated
def BRep_Tool_IsGeometric(*args):
	return BRep_Tool.IsGeometric(*args)

@deprecated
def BRep_Tool_IsGeometric(*args):
	return BRep_Tool.IsGeometric(*args)

@deprecated
def BRep_Tool_MaxContinuity(*args):
	return BRep_Tool.MaxContinuity(*args)

@deprecated
def BRep_Tool_MaxTolerance(*args):
	return BRep_Tool.MaxTolerance(*args)

@deprecated
def BRep_Tool_NaturalRestriction(*args):
	return BRep_Tool.NaturalRestriction(*args)

@deprecated
def BRep_Tool_Parameter(*args):
	return BRep_Tool.Parameter(*args)

@deprecated
def BRep_Tool_Parameter(*args):
	return BRep_Tool.Parameter(*args)

@deprecated
def BRep_Tool_Parameter(*args):
	return BRep_Tool.Parameter(*args)

@deprecated
def BRep_Tool_Parameter(*args):
	return BRep_Tool.Parameter(*args)

@deprecated
def BRep_Tool_Parameters(*args):
	return BRep_Tool.Parameters(*args)

@deprecated
def BRep_Tool_Pnt(*args):
	return BRep_Tool.Pnt(*args)

@deprecated
def BRep_Tool_Polygon3D(*args):
	return BRep_Tool.Polygon3D(*args)

@deprecated
def BRep_Tool_PolygonOnSurface(*args):
	return BRep_Tool.PolygonOnSurface(*args)

@deprecated
def BRep_Tool_PolygonOnSurface(*args):
	return BRep_Tool.PolygonOnSurface(*args)

@deprecated
def BRep_Tool_PolygonOnSurface(*args):
	return BRep_Tool.PolygonOnSurface(*args)

@deprecated
def BRep_Tool_PolygonOnSurface(*args):
	return BRep_Tool.PolygonOnSurface(*args)

@deprecated
def BRep_Tool_PolygonOnTriangulation(*args):
	return BRep_Tool.PolygonOnTriangulation(*args)

@deprecated
def BRep_Tool_PolygonOnTriangulation(*args):
	return BRep_Tool.PolygonOnTriangulation(*args)

@deprecated
def BRep_Tool_PolygonOnTriangulation(*args):
	return BRep_Tool.PolygonOnTriangulation(*args)

@deprecated
def BRep_Tool_Range(*args):
	return BRep_Tool.Range(*args)

@deprecated
def BRep_Tool_Range(*args):
	return BRep_Tool.Range(*args)

@deprecated
def BRep_Tool_Range(*args):
	return BRep_Tool.Range(*args)

@deprecated
def BRep_Tool_SameParameter(*args):
	return BRep_Tool.SameParameter(*args)

@deprecated
def BRep_Tool_SameRange(*args):
	return BRep_Tool.SameRange(*args)

@deprecated
def BRep_Tool_SetUVPoints(*args):
	return BRep_Tool.SetUVPoints(*args)

@deprecated
def BRep_Tool_SetUVPoints(*args):
	return BRep_Tool.SetUVPoints(*args)

@deprecated
def BRep_Tool_Surface(*args):
	return BRep_Tool.Surface(*args)

@deprecated
def BRep_Tool_Surface(*args):
	return BRep_Tool.Surface(*args)

@deprecated
def BRep_Tool_Tolerance(*args):
	return BRep_Tool.Tolerance(*args)

@deprecated
def BRep_Tool_Tolerance(*args):
	return BRep_Tool.Tolerance(*args)

@deprecated
def BRep_Tool_Tolerance(*args):
	return BRep_Tool.Tolerance(*args)

@deprecated
def BRep_Tool_Triangulation(*args):
	return BRep_Tool.Triangulation(*args)

@deprecated
def BRep_Tool_Triangulations(*args):
	return BRep_Tool.Triangulations(*args)

@deprecated
def BRep_Tool_UVPoints(*args):
	return BRep_Tool.UVPoints(*args)

@deprecated
def BRep_Tool_UVPoints(*args):
	return BRep_Tool.UVPoints(*args)



