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

"""
BiTgte module, see official documentation at
https://dev.opencascade.org/doc/occt-7.9.0/refman/html/package_bitgte.html
"""

from sys import version_info as _swig_python_version_info
# Import the low-level C/C++ module
if getattr(globals().get("__spec__"), "parent", None) or __package__ or "." in __name__:
    from . import _BiTgte
else:
    import _BiTgte

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

# Register SwigPyIterator in _BiTgte:
_BiTgte.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 _BiTgte.process_exception(error, method_name, class_name)

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

class ios_base(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")
    __repr__ = _swig_repr
    erase_event = _BiTgte.ios_base_erase_event
    imbue_event = _BiTgte.ios_base_imbue_event
    copyfmt_event = _BiTgte.ios_base_copyfmt_event

    def register_callback(self, __fn, __index):
        return _BiTgte.ios_base_register_callback(self, __fn, __index)

    def flags(self, *args):
        return _BiTgte.ios_base_flags(self, *args)

    def setf(self, *args):
        return _BiTgte.ios_base_setf(self, *args)

    def unsetf(self, __mask):
        return _BiTgte.ios_base_unsetf(self, __mask)

    def precision(self, *args):
        return _BiTgte.ios_base_precision(self, *args)

    def width(self, *args):
        return _BiTgte.ios_base_width(self, *args)

    @staticmethod
    def sync_with_stdio(__sync=True):
        return _BiTgte.ios_base_sync_with_stdio(__sync)

    def imbue(self, __loc):
        return _BiTgte.ios_base_imbue(self, __loc)

    def getloc(self):
        return _BiTgte.ios_base_getloc(self)

    @staticmethod
    def xalloc():
        return _BiTgte.ios_base_xalloc()

    def iword(self, __ix):
        return _BiTgte.ios_base_iword(self, __ix)

    def pword(self, __ix):
        return _BiTgte.ios_base_pword(self, __ix)
    __swig_destroy__ = _BiTgte.delete_ios_base

# Register ios_base in _BiTgte:
_BiTgte.ios_base_swigregister(ios_base)
cvar = _BiTgte.cvar
ios_base.boolalpha = _BiTgte.cvar.ios_base_boolalpha
ios_base.dec = _BiTgte.cvar.ios_base_dec
ios_base.fixed = _BiTgte.cvar.ios_base_fixed
ios_base.hex = _BiTgte.cvar.ios_base_hex
ios_base.internal = _BiTgte.cvar.ios_base_internal
ios_base.left = _BiTgte.cvar.ios_base_left
ios_base.oct = _BiTgte.cvar.ios_base_oct
ios_base.right = _BiTgte.cvar.ios_base_right
ios_base.scientific = _BiTgte.cvar.ios_base_scientific
ios_base.showbase = _BiTgte.cvar.ios_base_showbase
ios_base.showpoint = _BiTgte.cvar.ios_base_showpoint
ios_base.showpos = _BiTgte.cvar.ios_base_showpos
ios_base.skipws = _BiTgte.cvar.ios_base_skipws
ios_base.unitbuf = _BiTgte.cvar.ios_base_unitbuf
ios_base.uppercase = _BiTgte.cvar.ios_base_uppercase
ios_base.adjustfield = _BiTgte.cvar.ios_base_adjustfield
ios_base.basefield = _BiTgte.cvar.ios_base_basefield
ios_base.floatfield = _BiTgte.cvar.ios_base_floatfield
ios_base.badbit = _BiTgte.cvar.ios_base_badbit
ios_base.eofbit = _BiTgte.cvar.ios_base_eofbit
ios_base.failbit = _BiTgte.cvar.ios_base_failbit
ios_base.goodbit = _BiTgte.cvar.ios_base_goodbit
ios_base.app = _BiTgte.cvar.ios_base_app
ios_base.ate = _BiTgte.cvar.ios_base_ate
ios_base.binary = _BiTgte.cvar.ios_base_binary
ios_base.ios_base_in = _BiTgte.cvar.ios_base_ios_base_in
ios_base.out = _BiTgte.cvar.ios_base_out
ios_base.trunc = _BiTgte.cvar.ios_base_trunc
ios_base.beg = _BiTgte.cvar.ios_base_beg
ios_base.cur = _BiTgte.cvar.ios_base_cur
ios_base.end = _BiTgte.cvar.ios_base_end

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

    def rdstate(self):
        return _BiTgte.ios_rdstate(self)

    def clear(self, *args):
        return _BiTgte.ios_clear(self, *args)

    def setstate(self, __state):
        return _BiTgte.ios_setstate(self, __state)

    def good(self):
        return _BiTgte.ios_good(self)

    def eof(self):
        return _BiTgte.ios_eof(self)

    def fail(self):
        return _BiTgte.ios_fail(self)

    def bad(self):
        return _BiTgte.ios_bad(self)

    def exceptions(self, *args):
        return _BiTgte.ios_exceptions(self, *args)

    def __init__(self, __sb):
        _BiTgte.ios_swiginit(self, _BiTgte.new_ios(__sb))
    __swig_destroy__ = _BiTgte.delete_ios

    def tie(self, *args):
        return _BiTgte.ios_tie(self, *args)

    def rdbuf(self, *args):
        return _BiTgte.ios_rdbuf(self, *args)

    def copyfmt(self, __rhs):
        return _BiTgte.ios_copyfmt(self, __rhs)

    def fill(self, *args):
        return _BiTgte.ios_fill(self, *args)

    def imbue(self, __loc):
        return _BiTgte.ios_imbue(self, __loc)

    def narrow(self, __c, __dfault):
        return _BiTgte.ios_narrow(self, __c, __dfault)

    def widen(self, __c):
        return _BiTgte.ios_widen(self, __c)

# Register ios in _BiTgte:
_BiTgte.ios_swigregister(ios)
class ostream(ios):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, __sb):
        _BiTgte.ostream_swiginit(self, _BiTgte.new_ostream(__sb))
    __swig_destroy__ = _BiTgte.delete_ostream

    def __lshift__(self, *args):
        return _BiTgte.ostream___lshift__(self, *args)

    def put(self, __c):
        return _BiTgte.ostream_put(self, __c)

    def write(self, __s, __n):
        return _BiTgte.ostream_write(self, __s, __n)

    def flush(self):
        return _BiTgte.ostream_flush(self)

    def tellp(self):
        return _BiTgte.ostream_tellp(self)

    def seekp(self, *args):
        return _BiTgte.ostream_seekp(self, *args)

