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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

# Register SwigPyIterator in _BlendFunc:
_BlendFunc.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 _BlendFunc.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.Adaptor3d
import OCC.Core.Geom
import OCC.Core.gp
import OCC.Core.TColStd
import OCC.Core.TCollection
import OCC.Core.GeomAbs
import OCC.Core.TColgp
import OCC.Core.TopAbs
import OCC.Core.Adaptor2d
import OCC.Core.Geom2d
import OCC.Core.math
import OCC.Core.Message
import OCC.Core.OSD
import OCC.Core.Convert
import OCC.Core.Blend
import OCC.Core.Law

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

BlendFunc_Rational = _BlendFunc.BlendFunc_Rational
BlendFunc_QuasiAngular = _BlendFunc.BlendFunc_QuasiAngular
BlendFunc_Polynomial = _BlendFunc.BlendFunc_Polynomial
BlendFunc_Linear = _BlendFunc.BlendFunc_Linear


class BlendFunc_SectionShape(IntEnum):
	BlendFunc_Rational = 0
	BlendFunc_QuasiAngular = 1
	BlendFunc_Polynomial = 2
	BlendFunc_Linear = 3
BlendFunc_Rational = BlendFunc_SectionShape.BlendFunc_Rational
BlendFunc_QuasiAngular = BlendFunc_SectionShape.BlendFunc_QuasiAngular
BlendFunc_Polynomial = BlendFunc_SectionShape.BlendFunc_Polynomial
BlendFunc_Linear = BlendFunc_SectionShape.BlendFunc_Linear

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

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

        Parameters
        ----------
        Surf: Adaptor3d_Surface
        p2d: gp_Pnt2d
        Normal: gp_Vec
        DNu: gp_Vec
        DNv: gp_Vec

        Return
        -------
        bool

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

        """
        return _BlendFunc.blendfunc_ComputeDNormal(*args)

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

        Parameters
        ----------
        Surf: Adaptor3d_Surface
        p2d: gp_Pnt2d
        Normal: gp_Vec

        Return
        -------
        bool

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

        """
        return _BlendFunc.blendfunc_ComputeNormal(*args)

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

        Parameters
        ----------
        SectShape: BlendFunc_SectionShape
        TConv: Convert_ParameterisationType
        AngleMin: float
        AngleMax: float
        Weigths: TColStd_Array1OfReal

        Return
        -------
        None

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

        """
        return _BlendFunc.blendfunc_GetMinimalWeights(*args)

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

        Parameters
        ----------
        SectShape: BlendFunc_SectionShape
        MaxAng: float
        TypeConv: Convert_ParameterisationType

        Return
        -------
        NbPoles: int
        NbKnots: int
        Degree: int

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

        """
        return _BlendFunc.blendfunc_GetShape(*args)

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

        Parameters
        ----------
        S: GeomAbs_Shape

        Return
        -------
        GeomAbs_Shape

        Description
        -----------
        Used to obtain the next level of continuity.

        """
        return _BlendFunc.blendfunc_NextShape(*args)

    __repr__ = _dumps_object

    @methodnotwrapped
    def Mults(self):
    	pass

    @methodnotwrapped
    def Knots(self):
    	pass


    def __init__(self):
        _BlendFunc.blendfunc_swiginit(self, _BlendFunc.new_blendfunc())
    __swig_destroy__ = _BlendFunc.delete_blendfunc

# Register blendfunc in _BlendFunc:
_BlendFunc.blendfunc_swigregister(blendfunc)
class BlendFunc_CSCircular(OCC.Core.Blend.Blend_CSFunction):
    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
        ----------
        S: Adaptor3d_Surface
        C: Adaptor3d_Curve
        CGuide: Adaptor3d_Curve
        L: Law_Function

        Return
        -------
        None

        Description
        -----------
        Creates a function for a circular blending between a curve <c> and a surface <s>. the direction of the planes are given by <cguide>. the position of the plane is determined on the curve <c>. <l> defines the change of parameter between <c> and <cguide>. so, the planes are defined as described below: t is the current parameter on the guide line. pguide = c(l(t)); nguide = cguide'(t)/||cguide'(t)||.

        """
        _BlendFunc.BlendFunc_CSCircular_swiginit(self, _BlendFunc.new_BlendFunc_CSCircular(*args))

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

        Parameters
        ----------
        Param: float
        U: float
        V: float
        W: float
        tabP: TColgp_Array1OfPnt
        tabV: TColgp_Array1OfVec

        Return
        -------
        bool

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

        """
        return _BlendFunc.BlendFunc_CSCircular_GetSection(self, *args)

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

        Parameters
        ----------
        Tolerance: math_Vector
        Tol: float

        Return
        -------
        None

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

        Parameters
        ----------
        BoundTol: float
        SurfTol: float
        AngleTol: float
        Tol3d: math_Vector
        Tol1D: math_Vector

        Return
        -------
        None

        Description
        -----------
        Returns the tolerance to reach in approximation to respecte boundtol error at the boundary angletol tangent error at the boundary surftol error inside the surface.

        """
        return _BlendFunc.BlendFunc_CSCircular_GetTolerance(self, *args)

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

        Parameters
        ----------
        Param: float
        U: float
        V: float
        W: float
        C: gp_Circ

        Return
        -------
        Pdeb: float
        Pfin: float

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

        Parameters
        ----------
        P: Blend_Point
        Poles: TColgp_Array1OfPnt
        DPoles: TColgp_Array1OfVec
        D2Poles: TColgp_Array1OfVec
        Poles2d: TColgp_Array1OfPnt2d
        DPoles2d: TColgp_Array1OfVec2d
        D2Poles2d: TColgp_Array1OfVec2d
        Weigths: TColStd_Array1OfReal
        DWeigths: TColStd_Array1OfReal
        D2Weigths: TColStd_Array1OfReal

        Return
        -------
        bool

        Description
        -----------
        Used for the first and last section the method returns standard_true if the derivatives are computed, otherwise it returns standard_false.

        Parameters
        ----------
        P: Blend_Point
        Poles: TColgp_Array1OfPnt
        DPoles: TColgp_Array1OfVec
        Poles2d: TColgp_Array1OfPnt2d
        DPoles2d: TColgp_Array1OfVec2d
        Weigths: TColStd_Array1OfReal
        DWeigths: TColStd_Array1OfReal

        Return
        -------
        bool

        Description
        -----------
        Used for the first and last section.

        Parameters
        ----------
        P: Blend_Point
        Poles: TColgp_Array1OfPnt
        Poles2d: TColgp_Array1OfPnt2d
        Weigths: TColStd_Array1OfReal

        Return
        -------
        None

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

        """
        return _BlendFunc.BlendFunc_CSCircular_Section(self, *args)

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

        Parameters
        ----------
        Param: float

        Return
        -------
        None

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

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

        Return
        -------
        None

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

        Parameters
        ----------
        Radius: float
        Choix: int

        Return
        -------
        None

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

        Parameters
        ----------
        TypeSection: BlendFunc_SectionShape

        Return
        -------
        None

        Description
        -----------
        Sets the type of section generation for the approximations.

        """
        return _BlendFunc.BlendFunc_CSCircular_Set(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _BlendFunc.delete_BlendFunc_CSCircular

# Register BlendFunc_CSCircular in _BlendFunc:
_BlendFunc.BlendFunc_CSCircular_swigregister(BlendFunc_CSCircular)
class BlendFunc_CSConstRad(OCC.Core.Blend.Blend_CSFunction):
    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
        ----------
        S: Adaptor3d_Surface
        C: Adaptor3d_Curve
        CGuide: Adaptor3d_Curve

        Return
        -------
        None

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

        """
        _BlendFunc.BlendFunc_CSConstRad_swiginit(self, _BlendFunc.new_BlendFunc_CSConstRad(*args))

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

        Parameters
        ----------
        Param: float
        U: float
        V: float
        W: float
        tabP: TColgp_Array1OfPnt
        tabV: TColgp_Array1OfVec

        Return
        -------
        bool

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

        """
        return _BlendFunc.BlendFunc_CSConstRad_GetSection(self, *args)

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

        Parameters
        ----------
        Tolerance: math_Vector
        Tol: float

        Return
        -------
        None

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

        Parameters
        ----------
        BoundTol: float
        SurfTol: float
        AngleTol: float
        Tol3d: math_Vector
        Tol1D: math_Vector

        Return
        -------
        None

        Description
        -----------
        Returns the tolerance to reach in approximation to respecte boundtol error at the boundary angletol tangent error at the boundary surftol error inside the surface.

        """
        return _BlendFunc.BlendFunc_CSConstRad_GetTolerance(self, *args)

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

        Parameters
        ----------
        Param: float
        U: float
        V: float
        W: float
        C: gp_Circ

        Return
        -------
        Pdeb: float
        Pfin: float

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

        Parameters
        ----------
        P: Blend_Point
        Poles: TColgp_Array1OfPnt
        DPoles: TColgp_Array1OfVec
        D2Poles: TColgp_Array1OfVec
        Poles2d: TColgp_Array1OfPnt2d
        DPoles2d: TColgp_Array1OfVec2d
        D2Poles2d: TColgp_Array1OfVec2d
        Weigths: TColStd_Array1OfReal
        DWeigths: TColStd_Array1OfReal
        D2Weigths: TColStd_Array1OfReal

        Return
        -------
        bool

        Description
        -----------
        Used for the first and last section the method returns standard_true if the derivatives are computed, otherwise it returns standard_false.

        Parameters
        ----------
        P: Blend_Point
        Poles: TColgp_Array1OfPnt
        DPoles: TColgp_Array1OfVec
        Poles2d: TColgp_Array1OfPnt2d
        DPoles2d: TColgp_Array1OfVec2d
        Weigths: TColStd_Array1OfReal
        DWeigths: TColStd_Array1OfReal

        Return
        -------
        bool

        Description
        -----------
        Used for the first and last section.

        Parameters
        ----------
        P: Blend_Point
        Poles: TColgp_Array1OfPnt
        Poles2d: TColgp_Array1OfPnt2d
        Weigths: TColStd_Array1OfReal

        Return
        -------
        None

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

        """
        return _BlendFunc.BlendFunc_CSConstRad_Section(self, *args)

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

        Parameters
        ----------
        Param: float

        Return
        -------
        None

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

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

        Return
        -------
        None

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

        Parameters
        ----------
        Radius: float
        Choix: int

        Return
        -------
        None

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

        Parameters
        ----------
        TypeSection: BlendFunc_SectionShape

        Return
        -------
        None

        Description
        -----------
        Sets the type of section generation for the approximations.

        """
        return _BlendFunc.BlendFunc_CSConstRad_Set(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _BlendFunc.delete_BlendFunc_CSConstRad

# Register BlendFunc_CSConstRad in _BlendFunc:
_BlendFunc.BlendFunc_CSConstRad_swigregister(BlendFunc_CSConstRad)
class BlendFunc_ChAsym(OCC.Core.Blend.Blend_Function):
    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: Adaptor3d_Surface
        S2: Adaptor3d_Surface
        C: Adaptor3d_Curve

        Return
        -------
        None

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

        """
        _BlendFunc.BlendFunc_ChAsym_swiginit(self, _BlendFunc.new_BlendFunc_ChAsym(*args))

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

        Parameters
        ----------
        X: math_Vector
        DegF: int
        DegL: int

        Return
        -------
        bool

        Description
        -----------
        Computes the values <f> of the derivatives for the variable <x> between degf and degl. returns true if the computation was done successfully, false otherwise.

        """
        return _BlendFunc.BlendFunc_ChAsym_ComputeValues(self, *args)

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

        Parameters
        ----------
        Tolerance: math_Vector
        Tol: float

        Return
        -------
        None

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

        Parameters
        ----------
        BoundTol: float
        SurfTol: float
        AngleTol: float
        Tol3d: math_Vector
        Tol1D: math_Vector

        Return
        -------
        None

        Description
        -----------
        Returns the tolerance to reach in approximation to respecte boundtol error at the boundary angletol tangent error at the boundary surftol error inside the surface.

        """
        return _BlendFunc.BlendFunc_ChAsym_GetTolerance(self, *args)

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

        Parameters
        ----------
        Param: float
        U1: float
        V1: float
        U2: float
        V2: float
        C: gp_Lin

        Return
        -------
        Pdeb: float
        Pfin: float

        Description
        -----------
        Utile pour une visu rapide et approximative de la surface.

        Parameters
        ----------
        P: Blend_Point
        Poles: TColgp_Array1OfPnt
        Poles2d: TColgp_Array1OfPnt2d
        Weigths: TColStd_Array1OfReal

        Return
        -------
        None

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

        Parameters
        ----------
        P: Blend_Point
        Poles: TColgp_Array1OfPnt
        DPoles: TColgp_Array1OfVec
        Poles2d: TColgp_Array1OfPnt2d
        DPoles2d: TColgp_Array1OfVec2d
        Weigths: TColStd_Array1OfReal
        DWeigths: TColStd_Array1OfReal

        Return
        -------
        bool

        Description
        -----------
        Used for the first and last section.

        Parameters
        ----------
        P: Blend_Point
        Poles: TColgp_Array1OfPnt
        DPoles: TColgp_Array1OfVec
        D2Poles: TColgp_Array1OfVec
        Poles2d: TColgp_Array1OfPnt2d
        DPoles2d: TColgp_Array1OfVec2d
        D2Poles2d: TColgp_Array1OfVec2d
        Weigths: TColStd_Array1OfReal
        DWeigths: TColStd_Array1OfReal
        D2Weigths: TColStd_Array1OfReal

        Return
        -------
        bool

        Description
        -----------
        Used for the first and last section.

        """
        return _BlendFunc.BlendFunc_ChAsym_Section(self, *args)

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

        Parameters
        ----------
        Param: float

        Return
        -------
        None

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

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

        Return
        -------
        None

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

        Parameters
        ----------
        Dist1: float
        Angle: float
        Choix: int

        Return
        -------
        None

        Description
        -----------
        Sets the distances and the angle.

        """
        return _BlendFunc.BlendFunc_ChAsym_Set(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _BlendFunc.delete_BlendFunc_ChAsym

# Register BlendFunc_ChAsym in _BlendFunc:
_BlendFunc.BlendFunc_ChAsym_swigregister(BlendFunc_ChAsym)
class BlendFunc_ChAsymInv(OCC.Core.Blend.Blend_FuncInv):
    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: Adaptor3d_Surface
        S2: Adaptor3d_Surface
        C: Adaptor3d_Curve

        Return
        -------
        None

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

        """
        _BlendFunc.BlendFunc_ChAsymInv_swiginit(self, _BlendFunc.new_BlendFunc_ChAsymInv(*args))

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

        Parameters
        ----------
        X: math_Vector
        DegF: int
        DegL: int

        Return
        -------
        bool

        Description
        -----------
        Computes the values <f> of the derivatives for the variable <x> between degf and degl. returns true if the computation was done successfully, false otherwise.

        """
        return _BlendFunc.BlendFunc_ChAsymInv_ComputeValues(self, *args)

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

        Parameters
        ----------
        OnFirst: bool
        COnSurf: Adaptor2d_Curve2d

        Return
        -------
        None

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

        Parameters
        ----------
        Dist1: float
        Angle: float
        Choix: int

        Return
        -------
        None

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

        """
        return _BlendFunc.BlendFunc_ChAsymInv_Set(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _BlendFunc.delete_BlendFunc_ChAsymInv

# Register BlendFunc_ChAsymInv in _BlendFunc:
_BlendFunc.BlendFunc_ChAsymInv_swigregister(BlendFunc_ChAsymInv)
class BlendFunc_ConstRad(OCC.Core.Blend.Blend_Function):
    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: Adaptor3d_Surface
        S2: Adaptor3d_Surface
        C: Adaptor3d_Curve

        Return
        -------
        None

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

        """
        _BlendFunc.BlendFunc_ConstRad_swiginit(self, _BlendFunc.new_BlendFunc_ConstRad(*args))

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

        Parameters
        ----------
        Prm: float

        Return
        -------
        gp_Ax1

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

        """
        return _BlendFunc.BlendFunc_ConstRad_AxeRot(self, *args)

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

        Parameters
        ----------
        Tolerance: math_Vector
        Tol: float

        Return
        -------
        None

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

        Parameters
        ----------
        BoundTol: float
        SurfTol: float
        AngleTol: float
        Tol3d: math_Vector
        Tol1D: math_Vector

        Return
        -------
        None

        Description
        -----------
        Returns the tolerance to reach in approximation to respecte boundtol error at the boundary angletol tangent error at the boundary surftol error inside the surface.

        """
        return _BlendFunc.BlendFunc_ConstRad_GetTolerance(self, *args)

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

        Parameters
        ----------
        Param: float
        U1: float
        V1: float
        U2: float
        V2: float
        C: gp_Circ

        Return
        -------
        Pdeb: float
        Pfin: float

        Description
        -----------
        Utile pour une visu rapide et approximative de la surface.

        Parameters
        ----------
        P: Blend_Point
        Poles: TColgp_Array1OfPnt
        DPoles: TColgp_Array1OfVec
        D2Poles: TColgp_Array1OfVec
        Poles2d: TColgp_Array1OfPnt2d
        DPoles2d: TColgp_Array1OfVec2d
        D2Poles2d: TColgp_Array1OfVec2d
        Weigths: TColStd_Array1OfReal
        DWeigths: TColStd_Array1OfReal
        D2Weigths: TColStd_Array1OfReal

        Return
        -------
        bool

        Description
        -----------
        Used for the first and last section.

        Parameters
        ----------
        P: Blend_Point
        Poles: TColgp_Array1OfPnt
        DPoles: TColgp_Array1OfVec
        Poles2d: TColgp_Array1OfPnt2d
        DPoles2d: TColgp_Array1OfVec2d
        Weigths: TColStd_Array1OfReal
        DWeigths: TColStd_Array1OfReal

        Return
        -------
        bool

        Description
        -----------
        Used for the first and last section.

        Parameters
        ----------
        P: Blend_Point
        Poles: TColgp_Array1OfPnt
        Poles2d: TColgp_Array1OfPnt2d
        Weigths: TColStd_Array1OfReal

        Return
        -------
        None

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

        """
        return _BlendFunc.BlendFunc_ConstRad_Section(self, *args)

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

        Parameters
        ----------
        Param: float

        Return
        -------
        None

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

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

        Return
        -------
        None

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

        Parameters
        ----------
        Radius: float
        Choix: int

        Return
        -------
        None

        Description
        -----------
        Inits the value of radius, and the 'quadrant'.

        Parameters
        ----------
        TypeSection: BlendFunc_SectionShape

        Return
        -------
        None

        Description
        -----------
        Sets the type of section generation for the approximations.

        """
        return _BlendFunc.BlendFunc_ConstRad_Set(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _BlendFunc.delete_BlendFunc_ConstRad

# Register BlendFunc_ConstRad in _BlendFunc:
_BlendFunc.BlendFunc_ConstRad_swigregister(BlendFunc_ConstRad)
class BlendFunc_ConstRadInv(OCC.Core.Blend.Blend_FuncInv):
    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: Adaptor3d_Surface
        S2: Adaptor3d_Surface
        C: Adaptor3d_Curve

        Return
        -------
        None

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

        """
        _BlendFunc.BlendFunc_ConstRadInv_swiginit(self, _BlendFunc.new_BlendFunc_ConstRadInv(*args))

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

        Parameters
        ----------
        OnFirst: bool
        COnSurf: Adaptor2d_Curve2d

        Return
        -------
        None

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

        Parameters
        ----------
        R: float
        Choix: int

        Return
        -------
        None

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

        """
        return _BlendFunc.BlendFunc_ConstRadInv_Set(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _BlendFunc.delete_BlendFunc_ConstRadInv

# Register BlendFunc_ConstRadInv in _BlendFunc:
_BlendFunc.BlendFunc_ConstRadInv_swigregister(BlendFunc_ConstRadInv)
class BlendFunc_Corde(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"""

        Parameters
        ----------
        S: Adaptor3d_Surface
        CGuide: Adaptor3d_Curve

        Return
        -------
        None

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

        """
        _BlendFunc.BlendFunc_Corde_swiginit(self, _BlendFunc.new_BlendFunc_Corde(*args))

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

        Parameters
        ----------
        Sol: math_Vector
        DerF: gp_Vec2d

        Return
        -------
        None

        Description
        -----------
        Derived of the function compared to the parameter of the guideline.

        """
        return _BlendFunc.BlendFunc_Corde_DerFguide(self, *args)

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

        Parameters
        ----------
        X: math_Vector
        D: math_Matrix

        Return
        -------
        bool

        Description
        -----------
        Returns the values <d> of the derivatives for the variable <x>. returns true if the computation was done successfully, false otherwise.

        """
        return _BlendFunc.BlendFunc_Corde_Derivatives(self, *args)

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

        Parameters
        ----------
        Sol: math_Vector
        Tol: float

        Return
        -------
        bool

        Description
        -----------
        Returns false if sol is not solution else returns true and updates the fields tgs and tg2d.

        """
        return _BlendFunc.BlendFunc_Corde_IsSolution(self, *args)

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

        Description
        -----------
        Returns true when it is not possible to compute the tangent vectors at pointons.

        """
        return _BlendFunc.BlendFunc_Corde_IsTangencyPoint(self, *args)

    def NPlan(self, *args):
        r"""
        Return
        -------
        gp_Vec

        Description
        -----------
        Returns the normal to cguide at ptgui.

        """
        return _BlendFunc.BlendFunc_Corde_NPlan(self, *args)

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

        Description
        -----------
        Returns the point of parameter <param> on cguide.

        """
        return _BlendFunc.BlendFunc_Corde_PointOnGuide(self, *args)

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

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

        """
        return _BlendFunc.BlendFunc_Corde_PointOnS(self, *args)

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

        Parameters
        ----------
        Dist: float

        Return
        -------
        None

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

        """
        return _BlendFunc.BlendFunc_Corde_SetDist(self, *args)

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

        Parameters
        ----------
        Param: float

        Return
        -------
        None

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

        """
        return _BlendFunc.BlendFunc_Corde_SetParam(self, *args)

    def Tangent2dOnS(self, *args):
        r"""
        Return
        -------
        gp_Vec2d

        Description
        -----------
        Returns the tangent vector at pointons, in the parametric space of the first surface.

        """
        return _BlendFunc.BlendFunc_Corde_Tangent2dOnS(self, *args)

    def TangentOnS(self, *args):
        r"""
        Return
        -------
        gp_Vec

        Description
        -----------
        Returns the tangent vector at pointons, in 3d space.

        """
        return _BlendFunc.BlendFunc_Corde_TangentOnS(self, *args)

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

        Parameters
        ----------
        X: math_Vector
        F: math_Vector

        Return
        -------
        bool

        Description
        -----------
        Computes the values <f> of the function for the variable <x>. returns true if the computation was done successfully, false otherwise.

        """
        return _BlendFunc.BlendFunc_Corde_Value(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _BlendFunc.delete_BlendFunc_Corde

# Register BlendFunc_Corde in _BlendFunc:
_BlendFunc.BlendFunc_Corde_swigregister(BlendFunc_Corde)
class BlendFunc_EvolRad(OCC.Core.Blend.Blend_Function):
    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: Adaptor3d_Surface
        S2: Adaptor3d_Surface
        C: Adaptor3d_Curve
        Law: Law_Function

        Return
        -------
        None

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

        """
        _BlendFunc.BlendFunc_EvolRad_swiginit(self, _BlendFunc.new_BlendFunc_EvolRad(*args))

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

        Parameters
        ----------
        Tolerance: math_Vector
        Tol: float

        Return
        -------
        None

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

        Parameters
        ----------
        BoundTol: float
        SurfTol: float
        AngleTol: float
        Tol3d: math_Vector
        Tol1D: math_Vector

        Return
        -------
        None

        Description
        -----------
        Returns the tolerance to reach in approximation to respecte boundtol error at the boundary angletol tangent error at the boundary surftol error inside the surface.

        """
        return _BlendFunc.BlendFunc_EvolRad_GetTolerance(self, *args)

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

        Parameters
        ----------
        Param: float
        U1: float
        V1: float
        U2: float
        V2: float
        C: gp_Circ

        Return
        -------
        Pdeb: float
        Pfin: float

        Description
        -----------
        Method for graphic traces.

        Parameters
        ----------
        P: Blend_Point
        Poles: TColgp_Array1OfPnt
        DPoles: TColgp_Array1OfVec
        D2Poles: TColgp_Array1OfVec
        Poles2d: TColgp_Array1OfPnt2d
        DPoles2d: TColgp_Array1OfVec2d
        D2Poles2d: TColgp_Array1OfVec2d
        Weigths: TColStd_Array1OfReal
        DWeigths: TColStd_Array1OfReal
        D2Weigths: TColStd_Array1OfReal

        Return
        -------
        bool

        Description
        -----------
        Used for the first and last section.

        Parameters
        ----------
        P: Blend_Point
        Poles: TColgp_Array1OfPnt
        DPoles: TColgp_Array1OfVec
        Poles2d: TColgp_Array1OfPnt2d
        DPoles2d: TColgp_Array1OfVec2d
        Weigths: TColStd_Array1OfReal
        DWeigths: TColStd_Array1OfReal

        Return
        -------
        bool

        Description
        -----------
        Used for the first and last section.

        Parameters
        ----------
        P: Blend_Point
        Poles: TColgp_Array1OfPnt
        Poles2d: TColgp_Array1OfPnt2d
        Weigths: TColStd_Array1OfReal

        Return
        -------
        None

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

        """
        return _BlendFunc.BlendFunc_EvolRad_Section(self, *args)

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

        Parameters
        ----------
        Param: float

        Return
        -------
        None

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

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

        Return
        -------
        None

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

        Parameters
        ----------
        Choix: int

        Return
        -------
        None

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

        Parameters
        ----------
        TypeSection: BlendFunc_SectionShape

        Return
        -------
        None

        Description
        -----------
        Sets the type of section generation for the approximations.

        """
        return _BlendFunc.BlendFunc_EvolRad_Set(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _BlendFunc.delete_BlendFunc_EvolRad

# Register BlendFunc_EvolRad in _BlendFunc:
_BlendFunc.BlendFunc_EvolRad_swigregister(BlendFunc_EvolRad)
class BlendFunc_EvolRadInv(OCC.Core.Blend.Blend_FuncInv):
    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: Adaptor3d_Surface
        S2: Adaptor3d_Surface
        C: Adaptor3d_Curve
        Law: Law_Function

        Return
        -------
        None

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

        """
        _BlendFunc.BlendFunc_EvolRadInv_swiginit(self, _BlendFunc.new_BlendFunc_EvolRadInv(*args))

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

        Parameters
        ----------
        OnFirst: bool
        COnSurf: Adaptor2d_Curve2d

        Return
        -------
        None

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

        Parameters
        ----------
        Choix: int

        Return
        -------
        None

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

        """
        return _BlendFunc.BlendFunc_EvolRadInv_Set(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _BlendFunc.delete_BlendFunc_EvolRadInv

# Register BlendFunc_EvolRadInv in _BlendFunc:
_BlendFunc.BlendFunc_EvolRadInv_swigregister(BlendFunc_EvolRadInv)
class BlendFunc_GenChamfInv(OCC.Core.Blend.Blend_FuncInv):
    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 Set(self, *args):
        r"""

        Parameters
        ----------
        OnFirst: bool
        COnSurf: Adaptor2d_Curve2d

        Return
        -------
        None

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

        Parameters
        ----------
        Dist1: float
        Dist2: float
        Choix: int

        Return
        -------
        None

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

        """
        return _BlendFunc.BlendFunc_GenChamfInv_Set(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _BlendFunc.delete_BlendFunc_GenChamfInv

# Register BlendFunc_GenChamfInv in _BlendFunc:
_BlendFunc.BlendFunc_GenChamfInv_swigregister(BlendFunc_GenChamfInv)
class BlendFunc_GenChamfer(OCC.Core.Blend.Blend_Function):
    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 GetTolerance(self, *args):
        r"""

        Parameters
        ----------
        Tolerance: math_Vector
        Tol: float

        Return
        -------
        None

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

        Parameters
        ----------
        BoundTol: float
        SurfTol: float
        AngleTol: float
        Tol3d: math_Vector
        Tol1D: math_Vector

        Return
        -------
        None

        Description
        -----------
        Returns the tolerance to reach in approximation to respecte boundtol error at the boundary angletol tangent error at the boundary surftol error inside the surface.

        """
        return _BlendFunc.BlendFunc_GenChamfer_GetTolerance(self, *args)

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

        Parameters
        ----------
        Param: float
        U1: float
        V1: float
        U2: float
        V2: float
        C: gp_Lin

        Return
        -------
        Pdeb: float
        Pfin: float

        Description
        -----------
        Obsolete method.

        Parameters
        ----------
        P: Blend_Point
        Poles: TColgp_Array1OfPnt
        DPoles: TColgp_Array1OfVec
        D2Poles: TColgp_Array1OfVec
        Poles2d: TColgp_Array1OfPnt2d
        DPoles2d: TColgp_Array1OfVec2d
        D2Poles2d: TColgp_Array1OfVec2d
        Weigths: TColStd_Array1OfReal
        DWeigths: TColStd_Array1OfReal
        D2Weigths: TColStd_Array1OfReal

        Return
        -------
        bool

        Description
        -----------
        Used for the first and last section.

        Parameters
        ----------
        P: Blend_Point
        Poles: TColgp_Array1OfPnt
        DPoles: TColgp_Array1OfVec
        Poles2d: TColgp_Array1OfPnt2d
        DPoles2d: TColgp_Array1OfVec2d
        Weigths: TColStd_Array1OfReal
        DWeigths: TColStd_Array1OfReal

        Return
        -------
        bool

        Description
        -----------
        Used for the first and last section.

        Parameters
        ----------
        P: Blend_Point
        Poles: TColgp_Array1OfPnt
        Poles2d: TColgp_Array1OfPnt2d
        Weigths: TColStd_Array1OfReal

        Return
        -------
        None

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

        """
        return _BlendFunc.BlendFunc_GenChamfer_Section(self, *args)

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

        Parameters
        ----------
        Param: float

        Return
        -------
        None

        Description
        -----------
        Sets the value of the parameter along the guide line. this determines the plane in which the solution has to be found.

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

        Return
        -------
        None

        Description
        -----------
        Sets the bounds of the parametric interval on the guide line. this determines the derivatives in these values if the function is not cn.

        Parameters
        ----------
        Dist1: float
        Dist2: float
        Choix: int

        Return
        -------
        None

        Description
        -----------
        Sets the distances and the 'quadrant'.

        """
        return _BlendFunc.BlendFunc_GenChamfer_Set(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _BlendFunc.delete_BlendFunc_GenChamfer

# Register BlendFunc_GenChamfer in _BlendFunc:
_BlendFunc.BlendFunc_GenChamfer_swigregister(BlendFunc_GenChamfer)
class BlendFunc_Ruled(OCC.Core.Blend.Blend_Function):
    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: Adaptor3d_Surface
        S2: Adaptor3d_Surface
        C: Adaptor3d_Curve

        Return
        -------
        None

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

        """
        _BlendFunc.BlendFunc_Ruled_swiginit(self, _BlendFunc.new_BlendFunc_Ruled(*args))

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

        Parameters
        ----------
        Prm: float

        Return
        -------
        gp_Ax1

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

        """
        return _BlendFunc.BlendFunc_Ruled_AxeRot(self, *args)

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

        Parameters
        ----------
        Param: float
        U1: float
        V1: float
        U2: float
        V2: float
        tabP: TColgp_Array1OfPnt
        tabV: TColgp_Array1OfVec

        Return
        -------
        bool

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

        """
        return _BlendFunc.BlendFunc_Ruled_GetSection(self, *args)

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

        Parameters
        ----------
        Tolerance: math_Vector
        Tol: float

        Return
        -------
        None

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

        Parameters
        ----------
        BoundTol: float
        SurfTol: float
        AngleTol: float
        Tol3d: math_Vector
        Tol1D: math_Vector

        Return
        -------
        None

        Description
        -----------
        Returns the tolerance to reach in approximation to respecte boundtol error at the boundary angletol tangent error at the boundary surftol error inside the surface.

        """
        return _BlendFunc.BlendFunc_Ruled_GetTolerance(self, *args)

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

        Parameters
        ----------
        P: Blend_Point
        Poles: TColgp_Array1OfPnt
        DPoles: TColgp_Array1OfVec
        D2Poles: TColgp_Array1OfVec
        Poles2d: TColgp_Array1OfPnt2d
        DPoles2d: TColgp_Array1OfVec2d
        D2Poles2d: TColgp_Array1OfVec2d
        Weigths: TColStd_Array1OfReal
        DWeigths: TColStd_Array1OfReal
        D2Weigths: TColStd_Array1OfReal

        Return
        -------
        bool

        Description
        -----------
        Used for the first and last section.

        Parameters
        ----------
        P: Blend_Point
        Poles: TColgp_Array1OfPnt
        DPoles: TColgp_Array1OfVec
        Poles2d: TColgp_Array1OfPnt2d
        DPoles2d: TColgp_Array1OfVec2d
        Weigths: TColStd_Array1OfReal
        DWeigths: TColStd_Array1OfReal

        Return
        -------
        bool

        Description
        -----------
        Used for the first and last section.

        Parameters
        ----------
        P: Blend_Point
        Poles: TColgp_Array1OfPnt
        Poles2d: TColgp_Array1OfPnt2d
        Weigths: TColStd_Array1OfReal

        Return
        -------
        None

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

        """
        return _BlendFunc.BlendFunc_Ruled_Section(self, *args)

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

        Parameters
        ----------
        Param: float

        Return
        -------
        None

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

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

        Return
        -------
        None

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

        """
        return _BlendFunc.BlendFunc_Ruled_Set(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _BlendFunc.delete_BlendFunc_Ruled

# Register BlendFunc_Ruled in _BlendFunc:
_BlendFunc.BlendFunc_Ruled_swigregister(BlendFunc_Ruled)
class BlendFunc_RuledInv(OCC.Core.Blend.Blend_FuncInv):
    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: Adaptor3d_Surface
        S2: Adaptor3d_Surface
        C: Adaptor3d_Curve

        Return
        -------
        None

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

        """
        _BlendFunc.BlendFunc_RuledInv_swiginit(self, _BlendFunc.new_BlendFunc_RuledInv(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _BlendFunc.delete_BlendFunc_RuledInv

# Register BlendFunc_RuledInv in _BlendFunc:
_BlendFunc.BlendFunc_RuledInv_swigregister(BlendFunc_RuledInv)
class BlendFunc_Tensor(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"""

        Parameters
        ----------
        NbRow: int
        NbCol: int
        NbMat: int

        Return
        -------
        None

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

        """
        _BlendFunc.BlendFunc_Tensor_swiginit(self, _BlendFunc.new_BlendFunc_Tensor(*args))

    def GetChangeValue(self, Row, Col, Mat):
        r"""GetChangeValue(BlendFunc_Tensor self, Standard_Integer const Row, Standard_Integer const Col, Standard_Integer const Mat) -> Standard_Real"""
        return _BlendFunc.BlendFunc_Tensor_GetChangeValue(self, Row, Col, Mat)

    def SetChangeValue(self, Row, Col, Mat, value):
        r"""SetChangeValue(BlendFunc_Tensor self, Standard_Integer const Row, Standard_Integer const Col, Standard_Integer const Mat, Standard_Real value)"""
        return _BlendFunc.BlendFunc_Tensor_SetChangeValue(self, Row, Col, Mat, value)

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

        Parameters
        ----------
        InitialValue: float

        Return
        -------
        None

        Description
        -----------
        Initialize all the elements of a tensor to initialvalue.

        """
        return _BlendFunc.BlendFunc_Tensor_Init(self, *args)

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

        Parameters
        ----------
        Right: math_Vector
        Product: math_Matrix

        Return
        -------
        None

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

        """
        return _BlendFunc.BlendFunc_Tensor_Multiply(self, *args)

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

        Parameters
        ----------
        Row: int
        Col: int
        Mat: int

        Return
        -------
        float

        Description
        -----------
        Accesses (in read or write mode) the value of index <row>, <col> and <mat> of a tensor. an exception is raised if <row>, <col> or <mat> are not in the correct range.

        """
        return _BlendFunc.BlendFunc_Tensor_Value(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _BlendFunc.delete_BlendFunc_Tensor

# Register BlendFunc_Tensor in _BlendFunc:
_BlendFunc.BlendFunc_Tensor_swigregister(BlendFunc_Tensor)
class BlendFunc_ChamfInv(BlendFunc_GenChamfInv):
    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: Adaptor3d_Surface
        S2: Adaptor3d_Surface
        C: Adaptor3d_Curve

        Return
        -------
        None

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

        """
        _BlendFunc.BlendFunc_ChamfInv_swiginit(self, _BlendFunc.new_BlendFunc_ChamfInv(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _BlendFunc.delete_BlendFunc_ChamfInv

# Register BlendFunc_ChamfInv in _BlendFunc:
_BlendFunc.BlendFunc_ChamfInv_swigregister(BlendFunc_ChamfInv)
class BlendFunc_Chamfer(BlendFunc_GenChamfer):
    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: Adaptor3d_Surface
        S2: Adaptor3d_Surface
        CG: Adaptor3d_Curve

        Return
        -------
        None

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

        """
        _BlendFunc.BlendFunc_Chamfer_swiginit(self, _BlendFunc.new_BlendFunc_Chamfer(*args))

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

        Parameters
        ----------
        Param: float

        Return
        -------
        None

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

        Parameters
        ----------
        Dist1: float
        Dist2: float
        Choix: int

        Return
        -------
        None

        Description
        -----------
        Sets the distances and the 'quadrant'.

        """
        return _BlendFunc.BlendFunc_Chamfer_Set(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _BlendFunc.delete_BlendFunc_Chamfer

# Register BlendFunc_Chamfer in _BlendFunc:
_BlendFunc.BlendFunc_Chamfer_swigregister(BlendFunc_Chamfer)
class BlendFunc_ConstThroat(BlendFunc_GenChamfer):
    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: Adaptor3d_Surface
        S2: Adaptor3d_Surface
        C: Adaptor3d_Curve

        Return
        -------
        None

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

        """
        _BlendFunc.BlendFunc_ConstThroat_swiginit(self, _BlendFunc.new_BlendFunc_ConstThroat(*args))

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

        Parameters
        ----------
        Param: float

        Return
        -------
        None

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

        Parameters
        ----------
        aThroat: float
        Standard_Real: 
        Choix: int

        Return
        -------
        None

        Description
        -----------
        Sets the throat and the 'quadrant'.

        """
        return _BlendFunc.BlendFunc_ConstThroat_Set(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _BlendFunc.delete_BlendFunc_ConstThroat

# Register BlendFunc_ConstThroat in _BlendFunc:
_BlendFunc.BlendFunc_ConstThroat_swigregister(BlendFunc_ConstThroat)
class BlendFunc_ConstThroatInv(BlendFunc_GenChamfInv):
    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: Adaptor3d_Surface
        S2: Adaptor3d_Surface
        C: Adaptor3d_Curve

        Return
        -------
        None

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

        """
        _BlendFunc.BlendFunc_ConstThroatInv_swiginit(self, _BlendFunc.new_BlendFunc_ConstThroatInv(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _BlendFunc.delete_BlendFunc_ConstThroatInv

# Register BlendFunc_ConstThroatInv in _BlendFunc:
_BlendFunc.BlendFunc_ConstThroatInv_swigregister(BlendFunc_ConstThroatInv)
class BlendFunc_ConstThroatWithPenetration(BlendFunc_ConstThroat):
    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: Adaptor3d_Surface
        S2: Adaptor3d_Surface
        C: Adaptor3d_Curve

        Return
        -------
        None

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

        """
        _BlendFunc.BlendFunc_ConstThroatWithPenetration_swiginit(self, _BlendFunc.new_BlendFunc_ConstThroatWithPenetration(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _BlendFunc.delete_BlendFunc_ConstThroatWithPenetration

# Register BlendFunc_ConstThroatWithPenetration in _BlendFunc:
_BlendFunc.BlendFunc_ConstThroatWithPenetration_swigregister(BlendFunc_ConstThroatWithPenetration)
class BlendFunc_ConstThroatWithPenetrationInv(BlendFunc_ConstThroatInv):
    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: Adaptor3d_Surface
        S2: Adaptor3d_Surface
        C: Adaptor3d_Curve

        Return
        -------
        None

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

        """
        _BlendFunc.BlendFunc_ConstThroatWithPenetrationInv_swiginit(self, _BlendFunc.new_BlendFunc_ConstThroatWithPenetrationInv(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _BlendFunc.delete_BlendFunc_ConstThroatWithPenetrationInv

# Register BlendFunc_ConstThroatWithPenetrationInv in _BlendFunc:
_BlendFunc.BlendFunc_ConstThroatWithPenetrationInv_swigregister(BlendFunc_ConstThroatWithPenetrationInv)



@deprecated
def blendfunc_ComputeDNormal(*args):
	return blendfunc.ComputeDNormal(*args)

@deprecated
def blendfunc_ComputeNormal(*args):
	return blendfunc.ComputeNormal(*args)

@deprecated
def blendfunc_GetMinimalWeights(*args):
	return blendfunc.GetMinimalWeights(*args)

@deprecated
def blendfunc_GetShape(*args):
	return blendfunc.GetShape(*args)

@deprecated
def blendfunc_NextShape(*args):
	return blendfunc.NextShape(*args)



