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

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

try:
    import builtins as __builtin__
except ImportError:
    import __builtin__

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


def _swig_setattr_nondynamic_instance_variable(set):
    def set_instance_attr(self, name, value):
        if name == "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__ = _TPrsStd.delete_SwigPyIterator

    def value(self) -> "PyObject *":
        return _TPrsStd.SwigPyIterator_value(self)

    def incr(self, n: "size_t"=1) -> "swig::SwigPyIterator *":
        return _TPrsStd.SwigPyIterator_incr(self, n)

    def decr(self, n: "size_t"=1) -> "swig::SwigPyIterator *":
        return _TPrsStd.SwigPyIterator_decr(self, n)

    def distance(self, x: "SwigPyIterator") -> "ptrdiff_t":
        return _TPrsStd.SwigPyIterator_distance(self, x)

    def equal(self, x: "SwigPyIterator") -> "bool":
        return _TPrsStd.SwigPyIterator_equal(self, x)

    def copy(self) -> "swig::SwigPyIterator *":
        return _TPrsStd.SwigPyIterator_copy(self)

    def next(self) -> "PyObject *":
        return _TPrsStd.SwigPyIterator_next(self)

    def __next__(self) -> "PyObject *":
        return _TPrsStd.SwigPyIterator___next__(self)

    def previous(self) -> "PyObject *":
        return _TPrsStd.SwigPyIterator_previous(self)

    def advance(self, n: "ptrdiff_t") -> "swig::SwigPyIterator *":
        return _TPrsStd.SwigPyIterator_advance(self, n)

    def __eq__(self, x: "SwigPyIterator") -> "bool":
        return _TPrsStd.SwigPyIterator___eq__(self, x)

    def __ne__(self, x: "SwigPyIterator") -> "bool":
        return _TPrsStd.SwigPyIterator___ne__(self, x)

    def __iadd__(self, n: "ptrdiff_t") -> "swig::SwigPyIterator &":
        return _TPrsStd.SwigPyIterator___iadd__(self, n)

    def __isub__(self, n: "ptrdiff_t") -> "swig::SwigPyIterator &":
        return _TPrsStd.SwigPyIterator___isub__(self, n)

    def __add__(self, n: "ptrdiff_t") -> "swig::SwigPyIterator *":
        return _TPrsStd.SwigPyIterator___add__(self, n)

    def __sub__(self, *args) -> "ptrdiff_t":
        return _TPrsStd.SwigPyIterator___sub__(self, *args)
    def __iter__(self):
        return self

# Register SwigPyIterator in _TPrsStd:
_TPrsStd.SwigPyIterator_swigregister(SwigPyIterator)


def _dumps_object(klass):
    """ Overwrite default string output for any wrapped object.
    By default, __repr__ method returns something like:
    <OCC.Core.TopoDS.TopoDS_Shape; proxy of <Swig Object of type 'TopoDS_Shape *' at 0x02BB0758> >
    This is too much verbose.
    We prefer :
    <class 'gp_Pnt'>
    or
    <class 'TopoDS_Shape'>
    """
    klass_name = str(klass.__class__).split(".")[3].split("'")[0]
    repr_string = "<class '" + klass_name + "'"
# for TopoDS_Shape, we also look for the base type
    if klass_name == "TopoDS_Shape":
        if klass.IsNull():
            repr_string += ": Null>"
            return repr_string
        st = klass.ShapeType()
        types = {OCC.Core.TopAbs.TopAbs_VERTEX: "Vertex",
                 OCC.Core.TopAbs.TopAbs_SOLID: "Solid",
                 OCC.Core.TopAbs.TopAbs_EDGE: "Edge",
                 OCC.Core.TopAbs.TopAbs_FACE: "Face",
                 OCC.Core.TopAbs.TopAbs_SHELL: "Shell",
                 OCC.Core.TopAbs.TopAbs_WIRE: "Wire",
                 OCC.Core.TopAbs.TopAbs_COMPOUND: "Compound",
                 OCC.Core.TopAbs.TopAbs_COMPSOLID: "Compsolid"}
        repr_string += "; Type:%s" % types[st]        
    elif hasattr(klass, "IsNull"):
        if klass.IsNull():
            repr_string += "; Null"
    repr_string += ">"
    return repr_string


def process_exception(error: "Standard_Failure", method_name: "std::string", class_name: "std::string") -> "void":
    return _TPrsStd.process_exception(error, method_name, class_name)

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

import OCC.Core.Standard
import OCC.Core.NCollection
import OCC.Core.TDF
import OCC.Core.TCollection
import OCC.Core.TColStd
import OCC.Core.Quantity
import OCC.Core.AIS
import OCC.Core.SelectMgr
import OCC.Core.Graphic3d
import OCC.Core.BVH
import OCC.Core.gp
import OCC.Core.Aspect
import OCC.Core.Image
import OCC.Core.TopLoc
import OCC.Core.Bnd
import OCC.Core.TColgp
import OCC.Core.OSD
import OCC.Core.Media
import OCC.Core.Select3D
import OCC.Core.SelectBasics
import OCC.Core.Geom
import OCC.Core.GeomAbs
import OCC.Core.PrsMgr
import OCC.Core.Prs3d
import OCC.Core.Poly
import OCC.Core.TShort
import OCC.Core.V3d
import OCC.Core.TopAbs
import OCC.Core.TopoDS
import OCC.Core.Message
import OCC.Core.StdSelect
import OCC.Core.TDataXtd
import OCC.Core.TDataStd
import OCC.Core.TNaming
import OCC.Core.TopTools

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




def Handle_TPrsStd_AISPresentation_Create() -> "opencascade::handle< TPrsStd_AISPresentation >":
    return _TPrsStd.Handle_TPrsStd_AISPresentation_Create()

def Handle_TPrsStd_AISPresentation_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< TPrsStd_AISPresentation >":
    return _TPrsStd.Handle_TPrsStd_AISPresentation_DownCast(t)

def Handle_TPrsStd_AISPresentation_IsNull(t: "opencascade::handle< TPrsStd_AISPresentation > const &") -> "bool":
    return _TPrsStd.Handle_TPrsStd_AISPresentation_IsNull(t)

