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

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

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

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

try:
    import builtins as __builtin__
except ImportError:
    import __builtin__

_swig_new_instance_method = _BRepOffsetAPI.SWIG_PyInstanceMethod_New
_swig_new_static_method = _BRepOffsetAPI.SWIG_PyStaticMethod_New

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


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


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


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


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


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

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined - class is abstract")
    __repr__ = _swig_repr
    __swig_destroy__ = _BRepOffsetAPI.delete_SwigPyIterator
    value = _swig_new_instance_method(_BRepOffsetAPI.SwigPyIterator_value)
    incr = _swig_new_instance_method(_BRepOffsetAPI.SwigPyIterator_incr)
    decr = _swig_new_instance_method(_BRepOffsetAPI.SwigPyIterator_decr)
    distance = _swig_new_instance_method(_BRepOffsetAPI.SwigPyIterator_distance)
    equal = _swig_new_instance_method(_BRepOffsetAPI.SwigPyIterator_equal)
    copy = _swig_new_instance_method(_BRepOffsetAPI.SwigPyIterator_copy)
    next = _swig_new_instance_method(_BRepOffsetAPI.SwigPyIterator_next)
    __next__ = _swig_new_instance_method(_BRepOffsetAPI.SwigPyIterator___next__)
    previous = _swig_new_instance_method(_BRepOffsetAPI.SwigPyIterator_previous)
    advance = _swig_new_instance_method(_BRepOffsetAPI.SwigPyIterator_advance)
    __eq__ = _swig_new_instance_method(_BRepOffsetAPI.SwigPyIterator___eq__)
    __ne__ = _swig_new_instance_method(_BRepOffsetAPI.SwigPyIterator___ne__)
    __iadd__ = _swig_new_instance_method(_BRepOffsetAPI.SwigPyIterator___iadd__)
    __isub__ = _swig_new_instance_method(_BRepOffsetAPI.SwigPyIterator___isub__)
    __add__ = _swig_new_instance_method(_BRepOffsetAPI.SwigPyIterator___add__)
    __sub__ = _swig_new_instance_method(_BRepOffsetAPI.SwigPyIterator___sub__)
    def __iter__(self):
        return self