# Register ostream in _BiTgte:
_BiTgte.ostream_swigregister(ostream)
class istream(ios):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, __sb):
        _BiTgte.istream_swiginit(self, _BiTgte.new_istream(__sb))
    __swig_destroy__ = _BiTgte.delete_istream

    def __rshift__(self, *args):
        return _BiTgte.istream___rshift__(self, *args)

    def gcount(self):
        return _BiTgte.istream_gcount(self)

    def get(self, *args):
        return _BiTgte.istream_get(self, *args)

    def getline(self, *args):
        return _BiTgte.istream_getline(self, *args)

    def ignore(self, *args):
        return _BiTgte.istream_ignore(self, *args)

    def peek(self):
        return _BiTgte.istream_peek(self)

    def read(self, __s, __n):
        return _BiTgte.istream_read(self, __s, __n)

    def readsome(self, __s, __n):
        return _BiTgte.istream_readsome(self, __s, __n)

    def putback(self, __c):
        return _BiTgte.istream_putback(self, __c)

    def unget(self):
        return _BiTgte.istream_unget(self)

    def sync(self):
        return _BiTgte.istream_sync(self)

    def tellg(self):
        return _BiTgte.istream_tellg(self)

    def seekg(self, *args):
        return _BiTgte.istream_seekg(self, *args)

# Register istream in _BiTgte:
_BiTgte.istream_swigregister(istream)
class iostream(istream, ostream):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, __sb):
        _BiTgte.iostream_swiginit(self, _BiTgte.new_iostream(__sb))
    __swig_destroy__ = _BiTgte.delete_iostream