def Handle_TPrsStd_AISViewer_Create() -> "opencascade::handle< TPrsStd_AISViewer >":
    return _TPrsStd.Handle_TPrsStd_AISViewer_Create()

def Handle_TPrsStd_AISViewer_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< TPrsStd_AISViewer >":
    return _TPrsStd.Handle_TPrsStd_AISViewer_DownCast(t)

def Handle_TPrsStd_AISViewer_IsNull(t: "opencascade::handle< TPrsStd_AISViewer > const &") -> "bool":
    return _TPrsStd.Handle_TPrsStd_AISViewer_IsNull(t)

def Handle_TPrsStd_Driver_Create() -> "opencascade::handle< TPrsStd_Driver >":
    return _TPrsStd.Handle_TPrsStd_Driver_Create()

def Handle_TPrsStd_Driver_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< TPrsStd_Driver >":
    return _TPrsStd.Handle_TPrsStd_Driver_DownCast(t)

def Handle_TPrsStd_Driver_IsNull(t: "opencascade::handle< TPrsStd_Driver > const &") -> "bool":
    return _TPrsStd.Handle_TPrsStd_Driver_IsNull(t)

def Handle_TPrsStd_DriverTable_Create() -> "opencascade::handle< TPrsStd_DriverTable >":
    return _TPrsStd.Handle_TPrsStd_DriverTable_Create()

def Handle_TPrsStd_DriverTable_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< TPrsStd_DriverTable >":
    return _TPrsStd.Handle_TPrsStd_DriverTable_DownCast(t)

def Handle_TPrsStd_DriverTable_IsNull(t: "opencascade::handle< TPrsStd_DriverTable > const &") -> "bool":
    return _TPrsStd.Handle_TPrsStd_DriverTable_IsNull(t)

def Handle_TPrsStd_AxisDriver_Create() -> "opencascade::handle< TPrsStd_AxisDriver >":
    return _TPrsStd.Handle_TPrsStd_AxisDriver_Create()

def Handle_TPrsStd_AxisDriver_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< TPrsStd_AxisDriver >":
    return _TPrsStd.Handle_TPrsStd_AxisDriver_DownCast(t)

def Handle_TPrsStd_AxisDriver_IsNull(t: "opencascade::handle< TPrsStd_AxisDriver > const &") -> "bool":
    return _TPrsStd.Handle_TPrsStd_AxisDriver_IsNull(t)

def Handle_TPrsStd_ConstraintDriver_Create() -> "opencascade::handle< TPrsStd_ConstraintDriver >":
    return _TPrsStd.Handle_TPrsStd_ConstraintDriver_Create()

def Handle_TPrsStd_ConstraintDriver_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< TPrsStd_ConstraintDriver >":
    return _TPrsStd.Handle_TPrsStd_ConstraintDriver_DownCast(t)

def Handle_TPrsStd_ConstraintDriver_IsNull(t: "opencascade::handle< TPrsStd_ConstraintDriver > const &") -> "bool":
    return _TPrsStd.Handle_TPrsStd_ConstraintDriver_IsNull(t)

def Handle_TPrsStd_GeometryDriver_Create() -> "opencascade::handle< TPrsStd_GeometryDriver >":
    return _TPrsStd.Handle_TPrsStd_GeometryDriver_Create()

def Handle_TPrsStd_GeometryDriver_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< TPrsStd_GeometryDriver >":
    return _TPrsStd.Handle_TPrsStd_GeometryDriver_DownCast(t)

def Handle_TPrsStd_GeometryDriver_IsNull(t: "opencascade::handle< TPrsStd_GeometryDriver > const &") -> "bool":
    return _TPrsStd.Handle_TPrsStd_GeometryDriver_IsNull(t)

def Handle_TPrsStd_NamedShapeDriver_Create() -> "opencascade::handle< TPrsStd_NamedShapeDriver >":
    return _TPrsStd.Handle_TPrsStd_NamedShapeDriver_Create()

def Handle_TPrsStd_NamedShapeDriver_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< TPrsStd_NamedShapeDriver >":
    return _TPrsStd.Handle_TPrsStd_NamedShapeDriver_DownCast(t)

def Handle_TPrsStd_NamedShapeDriver_IsNull(t: "opencascade::handle< TPrsStd_NamedShapeDriver > const &") -> "bool":
    return _TPrsStd.Handle_TPrsStd_NamedShapeDriver_IsNull(t)

def Handle_TPrsStd_PlaneDriver_Create() -> "opencascade::handle< TPrsStd_PlaneDriver >":
    return _TPrsStd.Handle_TPrsStd_PlaneDriver_Create()

def Handle_TPrsStd_PlaneDriver_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< TPrsStd_PlaneDriver >":
    return _TPrsStd.Handle_TPrsStd_PlaneDriver_DownCast(t)

def Handle_TPrsStd_PlaneDriver_IsNull(t: "opencascade::handle< TPrsStd_PlaneDriver > const &") -> "bool":
    return _TPrsStd.Handle_TPrsStd_PlaneDriver_IsNull(t)

def Handle_TPrsStd_PointDriver_Create() -> "opencascade::handle< TPrsStd_PointDriver >":
    return _TPrsStd.Handle_TPrsStd_PointDriver_Create()

def Handle_TPrsStd_PointDriver_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< TPrsStd_PointDriver >":
    return _TPrsStd.Handle_TPrsStd_PointDriver_DownCast(t)

def Handle_TPrsStd_PointDriver_IsNull(t: "opencascade::handle< TPrsStd_PointDriver > const &") -> "bool":
    return _TPrsStd.Handle_TPrsStd_PointDriver_IsNull(t)