# Register SwigPyIterator in _BRepOffsetAPI:
_BRepOffsetAPI.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


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.BRepBuilderAPI
import OCC.Core.Geom
import OCC.Core.gp
import OCC.Core.GeomAbs
import OCC.Core.TColgp
import OCC.Core.TColStd
import OCC.Core.TCollection
import OCC.Core.TopoDS
import OCC.Core.Message
import OCC.Core.TopAbs
import OCC.Core.TopLoc
import OCC.Core.TopTools
import OCC.Core.BRepTools
import OCC.Core.Bnd
import OCC.Core.BVH
import OCC.Core.Geom2d
import OCC.Core.BRep
import OCC.Core.Poly
import OCC.Core.TShort
import OCC.Core.Draft
import OCC.Core.BRepFill
import OCC.Core.MAT
import OCC.Core.AppParCurves
import OCC.Core.math
import OCC.Core.GeomPlate
import OCC.Core.Adaptor3d
import OCC.Core.Adaptor2d
import OCC.Core.TColGeom2d
import OCC.Core.GeomLProp
import OCC.Core.Law
import OCC.Core.AdvApp2Var
import OCC.Core.AdvApprox
import OCC.Core.PLib
import OCC.Core.Plate
import OCC.Core.GeomFill
import OCC.Core.Convert
import OCC.Core.AppBlend
import OCC.Core.Approx
import OCC.Core.AppCont
import OCC.Core.TColGeom
import OCC.Core.BRepMAT2d
import OCC.Core.Bisector
import OCC.Core.IntRes2d
import OCC.Core.BRepOffset
import OCC.Core.BRepAlgo
import OCC.Core.TopOpeBRepBuild
import OCC.Core.TopOpeBRepDS
import OCC.Core.TopOpeBRepTool
import OCC.Core.BRepClass3d
import OCC.Core.IntCurveSurface
import OCC.Core.Intf
import OCC.Core.IntSurf
import OCC.Core.IntCurvesFace
import OCC.Core.BRepAdaptor
import OCC.Core.GeomAdaptor
import OCC.Core.Geom2dAdaptor
import OCC.Core.TopExp
import OCC.Core.Extrema
import OCC.Core.BRepPrimAPI
import OCC.Core.BRepPrim
import OCC.Core.BRepSweep
import OCC.Core.Sweep
class BRepOffsetAPI_SequenceOfSequenceOfReal(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    begin = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfReal_begin)
    end = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfReal_end)
    cbegin = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfReal_cbegin)
    cend = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfReal_cend)

    def __init__(self, *args):
        _BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfReal_swiginit(self, _BRepOffsetAPI.new_BRepOffsetAPI_SequenceOfSequenceOfReal(*args))
    Size = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfReal_Size)
    Length = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfReal_Length)
    Lower = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfReal_Lower)
    Upper = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfReal_Upper)
    IsEmpty = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfReal_IsEmpty)
    Reverse = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfReal_Reverse)
    Exchange = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfReal_Exchange)
    delNode = _swig_new_static_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfReal_delNode)
    Clear = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfReal_Clear)
    Assign = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfReal_Assign)
    Set = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfReal_Set)
    Remove = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfReal_Remove)
    Append = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfReal_Append)
    Prepend = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfReal_Prepend)
    InsertBefore = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfReal_InsertBefore)
    InsertAfter = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfReal_InsertAfter)
    Split = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfReal_Split)
    First = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfReal_First)
    ChangeFirst = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfReal_ChangeFirst)
    Last = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfReal_Last)
    ChangeLast = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfReal_ChangeLast)
    Value = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfReal_Value)
    ChangeValue = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfReal_ChangeValue)
    __call__ = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfReal___call__)
    SetValue = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfReal_SetValue)
    __swig_destroy__ = _BRepOffsetAPI.delete_BRepOffsetAPI_SequenceOfSequenceOfReal

# Register BRepOffsetAPI_SequenceOfSequenceOfReal in _BRepOffsetAPI:
_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfReal_swigregister(BRepOffsetAPI_SequenceOfSequenceOfReal)
BRepOffsetAPI_SequenceOfSequenceOfReal_delNode = _BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfReal_delNode

class BRepOffsetAPI_SequenceOfSequenceOfShape(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    begin = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfShape_begin)
    end = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfShape_end)
    cbegin = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfShape_cbegin)
    cend = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfShape_cend)

    def __init__(self, *args):
        _BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfShape_swiginit(self, _BRepOffsetAPI.new_BRepOffsetAPI_SequenceOfSequenceOfShape(*args))
    Size = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfShape_Size)
    Length = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfShape_Length)
    Lower = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfShape_Lower)
    Upper = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfShape_Upper)
    IsEmpty = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfShape_IsEmpty)
    Reverse = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfShape_Reverse)
    Exchange = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfShape_Exchange)
    delNode = _swig_new_static_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfShape_delNode)
    Clear = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfShape_Clear)
    Assign = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfShape_Assign)
    Set = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfShape_Set)
    Remove = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfShape_Remove)
    Append = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfShape_Append)
    Prepend = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfShape_Prepend)
    InsertBefore = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfShape_InsertBefore)
    InsertAfter = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfShape_InsertAfter)
    Split = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfShape_Split)
    First = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfShape_First)
    ChangeFirst = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfShape_ChangeFirst)
    Last = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfShape_Last)
    ChangeLast = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfShape_ChangeLast)
    Value = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfShape_Value)
    ChangeValue = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfShape_ChangeValue)
    __call__ = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfShape___call__)
    SetValue = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfShape_SetValue)
    __swig_destroy__ = _BRepOffsetAPI.delete_BRepOffsetAPI_SequenceOfSequenceOfShape