# Register iostream in _BiTgte:
_BiTgte.iostream_swigregister(iostream)
cin = cvar.cin
cout = cvar.cout
cerr = cvar.cerr
clog = cvar.clog

endl_cb_ptr = _BiTgte.endl_cb_ptr
endl = _BiTgte.endl
ends_cb_ptr = _BiTgte.ends_cb_ptr
ends = _BiTgte.ends
flush_cb_ptr = _BiTgte.flush_cb_ptr
flush = _BiTgte.flush
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.TopTools
import OCC.Core.Geom
import OCC.Core.GeomAbs
import OCC.Core.TColgp
import OCC.Core.Geom2d
import OCC.Core.Adaptor3d
import OCC.Core.Adaptor2d
import OCC.Core.math

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

BiTgte_FaceFace = _BiTgte.BiTgte_FaceFace
BiTgte_FaceEdge = _BiTgte.BiTgte_FaceEdge
BiTgte_FaceVertex = _BiTgte.BiTgte_FaceVertex
BiTgte_EdgeEdge = _BiTgte.BiTgte_EdgeEdge
BiTgte_EdgeVertex = _BiTgte.BiTgte_EdgeVertex
BiTgte_VertexVertex = _BiTgte.BiTgte_VertexVertex


class BiTgte_ContactType(IntEnum):
	BiTgte_FaceFace = 0
	BiTgte_FaceEdge = 1
	BiTgte_FaceVertex = 2
	BiTgte_EdgeEdge = 3
	BiTgte_EdgeVertex = 4
	BiTgte_VertexVertex = 5
BiTgte_FaceFace = BiTgte_ContactType.BiTgte_FaceFace
BiTgte_FaceEdge = BiTgte_ContactType.BiTgte_FaceEdge
BiTgte_FaceVertex = BiTgte_ContactType.BiTgte_FaceVertex
BiTgte_EdgeEdge = BiTgte_ContactType.BiTgte_EdgeEdge
BiTgte_EdgeVertex = BiTgte_ContactType.BiTgte_EdgeVertex
BiTgte_VertexVertex = BiTgte_ContactType.BiTgte_VertexVertex


def Handle_BiTgte_CurveOnEdge_Create():
    return _BiTgte.Handle_BiTgte_CurveOnEdge_Create()

def Handle_BiTgte_CurveOnEdge_DownCast(t):
    return _BiTgte.Handle_BiTgte_CurveOnEdge_DownCast(t)

def Handle_BiTgte_CurveOnEdge_IsNull(t):
    return _BiTgte.Handle_BiTgte_CurveOnEdge_IsNull(t)

def Handle_BiTgte_CurveOnVertex_Create():
    return _BiTgte.Handle_BiTgte_CurveOnVertex_Create()

def Handle_BiTgte_CurveOnVertex_DownCast(t):
    return _BiTgte.Handle_BiTgte_CurveOnVertex_DownCast(t)

def Handle_BiTgte_CurveOnVertex_IsNull(t):
    return _BiTgte.Handle_BiTgte_CurveOnVertex_IsNull(t)
