# 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.

"""
Prs3d module, see official documentation at
https://www.opencascade.com/doc/occt-7.4.0/refman/html/package_prs3d.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 _Prs3d
else:
    import _Prs3d

try:
    import builtins as __builtin__
except ImportError:
    import __builtin__

_swig_new_instance_method = _Prs3d.SWIG_PyInstanceMethod_New
_swig_new_static_method = _Prs3d.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__ = _Prs3d.delete_SwigPyIterator
    value = _swig_new_instance_method(_Prs3d.SwigPyIterator_value)
    incr = _swig_new_instance_method(_Prs3d.SwigPyIterator_incr)
    decr = _swig_new_instance_method(_Prs3d.SwigPyIterator_decr)
    distance = _swig_new_instance_method(_Prs3d.SwigPyIterator_distance)
    equal = _swig_new_instance_method(_Prs3d.SwigPyIterator_equal)
    copy = _swig_new_instance_method(_Prs3d.SwigPyIterator_copy)
    next = _swig_new_instance_method(_Prs3d.SwigPyIterator_next)
    __next__ = _swig_new_instance_method(_Prs3d.SwigPyIterator___next__)
    previous = _swig_new_instance_method(_Prs3d.SwigPyIterator_previous)
    advance = _swig_new_instance_method(_Prs3d.SwigPyIterator_advance)
    __eq__ = _swig_new_instance_method(_Prs3d.SwigPyIterator___eq__)
    __ne__ = _swig_new_instance_method(_Prs3d.SwigPyIterator___ne__)
    __iadd__ = _swig_new_instance_method(_Prs3d.SwigPyIterator___iadd__)
    __isub__ = _swig_new_instance_method(_Prs3d.SwigPyIterator___isub__)
    __add__ = _swig_new_instance_method(_Prs3d.SwigPyIterator___add__)
    __sub__ = _swig_new_instance_method(_Prs3d.SwigPyIterator___sub__)
    def __iter__(self):
        return self

# Register SwigPyIterator in _Prs3d:
_Prs3d.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.TColgp
import OCC.Core.Graphic3d
import OCC.Core.BVH
import OCC.Core.Quantity
import OCC.Core.TCollection
import OCC.Core.gp
import OCC.Core.Aspect
import OCC.Core.Geom
import OCC.Core.GeomAbs
import OCC.Core.TColStd
import OCC.Core.Bnd
import OCC.Core.Image
import OCC.Core.OSD
import OCC.Core.TopoDS
import OCC.Core.Message
import OCC.Core.TopAbs
import OCC.Core.TopLoc
import OCC.Core.HLRAlgo
import OCC.Core.Poly
import OCC.Core.TShort
import OCC.Core.TopTools
Prs3d_DTVP_Above = _Prs3d.Prs3d_DTVP_Above
Prs3d_DTVP_Below = _Prs3d.Prs3d_DTVP_Below
Prs3d_DTVP_Center = _Prs3d.Prs3d_DTVP_Center
Prs3d_TypeOfHighlight_None = _Prs3d.Prs3d_TypeOfHighlight_None
Prs3d_TypeOfHighlight_Selected = _Prs3d.Prs3d_TypeOfHighlight_Selected
Prs3d_TypeOfHighlight_Dynamic = _Prs3d.Prs3d_TypeOfHighlight_Dynamic
Prs3d_TypeOfHighlight_LocalSelected = _Prs3d.Prs3d_TypeOfHighlight_LocalSelected
Prs3d_TypeOfHighlight_LocalDynamic = _Prs3d.Prs3d_TypeOfHighlight_LocalDynamic
Prs3d_TypeOfHighlight_SubIntensity = _Prs3d.Prs3d_TypeOfHighlight_SubIntensity
Prs3d_TypeOfHighlight_NB = _Prs3d.Prs3d_TypeOfHighlight_NB
Prs3d_VDM_Isolated = _Prs3d.Prs3d_VDM_Isolated
Prs3d_VDM_All = _Prs3d.Prs3d_VDM_All
Prs3d_VDM_Inherited = _Prs3d.Prs3d_VDM_Inherited
Prs3d_DM_WireFrame = _Prs3d.Prs3d_DM_WireFrame
Prs3d_DM_Shaded = _Prs3d.Prs3d_DM_Shaded
Prs3d_DA_XAxisLength = _Prs3d.Prs3d_DA_XAxisLength
Prs3d_DA_YAxisLength = _Prs3d.Prs3d_DA_YAxisLength
Prs3d_DA_ZAxisLength = _Prs3d.Prs3d_DA_ZAxisLength
Prs3d_DP_ShadingTubeRadiusPercent = _Prs3d.Prs3d_DP_ShadingTubeRadiusPercent
Prs3d_DP_ShadingConeRadiusPercent = _Prs3d.Prs3d_DP_ShadingConeRadiusPercent
Prs3d_DP_ShadingConeLengthPercent = _Prs3d.Prs3d_DP_ShadingConeLengthPercent
Prs3d_DP_ShadingOriginRadiusPercent = _Prs3d.Prs3d_DP_ShadingOriginRadiusPercent
Prs3d_DP_ShadingNumberOfFacettes = _Prs3d.Prs3d_DP_ShadingNumberOfFacettes
Prs3d_DTHP_Left = _Prs3d.Prs3d_DTHP_Left
Prs3d_DTHP_Right = _Prs3d.Prs3d_DTHP_Right
Prs3d_DTHP_Center = _Prs3d.Prs3d_DTHP_Center
Prs3d_DTHP_Fit = _Prs3d.Prs3d_DTHP_Fit
Prs3d_TOLP_Point = _Prs3d.Prs3d_TOLP_Point
Prs3d_TOLP_Segment = _Prs3d.Prs3d_TOLP_Segment
Prs3d_TOH_NotSet = _Prs3d.Prs3d_TOH_NotSet
Prs3d_TOH_PolyAlgo = _Prs3d.Prs3d_TOH_PolyAlgo
Prs3d_TOH_Algo = _Prs3d.Prs3d_TOH_Algo
Prs3d_DA_XAxis = _Prs3d.Prs3d_DA_XAxis
Prs3d_DA_YAxis = _Prs3d.Prs3d_DA_YAxis
Prs3d_DA_ZAxis = _Prs3d.Prs3d_DA_ZAxis
Prs3d_DA_XYAxis = _Prs3d.Prs3d_DA_XYAxis
Prs3d_DA_YZAxis = _Prs3d.Prs3d_DA_YZAxis
Prs3d_DA_XZAxis = _Prs3d.Prs3d_DA_XZAxis
Prs3d_DA_XYZAxis = _Prs3d.Prs3d_DA_XYZAxis
Prs3d_DP_Origin = _Prs3d.Prs3d_DP_Origin
Prs3d_DP_XAxis = _Prs3d.Prs3d_DP_XAxis
Prs3d_DP_YAxis = _Prs3d.Prs3d_DP_YAxis
Prs3d_DP_ZAxis = _Prs3d.Prs3d_DP_ZAxis
Prs3d_DP_XArrow = _Prs3d.Prs3d_DP_XArrow
Prs3d_DP_YArrow = _Prs3d.Prs3d_DP_YArrow
Prs3d_DP_ZArrow = _Prs3d.Prs3d_DP_ZArrow
Prs3d_DP_XOYAxis = _Prs3d.Prs3d_DP_XOYAxis
Prs3d_DP_YOZAxis = _Prs3d.Prs3d_DP_YOZAxis
Prs3d_DP_XOZAxis = _Prs3d.Prs3d_DP_XOZAxis
Prs3d_DP_None = _Prs3d.Prs3d_DP_None
Prs3d_DAO_Internal = _Prs3d.Prs3d_DAO_Internal
Prs3d_DAO_External = _Prs3d.Prs3d_DAO_External
Prs3d_DAO_Fit = _Prs3d.Prs3d_DAO_Fit
Handle_Prs3d_BasicAspect_Create = _Prs3d.Handle_Prs3d_BasicAspect_Create
Handle_Prs3d_BasicAspect_DownCast = _Prs3d.Handle_Prs3d_BasicAspect_DownCast
Handle_Prs3d_BasicAspect_IsNull = _Prs3d.Handle_Prs3d_BasicAspect_IsNull
Handle_Prs3d_Drawer_Create = _Prs3d.Handle_Prs3d_Drawer_Create
Handle_Prs3d_Drawer_DownCast = _Prs3d.Handle_Prs3d_Drawer_DownCast
Handle_Prs3d_Drawer_IsNull = _Prs3d.Handle_Prs3d_Drawer_IsNull
Handle_Prs3d_PresentationShadow_Create = _Prs3d.Handle_Prs3d_PresentationShadow_Create
Handle_Prs3d_PresentationShadow_DownCast = _Prs3d.Handle_Prs3d_PresentationShadow_DownCast
Handle_Prs3d_PresentationShadow_IsNull = _Prs3d.Handle_Prs3d_PresentationShadow_IsNull
Handle_Prs3d_Projector_Create = _Prs3d.Handle_Prs3d_Projector_Create
Handle_Prs3d_Projector_DownCast = _Prs3d.Handle_Prs3d_Projector_DownCast
Handle_Prs3d_Projector_IsNull = _Prs3d.Handle_Prs3d_Projector_IsNull
Handle_Prs3d_ArrowAspect_Create = _Prs3d.Handle_Prs3d_ArrowAspect_Create
Handle_Prs3d_ArrowAspect_DownCast = _Prs3d.Handle_Prs3d_ArrowAspect_DownCast
Handle_Prs3d_ArrowAspect_IsNull = _Prs3d.Handle_Prs3d_ArrowAspect_IsNull
Handle_Prs3d_DatumAspect_Create = _Prs3d.Handle_Prs3d_DatumAspect_Create
Handle_Prs3d_DatumAspect_DownCast = _Prs3d.Handle_Prs3d_DatumAspect_DownCast
Handle_Prs3d_DatumAspect_IsNull = _Prs3d.Handle_Prs3d_DatumAspect_IsNull
Handle_Prs3d_DimensionAspect_Create = _Prs3d.Handle_Prs3d_DimensionAspect_Create
Handle_Prs3d_DimensionAspect_DownCast = _Prs3d.Handle_Prs3d_DimensionAspect_DownCast
Handle_Prs3d_DimensionAspect_IsNull = _Prs3d.Handle_Prs3d_DimensionAspect_IsNull
Handle_Prs3d_LineAspect_Create = _Prs3d.Handle_Prs3d_LineAspect_Create
Handle_Prs3d_LineAspect_DownCast = _Prs3d.Handle_Prs3d_LineAspect_DownCast
Handle_Prs3d_LineAspect_IsNull = _Prs3d.Handle_Prs3d_LineAspect_IsNull
Handle_Prs3d_PlaneAspect_Create = _Prs3d.Handle_Prs3d_PlaneAspect_Create
Handle_Prs3d_PlaneAspect_DownCast = _Prs3d.Handle_Prs3d_PlaneAspect_DownCast
Handle_Prs3d_PlaneAspect_IsNull = _Prs3d.Handle_Prs3d_PlaneAspect_IsNull
Handle_Prs3d_PointAspect_Create = _Prs3d.Handle_Prs3d_PointAspect_Create
Handle_Prs3d_PointAspect_DownCast = _Prs3d.Handle_Prs3d_PointAspect_DownCast
Handle_Prs3d_PointAspect_IsNull = _Prs3d.Handle_Prs3d_PointAspect_IsNull
Handle_Prs3d_ShadingAspect_Create = _Prs3d.Handle_Prs3d_ShadingAspect_Create
Handle_Prs3d_ShadingAspect_DownCast = _Prs3d.Handle_Prs3d_ShadingAspect_DownCast
Handle_Prs3d_ShadingAspect_IsNull = _Prs3d.Handle_Prs3d_ShadingAspect_IsNull
Handle_Prs3d_TextAspect_Create = _Prs3d.Handle_Prs3d_TextAspect_Create
Handle_Prs3d_TextAspect_DownCast = _Prs3d.Handle_Prs3d_TextAspect_DownCast
Handle_Prs3d_TextAspect_IsNull = _Prs3d.Handle_Prs3d_TextAspect_IsNull
Handle_Prs3d_IsoAspect_Create = _Prs3d.Handle_Prs3d_IsoAspect_Create
Handle_Prs3d_IsoAspect_DownCast = _Prs3d.Handle_Prs3d_IsoAspect_DownCast
Handle_Prs3d_IsoAspect_IsNull = _Prs3d.Handle_Prs3d_IsoAspect_IsNull
class Prs3d_NListOfSequenceOfPnt(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(_Prs3d.Prs3d_NListOfSequenceOfPnt_begin)
    end = _swig_new_instance_method(_Prs3d.Prs3d_NListOfSequenceOfPnt_end)
    cbegin = _swig_new_instance_method(_Prs3d.Prs3d_NListOfSequenceOfPnt_cbegin)
    cend = _swig_new_instance_method(_Prs3d.Prs3d_NListOfSequenceOfPnt_cend)

    def __init__(self, *args):
        _Prs3d.Prs3d_NListOfSequenceOfPnt_swiginit(self, _Prs3d.new_Prs3d_NListOfSequenceOfPnt(*args))
    Size = _swig_new_instance_method(_Prs3d.Prs3d_NListOfSequenceOfPnt_Size)
    Assign = _swig_new_instance_method(_Prs3d.Prs3d_NListOfSequenceOfPnt_Assign)
    Set = _swig_new_instance_method(_Prs3d.Prs3d_NListOfSequenceOfPnt_Set)
    Clear = _swig_new_instance_method(_Prs3d.Prs3d_NListOfSequenceOfPnt_Clear)
    First = _swig_new_instance_method(_Prs3d.Prs3d_NListOfSequenceOfPnt_First)
    Last = _swig_new_instance_method(_Prs3d.Prs3d_NListOfSequenceOfPnt_Last)
    Append = _swig_new_instance_method(_Prs3d.Prs3d_NListOfSequenceOfPnt_Append)
    Prepend = _swig_new_instance_method(_Prs3d.Prs3d_NListOfSequenceOfPnt_Prepend)
    RemoveFirst = _swig_new_instance_method(_Prs3d.Prs3d_NListOfSequenceOfPnt_RemoveFirst)
    Remove = _swig_new_instance_method(_Prs3d.Prs3d_NListOfSequenceOfPnt_Remove)
    InsertBefore = _swig_new_instance_method(_Prs3d.Prs3d_NListOfSequenceOfPnt_InsertBefore)
    InsertAfter = _swig_new_instance_method(_Prs3d.Prs3d_NListOfSequenceOfPnt_InsertAfter)
    Reverse = _swig_new_instance_method(_Prs3d.Prs3d_NListOfSequenceOfPnt_Reverse)
    __swig_destroy__ = _Prs3d.delete_Prs3d_NListOfSequenceOfPnt

# Register Prs3d_NListOfSequenceOfPnt in _Prs3d:
_Prs3d.Prs3d_NListOfSequenceOfPnt_swigregister(Prs3d_NListOfSequenceOfPnt)

class prs3d(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    AddPrimitivesGroup = _swig_new_static_method(_Prs3d.prs3d_AddPrimitivesGroup)
    GetDeflection = _swig_new_static_method(_Prs3d.prs3d_GetDeflection)
    MatchSegment = _swig_new_static_method(_Prs3d.prs3d_MatchSegment)
    PrimitivesFromPolylines = _swig_new_static_method(_Prs3d.prs3d_PrimitivesFromPolylines)

    __repr__ = _dumps_object


    def __init__(self):
        _Prs3d.prs3d_swiginit(self, _Prs3d.new_prs3d())
    __swig_destroy__ = _Prs3d.delete_prs3d

# Register prs3d in _Prs3d:
_Prs3d.prs3d_swigregister(prs3d)
prs3d_AddPrimitivesGroup = _Prs3d.prs3d_AddPrimitivesGroup
prs3d_GetDeflection = _Prs3d.prs3d_GetDeflection
prs3d_MatchSegment = _Prs3d.prs3d_MatchSegment
prs3d_PrimitivesFromPolylines = _Prs3d.prs3d_PrimitivesFromPolylines

class Prs3d_BasicAspect(OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Prs3d.delete_Prs3d_BasicAspect

# Register Prs3d_BasicAspect in _Prs3d:
_Prs3d.Prs3d_BasicAspect_swigregister(Prs3d_BasicAspect)

class Prs3d_DimensionUnits(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    GetAngleUnits = _swig_new_instance_method(_Prs3d.Prs3d_DimensionUnits_GetAngleUnits)
    GetLengthUnits = _swig_new_instance_method(_Prs3d.Prs3d_DimensionUnits_GetLengthUnits)

    def __init__(self, *args):
        r"""
        * Default constructor. Sets meters as default length units and radians as default angle units.
        	:rtype: None:param theUnits:
        	:type theUnits: Prs3d_DimensionUnits
        	:rtype: None
        """
        _Prs3d.Prs3d_DimensionUnits_swiginit(self, _Prs3d.new_Prs3d_DimensionUnits(*args))
    SetAngleUnits = _swig_new_instance_method(_Prs3d.Prs3d_DimensionUnits_SetAngleUnits)
    SetLengthUnits = _swig_new_instance_method(_Prs3d.Prs3d_DimensionUnits_SetLengthUnits)

    __repr__ = _dumps_object

    __swig_destroy__ = _Prs3d.delete_Prs3d_DimensionUnits

# Register Prs3d_DimensionUnits in _Prs3d:
_Prs3d.Prs3d_DimensionUnits_swigregister(Prs3d_DimensionUnits)

class Prs3d_Drawer(OCC.Core.Graphic3d.Graphic3d_PresentationAttributes):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    ArrowAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_ArrowAspect)
    ClearLocalAttributes = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_ClearLocalAttributes)
    DatumAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_DatumAspect)
    DeviationAngle = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_DeviationAngle)
    DeviationCoefficient = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_DeviationCoefficient)
    DimAngleDisplayUnits = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_DimAngleDisplayUnits)
    DimAngleModelUnits = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_DimAngleModelUnits)
    DimLengthDisplayUnits = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_DimLengthDisplayUnits)
    DimLengthModelUnits = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_DimLengthModelUnits)
    DimensionAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_DimensionAspect)
    DisableDrawHiddenLine = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_DisableDrawHiddenLine)
    Discretisation = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_Discretisation)
    DrawHiddenLine = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_DrawHiddenLine)
    DumpJsonToString = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_DumpJsonToString)
    EnableDrawHiddenLine = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_EnableDrawHiddenLine)
    FaceBoundaryAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_FaceBoundaryAspect)
    FaceBoundaryDraw = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_FaceBoundaryDraw)
    FaceBoundaryUpperContinuity = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_FaceBoundaryUpperContinuity)
    FreeBoundaryAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_FreeBoundaryAspect)
    FreeBoundaryDraw = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_FreeBoundaryDraw)
    HLRAngle = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HLRAngle)
    HLRDeviationCoefficient = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HLRDeviationCoefficient)
    HasLink = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasLink)
    HasOwnArrowAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnArrowAspect)
    HasOwnDatumAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnDatumAspect)
    HasOwnDeviationAngle = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnDeviationAngle)
    HasOwnDeviationCoefficient = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnDeviationCoefficient)
    HasOwnDimAngleDisplayUnits = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnDimAngleDisplayUnits)
    HasOwnDimAngleModelUnits = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnDimAngleModelUnits)
    HasOwnDimLengthDisplayUnits = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnDimLengthDisplayUnits)
    HasOwnDimLengthModelUnits = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnDimLengthModelUnits)
    HasOwnDimensionAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnDimensionAspect)
    HasOwnDiscretisation = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnDiscretisation)
    HasOwnDrawHiddenLine = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnDrawHiddenLine)
    HasOwnFaceBoundaryAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnFaceBoundaryAspect)
    HasOwnFaceBoundaryDraw = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnFaceBoundaryDraw)
    HasOwnFaceBoundaryUpperContinuity = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnFaceBoundaryUpperContinuity)
    HasOwnFreeBoundaryAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnFreeBoundaryAspect)
    HasOwnFreeBoundaryDraw = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnFreeBoundaryDraw)
    HasOwnHLRDeviationAngle = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnHLRDeviationAngle)
    HasOwnHLRDeviationCoefficient = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnHLRDeviationCoefficient)
    HasOwnHiddenLineAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnHiddenLineAspect)
    HasOwnIsAutoTriangulation = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnIsAutoTriangulation)
    HasOwnIsoOnPlane = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnIsoOnPlane)
    HasOwnIsoOnTriangulation = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnIsoOnTriangulation)
    HasOwnLineArrowDraw = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnLineArrowDraw)
    HasOwnLineAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnLineAspect)
    HasOwnMaximalChordialDeviation = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnMaximalChordialDeviation)
    HasOwnMaximalParameterValue = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnMaximalParameterValue)
    HasOwnPlaneAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnPlaneAspect)
    HasOwnPointAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnPointAspect)
    HasOwnSectionAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnSectionAspect)
    HasOwnSeenLineAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnSeenLineAspect)
    HasOwnShadingAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnShadingAspect)
    HasOwnTextAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnTextAspect)
    HasOwnTypeOfDeflection = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnTypeOfDeflection)
    HasOwnTypeOfHLR = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnTypeOfHLR)
    HasOwnUIsoAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnUIsoAspect)
    HasOwnUnFreeBoundaryAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnUnFreeBoundaryAspect)
    HasOwnUnFreeBoundaryDraw = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnUnFreeBoundaryDraw)
    HasOwnVIsoAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnVIsoAspect)
    HasOwnVectorAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnVectorAspect)
    HasOwnVertexDrawMode = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnVertexDrawMode)
    HasOwnWireAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnWireAspect)
    HasOwnWireDraw = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HasOwnWireDraw)
    HiddenLineAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_HiddenLineAspect)
    IsAutoTriangulation = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_IsAutoTriangulation)
    IsoOnPlane = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_IsoOnPlane)
    IsoOnTriangulation = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_IsoOnTriangulation)
    LineArrowDraw = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_LineArrowDraw)
    LineAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_LineAspect)
    Link = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_Link)
    MaximalChordialDeviation = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_MaximalChordialDeviation)
    MaximalParameterValue = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_MaximalParameterValue)
    PlaneAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_PlaneAspect)
    PointAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_PointAspect)
    PreviousDeviationAngle = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_PreviousDeviationAngle)
    PreviousDeviationCoefficient = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_PreviousDeviationCoefficient)
    PreviousHLRDeviationAngle = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_PreviousHLRDeviationAngle)
    PreviousHLRDeviationCoefficient = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_PreviousHLRDeviationCoefficient)

    def __init__(self, *args):
        r"""
        * Default constructor.
        	:rtype: None
        """
        _Prs3d.Prs3d_Drawer_swiginit(self, _Prs3d.new_Prs3d_Drawer(*args))
    SectionAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SectionAspect)
    SeenLineAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SeenLineAspect)
    SetArrowAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetArrowAspect)
    SetAutoTriangulation = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetAutoTriangulation)
    SetDatumAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetDatumAspect)
    SetDeviationAngle = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetDeviationAngle)
    SetDeviationCoefficient = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetDeviationCoefficient)
    SetDimAngleDisplayUnits = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetDimAngleDisplayUnits)
    SetDimAngleModelUnits = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetDimAngleModelUnits)
    SetDimLengthDisplayUnits = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetDimLengthDisplayUnits)
    SetDimLengthModelUnits = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetDimLengthModelUnits)
    SetDimensionAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetDimensionAspect)
    SetDiscretisation = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetDiscretisation)
    SetFaceBoundaryAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetFaceBoundaryAspect)
    SetFaceBoundaryDraw = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetFaceBoundaryDraw)
    SetFaceBoundaryUpperContinuity = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetFaceBoundaryUpperContinuity)
    SetFreeBoundaryAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetFreeBoundaryAspect)
    SetFreeBoundaryDraw = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetFreeBoundaryDraw)
    SetHLRAngle = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetHLRAngle)
    SetHLRDeviationCoefficient = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetHLRDeviationCoefficient)
    SetHiddenLineAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetHiddenLineAspect)
    SetIsoOnPlane = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetIsoOnPlane)
    SetIsoOnTriangulation = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetIsoOnTriangulation)
    SetLineArrowDraw = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetLineArrowDraw)
    SetLineAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetLineAspect)
    SetLink = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetLink)
    SetMaximalChordialDeviation = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetMaximalChordialDeviation)
    SetMaximalParameterValue = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetMaximalParameterValue)
    SetOwnDatumAspects = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetOwnDatumAspects)
    SetOwnLineAspects = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetOwnLineAspects)
    SetPlaneAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetPlaneAspect)
    SetPointAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetPointAspect)
    SetSectionAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetSectionAspect)
    SetSeenLineAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetSeenLineAspect)
    SetShaderProgram = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetShaderProgram)
    SetShadingAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetShadingAspect)
    SetShadingModel = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetShadingModel)
    SetTextAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetTextAspect)
    SetTypeOfDeflection = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetTypeOfDeflection)
    SetTypeOfHLR = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetTypeOfHLR)
    SetUIsoAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetUIsoAspect)
    SetUnFreeBoundaryAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetUnFreeBoundaryAspect)
    SetUnFreeBoundaryDraw = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetUnFreeBoundaryDraw)
    SetVIsoAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetVIsoAspect)
    SetVectorAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetVectorAspect)
    SetVertexDrawMode = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetVertexDrawMode)
    SetWireAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetWireAspect)
    SetWireDraw = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetWireDraw)
    SetupOwnFaceBoundaryAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetupOwnFaceBoundaryAspect)
    SetupOwnPointAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetupOwnPointAspect)
    SetupOwnShadingAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_SetupOwnShadingAspect)
    ShadingAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_ShadingAspect)
    TextAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_TextAspect)
    TypeOfDeflection = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_TypeOfDeflection)
    TypeOfHLR = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_TypeOfHLR)
    UIsoAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_UIsoAspect)
    UnFreeBoundaryAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_UnFreeBoundaryAspect)
    UnFreeBoundaryDraw = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_UnFreeBoundaryDraw)
    UnsetFaceBoundaryUpperContinuity = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_UnsetFaceBoundaryUpperContinuity)
    UpdatePreviousDeviationAngle = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_UpdatePreviousDeviationAngle)
    UpdatePreviousDeviationCoefficient = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_UpdatePreviousDeviationCoefficient)
    VIsoAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_VIsoAspect)
    VectorAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_VectorAspect)
    VertexDrawMode = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_VertexDrawMode)
    WireAspect = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_WireAspect)
    WireDraw = _swig_new_instance_method(_Prs3d.Prs3d_Drawer_WireDraw)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Prs3d.delete_Prs3d_Drawer

# Register Prs3d_Drawer in _Prs3d:
_Prs3d.Prs3d_Drawer_swigregister(Prs3d_Drawer)

class Prs3d_PresentationShadow(OCC.Core.Graphic3d.Graphic3d_Structure):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    ParentAffinity = _swig_new_instance_method(_Prs3d.Prs3d_PresentationShadow_ParentAffinity)
    ParentId = _swig_new_instance_method(_Prs3d.Prs3d_PresentationShadow_ParentId)

    def __init__(self, *args):
        r"""
        * Constructs a shadow of existing presentation object.
        	:param theViewer:
        	:type theViewer: Graphic3d_StructureManager
        	:param thePrs:
        	:type thePrs: Graphic3d_Structure
        	:rtype: None
        """
        _Prs3d.Prs3d_PresentationShadow_swiginit(self, _Prs3d.new_Prs3d_PresentationShadow(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Prs3d.delete_Prs3d_PresentationShadow

# Register Prs3d_PresentationShadow in _Prs3d:
_Prs3d.Prs3d_PresentationShadow_swigregister(Prs3d_PresentationShadow)

class Prs3d_Projector(OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Projector = _swig_new_instance_method(_Prs3d.Prs3d_Projector_Projector)

    def __init__(self, *args):
        r"""
        :param Pr:
        	:type Pr: HLRAlgo_Projector
        	:rtype: None* Constructs a projector framework from the following parameters - Pers is true if the view is a perspective view and false if it is an axonometric one; - Focus is the focal length if a perspective view is defined; - DX, DY and DZ are the coordinates of the projection vector; - XAt, YAt and ZAt are the coordinates of the view point; - XUp, YUp and ZUp are the coordinates of the vertical direction vector.
        	:param Pers:
        	:type Pers: bool
        	:param Focus:
        	:type Focus: float
        	:param DX:
        	:type DX: float
        	:param DY:
        	:type DY: float
        	:param DZ:
        	:type DZ: float
        	:param XAt:
        	:type XAt: float
        	:param YAt:
        	:type YAt: float
        	:param ZAt:
        	:type ZAt: float
        	:param XUp:
        	:type XUp: float
        	:param YUp:
        	:type YUp: float
        	:param ZUp:
        	:type ZUp: float
        	:rtype: None
        """
        _Prs3d.Prs3d_Projector_swiginit(self, _Prs3d.new_Prs3d_Projector(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Prs3d.delete_Prs3d_Projector

# Register Prs3d_Projector in _Prs3d:
_Prs3d.Prs3d_Projector_swigregister(Prs3d_Projector)

class Prs3d_Root(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    CurrentGroup = _swig_new_static_method(_Prs3d.Prs3d_Root_CurrentGroup)
    NewGroup = _swig_new_static_method(_Prs3d.Prs3d_Root_NewGroup)

    __repr__ = _dumps_object


    def __init__(self):
        _Prs3d.Prs3d_Root_swiginit(self, _Prs3d.new_Prs3d_Root())
    __swig_destroy__ = _Prs3d.delete_Prs3d_Root

# Register Prs3d_Root in _Prs3d:
_Prs3d.Prs3d_Root_swigregister(Prs3d_Root)
Prs3d_Root_CurrentGroup = _Prs3d.Prs3d_Root_CurrentGroup
Prs3d_Root_NewGroup = _Prs3d.Prs3d_Root_NewGroup

class Prs3d_ShapeTool(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    CurrentTriangulation = _swig_new_instance_method(_Prs3d.Prs3d_ShapeTool_CurrentTriangulation)
    CurveBound = _swig_new_instance_method(_Prs3d.Prs3d_ShapeTool_CurveBound)
    FaceBound = _swig_new_instance_method(_Prs3d.Prs3d_ShapeTool_FaceBound)
    FacesOfEdge = _swig_new_instance_method(_Prs3d.Prs3d_ShapeTool_FacesOfEdge)
    GetCurve = _swig_new_instance_method(_Prs3d.Prs3d_ShapeTool_GetCurve)
    GetFace = _swig_new_instance_method(_Prs3d.Prs3d_ShapeTool_GetFace)
    GetVertex = _swig_new_instance_method(_Prs3d.Prs3d_ShapeTool_GetVertex)
    HasCurve = _swig_new_instance_method(_Prs3d.Prs3d_ShapeTool_HasCurve)
    HasSurface = _swig_new_instance_method(_Prs3d.Prs3d_ShapeTool_HasSurface)
    InitCurve = _swig_new_instance_method(_Prs3d.Prs3d_ShapeTool_InitCurve)
    InitFace = _swig_new_instance_method(_Prs3d.Prs3d_ShapeTool_InitFace)
    InitVertex = _swig_new_instance_method(_Prs3d.Prs3d_ShapeTool_InitVertex)
    IsPlanarFace = _swig_new_static_method(_Prs3d.Prs3d_ShapeTool_IsPlanarFace)
    MoreCurve = _swig_new_instance_method(_Prs3d.Prs3d_ShapeTool_MoreCurve)
    MoreFace = _swig_new_instance_method(_Prs3d.Prs3d_ShapeTool_MoreFace)
    MoreVertex = _swig_new_instance_method(_Prs3d.Prs3d_ShapeTool_MoreVertex)
    Neighbours = _swig_new_instance_method(_Prs3d.Prs3d_ShapeTool_Neighbours)
    NextCurve = _swig_new_instance_method(_Prs3d.Prs3d_ShapeTool_NextCurve)
    NextFace = _swig_new_instance_method(_Prs3d.Prs3d_ShapeTool_NextFace)
    NextVertex = _swig_new_instance_method(_Prs3d.Prs3d_ShapeTool_NextVertex)
    Polygon3D = _swig_new_instance_method(_Prs3d.Prs3d_ShapeTool_Polygon3D)
    PolygonOnTriangulation = _swig_new_instance_method(_Prs3d.Prs3d_ShapeTool_PolygonOnTriangulation)

    def __init__(self, *args):
        r"""
        * Constructs the tool and initializes it using theShape and theAllVertices (optional) arguments. By default, only isolated and internal vertices are considered, however if theAllVertices argument is equal to True, all shape's vertices are taken into account.
        	:param theShape:
        	:type theShape: TopoDS_Shape
        	:param theAllVertices: default value is Standard_False
        	:type theAllVertices: bool
        	:rtype: None
        """
        _Prs3d.Prs3d_ShapeTool_swiginit(self, _Prs3d.new_Prs3d_ShapeTool(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _Prs3d.delete_Prs3d_ShapeTool

# Register Prs3d_ShapeTool in _Prs3d:
_Prs3d.Prs3d_ShapeTool_swigregister(Prs3d_ShapeTool)
Prs3d_ShapeTool_IsPlanarFace = _Prs3d.Prs3d_ShapeTool_IsPlanarFace

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

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr
    FillArray = _swig_new_instance_method(_Prs3d.Prs3d_ToolQuadric_FillArray)
    TrianglesNb = _swig_new_static_method(_Prs3d.Prs3d_ToolQuadric_TrianglesNb)

    __repr__ = _dumps_object

    __swig_destroy__ = _Prs3d.delete_Prs3d_ToolQuadric

# Register Prs3d_ToolQuadric in _Prs3d:
_Prs3d.Prs3d_ToolQuadric_swigregister(Prs3d_ToolQuadric)
Prs3d_ToolQuadric_TrianglesNb = _Prs3d.Prs3d_ToolQuadric_TrianglesNb

class Prs3d_Arrow(Prs3d_Root):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Draw = _swig_new_static_method(_Prs3d.Prs3d_Arrow_Draw)
    DrawSegments = _swig_new_static_method(_Prs3d.Prs3d_Arrow_DrawSegments)
    DrawShaded = _swig_new_static_method(_Prs3d.Prs3d_Arrow_DrawShaded)

    __repr__ = _dumps_object


    def __init__(self):
        _Prs3d.Prs3d_Arrow_swiginit(self, _Prs3d.new_Prs3d_Arrow())
    __swig_destroy__ = _Prs3d.delete_Prs3d_Arrow

# Register Prs3d_Arrow in _Prs3d:
_Prs3d.Prs3d_Arrow_swigregister(Prs3d_Arrow)
Prs3d_Arrow_Draw = _Prs3d.Prs3d_Arrow_Draw
Prs3d_Arrow_DrawSegments = _Prs3d.Prs3d_Arrow_DrawSegments
Prs3d_Arrow_DrawShaded = _Prs3d.Prs3d_Arrow_DrawShaded

class Prs3d_ArrowAspect(Prs3d_BasicAspect):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Angle = _swig_new_instance_method(_Prs3d.Prs3d_ArrowAspect_Angle)
    Aspect = _swig_new_instance_method(_Prs3d.Prs3d_ArrowAspect_Aspect)
    DumpJsonToString = _swig_new_instance_method(_Prs3d.Prs3d_ArrowAspect_DumpJsonToString)
    Length = _swig_new_instance_method(_Prs3d.Prs3d_ArrowAspect_Length)

    def __init__(self, *args):
        r"""
        * Constructs an empty framework for displaying arrows in representations of lengths. The lengths displayed are either on their own or in chamfers, fillets, diameters and radii.
        	:rtype: None* Constructs a framework to display an arrow with a shaft of the length aLength and having a head with sides at the angle anAngle from each other.
        	:param anAngle:
        	:type anAngle: float
        	:param aLength:
        	:type aLength: float
        	:rtype: None:param theAspect:
        	:type theAspect: Graphic3d_AspectLine3d
        	:rtype: None
        """
        _Prs3d.Prs3d_ArrowAspect_swiginit(self, _Prs3d.new_Prs3d_ArrowAspect(*args))
    SetAngle = _swig_new_instance_method(_Prs3d.Prs3d_ArrowAspect_SetAngle)
    SetAspect = _swig_new_instance_method(_Prs3d.Prs3d_ArrowAspect_SetAspect)
    SetColor = _swig_new_instance_method(_Prs3d.Prs3d_ArrowAspect_SetColor)
    SetLength = _swig_new_instance_method(_Prs3d.Prs3d_ArrowAspect_SetLength)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Prs3d.delete_Prs3d_ArrowAspect

# Register Prs3d_ArrowAspect in _Prs3d:
_Prs3d.Prs3d_ArrowAspect_swigregister(Prs3d_ArrowAspect)

class Prs3d_DatumAspect(Prs3d_BasicAspect):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    ArrowAspect = _swig_new_instance_method(_Prs3d.Prs3d_DatumAspect_ArrowAspect)
    ArrowPartForAxis = _swig_new_instance_method(_Prs3d.Prs3d_DatumAspect_ArrowPartForAxis)
    Attribute = _swig_new_instance_method(_Prs3d.Prs3d_DatumAspect_Attribute)
    AxisLength = _swig_new_instance_method(_Prs3d.Prs3d_DatumAspect_AxisLength)
    DatumAxes = _swig_new_instance_method(_Prs3d.Prs3d_DatumAspect_DatumAxes)
    DrawDatumPart = _swig_new_instance_method(_Prs3d.Prs3d_DatumAspect_DrawDatumPart)
    DrawFirstAndSecondAxis = _swig_new_instance_method(_Prs3d.Prs3d_DatumAspect_DrawFirstAndSecondAxis)
    DrawThirdAxis = _swig_new_instance_method(_Prs3d.Prs3d_DatumAspect_DrawThirdAxis)
    DumpJsonToString = _swig_new_instance_method(_Prs3d.Prs3d_DatumAspect_DumpJsonToString)
    FirstAxisAspect = _swig_new_instance_method(_Prs3d.Prs3d_DatumAspect_FirstAxisAspect)
    FirstAxisLength = _swig_new_instance_method(_Prs3d.Prs3d_DatumAspect_FirstAxisLength)
    LineAspect = _swig_new_instance_method(_Prs3d.Prs3d_DatumAspect_LineAspect)
    PointAspect = _swig_new_instance_method(_Prs3d.Prs3d_DatumAspect_PointAspect)

    def __init__(self, *args):
        r"""
        * An empty framework to define the display of datums.
        	:rtype: None
        """
        _Prs3d.Prs3d_DatumAspect_swiginit(self, _Prs3d.new_Prs3d_DatumAspect(*args))
    SecondAxisAspect = _swig_new_instance_method(_Prs3d.Prs3d_DatumAspect_SecondAxisAspect)
    SecondAxisLength = _swig_new_instance_method(_Prs3d.Prs3d_DatumAspect_SecondAxisLength)
    SetArrowAspect = _swig_new_instance_method(_Prs3d.Prs3d_DatumAspect_SetArrowAspect)
    SetAttribute = _swig_new_instance_method(_Prs3d.Prs3d_DatumAspect_SetAttribute)
    SetAxisLength = _swig_new_instance_method(_Prs3d.Prs3d_DatumAspect_SetAxisLength)
    SetDrawArrows = _swig_new_instance_method(_Prs3d.Prs3d_DatumAspect_SetDrawArrows)
    SetDrawDatumAxes = _swig_new_instance_method(_Prs3d.Prs3d_DatumAspect_SetDrawDatumAxes)
    SetDrawFirstAndSecondAxis = _swig_new_instance_method(_Prs3d.Prs3d_DatumAspect_SetDrawFirstAndSecondAxis)
    SetDrawLabels = _swig_new_instance_method(_Prs3d.Prs3d_DatumAspect_SetDrawLabels)
    SetDrawThirdAxis = _swig_new_instance_method(_Prs3d.Prs3d_DatumAspect_SetDrawThirdAxis)
    SetPointAspect = _swig_new_instance_method(_Prs3d.Prs3d_DatumAspect_SetPointAspect)
    SetTextAspect = _swig_new_instance_method(_Prs3d.Prs3d_DatumAspect_SetTextAspect)
    SetToDrawLabels = _swig_new_instance_method(_Prs3d.Prs3d_DatumAspect_SetToDrawLabels)
    ShadingAspect = _swig_new_instance_method(_Prs3d.Prs3d_DatumAspect_ShadingAspect)
    TextAspect = _swig_new_instance_method(_Prs3d.Prs3d_DatumAspect_TextAspect)
    ThirdAxisAspect = _swig_new_instance_method(_Prs3d.Prs3d_DatumAspect_ThirdAxisAspect)
    ThirdAxisLength = _swig_new_instance_method(_Prs3d.Prs3d_DatumAspect_ThirdAxisLength)
    ToDrawArrows = _swig_new_instance_method(_Prs3d.Prs3d_DatumAspect_ToDrawArrows)
    ToDrawLabels = _swig_new_instance_method(_Prs3d.Prs3d_DatumAspect_ToDrawLabels)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Prs3d.delete_Prs3d_DatumAspect

# Register Prs3d_DatumAspect in _Prs3d:
_Prs3d.Prs3d_DatumAspect_swigregister(Prs3d_DatumAspect)

class Prs3d_DimensionAspect(Prs3d_BasicAspect):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    ArrowAspect = _swig_new_instance_method(_Prs3d.Prs3d_DimensionAspect_ArrowAspect)
    ArrowOrientation = _swig_new_instance_method(_Prs3d.Prs3d_DimensionAspect_ArrowOrientation)
    ArrowTailSize = _swig_new_instance_method(_Prs3d.Prs3d_DimensionAspect_ArrowTailSize)
    DumpJsonToString = _swig_new_instance_method(_Prs3d.Prs3d_DimensionAspect_DumpJsonToString)
    ExtensionSize = _swig_new_instance_method(_Prs3d.Prs3d_DimensionAspect_ExtensionSize)
    IsArrows3d = _swig_new_instance_method(_Prs3d.Prs3d_DimensionAspect_IsArrows3d)
    IsText3d = _swig_new_instance_method(_Prs3d.Prs3d_DimensionAspect_IsText3d)
    IsTextShaded = _swig_new_instance_method(_Prs3d.Prs3d_DimensionAspect_IsTextShaded)
    IsUnitsDisplayed = _swig_new_instance_method(_Prs3d.Prs3d_DimensionAspect_IsUnitsDisplayed)
    LineAspect = _swig_new_instance_method(_Prs3d.Prs3d_DimensionAspect_LineAspect)
    MakeArrows3d = _swig_new_instance_method(_Prs3d.Prs3d_DimensionAspect_MakeArrows3d)
    MakeText3d = _swig_new_instance_method(_Prs3d.Prs3d_DimensionAspect_MakeText3d)
    MakeTextShaded = _swig_new_instance_method(_Prs3d.Prs3d_DimensionAspect_MakeTextShaded)
    MakeUnitsDisplayed = _swig_new_instance_method(_Prs3d.Prs3d_DimensionAspect_MakeUnitsDisplayed)

    def __init__(self, *args):
        r"""
        * Constructs an empty framework to define the display of dimensions.
        	:rtype: None
        """
        _Prs3d.Prs3d_DimensionAspect_swiginit(self, _Prs3d.new_Prs3d_DimensionAspect(*args))
    SetArrowAspect = _swig_new_instance_method(_Prs3d.Prs3d_DimensionAspect_SetArrowAspect)
    SetArrowOrientation = _swig_new_instance_method(_Prs3d.Prs3d_DimensionAspect_SetArrowOrientation)
    SetArrowTailSize = _swig_new_instance_method(_Prs3d.Prs3d_DimensionAspect_SetArrowTailSize)
    SetCommonColor = _swig_new_instance_method(_Prs3d.Prs3d_DimensionAspect_SetCommonColor)
    SetExtensionSize = _swig_new_instance_method(_Prs3d.Prs3d_DimensionAspect_SetExtensionSize)
    SetLineAspect = _swig_new_instance_method(_Prs3d.Prs3d_DimensionAspect_SetLineAspect)
    SetTextAspect = _swig_new_instance_method(_Prs3d.Prs3d_DimensionAspect_SetTextAspect)
    SetTextHorizontalPosition = _swig_new_instance_method(_Prs3d.Prs3d_DimensionAspect_SetTextHorizontalPosition)
    SetTextVerticalPosition = _swig_new_instance_method(_Prs3d.Prs3d_DimensionAspect_SetTextVerticalPosition)
    SetValueStringFormat = _swig_new_instance_method(_Prs3d.Prs3d_DimensionAspect_SetValueStringFormat)
    TextAspect = _swig_new_instance_method(_Prs3d.Prs3d_DimensionAspect_TextAspect)
    TextHorizontalPosition = _swig_new_instance_method(_Prs3d.Prs3d_DimensionAspect_TextHorizontalPosition)
    TextVerticalPosition = _swig_new_instance_method(_Prs3d.Prs3d_DimensionAspect_TextVerticalPosition)
    ValueStringFormat = _swig_new_instance_method(_Prs3d.Prs3d_DimensionAspect_ValueStringFormat)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Prs3d.delete_Prs3d_DimensionAspect

# Register Prs3d_DimensionAspect in _Prs3d:
_Prs3d.Prs3d_DimensionAspect_swigregister(Prs3d_DimensionAspect)

class Prs3d_LineAspect(Prs3d_BasicAspect):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Aspect = _swig_new_instance_method(_Prs3d.Prs3d_LineAspect_Aspect)
    DumpJsonToString = _swig_new_instance_method(_Prs3d.Prs3d_LineAspect_DumpJsonToString)

    def __init__(self, *args):
        r"""
        * Constructs a framework for line aspect defined by - the color aColor - the type of line aType and - the line thickness aWidth. Type of line refers to whether the line is solid or dotted, for example.
        	:param theColor:
        	:type theColor: Quantity_Color
        	:param theType:
        	:type theType: Aspect_TypeOfLine
        	:param theWidth:
        	:type theWidth: float
        	:rtype: None:param theAspect:
        	:type theAspect: Graphic3d_AspectLine3d
        	:rtype: None
        """
        _Prs3d.Prs3d_LineAspect_swiginit(self, _Prs3d.new_Prs3d_LineAspect(*args))
    SetAspect = _swig_new_instance_method(_Prs3d.Prs3d_LineAspect_SetAspect)
    SetColor = _swig_new_instance_method(_Prs3d.Prs3d_LineAspect_SetColor)
    SetTypeOfLine = _swig_new_instance_method(_Prs3d.Prs3d_LineAspect_SetTypeOfLine)
    SetWidth = _swig_new_instance_method(_Prs3d.Prs3d_LineAspect_SetWidth)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Prs3d.delete_Prs3d_LineAspect

# Register Prs3d_LineAspect in _Prs3d:
_Prs3d.Prs3d_LineAspect_swigregister(Prs3d_LineAspect)

class Prs3d_PlaneAspect(Prs3d_BasicAspect):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    ArrowAspect = _swig_new_instance_method(_Prs3d.Prs3d_PlaneAspect_ArrowAspect)
    ArrowsAngle = _swig_new_instance_method(_Prs3d.Prs3d_PlaneAspect_ArrowsAngle)
    ArrowsLength = _swig_new_instance_method(_Prs3d.Prs3d_PlaneAspect_ArrowsLength)
    ArrowsSize = _swig_new_instance_method(_Prs3d.Prs3d_PlaneAspect_ArrowsSize)
    DisplayCenterArrow = _swig_new_instance_method(_Prs3d.Prs3d_PlaneAspect_DisplayCenterArrow)
    DisplayEdges = _swig_new_instance_method(_Prs3d.Prs3d_PlaneAspect_DisplayEdges)
    DisplayEdgesArrows = _swig_new_instance_method(_Prs3d.Prs3d_PlaneAspect_DisplayEdgesArrows)
    DisplayIso = _swig_new_instance_method(_Prs3d.Prs3d_PlaneAspect_DisplayIso)
    DumpJsonToString = _swig_new_instance_method(_Prs3d.Prs3d_PlaneAspect_DumpJsonToString)
    EdgesAspect = _swig_new_instance_method(_Prs3d.Prs3d_PlaneAspect_EdgesAspect)
    IsoAspect = _swig_new_instance_method(_Prs3d.Prs3d_PlaneAspect_IsoAspect)
    IsoDistance = _swig_new_instance_method(_Prs3d.Prs3d_PlaneAspect_IsoDistance)
    PlaneXLength = _swig_new_instance_method(_Prs3d.Prs3d_PlaneAspect_PlaneXLength)
    PlaneYLength = _swig_new_instance_method(_Prs3d.Prs3d_PlaneAspect_PlaneYLength)

    def __init__(self, *args):
        r"""
        * Constructs an empty framework for the display of planes.
        	:rtype: None
        """
        _Prs3d.Prs3d_PlaneAspect_swiginit(self, _Prs3d.new_Prs3d_PlaneAspect(*args))
    SetArrowsAngle = _swig_new_instance_method(_Prs3d.Prs3d_PlaneAspect_SetArrowsAngle)
    SetArrowsLength = _swig_new_instance_method(_Prs3d.Prs3d_PlaneAspect_SetArrowsLength)
    SetArrowsSize = _swig_new_instance_method(_Prs3d.Prs3d_PlaneAspect_SetArrowsSize)
    SetDisplayCenterArrow = _swig_new_instance_method(_Prs3d.Prs3d_PlaneAspect_SetDisplayCenterArrow)
    SetDisplayEdges = _swig_new_instance_method(_Prs3d.Prs3d_PlaneAspect_SetDisplayEdges)
    SetDisplayEdgesArrows = _swig_new_instance_method(_Prs3d.Prs3d_PlaneAspect_SetDisplayEdgesArrows)
    SetDisplayIso = _swig_new_instance_method(_Prs3d.Prs3d_PlaneAspect_SetDisplayIso)
    SetIsoDistance = _swig_new_instance_method(_Prs3d.Prs3d_PlaneAspect_SetIsoDistance)
    SetPlaneLength = _swig_new_instance_method(_Prs3d.Prs3d_PlaneAspect_SetPlaneLength)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Prs3d.delete_Prs3d_PlaneAspect

# Register Prs3d_PlaneAspect in _Prs3d:
_Prs3d.Prs3d_PlaneAspect_swigregister(Prs3d_PlaneAspect)

class Prs3d_PointAspect(Prs3d_BasicAspect):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Aspect = _swig_new_instance_method(_Prs3d.Prs3d_PointAspect_Aspect)
    DumpJsonToString = _swig_new_instance_method(_Prs3d.Prs3d_PointAspect_DumpJsonToString)
    GetTexture = _swig_new_instance_method(_Prs3d.Prs3d_PointAspect_GetTexture)
    GetTextureSize = _swig_new_instance_method(_Prs3d.Prs3d_PointAspect_GetTextureSize)

    def __init__(self, *args):
        r"""
        :param theType:
        	:type theType: Aspect_TypeOfMarker
        	:param theColor:
        	:type theColor: Quantity_Color
        	:param theScale:
        	:type theScale: float
        	:rtype: None* Defines the user defined marker point.
        	:param theColor:
        	:type theColor: Quantity_Color
        	:param theWidth:
        	:type theWidth: int
        	:param theHeight:
        	:type theHeight: int
        	:param theTexture:
        	:type theTexture: TColStd_HArray1OfByte
        	:rtype: None:param theAspect:
        	:type theAspect: Graphic3d_AspectMarker3d
        	:rtype: None
        """
        _Prs3d.Prs3d_PointAspect_swiginit(self, _Prs3d.new_Prs3d_PointAspect(*args))
    SetAspect = _swig_new_instance_method(_Prs3d.Prs3d_PointAspect_SetAspect)
    SetColor = _swig_new_instance_method(_Prs3d.Prs3d_PointAspect_SetColor)
    SetScale = _swig_new_instance_method(_Prs3d.Prs3d_PointAspect_SetScale)
    SetTypeOfMarker = _swig_new_instance_method(_Prs3d.Prs3d_PointAspect_SetTypeOfMarker)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Prs3d.delete_Prs3d_PointAspect

# Register Prs3d_PointAspect in _Prs3d:
_Prs3d.Prs3d_PointAspect_swigregister(Prs3d_PointAspect)

class Prs3d_ShadingAspect(Prs3d_BasicAspect):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Aspect = _swig_new_instance_method(_Prs3d.Prs3d_ShadingAspect_Aspect)
    Color = _swig_new_instance_method(_Prs3d.Prs3d_ShadingAspect_Color)
    DumpJsonToString = _swig_new_instance_method(_Prs3d.Prs3d_ShadingAspect_DumpJsonToString)
    Material = _swig_new_instance_method(_Prs3d.Prs3d_ShadingAspect_Material)

    def __init__(self, *args):
        r"""
        * Constructs an empty framework to display shading.
        	:rtype: None* Constructor with initialization.
        	:param theAspect:
        	:type theAspect: Graphic3d_AspectFillArea3d
        	:rtype: None
        """
        _Prs3d.Prs3d_ShadingAspect_swiginit(self, _Prs3d.new_Prs3d_ShadingAspect(*args))
    SetAspect = _swig_new_instance_method(_Prs3d.Prs3d_ShadingAspect_SetAspect)
    SetColor = _swig_new_instance_method(_Prs3d.Prs3d_ShadingAspect_SetColor)
    SetMaterial = _swig_new_instance_method(_Prs3d.Prs3d_ShadingAspect_SetMaterial)
    SetTransparency = _swig_new_instance_method(_Prs3d.Prs3d_ShadingAspect_SetTransparency)
    Transparency = _swig_new_instance_method(_Prs3d.Prs3d_ShadingAspect_Transparency)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Prs3d.delete_Prs3d_ShadingAspect

# Register Prs3d_ShadingAspect in _Prs3d:
_Prs3d.Prs3d_ShadingAspect_swigregister(Prs3d_ShadingAspect)

class Prs3d_Text(Prs3d_Root):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Draw = _swig_new_static_method(_Prs3d.Prs3d_Text_Draw)

    __repr__ = _dumps_object


    def __init__(self):
        _Prs3d.Prs3d_Text_swiginit(self, _Prs3d.new_Prs3d_Text())
    __swig_destroy__ = _Prs3d.delete_Prs3d_Text

# Register Prs3d_Text in _Prs3d:
_Prs3d.Prs3d_Text_swigregister(Prs3d_Text)
Prs3d_Text_Draw = _Prs3d.Prs3d_Text_Draw

class Prs3d_TextAspect(Prs3d_BasicAspect):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Angle = _swig_new_instance_method(_Prs3d.Prs3d_TextAspect_Angle)
    Aspect = _swig_new_instance_method(_Prs3d.Prs3d_TextAspect_Aspect)
    DumpJsonToString = _swig_new_instance_method(_Prs3d.Prs3d_TextAspect_DumpJsonToString)
    Height = _swig_new_instance_method(_Prs3d.Prs3d_TextAspect_Height)
    HorizontalJustification = _swig_new_instance_method(_Prs3d.Prs3d_TextAspect_HorizontalJustification)
    Orientation = _swig_new_instance_method(_Prs3d.Prs3d_TextAspect_Orientation)

    def __init__(self, *args):
        r"""
        * Constructs an empty framework for defining display attributes of text.
        	:rtype: None:param theAspect:
        	:type theAspect: Graphic3d_AspectText3d
        	:rtype: None
        """
        _Prs3d.Prs3d_TextAspect_swiginit(self, _Prs3d.new_Prs3d_TextAspect(*args))
    SetAngle = _swig_new_instance_method(_Prs3d.Prs3d_TextAspect_SetAngle)
    SetAspect = _swig_new_instance_method(_Prs3d.Prs3d_TextAspect_SetAspect)
    SetColor = _swig_new_instance_method(_Prs3d.Prs3d_TextAspect_SetColor)
    SetFont = _swig_new_instance_method(_Prs3d.Prs3d_TextAspect_SetFont)
    SetHeight = _swig_new_instance_method(_Prs3d.Prs3d_TextAspect_SetHeight)
    SetHorizontalJustification = _swig_new_instance_method(_Prs3d.Prs3d_TextAspect_SetHorizontalJustification)
    SetOrientation = _swig_new_instance_method(_Prs3d.Prs3d_TextAspect_SetOrientation)
    SetVerticalJustification = _swig_new_instance_method(_Prs3d.Prs3d_TextAspect_SetVerticalJustification)
    VerticalJustification = _swig_new_instance_method(_Prs3d.Prs3d_TextAspect_VerticalJustification)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Prs3d.delete_Prs3d_TextAspect

# Register Prs3d_TextAspect in _Prs3d:
_Prs3d.Prs3d_TextAspect_swigregister(Prs3d_TextAspect)

class Prs3d_ToolCylinder(Prs3d_ToolQuadric):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Create = _swig_new_static_method(_Prs3d.Prs3d_ToolCylinder_Create)

    def __init__(self, *args):
        r"""
        * Initializes the algorithm.
        	:param theBottomRad:
        	:type theBottomRad: float
        	:param theTopRad:
        	:type theTopRad: float
        	:param theHeight:
        	:type theHeight: float
        	:param theNbSlices:
        	:type theNbSlices: int
        	:param theNbStacks:
        	:type theNbStacks: int
        	:rtype: None
        """
        _Prs3d.Prs3d_ToolCylinder_swiginit(self, _Prs3d.new_Prs3d_ToolCylinder(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _Prs3d.delete_Prs3d_ToolCylinder

# Register Prs3d_ToolCylinder in _Prs3d:
_Prs3d.Prs3d_ToolCylinder_swigregister(Prs3d_ToolCylinder)
Prs3d_ToolCylinder_Create = _Prs3d.Prs3d_ToolCylinder_Create

class Prs3d_ToolDisk(Prs3d_ToolQuadric):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Create = _swig_new_static_method(_Prs3d.Prs3d_ToolDisk_Create)

    def __init__(self, *args):
        r"""
        * Initializes the algorithm.
        	:param theInnerRadius:
        	:type theInnerRadius: float
        	:param theOuterRadius:
        	:type theOuterRadius: float
        	:param theNbSlices:
        	:type theNbSlices: int
        	:param theNbStacks:
        	:type theNbStacks: int
        	:rtype: None
        """
        _Prs3d.Prs3d_ToolDisk_swiginit(self, _Prs3d.new_Prs3d_ToolDisk(*args))
    SetAngleRange = _swig_new_instance_method(_Prs3d.Prs3d_ToolDisk_SetAngleRange)

    __repr__ = _dumps_object

    __swig_destroy__ = _Prs3d.delete_Prs3d_ToolDisk

# Register Prs3d_ToolDisk in _Prs3d:
_Prs3d.Prs3d_ToolDisk_swigregister(Prs3d_ToolDisk)
Prs3d_ToolDisk_Create = _Prs3d.Prs3d_ToolDisk_Create

class Prs3d_ToolSector(Prs3d_ToolQuadric):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Create = _swig_new_static_method(_Prs3d.Prs3d_ToolSector_Create)

    def __init__(self, *args):
        r"""
        * Initializes the algorithm.
        	:param theRadius:
        	:type theRadius: float
        	:param theNbSlices:
        	:type theNbSlices: int
        	:param theNbStacks:
        	:type theNbStacks: int
        	:rtype: None
        """
        _Prs3d.Prs3d_ToolSector_swiginit(self, _Prs3d.new_Prs3d_ToolSector(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _Prs3d.delete_Prs3d_ToolSector

# Register Prs3d_ToolSector in _Prs3d:
_Prs3d.Prs3d_ToolSector_swigregister(Prs3d_ToolSector)
Prs3d_ToolSector_Create = _Prs3d.Prs3d_ToolSector_Create

class Prs3d_ToolSphere(Prs3d_ToolQuadric):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Create = _swig_new_static_method(_Prs3d.Prs3d_ToolSphere_Create)

    def __init__(self, *args):
        r"""
        * Initializes the algorithm.
        	:param theRadius:
        	:type theRadius: float
        	:param theNbSlices:
        	:type theNbSlices: int
        	:param theNbStacks:
        	:type theNbStacks: int
        	:rtype: None
        """
        _Prs3d.Prs3d_ToolSphere_swiginit(self, _Prs3d.new_Prs3d_ToolSphere(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _Prs3d.delete_Prs3d_ToolSphere

# Register Prs3d_ToolSphere in _Prs3d:
_Prs3d.Prs3d_ToolSphere_swigregister(Prs3d_ToolSphere)
Prs3d_ToolSphere_Create = _Prs3d.Prs3d_ToolSphere_Create

class Prs3d_IsoAspect(Prs3d_LineAspect):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Number = _swig_new_instance_method(_Prs3d.Prs3d_IsoAspect_Number)

    def __init__(self, *args):
        r"""
        * Constructs a framework to define display attributes of isoparameters. These include: - the color attribute aColor - the type of line aType - the width value aWidth - aNumber, the number of isoparameters to be displayed.
        	:param theColor:
        	:type theColor: Quantity_Color
        	:param theType:
        	:type theType: Aspect_TypeOfLine
        	:param theWidth:
        	:type theWidth: float
        	:param theNumber:
        	:type theNumber: int
        	:rtype: None
        """
        _Prs3d.Prs3d_IsoAspect_swiginit(self, _Prs3d.new_Prs3d_IsoAspect(*args))
    SetNumber = _swig_new_instance_method(_Prs3d.Prs3d_IsoAspect_SetNumber)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Prs3d.delete_Prs3d_IsoAspect

# Register Prs3d_IsoAspect in _Prs3d:
_Prs3d.Prs3d_IsoAspect_swigregister(Prs3d_IsoAspect)