# Register BRepOffsetAPI_SequenceOfSequenceOfShape in _BRepOffsetAPI:
_BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfShape_swigregister(BRepOffsetAPI_SequenceOfSequenceOfShape)
BRepOffsetAPI_SequenceOfSequenceOfShape_delNode = _BRepOffsetAPI.BRepOffsetAPI_SequenceOfSequenceOfShape_delNode

class BRepOffsetAPI_DraftAngle(OCC.Core.BRepBuilderAPI.BRepBuilderAPI_ModifyShape):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Add = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_DraftAngle_Add)
    AddDone = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_DraftAngle_AddDone)

    def __init__(self, *args):
        r"""
        * Constructs an empty algorithm to perform taper-adding transformations on faces of a shape. Use the Init function to define the shape to be tapered.
        	:rtype: None* Initializes an algorithm to perform taper-adding transformations on faces of the shape S. S will be referred to as the initial shape of the algorithm.
        	:param S:
        	:type S: TopoDS_Shape
        	:rtype: None
        """
        _BRepOffsetAPI.BRepOffsetAPI_DraftAngle_swiginit(self, _BRepOffsetAPI.new_BRepOffsetAPI_DraftAngle(*args))
    Clear = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_DraftAngle_Clear)
    ConnectedFaces = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_DraftAngle_ConnectedFaces)
    CorrectWires = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_DraftAngle_CorrectWires)
    Init = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_DraftAngle_Init)
    ModifiedFaces = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_DraftAngle_ModifiedFaces)
    ProblematicShape = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_DraftAngle_ProblematicShape)
    Remove = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_DraftAngle_Remove)
    Status = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_DraftAngle_Status)

    __repr__ = _dumps_object

    __swig_destroy__ = _BRepOffsetAPI.delete_BRepOffsetAPI_DraftAngle

# Register BRepOffsetAPI_DraftAngle in _BRepOffsetAPI:
_BRepOffsetAPI.BRepOffsetAPI_DraftAngle_swigregister(BRepOffsetAPI_DraftAngle)

class BRepOffsetAPI_FindContigousEdges(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Add = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_FindContigousEdges_Add)

    def __init__(self, *args):
        r"""
        * Initializes an algorithm for identifying contiguous edges on shapes with tolerance as the tolerance of contiguity (defaulted to 1.0e-6). This tolerance value is used to determine whether two edges or sections of edges are coincident. Use the function Add to define the shapes to be checked. Set option to false. This argument (defaulted to true) will serve in subsequent software releases for performing an analysis of degenerated shapes.
        	:param tolerance: default value is 1.0e-06
        	:type tolerance: float
        	:param option: default value is Standard_True
        	:type option: bool
        	:rtype: None
        """
        _BRepOffsetAPI.BRepOffsetAPI_FindContigousEdges_swiginit(self, _BRepOffsetAPI.new_BRepOffsetAPI_FindContigousEdges(*args))
    ContigousEdge = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_FindContigousEdges_ContigousEdge)
    ContigousEdgeCouple = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_FindContigousEdges_ContigousEdgeCouple)
    DegeneratedShape = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_FindContigousEdges_DegeneratedShape)
    Dump = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_FindContigousEdges_Dump)
    Init = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_FindContigousEdges_Init)
    IsDegenerated = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_FindContigousEdges_IsDegenerated)
    IsModified = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_FindContigousEdges_IsModified)
    Modified = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_FindContigousEdges_Modified)
    NbContigousEdges = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_FindContigousEdges_NbContigousEdges)
    NbDegeneratedShapes = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_FindContigousEdges_NbDegeneratedShapes)
    Perform = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_FindContigousEdges_Perform)
    SectionToBoundary = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_FindContigousEdges_SectionToBoundary)

    __repr__ = _dumps_object

    __swig_destroy__ = _BRepOffsetAPI.delete_BRepOffsetAPI_FindContigousEdges

# Register BRepOffsetAPI_FindContigousEdges in _BRepOffsetAPI:
_BRepOffsetAPI.BRepOffsetAPI_FindContigousEdges_swigregister(BRepOffsetAPI_FindContigousEdges)