class BiTgte_Blend(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

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

        Parameters
        ----------
        S: TopoDS_Shape
        Radius: float
        Tol: float
        NUBS: bool

        Return
        -------
        None

        Description
        -----------
        <S>: Shape to be rounded <Radius>: radius of the fillet <Tol>: Tol3d used in approximations <NUBS>: if true, generate only NUBS surfaces, if false, generate analytical surfaces if possible.

        """
        _BiTgte.BiTgte_Blend_swiginit(self, _BiTgte.new_BiTgte_Blend(*args))

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

        Parameters
        ----------
        LC: TopTools_ListOfShape

        Return
        -------
        None

        Description
        -----------
        set in <LC> all the center lines.

        """
        return _BiTgte.BiTgte_Blend_CenterLines(self, *args)

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

        Description
        -----------
        Clear all the Fields.

        """
        return _BiTgte.BiTgte_Blend_Clear(self, *args)

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

        Description
        -----------
        Computes the center lines.

        """
        return _BiTgte.BiTgte_Blend_ComputeCenters(self, *args)

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

        Parameters
        ----------
        Index: int

        Return
        -------
        BiTgte_ContactType

        Description
        -----------
        returns the type of contact.

        """
        return _BiTgte.BiTgte_Blend_ContactType(self, *args)

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

        Parameters
        ----------
        Index: int

        Return
        -------
        opencascade::handle<Geom_Curve>

        Description
        -----------
        gives the 3d curve of SurfaceFillet(Index) on SupportShape1(Index).

        """
        return _BiTgte.BiTgte_Blend_CurveOnShape1(self, *args)

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

        Parameters
        ----------
        Index: int

        Return
        -------
        opencascade::handle<Geom_Curve>

        Description
        -----------
        gives the 3d curve of SurfaceFillet(Index) on SupportShape2(Index).

        """
        return _BiTgte.BiTgte_Blend_CurveOnShape2(self, *args)

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

        Parameters
        ----------
        Index: int

        Return
        -------
        TopoDS_Face

        Description
        -----------
        returns the surface of range Index.

        Parameters
        ----------
        CenterLine: TopoDS_Shape

        Return
        -------
        TopoDS_Face

        Description
        -----------
        returns the face generated by the centerline. <CenterLine> may be - an edge: generate a pipe. - a vertex: generate a sphere. Warning: returns a Null Shape if <CenterLine> generates no surface.

        """
        return _BiTgte.BiTgte_Blend_Face(self, *args)

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

        Parameters
        ----------
        Index: int

        Return
        -------
        From: int
        To: int

        Description
        -----------
        Set in <From>,<To> the indices of the faces of the branche <Index>. //! i.e: Branche<Index> = Face(From) + Face(From+1) + ..+ Face(To).

        """
        return _BiTgte.BiTgte_Blend_IndicesOfBranche(self, *args)

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

        Parameters
        ----------
        S: TopoDS_Shape
        Radius: float
        Tol: float
        NUBS: bool

        Return
        -------
        None

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

        """
        return _BiTgte.BiTgte_Blend_Init(self, *args)

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

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

        """
        return _BiTgte.BiTgte_Blend_IsDone(self, *args)

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

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

        """
        return _BiTgte.BiTgte_Blend_NbBranches(self, *args)

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

        Description
        -----------
        returns the Number of generated surfaces.

        """
        return _BiTgte.BiTgte_Blend_NbSurfaces(self, *args)

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

        Parameters
        ----------
        Index: int

        Return
        -------
        opencascade::handle<Geom2d_Curve>

        Description
        -----------
        gives the PCurve associated to CurveOnShape1(Index) on the Fillet.

        """
        return _BiTgte.BiTgte_Blend_PCurve1OnFillet(self, *args)

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

        Parameters
        ----------
        Index: int

        Return
        -------
        opencascade::handle<Geom2d_Curve>

        Description
        -----------
        gives the PCurve associated to CurveOnShape2(Index) on the fillet.

        """
        return _BiTgte.BiTgte_Blend_PCurve2OnFillet(self, *args)

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

        Parameters
        ----------
        Index: int

        Return
        -------
        opencascade::handle<Geom2d_Curve>

        Description
        -----------
        gives the PCurve associated to CurvOnShape1(Index) on the support face Warning: returns a Null Handle if SupportShape1 is not a Face.

        """
        return _BiTgte.BiTgte_Blend_PCurveOnFace1(self, *args)

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

        Parameters
        ----------
        Index: int

        Return
        -------
        opencascade::handle<Geom2d_Curve>

        Description
        -----------
        gives the PCurve associated to CurveOnShape2(Index) on the support face Warning: returns a Null Handle if SupportShape2 is not a Face.

        """
        return _BiTgte.BiTgte_Blend_PCurveOnFace2(self, *args)

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

        Parameters
        ----------
        BuildShape: bool (optional, default to Standard_True)

        Return
        -------
        None

        Description
        -----------
        Compute the generated surfaces. If <BuildShape> is true, compute the resulting Shape. If false, only the blending surfaces are computed.

        """
        return _BiTgte.BiTgte_Blend_Perform(self, *args)

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

        Parameters
        ----------
        Edge: TopoDS_Edge

        Return
        -------
        None

        Description
        -----------
        Set an edge of <myShape> to be rounded.

        """
        return _BiTgte.BiTgte_Blend_SetEdge(self, *args)

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

        Parameters
        ----------
        F1: TopoDS_Face
        F2: TopoDS_Face

        Return
        -------
        None

        Description
        -----------
        Set two faces of <myShape> on which the Sphere must roll.

        """
        return _BiTgte.BiTgte_Blend_SetFaces(self, *args)

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

        Parameters
        ----------
        Face: TopoDS_Face

        Return
        -------
        None

        Description
        -----------
        Set a face on which the fillet must stop.

        """
        return _BiTgte.BiTgte_Blend_SetStoppingFace(self, *args)

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

        Description
        -----------
        returns the result.

        """
        return _BiTgte.BiTgte_Blend_Shape(self, *args)

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

        Parameters
        ----------
        Index: int

        Return
        -------
        TopoDS_Shape

        Description
        -----------
        gives the first support shape relative to SurfaceFillet(Index);.

        """
        return _BiTgte.BiTgte_Blend_SupportShape1(self, *args)

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

        Parameters
        ----------
        Index: int

        Return
        -------
        TopoDS_Shape

        Description
        -----------
        gives the second support shape relative to SurfaceFillet(Index);.

        """
        return _BiTgte.BiTgte_Blend_SupportShape2(self, *args)

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

        Parameters
        ----------
        Index: int

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

        Description
        -----------
        returns the surface of range Index.

        Parameters
        ----------
        CenterLine: TopoDS_Shape

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

        Description
        -----------
        returns the surface generated by the centerline. <CenterLine> may be - an edge: generate a pipe. - a vertex: generate a sphere. Warning: returns a Null Handle if <CenterLine> generates no surface.

        """
        return _BiTgte.BiTgte_Blend_Surface(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _BiTgte.delete_BiTgte_Blend

# Register BiTgte_Blend in _BiTgte:
_BiTgte.BiTgte_Blend_swigregister(BiTgte_Blend)
class BiTgte_CurveOnEdge(OCC.Core.Adaptor3d.Adaptor3d_Curve):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

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

        Parameters
        ----------
        EonF: TopoDS_Edge
        Edge: TopoDS_Edge

        Return
        -------
        None

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

        """
        _BiTgte.BiTgte_CurveOnEdge_swiginit(self, _BiTgte.new_BiTgte_CurveOnEdge(*args))

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

        Parameters
        ----------
        EonF: TopoDS_Edge
        Edge: TopoDS_Edge

        Return
        -------
        None

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

        """
        return _BiTgte.BiTgte_CurveOnEdge_Init(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BiTgte.delete_BiTgte_CurveOnEdge

# Register BiTgte_CurveOnEdge in _BiTgte:
_BiTgte.BiTgte_CurveOnEdge_swigregister(BiTgte_CurveOnEdge)
class BiTgte_CurveOnVertex(OCC.Core.Adaptor3d.Adaptor3d_Curve):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

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

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

        Parameters
        ----------
        EonF: TopoDS_Edge
        V: TopoDS_Vertex

        Return
        -------
        None

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

        """
        _BiTgte.BiTgte_CurveOnVertex_swiginit(self, _BiTgte.new_BiTgte_CurveOnVertex(*args))

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

        Parameters
        ----------
        EonF: TopoDS_Edge
        V: TopoDS_Vertex

        Return
        -------
        None

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

        """
        return _BiTgte.BiTgte_CurveOnVertex_Init(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _BiTgte.delete_BiTgte_CurveOnVertex

# Register BiTgte_CurveOnVertex in _BiTgte:
_BiTgte.BiTgte_CurveOnVertex_swigregister(BiTgte_CurveOnVertex)