class TPrsStd_DataMapOfGUIDDriver(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def begin(self) -> "NCollection_DataMap< Standard_GUID,opencascade::handle< TPrsStd_Driver >,Standard_GUID >::iterator":
        return _TPrsStd.TPrsStd_DataMapOfGUIDDriver_begin(self)

    def end(self) -> "NCollection_DataMap< Standard_GUID,opencascade::handle< TPrsStd_Driver >,Standard_GUID >::iterator":
        return _TPrsStd.TPrsStd_DataMapOfGUIDDriver_end(self)

    def cbegin(self) -> "NCollection_DataMap< Standard_GUID,opencascade::handle< TPrsStd_Driver >,Standard_GUID >::const_iterator":
        return _TPrsStd.TPrsStd_DataMapOfGUIDDriver_cbegin(self)

    def cend(self) -> "NCollection_DataMap< Standard_GUID,opencascade::handle< TPrsStd_Driver >,Standard_GUID >::const_iterator":
        return _TPrsStd.TPrsStd_DataMapOfGUIDDriver_cend(self)

    def __init__(self, *args):
        _TPrsStd.TPrsStd_DataMapOfGUIDDriver_swiginit(self, _TPrsStd.new_TPrsStd_DataMapOfGUIDDriver(*args))

    def Exchange(self, theOther: "TPrsStd_DataMapOfGUIDDriver") -> "void":
        return _TPrsStd.TPrsStd_DataMapOfGUIDDriver_Exchange(self, theOther)

    def Assign(self, theOther: "TPrsStd_DataMapOfGUIDDriver") -> "NCollection_DataMap< Standard_GUID,opencascade::handle< TPrsStd_Driver >,Standard_GUID > &":
        return _TPrsStd.TPrsStd_DataMapOfGUIDDriver_Assign(self, theOther)

    def Set(self, theOther: "TPrsStd_DataMapOfGUIDDriver") -> "NCollection_DataMap< Standard_GUID,opencascade::handle< TPrsStd_Driver >,Standard_GUID > &":
        return _TPrsStd.TPrsStd_DataMapOfGUIDDriver_Set(self, theOther)

    def ReSize(self, N: "Standard_Integer const") -> "void":
        return _TPrsStd.TPrsStd_DataMapOfGUIDDriver_ReSize(self, N)

    def Bind(self, theKey: "Standard_GUID", theItem: "opencascade::handle< TPrsStd_Driver > const &") -> "Standard_Boolean":
        return _TPrsStd.TPrsStd_DataMapOfGUIDDriver_Bind(self, theKey, theItem)

    def Bound(self, theKey: "Standard_GUID", theItem: "opencascade::handle< TPrsStd_Driver > const &") -> "opencascade::handle< TPrsStd_Driver > *":
        return _TPrsStd.TPrsStd_DataMapOfGUIDDriver_Bound(self, theKey, theItem)

    def IsBound(self, theKey: "Standard_GUID") -> "Standard_Boolean":
        return _TPrsStd.TPrsStd_DataMapOfGUIDDriver_IsBound(self, theKey)

    def UnBind(self, theKey: "Standard_GUID") -> "Standard_Boolean":
        return _TPrsStd.TPrsStd_DataMapOfGUIDDriver_UnBind(self, theKey)

    def Seek(self, theKey: "Standard_GUID") -> "opencascade::handle< TPrsStd_Driver > const *":
        return _TPrsStd.TPrsStd_DataMapOfGUIDDriver_Seek(self, theKey)

    def Find(self, *args) -> "Standard_Boolean":
        return _TPrsStd.TPrsStd_DataMapOfGUIDDriver_Find(self, *args)

    def ChangeSeek(self, theKey: "Standard_GUID") -> "opencascade::handle< TPrsStd_Driver > *":
        return _TPrsStd.TPrsStd_DataMapOfGUIDDriver_ChangeSeek(self, theKey)

    def ChangeFind(self, theKey: "Standard_GUID") -> "opencascade::handle< TPrsStd_Driver > &":
        return _TPrsStd.TPrsStd_DataMapOfGUIDDriver_ChangeFind(self, theKey)

    def __call__(self, *args) -> "opencascade::handle< TPrsStd_Driver > &":
        return _TPrsStd.TPrsStd_DataMapOfGUIDDriver___call__(self, *args)

    def Clear(self, *args) -> "void":
        return _TPrsStd.TPrsStd_DataMapOfGUIDDriver_Clear(self, *args)
    __swig_destroy__ = _TPrsStd.delete_TPrsStd_DataMapOfGUIDDriver

    def Size(self) -> "Standard_Integer":
        return _TPrsStd.TPrsStd_DataMapOfGUIDDriver_Size(self)

# Register TPrsStd_DataMapOfGUIDDriver in _TPrsStd:
_TPrsStd.TPrsStd_DataMapOfGUIDDriver_swigregister(TPrsStd_DataMapOfGUIDDriver)

class TPrsStd_AISPresentation(OCC.Core.TDF.TDF_Attribute):
    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"""
        No available documentation.

        Returns
        -------
        None

        """
        _TPrsStd.TPrsStd_AISPresentation_swiginit(self, _TPrsStd.new_TPrsStd_AISPresentation(*args))

    def AddSelectionMode(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        theSelectionMode: int
        theTransaction: bool,optional
        	default value is Standard_True

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_AISPresentation_AddSelectionMode(self, *args)

    def Color(self, *args) -> "Quantity_NameOfColor":
        r"""
        No available documentation.

        Returns
        -------
        Quantity_NameOfColor

        """
        return _TPrsStd.TPrsStd_AISPresentation_Color(self, *args)

    def Display(self, *args) -> "void":
        r"""
        Display presentation of object in ais viewer. if <update> = true then aisobject is recomputed and all the visualization settings are applied.

        Parameters
        ----------
        update: bool,optional
        	default value is Standard_False

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_AISPresentation_Display(self, *args)

    def Erase(self, *args) -> "void":
        r"""
        Removes the presentation of this ais presentation attribute from the tprsstd_aisviewer. if remove is true, this ais presentation attribute is removed from the interactive context.

        Parameters
        ----------
        remove: bool,optional
        	default value is Standard_False

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_AISPresentation_Erase(self, *args)

    def GetAIS(self, *args) -> "opencascade::handle< AIS_InteractiveObject >":
        r"""
        Returns ais_interactiveobject stored in the presentation attribute.

        Returns
        -------
        opencascade::handle<AIS_InteractiveObject>

        """
        return _TPrsStd.TPrsStd_AISPresentation_GetAIS(self, *args)

    def GetDriverGUID(self, *args) -> "Standard_GUID":
        r"""
        No available documentation.

        Returns
        -------
        Standard_GUID

        """
        return _TPrsStd.TPrsStd_AISPresentation_GetDriverGUID(self, *args)

    @staticmethod
    def GetID(*args) -> "Standard_GUID const &":
        r"""
        Returns the guid for tprsstd_aispresentation attributes.

        Returns
        -------
        Standard_GUID

        """
        return _TPrsStd.TPrsStd_AISPresentation_GetID(*args)

    def GetNbSelectionModes(self, *args) -> "Standard_Integer":
        r"""
        Returns selection mode(s) of the attribute. it starts with 1 .. getnbselectionmodes().

        Returns
        -------
        int

        """
        return _TPrsStd.TPrsStd_AISPresentation_GetNbSelectionModes(self, *args)

    def HasOwnColor(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if this presentation attribute already has a color setting.

        Returns
        -------
        bool

        """
        return _TPrsStd.TPrsStd_AISPresentation_HasOwnColor(self, *args)

    def HasOwnMaterial(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if this presentation attribute already has a material setting.

        Returns
        -------
        bool

        """
        return _TPrsStd.TPrsStd_AISPresentation_HasOwnMaterial(self, *args)

    def HasOwnMode(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TPrsStd.TPrsStd_AISPresentation_HasOwnMode(self, *args)

    def HasOwnSelectionMode(self, *args) -> "Standard_Boolean":
        r"""
        No available documentation.

        Returns
        -------
        bool

        """
        return _TPrsStd.TPrsStd_AISPresentation_HasOwnSelectionMode(self, *args)

    def HasOwnTransparency(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if this presentation attribute already has a transparency setting.

        Returns
        -------
        bool

        """
        return _TPrsStd.TPrsStd_AISPresentation_HasOwnTransparency(self, *args)

    def HasOwnWidth(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if this presentation attribute already has a width setting.

        Returns
        -------
        bool

        """
        return _TPrsStd.TPrsStd_AISPresentation_HasOwnWidth(self, *args)

    def IsDisplayed(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if this ais presentation attribute is displayed.

        Returns
        -------
        bool

        """
        return _TPrsStd.TPrsStd_AISPresentation_IsDisplayed(self, *args)

    def Material(self, *args) -> "Graphic3d_NameOfMaterial":
        r"""
        Returns the material setting for this presentation attribute.

        Returns
        -------
        Graphic3d_NameOfMaterial

        """
        return _TPrsStd.TPrsStd_AISPresentation_Material(self, *args)

    def Mode(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Returns
        -------
        int

        """
        return _TPrsStd.TPrsStd_AISPresentation_Mode(self, *args)

    def SelectionMode(self, *args) -> "Standard_Integer":
        r"""
        No available documentation.

        Parameters
        ----------
        index: int,optional
        	default value is 1

        Returns
        -------
        int

        """
        return _TPrsStd.TPrsStd_AISPresentation_SelectionMode(self, *args)

    @staticmethod
    def Set(*args) -> "opencascade::handle< TPrsStd_AISPresentation >":
        r"""
        Creates or retrieves the presentation attribute on the label l, and sets the guid driver.

        Parameters
        ----------
        L: TDF_Label
        driver: Standard_GUID

        Returns
        -------
        opencascade::handle<TPrsStd_AISPresentation>
        Creates or retrieves the aispresentation attribute attached to master. the guid of the driver will be the guid of master. master is the attribute you want to display.

        Parameters
        ----------
        master: TDF_Attribute

        Returns
        -------
        opencascade::handle<TPrsStd_AISPresentation>

        """
        return _TPrsStd.TPrsStd_AISPresentation_Set(*args)

    def SetColor(self, *args) -> "void":
        r"""
        Sets the color acolor for this presentation attribute.

        Parameters
        ----------
        aColor: Quantity_NameOfColor

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_AISPresentation_SetColor(self, *args)

    def SetDisplayed(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        B: bool

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_AISPresentation_SetDisplayed(self, *args)

    def SetDriverGUID(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        guid: Standard_GUID

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_AISPresentation_SetDriverGUID(self, *args)

    def SetMaterial(self, *args) -> "void":
        r"""
        Sets the material aname for this presentation attribute.

        Parameters
        ----------
        aName: Graphic3d_NameOfMaterial

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_AISPresentation_SetMaterial(self, *args)

    def SetMode(self, *args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        theMode: int

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_AISPresentation_SetMode(self, *args)

    def SetSelectionMode(self, *args) -> "void":
        r"""
        Sets selection mode. if 'thetransaction' flag is off, modification of the attribute doesn't influence the transaction mechanism (the attribute doesn't participate in undo/redo because of this modification). certainly, if any other data of the attribute is modified (display mode, color, ...), the attribute will be included into undo/redo.

        Parameters
        ----------
        theSelectionMode: int
        theTransaction: bool,optional
        	default value is Standard_True

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_AISPresentation_SetSelectionMode(self, *args)

    def SetTransparency(self, *args) -> "void":
        r"""
        Sets the transparency value avalue for this presentation attribute. this value is 0.6 by default.

        Parameters
        ----------
        aValue: float,optional
        	default value is 0.6

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_AISPresentation_SetTransparency(self, *args)

    def SetWidth(self, *args) -> "void":
        r"""
        Sets the width awidth for this presentation attribute.

        Parameters
        ----------
        aWidth: float

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_AISPresentation_SetWidth(self, *args)

    def Transparency(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

        Returns
        -------
        float

        """
        return _TPrsStd.TPrsStd_AISPresentation_Transparency(self, *args)

    @staticmethod
    def Unset(*args) -> "void":
        r"""
        Delete (if exist) the presentation attribute associated to the label <l>.

        Parameters
        ----------
        L: TDF_Label

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_AISPresentation_Unset(*args)

    def UnsetColor(self, *args) -> "void":
        r"""
        Removes the color setting from this presentation attribute.

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_AISPresentation_UnsetColor(self, *args)

    def UnsetMaterial(self, *args) -> "void":
        r"""
        Removes the material setting from this presentation attribute.

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_AISPresentation_UnsetMaterial(self, *args)

    def UnsetMode(self, *args) -> "void":
        r"""
        No available documentation.

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_AISPresentation_UnsetMode(self, *args)

    def UnsetSelectionMode(self, *args) -> "void":
        r"""
        Clears all selection modes of the attribute.

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_AISPresentation_UnsetSelectionMode(self, *args)

    def UnsetTransparency(self, *args) -> "void":
        r"""
        Removes the transparency setting from this presentation attribute.

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_AISPresentation_UnsetTransparency(self, *args)

    def UnsetWidth(self, *args) -> "void":
        r"""
        Removes the width setting from this presentation attribute.

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_AISPresentation_UnsetWidth(self, *args)

    def Update(self, *args) -> "void":
        r"""
        Recompute presentation of object and apply the visualization settings.

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_AISPresentation_Update(self, *args)

    def Width(self, *args) -> "Standard_Real":
        r"""
        No available documentation.

        Returns
        -------
        float

        """
        return _TPrsStd.TPrsStd_AISPresentation_Width(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TPrsStd.delete_TPrsStd_AISPresentation

# Register TPrsStd_AISPresentation in _TPrsStd:
_TPrsStd.TPrsStd_AISPresentation_swigregister(TPrsStd_AISPresentation)

def TPrsStd_AISPresentation_GetID(*args) -> "Standard_GUID const &":
    r"""
    Returns the guid for tprsstd_aispresentation attributes.

    Returns
    -------
    Standard_GUID

    """
    return _TPrsStd.TPrsStd_AISPresentation_GetID(*args)

def TPrsStd_AISPresentation_Set(*args) -> "opencascade::handle< TPrsStd_AISPresentation >":
    r"""
    Creates or retrieves the presentation attribute on the label l, and sets the guid driver.

    Parameters
    ----------
    L: TDF_Label
    driver: Standard_GUID

    Returns
    -------
    opencascade::handle<TPrsStd_AISPresentation>
    Creates or retrieves the aispresentation attribute attached to master. the guid of the driver will be the guid of master. master is the attribute you want to display.

    Parameters
    ----------
    master: TDF_Attribute

    Returns
    -------
    opencascade::handle<TPrsStd_AISPresentation>

    """
    return _TPrsStd.TPrsStd_AISPresentation_Set(*args)

def TPrsStd_AISPresentation_Unset(*args) -> "void":
    r"""
    Delete (if exist) the presentation attribute associated to the label <l>.

    Parameters
    ----------
    L: TDF_Label

    Returns
    -------
    None

    """
    return _TPrsStd.TPrsStd_AISPresentation_Unset(*args)

class TPrsStd_AISViewer(OCC.Core.TDF.TDF_Attribute):
    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"""
        No available documentation.

        Returns
        -------
        None

        """
        _TPrsStd.TPrsStd_AISViewer_swiginit(self, _TPrsStd.new_TPrsStd_AISViewer(*args))

    @staticmethod
    def Find(*args) -> "Standard_Boolean":
        r"""
        Finds the viewer attribute at the label access, the root of the data framework. calling this function can be used to initialize an ais viewer.

        Parameters
        ----------
        acces: TDF_Label
        A: TPrsStd_AISViewer

        Returns
        -------
        bool
        No available documentation.

        Parameters
        ----------
        acces: TDF_Label
        IC: AIS_InteractiveContext

        Returns
        -------
        bool
        No available documentation.

        Parameters
        ----------
        acces: TDF_Label
        V: V3d_Viewer

        Returns
        -------
        bool

        """
        return _TPrsStd.TPrsStd_AISViewer_Find(*args)

    @staticmethod
    def GetID(*args) -> "Standard_GUID const &":
        r"""
        Class methods =============.

        Returns
        -------
        Standard_GUID

        """
        return _TPrsStd.TPrsStd_AISViewer_GetID(*args)

    def GetInteractiveContext(self, *args) -> "opencascade::handle< AIS_InteractiveContext >":
        r"""
        Returns the interactive context in this attribute.

        Returns
        -------
        opencascade::handle<AIS_InteractiveContext>

        """
        return _TPrsStd.TPrsStd_AISViewer_GetInteractiveContext(self, *args)

    @staticmethod
    def Has(*args) -> "Standard_Boolean":
        r"""
        Returns true if there is an aisviewer attribute in <acces> data framework.

        Parameters
        ----------
        acces: TDF_Label

        Returns
        -------
        bool

        """
        return _TPrsStd.TPrsStd_AISViewer_Has(*args)

    @staticmethod
    def New(*args) -> "opencascade::handle< TPrsStd_AISViewer >":
        r"""
        Create and set an aisviewer at. raise an exception if has.

        Parameters
        ----------
        access: TDF_Label
        selector: AIS_InteractiveContext

        Returns
        -------
        opencascade::handle<TPrsStd_AISViewer>
        Create and set an aisattribute at root label. the interactive context is build. raise an exception if has.

        Parameters
        ----------
        acces: TDF_Label
        viewer: V3d_Viewer

        Returns
        -------
        opencascade::handle<TPrsStd_AISViewer>

        """
        return _TPrsStd.TPrsStd_AISViewer_New(*args)

    def SetInteractiveContext(self, *args) -> "void":
        r"""
        Sets the interactive context ctx for this attribute.

        Parameters
        ----------
        ctx: AIS_InteractiveContext

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_AISViewer_SetInteractiveContext(self, *args)

    def Update(self, *args) -> "void":
        r"""
        Aisviewer methods =================.

        Parameters
        ----------
        acces: TDF_Label

        Returns
        -------
        None
        Updates the viewer at the label access. access is the root of the data framework.

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_AISViewer_Update(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TPrsStd.delete_TPrsStd_AISViewer

# Register TPrsStd_AISViewer in _TPrsStd:
_TPrsStd.TPrsStd_AISViewer_swigregister(TPrsStd_AISViewer)

def TPrsStd_AISViewer_Find(*args) -> "Standard_Boolean":
    r"""
    Finds the viewer attribute at the label access, the root of the data framework. calling this function can be used to initialize an ais viewer.

    Parameters
    ----------
    acces: TDF_Label
    A: TPrsStd_AISViewer

    Returns
    -------
    bool
    No available documentation.

    Parameters
    ----------
    acces: TDF_Label
    IC: AIS_InteractiveContext

    Returns
    -------
    bool
    No available documentation.

    Parameters
    ----------
    acces: TDF_Label
    V: V3d_Viewer

    Returns
    -------
    bool

    """
    return _TPrsStd.TPrsStd_AISViewer_Find(*args)

def TPrsStd_AISViewer_GetID(*args) -> "Standard_GUID const &":
    r"""
    Class methods =============.

    Returns
    -------
    Standard_GUID

    """
    return _TPrsStd.TPrsStd_AISViewer_GetID(*args)

def TPrsStd_AISViewer_Has(*args) -> "Standard_Boolean":
    r"""
    Returns true if there is an aisviewer attribute in <acces> data framework.

    Parameters
    ----------
    acces: TDF_Label

    Returns
    -------
    bool

    """
    return _TPrsStd.TPrsStd_AISViewer_Has(*args)

def TPrsStd_AISViewer_New(*args) -> "opencascade::handle< TPrsStd_AISViewer >":
    r"""
    Create and set an aisviewer at. raise an exception if has.

    Parameters
    ----------
    access: TDF_Label
    selector: AIS_InteractiveContext

    Returns
    -------
    opencascade::handle<TPrsStd_AISViewer>
    Create and set an aisattribute at root label. the interactive context is build. raise an exception if has.

    Parameters
    ----------
    acces: TDF_Label
    viewer: V3d_Viewer

    Returns
    -------
    opencascade::handle<TPrsStd_AISViewer>

    """
    return _TPrsStd.TPrsStd_AISViewer_New(*args)

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

    @staticmethod
    def ComputeAngle(*args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputeAngle(*args)

    @staticmethod
    def ComputeAngleForOneFace(*args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputeAngleForOneFace(*args)

    @staticmethod
    def ComputeCoincident(*args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputeCoincident(*args)

    @staticmethod
    def ComputeConcentric(*args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputeConcentric(*args)

    @staticmethod
    def ComputeDiameter(*args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputeDiameter(*args)

    @staticmethod
    def ComputeDistance(*args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputeDistance(*args)

    @staticmethod
    def ComputeEqualDistance(*args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputeEqualDistance(*args)

    @staticmethod
    def ComputeEqualRadius(*args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputeEqualRadius(*args)

    @staticmethod
    def ComputeFix(*args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputeFix(*args)

    @staticmethod
    def ComputeMaxRadius(*args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputeMaxRadius(*args)

    @staticmethod
    def ComputeMidPoint(*args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputeMidPoint(*args)

    @staticmethod
    def ComputeMinRadius(*args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputeMinRadius(*args)

    @staticmethod
    def ComputeOffset(*args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputeOffset(*args)

    @staticmethod
    def ComputeOthers(*args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputeOthers(*args)

    @staticmethod
    def ComputeParallel(*args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputeParallel(*args)

    @staticmethod
    def ComputePerpendicular(*args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputePerpendicular(*args)

    @staticmethod
    def ComputePlacement(*args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputePlacement(*args)

    @staticmethod
    def ComputeRadius(*args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputeRadius(*args)

    @staticmethod
    def ComputeRound(*args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputeRound(*args)

    @staticmethod
    def ComputeSymmetry(*args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputeSymmetry(*args)

    @staticmethod
    def ComputeTangent(*args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputeTangent(*args)

    @staticmethod
    def ComputeTextAndValue(*args) -> "Standard_Real &":
        r"""
        No available documentation.

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        aText: TCollection_ExtendedString
        anIsAngle: bool

        Returns
        -------
        aValue: float

        """
        return _TPrsStd.TPrsStd_ConstraintTools_ComputeTextAndValue(*args)

    @staticmethod
    def UpdateOnlyValue(*args) -> "void":
        r"""
        No available documentation.

        Parameters
        ----------
        aConst: TDataXtd_Constraint
        anAIS: AIS_InteractiveObject

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_ConstraintTools_UpdateOnlyValue(*args)

    __repr__ = _dumps_object


    def __init__(self):
        _TPrsStd.TPrsStd_ConstraintTools_swiginit(self, _TPrsStd.new_TPrsStd_ConstraintTools())
    __swig_destroy__ = _TPrsStd.delete_TPrsStd_ConstraintTools

# Register TPrsStd_ConstraintTools in _TPrsStd:
_TPrsStd.TPrsStd_ConstraintTools_swigregister(TPrsStd_ConstraintTools)

def TPrsStd_ConstraintTools_ComputeAngle(*args) -> "void":
    r"""
    No available documentation.

    Parameters
    ----------
    aConst: TDataXtd_Constraint
    anAIS: AIS_InteractiveObject

    Returns
    -------
    None

    """
    return _TPrsStd.TPrsStd_ConstraintTools_ComputeAngle(*args)

def TPrsStd_ConstraintTools_ComputeAngleForOneFace(*args) -> "void":
    r"""
    No available documentation.

    Parameters
    ----------
    aConst: TDataXtd_Constraint
    anAIS: AIS_InteractiveObject

    Returns
    -------
    None

    """
    return _TPrsStd.TPrsStd_ConstraintTools_ComputeAngleForOneFace(*args)

def TPrsStd_ConstraintTools_ComputeCoincident(*args) -> "void":
    r"""
    No available documentation.

    Parameters
    ----------
    aConst: TDataXtd_Constraint
    anAIS: AIS_InteractiveObject

    Returns
    -------
    None

    """
    return _TPrsStd.TPrsStd_ConstraintTools_ComputeCoincident(*args)

def TPrsStd_ConstraintTools_ComputeConcentric(*args) -> "void":
    r"""
    No available documentation.

    Parameters
    ----------
    aConst: TDataXtd_Constraint
    anAIS: AIS_InteractiveObject

    Returns
    -------
    None

    """
    return _TPrsStd.TPrsStd_ConstraintTools_ComputeConcentric(*args)

def TPrsStd_ConstraintTools_ComputeDiameter(*args) -> "void":
    r"""
    No available documentation.

    Parameters
    ----------
    aConst: TDataXtd_Constraint
    anAIS: AIS_InteractiveObject

    Returns
    -------
    None

    """
    return _TPrsStd.TPrsStd_ConstraintTools_ComputeDiameter(*args)

def TPrsStd_ConstraintTools_ComputeDistance(*args) -> "void":
    r"""
    No available documentation.

    Parameters
    ----------
    aConst: TDataXtd_Constraint
    anAIS: AIS_InteractiveObject

    Returns
    -------
    None

    """
    return _TPrsStd.TPrsStd_ConstraintTools_ComputeDistance(*args)

def TPrsStd_ConstraintTools_ComputeEqualDistance(*args) -> "void":
    r"""
    No available documentation.

    Parameters
    ----------
    aConst: TDataXtd_Constraint
    anAIS: AIS_InteractiveObject

    Returns
    -------
    None

    """
    return _TPrsStd.TPrsStd_ConstraintTools_ComputeEqualDistance(*args)

def TPrsStd_ConstraintTools_ComputeEqualRadius(*args) -> "void":
    r"""
    No available documentation.

    Parameters
    ----------
    aConst: TDataXtd_Constraint
    anAIS: AIS_InteractiveObject

    Returns
    -------
    None

    """
    return _TPrsStd.TPrsStd_ConstraintTools_ComputeEqualRadius(*args)

def TPrsStd_ConstraintTools_ComputeFix(*args) -> "void":
    r"""
    No available documentation.

    Parameters
    ----------
    aConst: TDataXtd_Constraint
    anAIS: AIS_InteractiveObject

    Returns
    -------
    None

    """
    return _TPrsStd.TPrsStd_ConstraintTools_ComputeFix(*args)

def TPrsStd_ConstraintTools_ComputeMaxRadius(*args) -> "void":
    r"""
    No available documentation.

    Parameters
    ----------
    aConst: TDataXtd_Constraint
    anAIS: AIS_InteractiveObject

    Returns
    -------
    None

    """
    return _TPrsStd.TPrsStd_ConstraintTools_ComputeMaxRadius(*args)

def TPrsStd_ConstraintTools_ComputeMidPoint(*args) -> "void":
    r"""
    No available documentation.

    Parameters
    ----------
    aConst: TDataXtd_Constraint
    anAIS: AIS_InteractiveObject

    Returns
    -------
    None

    """
    return _TPrsStd.TPrsStd_ConstraintTools_ComputeMidPoint(*args)

def TPrsStd_ConstraintTools_ComputeMinRadius(*args) -> "void":
    r"""
    No available documentation.

    Parameters
    ----------
    aConst: TDataXtd_Constraint
    anAIS: AIS_InteractiveObject

    Returns
    -------
    None

    """
    return _TPrsStd.TPrsStd_ConstraintTools_ComputeMinRadius(*args)

def TPrsStd_ConstraintTools_ComputeOffset(*args) -> "void":
    r"""
    No available documentation.

    Parameters
    ----------
    aConst: TDataXtd_Constraint
    anAIS: AIS_InteractiveObject

    Returns
    -------
    None

    """
    return _TPrsStd.TPrsStd_ConstraintTools_ComputeOffset(*args)

def TPrsStd_ConstraintTools_ComputeOthers(*args) -> "void":
    r"""
    No available documentation.

    Parameters
    ----------
    aConst: TDataXtd_Constraint
    anAIS: AIS_InteractiveObject

    Returns
    -------
    None

    """
    return _TPrsStd.TPrsStd_ConstraintTools_ComputeOthers(*args)

def TPrsStd_ConstraintTools_ComputeParallel(*args) -> "void":
    r"""
    No available documentation.

    Parameters
    ----------
    aConst: TDataXtd_Constraint
    anAIS: AIS_InteractiveObject

    Returns
    -------
    None

    """
    return _TPrsStd.TPrsStd_ConstraintTools_ComputeParallel(*args)

def TPrsStd_ConstraintTools_ComputePerpendicular(*args) -> "void":
    r"""
    No available documentation.

    Parameters
    ----------
    aConst: TDataXtd_Constraint
    anAIS: AIS_InteractiveObject

    Returns
    -------
    None

    """
    return _TPrsStd.TPrsStd_ConstraintTools_ComputePerpendicular(*args)

def TPrsStd_ConstraintTools_ComputePlacement(*args) -> "void":
    r"""
    No available documentation.

    Parameters
    ----------
    aConst: TDataXtd_Constraint
    anAIS: AIS_InteractiveObject

    Returns
    -------
    None

    """
    return _TPrsStd.TPrsStd_ConstraintTools_ComputePlacement(*args)

def TPrsStd_ConstraintTools_ComputeRadius(*args) -> "void":
    r"""
    No available documentation.

    Parameters
    ----------
    aConst: TDataXtd_Constraint
    anAIS: AIS_InteractiveObject

    Returns
    -------
    None

    """
    return _TPrsStd.TPrsStd_ConstraintTools_ComputeRadius(*args)

def TPrsStd_ConstraintTools_ComputeRound(*args) -> "void":
    r"""
    No available documentation.

    Parameters
    ----------
    aConst: TDataXtd_Constraint
    anAIS: AIS_InteractiveObject

    Returns
    -------
    None

    """
    return _TPrsStd.TPrsStd_ConstraintTools_ComputeRound(*args)

def TPrsStd_ConstraintTools_ComputeSymmetry(*args) -> "void":
    r"""
    No available documentation.

    Parameters
    ----------
    aConst: TDataXtd_Constraint
    anAIS: AIS_InteractiveObject

    Returns
    -------
    None

    """
    return _TPrsStd.TPrsStd_ConstraintTools_ComputeSymmetry(*args)

def TPrsStd_ConstraintTools_ComputeTangent(*args) -> "void":
    r"""
    No available documentation.

    Parameters
    ----------
    aConst: TDataXtd_Constraint
    anAIS: AIS_InteractiveObject

    Returns
    -------
    None

    """
    return _TPrsStd.TPrsStd_ConstraintTools_ComputeTangent(*args)

def TPrsStd_ConstraintTools_ComputeTextAndValue(*args) -> "Standard_Real &":
    r"""
    No available documentation.

    Parameters
    ----------
    aConst: TDataXtd_Constraint
    aText: TCollection_ExtendedString
    anIsAngle: bool

    Returns
    -------
    aValue: float

    """
    return _TPrsStd.TPrsStd_ConstraintTools_ComputeTextAndValue(*args)

def TPrsStd_ConstraintTools_UpdateOnlyValue(*args) -> "void":
    r"""
    No available documentation.

    Parameters
    ----------
    aConst: TDataXtd_Constraint
    anAIS: AIS_InteractiveObject

    Returns
    -------
    None

    """
    return _TPrsStd.TPrsStd_ConstraintTools_UpdateOnlyValue(*args)

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

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

    def Update(self, *args) -> "Standard_Boolean":
        r"""
        Updates the interactive object ais with information found on the attributes associated with the label l.

        Parameters
        ----------
        L: TDF_Label
        ais: AIS_InteractiveObject

        Returns
        -------
        bool

        """
        return _TPrsStd.TPrsStd_Driver_Update(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TPrsStd.delete_TPrsStd_Driver

# Register TPrsStd_Driver in _TPrsStd:
_TPrsStd.TPrsStd_Driver_swigregister(TPrsStd_Driver)

class TPrsStd_DriverTable(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

    def __init__(self, *args):
        r"""
        Default constructor.

        Returns
        -------
        None

        """
        _TPrsStd.TPrsStd_DriverTable_swiginit(self, _TPrsStd.new_TPrsStd_DriverTable(*args))

    def AddDriver(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if the driver has been added successfully to the driver table.

        Parameters
        ----------
        guid: Standard_GUID
        driver: TPrsStd_Driver

        Returns
        -------
        bool

        """
        return _TPrsStd.TPrsStd_DriverTable_AddDriver(self, *args)

    def Clear(self, *args) -> "void":
        r"""
        Removes all drivers. returns true if the driver has been removed successfully. if this method is used, the initstandarddrivers method should be called to fill the table with standard drivers.

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_DriverTable_Clear(self, *args)

    def FindDriver(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if the driver was found.

        Parameters
        ----------
        guid: Standard_GUID
        driver: TPrsStd_Driver

        Returns
        -------
        bool

        """
        return _TPrsStd.TPrsStd_DriverTable_FindDriver(self, *args)

    @staticmethod
    def Get(*args) -> "opencascade::handle< TPrsStd_DriverTable >":
        r"""
        Returns the static table. if it does not exist, creates it and fills it with standard drivers.

        Returns
        -------
        opencascade::handle<TPrsStd_DriverTable>

        """
        return _TPrsStd.TPrsStd_DriverTable_Get(*args)

    def InitStandardDrivers(self, *args) -> "void":
        r"""
        Fills the table with standard drivers.

        Returns
        -------
        None

        """
        return _TPrsStd.TPrsStd_DriverTable_InitStandardDrivers(self, *args)

    def RemoveDriver(self, *args) -> "Standard_Boolean":
        r"""
        Removes a driver with the given guid. returns true if the driver has been removed successfully.

        Parameters
        ----------
        guid: Standard_GUID

        Returns
        -------
        bool

        """
        return _TPrsStd.TPrsStd_DriverTable_RemoveDriver(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TPrsStd.delete_TPrsStd_DriverTable

# Register TPrsStd_DriverTable in _TPrsStd:
_TPrsStd.TPrsStd_DriverTable_swigregister(TPrsStd_DriverTable)

def TPrsStd_DriverTable_Get(*args) -> "opencascade::handle< TPrsStd_DriverTable >":
    r"""
    Returns the static table. if it does not exist, creates it and fills it with standard drivers.

    Returns
    -------
    opencascade::handle<TPrsStd_DriverTable>

    """
    return _TPrsStd.TPrsStd_DriverTable_Get(*args)

class TPrsStd_AxisDriver(TPrsStd_Driver):
    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 an empty axis driver.

        Returns
        -------
        None

        """
        _TPrsStd.TPrsStd_AxisDriver_swiginit(self, _TPrsStd.new_TPrsStd_AxisDriver(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TPrsStd.delete_TPrsStd_AxisDriver

# Register TPrsStd_AxisDriver in _TPrsStd:
_TPrsStd.TPrsStd_AxisDriver_swigregister(TPrsStd_AxisDriver)

class TPrsStd_ConstraintDriver(TPrsStd_Driver):
    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 an empty constraint driver.

        Returns
        -------
        None

        """
        _TPrsStd.TPrsStd_ConstraintDriver_swiginit(self, _TPrsStd.new_TPrsStd_ConstraintDriver(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TPrsStd.delete_TPrsStd_ConstraintDriver

# Register TPrsStd_ConstraintDriver in _TPrsStd:
_TPrsStd.TPrsStd_ConstraintDriver_swigregister(TPrsStd_ConstraintDriver)

class TPrsStd_GeometryDriver(TPrsStd_Driver):
    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 an empty geometry driver.

        Returns
        -------
        None

        """
        _TPrsStd.TPrsStd_GeometryDriver_swiginit(self, _TPrsStd.new_TPrsStd_GeometryDriver(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TPrsStd.delete_TPrsStd_GeometryDriver

# Register TPrsStd_GeometryDriver in _TPrsStd:
_TPrsStd.TPrsStd_GeometryDriver_swigregister(TPrsStd_GeometryDriver)

class TPrsStd_NamedShapeDriver(TPrsStd_Driver):
    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 an empty named shape driver.

        Returns
        -------
        None

        """
        _TPrsStd.TPrsStd_NamedShapeDriver_swiginit(self, _TPrsStd.new_TPrsStd_NamedShapeDriver(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TPrsStd.delete_TPrsStd_NamedShapeDriver

# Register TPrsStd_NamedShapeDriver in _TPrsStd:
_TPrsStd.TPrsStd_NamedShapeDriver_swigregister(TPrsStd_NamedShapeDriver)

class TPrsStd_PlaneDriver(TPrsStd_Driver):
    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 an empty plane driver.

        Returns
        -------
        None

        """
        _TPrsStd.TPrsStd_PlaneDriver_swiginit(self, _TPrsStd.new_TPrsStd_PlaneDriver(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TPrsStd.delete_TPrsStd_PlaneDriver

# Register TPrsStd_PlaneDriver in _TPrsStd:
_TPrsStd.TPrsStd_PlaneDriver_swigregister(TPrsStd_PlaneDriver)

class TPrsStd_PointDriver(TPrsStd_Driver):
    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 an empty point driver.

        Returns
        -------
        None

        """
        _TPrsStd.TPrsStd_PointDriver_swiginit(self, _TPrsStd.new_TPrsStd_PointDriver(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _TPrsStd.delete_TPrsStd_PointDriver

# Register TPrsStd_PointDriver in _TPrsStd:
_TPrsStd.TPrsStd_PointDriver_swigregister(TPrsStd_PointDriver)