class BRepOffsetAPI_MakeDraft(OCC.Core.BRepBuilderAPI.BRepBuilderAPI_MakeShape):
    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"""
        * Constructs the draft surface object defined by the shape Shape, the direction Dir, and the angle Angle. Shape must be a TopoDS_Wire, Topo_DS_Face or TopoDS_Shell with free boundaries. Exceptions Standard_NotDone if Shape is not a TopoDS_Wire, Topo_DS_Face or TopoDS_Shell with free boundaries.
        	:param Shape:
        	:type Shape: TopoDS_Shape
        	:param Dir:
        	:type Dir: gp_Dir
        	:param Angle:
        	:type Angle: float
        	:rtype: None
        """
        _BRepOffsetAPI.BRepOffsetAPI_MakeDraft_swiginit(self, _BRepOffsetAPI.new_BRepOffsetAPI_MakeDraft(*args))
    Perform = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakeDraft_Perform)
    SetDraft = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakeDraft_SetDraft)
    SetOptions = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakeDraft_SetOptions)
    Shell = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakeDraft_Shell)

    __repr__ = _dumps_object

    __swig_destroy__ = _BRepOffsetAPI.delete_BRepOffsetAPI_MakeDraft

# Register BRepOffsetAPI_MakeDraft in _BRepOffsetAPI:
_BRepOffsetAPI.BRepOffsetAPI_MakeDraft_swigregister(BRepOffsetAPI_MakeDraft)

class BRepOffsetAPI_MakeEvolved(OCC.Core.BRepBuilderAPI.BRepBuilderAPI_MakeShape):
    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"""
        :rtype: None* Constructs an evolved shape by sweeping the profile (theProfile) along the spine (theSpine). theSpine can be shape only of type wire or face. See description to this class for detailed information.
        	:param theSpine:
        	:type theSpine: TopoDS_Shape
        	:param theProfile:
        	:type theProfile: TopoDS_Wire
        	:param theJoinType: default value is GeomAbs_Arc
        	:type theJoinType: GeomAbs_JoinType
        	:param theIsAxeProf: default value is Standard_True
        	:type theIsAxeProf: bool
        	:param theIsSolid: default value is Standard_False
        	:type theIsSolid: bool
        	:param theIsProfOnSpine: default value is Standard_False
        	:type theIsProfOnSpine: bool
        	:param theTol: default value is 0.0000001
        	:type theTol: float
        	:param theIsVolume: default value is Standard_False
        	:type theIsVolume: bool
        	:param theRunInParallel: default value is Standard_False
        	:type theRunInParallel: bool
        	:rtype: None
        """
        _BRepOffsetAPI.BRepOffsetAPI_MakeEvolved_swiginit(self, _BRepOffsetAPI.new_BRepOffsetAPI_MakeEvolved(*args))
    Bottom = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakeEvolved_Bottom)
    Evolved = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakeEvolved_Evolved)
    GeneratedShapes = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakeEvolved_GeneratedShapes)
    Top = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakeEvolved_Top)

    __repr__ = _dumps_object

    __swig_destroy__ = _BRepOffsetAPI.delete_BRepOffsetAPI_MakeEvolved

# Register BRepOffsetAPI_MakeEvolved in _BRepOffsetAPI:
_BRepOffsetAPI.BRepOffsetAPI_MakeEvolved_swigregister(BRepOffsetAPI_MakeEvolved)

class BRepOffsetAPI_MakeFilling(OCC.Core.BRepBuilderAPI.BRepBuilderAPI_MakeShape):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Add = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakeFilling_Add)

    def __init__(self, *args):
        r"""
        * Constructs a wire filling object defined by - the energy minimizing criterion Degree - the number of points on the curve NbPntsOnCur - the number of iterations NbIter - the Boolean Anisotropie - the 2D tolerance Tol2d - the 3D tolerance Tol3d - the angular tolerance TolAng - the tolerance for curvature TolCur - the highest polynomial degree MaxDeg - the greatest number of segments MaxSeg. If the Boolean Anistropie is true, the algorithm's performance is better in cases where the ratio of the length U and the length V indicate a great difference between the two. In other words, when the surface is, for example, extremely long.
        	:param Degree: default value is 3
        	:type Degree: int
        	:param NbPtsOnCur: default value is 15
        	:type NbPtsOnCur: int
        	:param NbIter: default value is 2
        	:type NbIter: int
        	:param Anisotropie: default value is Standard_False
        	:type Anisotropie: bool
        	:param Tol2d: default value is 0.00001
        	:type Tol2d: float
        	:param Tol3d: default value is 0.0001
        	:type Tol3d: float
        	:param TolAng: default value is 0.01
        	:type TolAng: float
        	:param TolCurv: default value is 0.1
        	:type TolCurv: float
        	:param MaxDeg: default value is 8
        	:type MaxDeg: int
        	:param MaxSegments: default value is 9
        	:type MaxSegments: int
        	:rtype: None
        """
        _BRepOffsetAPI.BRepOffsetAPI_MakeFilling_swiginit(self, _BRepOffsetAPI.new_BRepOffsetAPI_MakeFilling(*args))
    G0Error = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakeFilling_G0Error)
    G1Error = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakeFilling_G1Error)
    G2Error = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakeFilling_G2Error)
    LoadInitSurface = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakeFilling_LoadInitSurface)
    SetApproxParam = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakeFilling_SetApproxParam)
    SetConstrParam = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakeFilling_SetConstrParam)
    SetResolParam = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakeFilling_SetResolParam)

    __repr__ = _dumps_object

    __swig_destroy__ = _BRepOffsetAPI.delete_BRepOffsetAPI_MakeFilling

# Register BRepOffsetAPI_MakeFilling in _BRepOffsetAPI:
_BRepOffsetAPI.BRepOffsetAPI_MakeFilling_swigregister(BRepOffsetAPI_MakeFilling)

class BRepOffsetAPI_MakeOffset(OCC.Core.BRepBuilderAPI.BRepBuilderAPI_MakeShape):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    AddWire = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakeOffset_AddWire)

    def __init__(self, *args):
        r"""
        * Constructs an algorithm for creating an empty offset
        	:rtype: None* Constructs an algorithm for creating an algorithm to build parallels to the spine Spine
        	:param Spine:
        	:type Spine: TopoDS_Face
        	:param Join: default value is GeomAbs_Arc
        	:type Join: GeomAbs_JoinType
        	:param IsOpenResult: default value is Standard_False
        	:type IsOpenResult: bool
        	:rtype: None:param Spine:
        	:type Spine: TopoDS_Wire
        	:param Join: default value is GeomAbs_Arc
        	:type Join: GeomAbs_JoinType
        	:param IsOpenResult: default value is Standard_False
        	:type IsOpenResult: bool
        	:rtype: None
        """
        _BRepOffsetAPI.BRepOffsetAPI_MakeOffset_swiginit(self, _BRepOffsetAPI.new_BRepOffsetAPI_MakeOffset(*args))
    Init = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakeOffset_Init)
    Perform = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakeOffset_Perform)

    __repr__ = _dumps_object

    __swig_destroy__ = _BRepOffsetAPI.delete_BRepOffsetAPI_MakeOffset

# Register BRepOffsetAPI_MakeOffset in _BRepOffsetAPI:
_BRepOffsetAPI.BRepOffsetAPI_MakeOffset_swigregister(BRepOffsetAPI_MakeOffset)

class BRepOffsetAPI_MakeOffsetShape(OCC.Core.BRepBuilderAPI.BRepBuilderAPI_MakeShape):
    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"""
        * Constructor does nothing.
        	:rtype: None* Deprecated constructor. Please avoid usage of this constructor.
        	:param S:
        	:type S: TopoDS_Shape
        	:param Offset:
        	:type Offset: float
        	:param Tol:
        	:type Tol: float
        	:param Mode: default value is BRepOffset_Skin
        	:type Mode: BRepOffset_Mode
        	:param Intersection: default value is Standard_False
        	:type Intersection: bool
        	:param SelfInter: default value is Standard_False
        	:type SelfInter: bool
        	:param Join: default value is GeomAbs_Arc
        	:type Join: GeomAbs_JoinType
        	:param RemoveIntEdges: default value is Standard_False
        	:type RemoveIntEdges: bool
        	:rtype: None
        """
        _BRepOffsetAPI.BRepOffsetAPI_MakeOffsetShape_swiginit(self, _BRepOffsetAPI.new_BRepOffsetAPI_MakeOffsetShape(*args))
    GeneratedEdge = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakeOffsetShape_GeneratedEdge)
    GetJoinType = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakeOffsetShape_GetJoinType)
    MakeOffset = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakeOffsetShape_MakeOffset)
    PerformByJoin = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakeOffsetShape_PerformByJoin)
    PerformBySimple = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakeOffsetShape_PerformBySimple)

    __repr__ = _dumps_object

    __swig_destroy__ = _BRepOffsetAPI.delete_BRepOffsetAPI_MakeOffsetShape

# Register BRepOffsetAPI_MakeOffsetShape in _BRepOffsetAPI:
_BRepOffsetAPI.BRepOffsetAPI_MakeOffsetShape_swigregister(BRepOffsetAPI_MakeOffsetShape)

class BRepOffsetAPI_MakePipe(OCC.Core.BRepPrimAPI.BRepPrimAPI_MakeSweep):
    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"""
        * Constructs a pipe by sweeping the shape Profile along the wire Spine.The angle made by the spine with the profile is maintained along the length of the pipe. Warning Spine must be G1 continuous; that is, on the connection vertex of two edges of the wire, the tangent vectors on the left and on the right must have the same direction, though not necessarily the same magnitude. Exceptions Standard_DomainError if the profile is a solid or a composite solid.
        	:param Spine:
        	:type Spine: TopoDS_Wire
        	:param Profile:
        	:type Profile: TopoDS_Shape
        	:rtype: None* the same as previous but with setting of mode of sweep and the flag that indicates attempt to approximate a C1-continuous surface if a swept surface proved to be C0.
        	:param Spine:
        	:type Spine: TopoDS_Wire
        	:param Profile:
        	:type Profile: TopoDS_Shape
        	:param aMode:
        	:type aMode: GeomFill_Trihedron
        	:param ForceApproxC1: default value is Standard_False
        	:type ForceApproxC1: bool
        	:rtype: None
        """
        _BRepOffsetAPI.BRepOffsetAPI_MakePipe_swiginit(self, _BRepOffsetAPI.new_BRepOffsetAPI_MakePipe(*args))
    ErrorOnSurface = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakePipe_ErrorOnSurface)
    Generated = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakePipe_Generated)
    Pipe = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakePipe_Pipe)

    __repr__ = _dumps_object

    __swig_destroy__ = _BRepOffsetAPI.delete_BRepOffsetAPI_MakePipe

# Register BRepOffsetAPI_MakePipe in _BRepOffsetAPI:
_BRepOffsetAPI.BRepOffsetAPI_MakePipe_swigregister(BRepOffsetAPI_MakePipe)

class BRepOffsetAPI_MakePipeShell(OCC.Core.BRepPrimAPI.BRepPrimAPI_MakeSweep):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Add = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakePipeShell_Add)

    def __init__(self, *args):
        r"""
        * Constructs the shell-generating framework defined by the wire Spine. Sets an sweep's mode If no mode are setted, the mode use in MakePipe is used
        	:param Spine:
        	:type Spine: TopoDS_Wire
        	:rtype: None
        """
        _BRepOffsetAPI.BRepOffsetAPI_MakePipeShell_swiginit(self, _BRepOffsetAPI.new_BRepOffsetAPI_MakePipeShell(*args))
    Delete = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakePipeShell_Delete)
    ErrorOnSurface = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakePipeShell_ErrorOnSurface)
    GetStatus = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakePipeShell_GetStatus)
    IsReady = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakePipeShell_IsReady)
    MakeSolid = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakePipeShell_MakeSolid)
    Profiles = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakePipeShell_Profiles)
    SetDiscreteMode = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakePipeShell_SetDiscreteMode)
    SetForceApproxC1 = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakePipeShell_SetForceApproxC1)
    SetLaw = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakePipeShell_SetLaw)
    SetMaxDegree = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakePipeShell_SetMaxDegree)
    SetMaxSegments = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakePipeShell_SetMaxSegments)
    SetMode = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakePipeShell_SetMode)
    SetTolerance = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakePipeShell_SetTolerance)
    SetTransitionMode = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakePipeShell_SetTransitionMode)
    Simulate = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakePipeShell_Simulate)
    Spine = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakePipeShell_Spine)

    __repr__ = _dumps_object

    __swig_destroy__ = _BRepOffsetAPI.delete_BRepOffsetAPI_MakePipeShell

# Register BRepOffsetAPI_MakePipeShell in _BRepOffsetAPI:
_BRepOffsetAPI.BRepOffsetAPI_MakePipeShell_swigregister(BRepOffsetAPI_MakePipeShell)

class BRepOffsetAPI_MiddlePath(OCC.Core.BRepBuilderAPI.BRepBuilderAPI_MakeShape):
    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"""
        * General constructor. StartShape and EndShape may be a wire or a face
        	:param aShape:
        	:type aShape: TopoDS_Shape
        	:param StartShape:
        	:type StartShape: TopoDS_Shape
        	:param EndShape:
        	:type EndShape: TopoDS_Shape
        	:rtype: None
        """
        _BRepOffsetAPI.BRepOffsetAPI_MiddlePath_swiginit(self, _BRepOffsetAPI.new_BRepOffsetAPI_MiddlePath(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _BRepOffsetAPI.delete_BRepOffsetAPI_MiddlePath

# Register BRepOffsetAPI_MiddlePath in _BRepOffsetAPI:
_BRepOffsetAPI.BRepOffsetAPI_MiddlePath_swigregister(BRepOffsetAPI_MiddlePath)

class BRepOffsetAPI_NormalProjection(OCC.Core.BRepBuilderAPI.BRepBuilderAPI_MakeShape):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Add = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_NormalProjection_Add)
    Ancestor = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_NormalProjection_Ancestor)

    def __init__(self, *args):
        r"""
        * Constructs an empty framework to define projection on a shape according to the normal from each point to be projected to the shape.
        	:rtype: None* Constructs a framework to define projection onto the basis shape S according to the normal from each point to be projected from the shape added to this framework by Add. Default parameters of the algorithm: Tol3D = 1.e-04, Tol2D =sqr(tol3d) , InternalContinuity = GeomAbs_C2, MaxDegree = 14, MaxSeg = 16.
        	:param S:
        	:type S: TopoDS_Shape
        	:rtype: None
        """
        _BRepOffsetAPI.BRepOffsetAPI_NormalProjection_swiginit(self, _BRepOffsetAPI.new_BRepOffsetAPI_NormalProjection(*args))
    BuildWire = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_NormalProjection_BuildWire)
    Compute3d = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_NormalProjection_Compute3d)
    Couple = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_NormalProjection_Couple)
    Init = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_NormalProjection_Init)
    Projection = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_NormalProjection_Projection)
    SetLimit = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_NormalProjection_SetLimit)
    SetMaxDistance = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_NormalProjection_SetMaxDistance)
    SetParams = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_NormalProjection_SetParams)

    __repr__ = _dumps_object

    __swig_destroy__ = _BRepOffsetAPI.delete_BRepOffsetAPI_NormalProjection

# Register BRepOffsetAPI_NormalProjection in _BRepOffsetAPI:
_BRepOffsetAPI.BRepOffsetAPI_NormalProjection_swigregister(BRepOffsetAPI_NormalProjection)

class BRepOffsetAPI_ThruSections(OCC.Core.BRepBuilderAPI.BRepBuilderAPI_MakeShape):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    AddVertex = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_ThruSections_AddVertex)
    AddWire = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_ThruSections_AddWire)

    def __init__(self, *args):
        r"""
        * Initializes an algorithm for building a shell or a solid passing through a set of sections, where: - isSolid is set to true if the construction algorithm is required to build a solid or to false if it is required to build a shell (the default value), - ruled is set to true if the faces generated between the edges of two consecutive wires are ruled surfaces or to false (the default value) if they are smoothed out by approximation, - pres3d defines the precision criterion used by the approximation algorithm; the default value is 1.0e-6. Use AddWire and AddVertex to define the successive sections of the shell or solid to be built.
        	:param isSolid: default value is Standard_False
        	:type isSolid: bool
        	:param ruled: default value is Standard_False
        	:type ruled: bool
        	:param pres3d: default value is 1.0e-06
        	:type pres3d: float
        	:rtype: None
        """
        _BRepOffsetAPI.BRepOffsetAPI_ThruSections_swiginit(self, _BRepOffsetAPI.new_BRepOffsetAPI_ThruSections(*args))
    CheckCompatibility = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_ThruSections_CheckCompatibility)
    Continuity = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_ThruSections_Continuity)
    CriteriumWeight = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_ThruSections_CriteriumWeight)
    FirstShape = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_ThruSections_FirstShape)
    GeneratedFace = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_ThruSections_GeneratedFace)
    Init = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_ThruSections_Init)
    LastShape = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_ThruSections_LastShape)
    MaxDegree = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_ThruSections_MaxDegree)
    ParType = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_ThruSections_ParType)
    SetContinuity = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_ThruSections_SetContinuity)
    SetCriteriumWeight = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_ThruSections_SetCriteriumWeight)
    SetMaxDegree = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_ThruSections_SetMaxDegree)
    SetParType = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_ThruSections_SetParType)
    SetSmoothing = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_ThruSections_SetSmoothing)
    UseSmoothing = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_ThruSections_UseSmoothing)
    Wires = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_ThruSections_Wires)

    __repr__ = _dumps_object

    __swig_destroy__ = _BRepOffsetAPI.delete_BRepOffsetAPI_ThruSections

# Register BRepOffsetAPI_ThruSections in _BRepOffsetAPI:
_BRepOffsetAPI.BRepOffsetAPI_ThruSections_swigregister(BRepOffsetAPI_ThruSections)

class BRepOffsetAPI_MakeThickSolid(BRepOffsetAPI_MakeOffsetShape):
    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"""
        * Constructor does nothing.
        	:rtype: None* Deprecated constructor. Please avoid usage of this constructor.
        	:param S:
        	:type S: TopoDS_Shape
        	:param ClosingFaces:
        	:type ClosingFaces: TopTools_ListOfShape
        	:param Offset:
        	:type Offset: float
        	:param Tol:
        	:type Tol: float
        	:param Mode: default value is BRepOffset_Skin
        	:type Mode: BRepOffset_Mode
        	:param Intersection: default value is Standard_False
        	:type Intersection: bool
        	:param SelfInter: default value is Standard_False
        	:type SelfInter: bool
        	:param Join: default value is GeomAbs_Arc
        	:type Join: GeomAbs_JoinType
        	:param RemoveIntEdges: default value is Standard_False
        	:type RemoveIntEdges: bool
        	:rtype: None
        """
        _BRepOffsetAPI.BRepOffsetAPI_MakeThickSolid_swiginit(self, _BRepOffsetAPI.new_BRepOffsetAPI_MakeThickSolid(*args))
    MakeThickSolidByJoin = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakeThickSolid_MakeThickSolidByJoin)
    MakeThickSolidBySimple = _swig_new_instance_method(_BRepOffsetAPI.BRepOffsetAPI_MakeThickSolid_MakeThickSolidBySimple)

    __repr__ = _dumps_object

    __swig_destroy__ = _BRepOffsetAPI.delete_BRepOffsetAPI_MakeThickSolid

# Register BRepOffsetAPI_MakeThickSolid in _BRepOffsetAPI:
_BRepOffsetAPI.BRepOffsetAPI_MakeThickSolid_swigregister(BRepOffsetAPI_MakeThickSolid)



