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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

# Register SwigPyIterator in _AIS:
_AIS.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 _AIS.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.SelectMgr
import OCC.Core.Graphic3d
import OCC.Core.BVH
import OCC.Core.Quantity
import OCC.Core.TCollection
import OCC.Core.gp
import OCC.Core.TColStd
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

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

AIS_TrihedronSelectionMode_EntireObject = _AIS.AIS_TrihedronSelectionMode_EntireObject
AIS_TrihedronSelectionMode_Origin = _AIS.AIS_TrihedronSelectionMode_Origin
AIS_TrihedronSelectionMode_Axes = _AIS.AIS_TrihedronSelectionMode_Axes
AIS_TrihedronSelectionMode_MainPlanes = _AIS.AIS_TrihedronSelectionMode_MainPlanes
AIS_MouseGesture_NONE = _AIS.AIS_MouseGesture_NONE
AIS_MouseGesture_SelectRectangle = _AIS.AIS_MouseGesture_SelectRectangle
AIS_MouseGesture_SelectLasso = _AIS.AIS_MouseGesture_SelectLasso
AIS_MouseGesture_Zoom = _AIS.AIS_MouseGesture_Zoom
AIS_MouseGesture_ZoomWindow = _AIS.AIS_MouseGesture_ZoomWindow
AIS_MouseGesture_Pan = _AIS.AIS_MouseGesture_Pan
AIS_MouseGesture_RotateOrbit = _AIS.AIS_MouseGesture_RotateOrbit
AIS_MouseGesture_RotateView = _AIS.AIS_MouseGesture_RotateView
AIS_CM_All = _AIS.AIS_CM_All
AIS_CM_Interactive = _AIS.AIS_CM_Interactive
AIS_CM_Filters = _AIS.AIS_CM_Filters
AIS_CM_StandardModes = _AIS.AIS_CM_StandardModes
AIS_CM_TemporaryShapePrs = _AIS.AIS_CM_TemporaryShapePrs
AIS_TOA_Line = _AIS.AIS_TOA_Line
AIS_TOA_Dimension = _AIS.AIS_TOA_Dimension
AIS_TOA_Wire = _AIS.AIS_TOA_Wire
AIS_TOA_Plane = _AIS.AIS_TOA_Plane
AIS_TOA_Vector = _AIS.AIS_TOA_Vector
AIS_TOA_UIso = _AIS.AIS_TOA_UIso
AIS_TOA_VIso = _AIS.AIS_TOA_VIso
AIS_TOA_Free = _AIS.AIS_TOA_Free
AIS_TOA_UnFree = _AIS.AIS_TOA_UnFree
AIS_TOA_Section = _AIS.AIS_TOA_Section
AIS_TOA_Hidden = _AIS.AIS_TOA_Hidden
AIS_TOA_Seen = _AIS.AIS_TOA_Seen
AIS_TOA_FaceBoundary = _AIS.AIS_TOA_FaceBoundary
AIS_TOA_FirstAxis = _AIS.AIS_TOA_FirstAxis
AIS_TOA_SecondAxis = _AIS.AIS_TOA_SecondAxis
AIS_TOA_ThirdAxis = _AIS.AIS_TOA_ThirdAxis
AIS_KOI_None = _AIS.AIS_KOI_None
AIS_KOI_Datum = _AIS.AIS_KOI_Datum
AIS_KOI_Shape = _AIS.AIS_KOI_Shape
AIS_KOI_Object = _AIS.AIS_KOI_Object
AIS_KOI_Relation = _AIS.AIS_KOI_Relation
AIS_KOI_Dimension = _AIS.AIS_KOI_Dimension
AIS_SS_Added = _AIS.AIS_SS_Added
AIS_SS_Removed = _AIS.AIS_SS_Removed
AIS_SS_NotDone = _AIS.AIS_SS_NotDone
AIS_TOAX_Unknown = _AIS.AIS_TOAX_Unknown
AIS_TOAX_XAxis = _AIS.AIS_TOAX_XAxis
AIS_TOAX_YAxis = _AIS.AIS_TOAX_YAxis
AIS_TOAX_ZAxis = _AIS.AIS_TOAX_ZAxis
AIS_CS_None = _AIS.AIS_CS_None
AIS_CS_Connection = _AIS.AIS_CS_Connection
AIS_CS_Transform = _AIS.AIS_CS_Transform
AIS_CS_Both = _AIS.AIS_CS_Both
AIS_RotationMode_BndBoxActive = _AIS.AIS_RotationMode_BndBoxActive
AIS_RotationMode_PickLast = _AIS.AIS_RotationMode_PickLast
AIS_RotationMode_PickCenter = _AIS.AIS_RotationMode_PickCenter
AIS_RotationMode_CameraAt = _AIS.AIS_RotationMode_CameraAt
AIS_RotationMode_BndBoxScene = _AIS.AIS_RotationMode_BndBoxScene
AIS_RotationMode_LOWER = _AIS.AIS_RotationMode_LOWER
AIS_RotationMode_UPPER = _AIS.AIS_RotationMode_UPPER
AIS_ViewSelectionTool_Picking = _AIS.AIS_ViewSelectionTool_Picking
AIS_ViewSelectionTool_RubberBand = _AIS.AIS_ViewSelectionTool_RubberBand
AIS_ViewSelectionTool_Polygon = _AIS.AIS_ViewSelectionTool_Polygon
AIS_ViewSelectionTool_ZoomWindow = _AIS.AIS_ViewSelectionTool_ZoomWindow
AIS_ViewInputBufferType_UI = _AIS.AIS_ViewInputBufferType_UI
AIS_ViewInputBufferType_GL = _AIS.AIS_ViewInputBufferType_GL
AIS_NavigationMode_Orbit = _AIS.AIS_NavigationMode_Orbit
AIS_NavigationMode_FirstPersonFlight = _AIS.AIS_NavigationMode_FirstPersonFlight
AIS_NavigationMode_FirstPersonWalk = _AIS.AIS_NavigationMode_FirstPersonWalk
AIS_NavigationMode_LOWER = _AIS.AIS_NavigationMode_LOWER
AIS_NavigationMode_UPPER = _AIS.AIS_NavigationMode_UPPER
AIS_TOI_IsoU = _AIS.AIS_TOI_IsoU
AIS_TOI_IsoV = _AIS.AIS_TOI_IsoV
AIS_TOI_Both = _AIS.AIS_TOI_Both
AIS_SOD_Error = _AIS.AIS_SOD_Error
AIS_SOD_Nothing = _AIS.AIS_SOD_Nothing
AIS_SOD_AllBad = _AIS.AIS_SOD_AllBad
AIS_SOD_Selected = _AIS.AIS_SOD_Selected
AIS_SOD_OnlyOneDetected = _AIS.AIS_SOD_OnlyOneDetected
AIS_SOD_OnlyOneGood = _AIS.AIS_SOD_OnlyOneGood
AIS_SOD_SeveralGood = _AIS.AIS_SOD_SeveralGood
AIS_WalkTranslation_Forward = _AIS.AIS_WalkTranslation_Forward
AIS_WalkTranslation_Side = _AIS.AIS_WalkTranslation_Side
AIS_WalkTranslation_Up = _AIS.AIS_WalkTranslation_Up
AIS_WalkRotation_Yaw = _AIS.AIS_WalkRotation_Yaw
AIS_WalkRotation_Pitch = _AIS.AIS_WalkRotation_Pitch
AIS_WalkRotation_Roll = _AIS.AIS_WalkRotation_Roll
AIS_MM_None = _AIS.AIS_MM_None
AIS_MM_Translation = _AIS.AIS_MM_Translation
AIS_MM_Rotation = _AIS.AIS_MM_Rotation
AIS_MM_Scaling = _AIS.AIS_MM_Scaling
AIS_MM_TranslationPlane = _AIS.AIS_MM_TranslationPlane
AIS_SelectionModesConcurrency_Single = _AIS.AIS_SelectionModesConcurrency_Single
AIS_SelectionModesConcurrency_GlobalOrLocal = _AIS.AIS_SelectionModesConcurrency_GlobalOrLocal
AIS_SelectionModesConcurrency_Multiple = _AIS.AIS_SelectionModesConcurrency_Multiple
AIS_WireFrame = _AIS.AIS_WireFrame
AIS_Shaded = _AIS.AIS_Shaded
AIS_SOP_Error = _AIS.AIS_SOP_Error
AIS_SOP_NothingSelected = _AIS.AIS_SOP_NothingSelected
AIS_SOP_Removed = _AIS.AIS_SOP_Removed
AIS_SOP_OneSelected = _AIS.AIS_SOP_OneSelected
AIS_SOP_SeveralSelected = _AIS.AIS_SOP_SeveralSelected
AIS_DragAction_Start = _AIS.AIS_DragAction_Start
AIS_DragAction_Update = _AIS.AIS_DragAction_Update
AIS_DragAction_Stop = _AIS.AIS_DragAction_Stop
AIS_DragAction_Abort = _AIS.AIS_DragAction_Abort
AIS_TOPL_Unknown = _AIS.AIS_TOPL_Unknown
AIS_TOPL_XYPlane = _AIS.AIS_TOPL_XYPlane
AIS_TOPL_XZPlane = _AIS.AIS_TOPL_XZPlane
AIS_TOPL_YZPlane = _AIS.AIS_TOPL_YZPlane
AIS_DS_Displayed = _AIS.AIS_DS_Displayed
AIS_DS_Erased = _AIS.AIS_DS_Erased
AIS_DS_None = _AIS.AIS_DS_None


class AIS_TrihedronSelectionMode(IntEnum):
	AIS_TrihedronSelectionMode_EntireObject = 0
	AIS_TrihedronSelectionMode_Origin = 1
	AIS_TrihedronSelectionMode_Axes = 2
	AIS_TrihedronSelectionMode_MainPlanes = 3
AIS_TrihedronSelectionMode_EntireObject = AIS_TrihedronSelectionMode.AIS_TrihedronSelectionMode_EntireObject
AIS_TrihedronSelectionMode_Origin = AIS_TrihedronSelectionMode.AIS_TrihedronSelectionMode_Origin
AIS_TrihedronSelectionMode_Axes = AIS_TrihedronSelectionMode.AIS_TrihedronSelectionMode_Axes
AIS_TrihedronSelectionMode_MainPlanes = AIS_TrihedronSelectionMode.AIS_TrihedronSelectionMode_MainPlanes

class AIS_MouseGesture(IntEnum):
	AIS_MouseGesture_NONE = 0
	AIS_MouseGesture_SelectRectangle = 1
	AIS_MouseGesture_SelectLasso = 2
	AIS_MouseGesture_Zoom = 3
	AIS_MouseGesture_ZoomWindow = 4
	AIS_MouseGesture_Pan = 5
	AIS_MouseGesture_RotateOrbit = 6
	AIS_MouseGesture_RotateView = 7
AIS_MouseGesture_NONE = AIS_MouseGesture.AIS_MouseGesture_NONE
AIS_MouseGesture_SelectRectangle = AIS_MouseGesture.AIS_MouseGesture_SelectRectangle
AIS_MouseGesture_SelectLasso = AIS_MouseGesture.AIS_MouseGesture_SelectLasso
AIS_MouseGesture_Zoom = AIS_MouseGesture.AIS_MouseGesture_Zoom
AIS_MouseGesture_ZoomWindow = AIS_MouseGesture.AIS_MouseGesture_ZoomWindow
AIS_MouseGesture_Pan = AIS_MouseGesture.AIS_MouseGesture_Pan
AIS_MouseGesture_RotateOrbit = AIS_MouseGesture.AIS_MouseGesture_RotateOrbit
AIS_MouseGesture_RotateView = AIS_MouseGesture.AIS_MouseGesture_RotateView

class AIS_ClearMode(IntEnum):
	AIS_CM_All = 0
	AIS_CM_Interactive = 1
	AIS_CM_Filters = 2
	AIS_CM_StandardModes = 3
	AIS_CM_TemporaryShapePrs = 4
AIS_CM_All = AIS_ClearMode.AIS_CM_All
AIS_CM_Interactive = AIS_ClearMode.AIS_CM_Interactive
AIS_CM_Filters = AIS_ClearMode.AIS_CM_Filters
AIS_CM_StandardModes = AIS_ClearMode.AIS_CM_StandardModes
AIS_CM_TemporaryShapePrs = AIS_ClearMode.AIS_CM_TemporaryShapePrs

class AIS_TypeOfAttribute(IntEnum):
	AIS_TOA_Line = 0
	AIS_TOA_Dimension = 1
	AIS_TOA_Wire = 2
	AIS_TOA_Plane = 3
	AIS_TOA_Vector = 4
	AIS_TOA_UIso = 5
	AIS_TOA_VIso = 6
	AIS_TOA_Free = 7
	AIS_TOA_UnFree = 8
	AIS_TOA_Section = 9
	AIS_TOA_Hidden = 10
	AIS_TOA_Seen = 11
	AIS_TOA_FaceBoundary = 12
	AIS_TOA_FirstAxis = 13
	AIS_TOA_SecondAxis = 14
	AIS_TOA_ThirdAxis = 15
AIS_TOA_Line = AIS_TypeOfAttribute.AIS_TOA_Line
AIS_TOA_Dimension = AIS_TypeOfAttribute.AIS_TOA_Dimension
AIS_TOA_Wire = AIS_TypeOfAttribute.AIS_TOA_Wire
AIS_TOA_Plane = AIS_TypeOfAttribute.AIS_TOA_Plane
AIS_TOA_Vector = AIS_TypeOfAttribute.AIS_TOA_Vector
AIS_TOA_UIso = AIS_TypeOfAttribute.AIS_TOA_UIso
AIS_TOA_VIso = AIS_TypeOfAttribute.AIS_TOA_VIso
AIS_TOA_Free = AIS_TypeOfAttribute.AIS_TOA_Free
AIS_TOA_UnFree = AIS_TypeOfAttribute.AIS_TOA_UnFree
AIS_TOA_Section = AIS_TypeOfAttribute.AIS_TOA_Section
AIS_TOA_Hidden = AIS_TypeOfAttribute.AIS_TOA_Hidden
AIS_TOA_Seen = AIS_TypeOfAttribute.AIS_TOA_Seen
AIS_TOA_FaceBoundary = AIS_TypeOfAttribute.AIS_TOA_FaceBoundary
AIS_TOA_FirstAxis = AIS_TypeOfAttribute.AIS_TOA_FirstAxis
AIS_TOA_SecondAxis = AIS_TypeOfAttribute.AIS_TOA_SecondAxis
AIS_TOA_ThirdAxis = AIS_TypeOfAttribute.AIS_TOA_ThirdAxis

class AIS_KindOfInteractive(IntEnum):
	AIS_KOI_None = 0
	AIS_KOI_Datum = 1
	AIS_KOI_Shape = 2
	AIS_KOI_Object = 3
	AIS_KOI_Relation = 4
	AIS_KOI_Dimension = 5
AIS_KOI_None = AIS_KindOfInteractive.AIS_KOI_None
AIS_KOI_Datum = AIS_KindOfInteractive.AIS_KOI_Datum
AIS_KOI_Shape = AIS_KindOfInteractive.AIS_KOI_Shape
AIS_KOI_Object = AIS_KindOfInteractive.AIS_KOI_Object
AIS_KOI_Relation = AIS_KindOfInteractive.AIS_KOI_Relation
AIS_KOI_Dimension = AIS_KindOfInteractive.AIS_KOI_Dimension

class AIS_SelectStatus(IntEnum):
	AIS_SS_Added = 0
	AIS_SS_Removed = 1
	AIS_SS_NotDone = 2
AIS_SS_Added = AIS_SelectStatus.AIS_SS_Added
AIS_SS_Removed = AIS_SelectStatus.AIS_SS_Removed
AIS_SS_NotDone = AIS_SelectStatus.AIS_SS_NotDone

class AIS_TypeOfAxis(IntEnum):
	AIS_TOAX_Unknown = 0
	AIS_TOAX_XAxis = 1
	AIS_TOAX_YAxis = 2
	AIS_TOAX_ZAxis = 3
AIS_TOAX_Unknown = AIS_TypeOfAxis.AIS_TOAX_Unknown
AIS_TOAX_XAxis = AIS_TypeOfAxis.AIS_TOAX_XAxis
AIS_TOAX_YAxis = AIS_TypeOfAxis.AIS_TOAX_YAxis
AIS_TOAX_ZAxis = AIS_TypeOfAxis.AIS_TOAX_ZAxis

class AIS_ConnectStatus(IntEnum):
	AIS_CS_None = 0
	AIS_CS_Connection = 1
	AIS_CS_Transform = 2
	AIS_CS_Both = 3
AIS_CS_None = AIS_ConnectStatus.AIS_CS_None
AIS_CS_Connection = AIS_ConnectStatus.AIS_CS_Connection
AIS_CS_Transform = AIS_ConnectStatus.AIS_CS_Transform
AIS_CS_Both = AIS_ConnectStatus.AIS_CS_Both

class AIS_RotationMode(IntEnum):
	AIS_RotationMode_BndBoxActive = 0
	AIS_RotationMode_PickLast = 1
	AIS_RotationMode_PickCenter = 2
	AIS_RotationMode_CameraAt = 3
	AIS_RotationMode_BndBoxScene = 4
AIS_RotationMode_BndBoxActive = AIS_RotationMode.AIS_RotationMode_BndBoxActive
AIS_RotationMode_PickLast = AIS_RotationMode.AIS_RotationMode_PickLast
AIS_RotationMode_PickCenter = AIS_RotationMode.AIS_RotationMode_PickCenter
AIS_RotationMode_CameraAt = AIS_RotationMode.AIS_RotationMode_CameraAt
AIS_RotationMode_BndBoxScene = AIS_RotationMode.AIS_RotationMode_BndBoxScene

class AIS_ViewSelectionTool(IntEnum):
	AIS_ViewSelectionTool_Picking = 0
	AIS_ViewSelectionTool_RubberBand = 1
	AIS_ViewSelectionTool_Polygon = 2
	AIS_ViewSelectionTool_ZoomWindow = 3
AIS_ViewSelectionTool_Picking = AIS_ViewSelectionTool.AIS_ViewSelectionTool_Picking
AIS_ViewSelectionTool_RubberBand = AIS_ViewSelectionTool.AIS_ViewSelectionTool_RubberBand
AIS_ViewSelectionTool_Polygon = AIS_ViewSelectionTool.AIS_ViewSelectionTool_Polygon
AIS_ViewSelectionTool_ZoomWindow = AIS_ViewSelectionTool.AIS_ViewSelectionTool_ZoomWindow

class AIS_ViewInputBufferType(IntEnum):
	AIS_ViewInputBufferType_UI = 0
	AIS_ViewInputBufferType_GL = 1
AIS_ViewInputBufferType_UI = AIS_ViewInputBufferType.AIS_ViewInputBufferType_UI
AIS_ViewInputBufferType_GL = AIS_ViewInputBufferType.AIS_ViewInputBufferType_GL

class AIS_NavigationMode(IntEnum):
	AIS_NavigationMode_Orbit = 0
	AIS_NavigationMode_FirstPersonFlight = 1
	AIS_NavigationMode_FirstPersonWalk = 2
AIS_NavigationMode_Orbit = AIS_NavigationMode.AIS_NavigationMode_Orbit
AIS_NavigationMode_FirstPersonFlight = AIS_NavigationMode.AIS_NavigationMode_FirstPersonFlight
AIS_NavigationMode_FirstPersonWalk = AIS_NavigationMode.AIS_NavigationMode_FirstPersonWalk

class AIS_TypeOfIso(IntEnum):
	AIS_TOI_IsoU = 0
	AIS_TOI_IsoV = 1
	AIS_TOI_Both = 2
AIS_TOI_IsoU = AIS_TypeOfIso.AIS_TOI_IsoU
AIS_TOI_IsoV = AIS_TypeOfIso.AIS_TOI_IsoV
AIS_TOI_Both = AIS_TypeOfIso.AIS_TOI_Both

class AIS_StatusOfDetection(IntEnum):
	AIS_SOD_Error = 0
	AIS_SOD_Nothing = 1
	AIS_SOD_AllBad = 2
	AIS_SOD_Selected = 3
	AIS_SOD_OnlyOneDetected = 4
	AIS_SOD_OnlyOneGood = 5
	AIS_SOD_SeveralGood = 6
AIS_SOD_Error = AIS_StatusOfDetection.AIS_SOD_Error
AIS_SOD_Nothing = AIS_StatusOfDetection.AIS_SOD_Nothing
AIS_SOD_AllBad = AIS_StatusOfDetection.AIS_SOD_AllBad
AIS_SOD_Selected = AIS_StatusOfDetection.AIS_SOD_Selected
AIS_SOD_OnlyOneDetected = AIS_StatusOfDetection.AIS_SOD_OnlyOneDetected
AIS_SOD_OnlyOneGood = AIS_StatusOfDetection.AIS_SOD_OnlyOneGood
AIS_SOD_SeveralGood = AIS_StatusOfDetection.AIS_SOD_SeveralGood

class AIS_WalkTranslation(IntEnum):
	AIS_WalkTranslation_Forward = 0
	AIS_WalkTranslation_Side = 1
	AIS_WalkTranslation_Up = 2
AIS_WalkTranslation_Forward = AIS_WalkTranslation.AIS_WalkTranslation_Forward
AIS_WalkTranslation_Side = AIS_WalkTranslation.AIS_WalkTranslation_Side
AIS_WalkTranslation_Up = AIS_WalkTranslation.AIS_WalkTranslation_Up

class AIS_WalkRotation(IntEnum):
	AIS_WalkRotation_Yaw = 0
	AIS_WalkRotation_Pitch = 1
	AIS_WalkRotation_Roll = 2
AIS_WalkRotation_Yaw = AIS_WalkRotation.AIS_WalkRotation_Yaw
AIS_WalkRotation_Pitch = AIS_WalkRotation.AIS_WalkRotation_Pitch
AIS_WalkRotation_Roll = AIS_WalkRotation.AIS_WalkRotation_Roll

class AIS_ManipulatorMode(IntEnum):
	AIS_MM_None = 0
	AIS_MM_Translation = 1
	AIS_MM_Rotation = 2
	AIS_MM_Scaling = 3
	AIS_MM_TranslationPlane = 4
AIS_MM_None = AIS_ManipulatorMode.AIS_MM_None
AIS_MM_Translation = AIS_ManipulatorMode.AIS_MM_Translation
AIS_MM_Rotation = AIS_ManipulatorMode.AIS_MM_Rotation
AIS_MM_Scaling = AIS_ManipulatorMode.AIS_MM_Scaling
AIS_MM_TranslationPlane = AIS_ManipulatorMode.AIS_MM_TranslationPlane

class AIS_SelectionModesConcurrency(IntEnum):
	AIS_SelectionModesConcurrency_Single = 0
	AIS_SelectionModesConcurrency_GlobalOrLocal = 1
	AIS_SelectionModesConcurrency_Multiple = 2
AIS_SelectionModesConcurrency_Single = AIS_SelectionModesConcurrency.AIS_SelectionModesConcurrency_Single
AIS_SelectionModesConcurrency_GlobalOrLocal = AIS_SelectionModesConcurrency.AIS_SelectionModesConcurrency_GlobalOrLocal
AIS_SelectionModesConcurrency_Multiple = AIS_SelectionModesConcurrency.AIS_SelectionModesConcurrency_Multiple

class AIS_DisplayMode(IntEnum):
	AIS_WireFrame = 0
	AIS_Shaded = 1
AIS_WireFrame = AIS_DisplayMode.AIS_WireFrame
AIS_Shaded = AIS_DisplayMode.AIS_Shaded

class AIS_StatusOfPick(IntEnum):
	AIS_SOP_Error = 0
	AIS_SOP_NothingSelected = 1
	AIS_SOP_Removed = 2
	AIS_SOP_OneSelected = 3
	AIS_SOP_SeveralSelected = 4
AIS_SOP_Error = AIS_StatusOfPick.AIS_SOP_Error
AIS_SOP_NothingSelected = AIS_StatusOfPick.AIS_SOP_NothingSelected
AIS_SOP_Removed = AIS_StatusOfPick.AIS_SOP_Removed
AIS_SOP_OneSelected = AIS_StatusOfPick.AIS_SOP_OneSelected
AIS_SOP_SeveralSelected = AIS_StatusOfPick.AIS_SOP_SeveralSelected

class AIS_DragAction(IntEnum):
	AIS_DragAction_Start = 0
	AIS_DragAction_Update = 1
	AIS_DragAction_Stop = 2
	AIS_DragAction_Abort = 3
AIS_DragAction_Start = AIS_DragAction.AIS_DragAction_Start
AIS_DragAction_Update = AIS_DragAction.AIS_DragAction_Update
AIS_DragAction_Stop = AIS_DragAction.AIS_DragAction_Stop
AIS_DragAction_Abort = AIS_DragAction.AIS_DragAction_Abort

class AIS_TypeOfPlane(IntEnum):
	AIS_TOPL_Unknown = 0
	AIS_TOPL_XYPlane = 1
	AIS_TOPL_XZPlane = 2
	AIS_TOPL_YZPlane = 3
AIS_TOPL_Unknown = AIS_TypeOfPlane.AIS_TOPL_Unknown
AIS_TOPL_XYPlane = AIS_TypeOfPlane.AIS_TOPL_XYPlane
AIS_TOPL_XZPlane = AIS_TypeOfPlane.AIS_TOPL_XZPlane
AIS_TOPL_YZPlane = AIS_TypeOfPlane.AIS_TOPL_YZPlane

class AIS_DisplayStatus(IntEnum):
	AIS_DS_Displayed = 0
	AIS_DS_Erased = 1
	AIS_DS_None = 2
AIS_DS_Displayed = AIS_DisplayStatus.AIS_DS_Displayed
AIS_DS_Erased = AIS_DisplayStatus.AIS_DS_Erased
AIS_DS_None = AIS_DisplayStatus.AIS_DS_None


def Handle_AIS_Animation_Create() -> "opencascade::handle< AIS_Animation >":
    return _AIS.Handle_AIS_Animation_Create()

def Handle_AIS_Animation_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< AIS_Animation >":
    return _AIS.Handle_AIS_Animation_DownCast(t)

def Handle_AIS_Animation_IsNull(t: "opencascade::handle< AIS_Animation > const &") -> "bool":
    return _AIS.Handle_AIS_Animation_IsNull(t)

def Handle_AIS_AttributeFilter_Create() -> "opencascade::handle< AIS_AttributeFilter >":
    return _AIS.Handle_AIS_AttributeFilter_Create()

def Handle_AIS_AttributeFilter_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< AIS_AttributeFilter >":
    return _AIS.Handle_AIS_AttributeFilter_DownCast(t)

def Handle_AIS_AttributeFilter_IsNull(t: "opencascade::handle< AIS_AttributeFilter > const &") -> "bool":
    return _AIS.Handle_AIS_AttributeFilter_IsNull(t)

def Handle_AIS_BadEdgeFilter_Create() -> "opencascade::handle< AIS_BadEdgeFilter >":
    return _AIS.Handle_AIS_BadEdgeFilter_Create()

def Handle_AIS_BadEdgeFilter_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< AIS_BadEdgeFilter >":
    return _AIS.Handle_AIS_BadEdgeFilter_DownCast(t)

def Handle_AIS_BadEdgeFilter_IsNull(t: "opencascade::handle< AIS_BadEdgeFilter > const &") -> "bool":
    return _AIS.Handle_AIS_BadEdgeFilter_IsNull(t)

def Handle_AIS_C0RegularityFilter_Create() -> "opencascade::handle< AIS_C0RegularityFilter >":
    return _AIS.Handle_AIS_C0RegularityFilter_Create()

def Handle_AIS_C0RegularityFilter_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< AIS_C0RegularityFilter >":
    return _AIS.Handle_AIS_C0RegularityFilter_DownCast(t)

def Handle_AIS_C0RegularityFilter_IsNull(t: "opencascade::handle< AIS_C0RegularityFilter > const &") -> "bool":
    return _AIS.Handle_AIS_C0RegularityFilter_IsNull(t)

def Handle_AIS_ColoredDrawer_Create() -> "opencascade::handle< AIS_ColoredDrawer >":
    return _AIS.Handle_AIS_ColoredDrawer_Create()

def Handle_AIS_ColoredDrawer_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< AIS_ColoredDrawer >":
    return _AIS.Handle_AIS_ColoredDrawer_DownCast(t)

def Handle_AIS_ColoredDrawer_IsNull(t: "opencascade::handle< AIS_ColoredDrawer > const &") -> "bool":
    return _AIS.Handle_AIS_ColoredDrawer_IsNull(t)

def Handle_AIS_ExclusionFilter_Create() -> "opencascade::handle< AIS_ExclusionFilter >":
    return _AIS.Handle_AIS_ExclusionFilter_Create()

def Handle_AIS_ExclusionFilter_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< AIS_ExclusionFilter >":
    return _AIS.Handle_AIS_ExclusionFilter_DownCast(t)

def Handle_AIS_ExclusionFilter_IsNull(t: "opencascade::handle< AIS_ExclusionFilter > const &") -> "bool":
    return _AIS.Handle_AIS_ExclusionFilter_IsNull(t)

def Handle_AIS_GlobalStatus_Create() -> "opencascade::handle< AIS_GlobalStatus >":
    return _AIS.Handle_AIS_GlobalStatus_Create()

def Handle_AIS_GlobalStatus_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< AIS_GlobalStatus >":
    return _AIS.Handle_AIS_GlobalStatus_DownCast(t)

def Handle_AIS_GlobalStatus_IsNull(t: "opencascade::handle< AIS_GlobalStatus > const &") -> "bool":
    return _AIS.Handle_AIS_GlobalStatus_IsNull(t)

def Handle_AIS_InteractiveContext_Create() -> "opencascade::handle< AIS_InteractiveContext >":
    return _AIS.Handle_AIS_InteractiveContext_Create()

def Handle_AIS_InteractiveContext_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< AIS_InteractiveContext >":
    return _AIS.Handle_AIS_InteractiveContext_DownCast(t)

def Handle_AIS_InteractiveContext_IsNull(t: "opencascade::handle< AIS_InteractiveContext > const &") -> "bool":
    return _AIS.Handle_AIS_InteractiveContext_IsNull(t)

def Handle_AIS_InteractiveObject_Create() -> "opencascade::handle< AIS_InteractiveObject >":
    return _AIS.Handle_AIS_InteractiveObject_Create()

def Handle_AIS_InteractiveObject_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< AIS_InteractiveObject >":
    return _AIS.Handle_AIS_InteractiveObject_DownCast(t)

def Handle_AIS_InteractiveObject_IsNull(t: "opencascade::handle< AIS_InteractiveObject > const &") -> "bool":
    return _AIS.Handle_AIS_InteractiveObject_IsNull(t)

def Handle_AIS_ManipulatorOwner_Create() -> "opencascade::handle< AIS_ManipulatorOwner >":
    return _AIS.Handle_AIS_ManipulatorOwner_Create()

def Handle_AIS_ManipulatorOwner_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< AIS_ManipulatorOwner >":
    return _AIS.Handle_AIS_ManipulatorOwner_DownCast(t)

def Handle_AIS_ManipulatorOwner_IsNull(t: "opencascade::handle< AIS_ManipulatorOwner > const &") -> "bool":
    return _AIS.Handle_AIS_ManipulatorOwner_IsNull(t)

def Handle_AIS_Selection_Create() -> "opencascade::handle< AIS_Selection >":
    return _AIS.Handle_AIS_Selection_Create()

def Handle_AIS_Selection_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< AIS_Selection >":
    return _AIS.Handle_AIS_Selection_DownCast(t)

def Handle_AIS_Selection_IsNull(t: "opencascade::handle< AIS_Selection > const &") -> "bool":
    return _AIS.Handle_AIS_Selection_IsNull(t)

def Handle_AIS_TrihedronOwner_Create() -> "opencascade::handle< AIS_TrihedronOwner >":
    return _AIS.Handle_AIS_TrihedronOwner_Create()

def Handle_AIS_TrihedronOwner_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< AIS_TrihedronOwner >":
    return _AIS.Handle_AIS_TrihedronOwner_DownCast(t)

def Handle_AIS_TrihedronOwner_IsNull(t: "opencascade::handle< AIS_TrihedronOwner > const &") -> "bool":
    return _AIS.Handle_AIS_TrihedronOwner_IsNull(t)

def Handle_AIS_TypeFilter_Create() -> "opencascade::handle< AIS_TypeFilter >":
    return _AIS.Handle_AIS_TypeFilter_Create()

def Handle_AIS_TypeFilter_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< AIS_TypeFilter >":
    return _AIS.Handle_AIS_TypeFilter_DownCast(t)

def Handle_AIS_TypeFilter_IsNull(t: "opencascade::handle< AIS_TypeFilter > const &") -> "bool":
    return _AIS.Handle_AIS_TypeFilter_IsNull(t)

def Handle_AIS_AnimationCamera_Create() -> "opencascade::handle< AIS_AnimationCamera >":
    return _AIS.Handle_AIS_AnimationCamera_Create()

def Handle_AIS_AnimationCamera_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< AIS_AnimationCamera >":
    return _AIS.Handle_AIS_AnimationCamera_DownCast(t)

def Handle_AIS_AnimationCamera_IsNull(t: "opencascade::handle< AIS_AnimationCamera > const &") -> "bool":
    return _AIS.Handle_AIS_AnimationCamera_IsNull(t)

def Handle_AIS_AnimationObject_Create() -> "opencascade::handle< AIS_AnimationObject >":
    return _AIS.Handle_AIS_AnimationObject_Create()

def Handle_AIS_AnimationObject_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< AIS_AnimationObject >":
    return _AIS.Handle_AIS_AnimationObject_DownCast(t)

def Handle_AIS_AnimationObject_IsNull(t: "opencascade::handle< AIS_AnimationObject > const &") -> "bool":
    return _AIS.Handle_AIS_AnimationObject_IsNull(t)

def Handle_AIS_Axis_Create() -> "opencascade::handle< AIS_Axis >":
    return _AIS.Handle_AIS_Axis_Create()

def Handle_AIS_Axis_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< AIS_Axis >":
    return _AIS.Handle_AIS_Axis_DownCast(t)

def Handle_AIS_Axis_IsNull(t: "opencascade::handle< AIS_Axis > const &") -> "bool":
    return _AIS.Handle_AIS_Axis_IsNull(t)

def Handle_AIS_Circle_Create() -> "opencascade::handle< AIS_Circle >":
    return _AIS.Handle_AIS_Circle_Create()

def Handle_AIS_Circle_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< AIS_Circle >":
    return _AIS.Handle_AIS_Circle_DownCast(t)

def Handle_AIS_Circle_IsNull(t: "opencascade::handle< AIS_Circle > const &") -> "bool":
    return _AIS.Handle_AIS_Circle_IsNull(t)

def Handle_AIS_ColorScale_Create() -> "opencascade::handle< AIS_ColorScale >":
    return _AIS.Handle_AIS_ColorScale_Create()

def Handle_AIS_ColorScale_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< AIS_ColorScale >":
    return _AIS.Handle_AIS_ColorScale_DownCast(t)

def Handle_AIS_ColorScale_IsNull(t: "opencascade::handle< AIS_ColorScale > const &") -> "bool":
    return _AIS.Handle_AIS_ColorScale_IsNull(t)

def Handle_AIS_ConnectedInteractive_Create() -> "opencascade::handle< AIS_ConnectedInteractive >":
    return _AIS.Handle_AIS_ConnectedInteractive_Create()

def Handle_AIS_ConnectedInteractive_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< AIS_ConnectedInteractive >":
    return _AIS.Handle_AIS_ConnectedInteractive_DownCast(t)

def Handle_AIS_ConnectedInteractive_IsNull(t: "opencascade::handle< AIS_ConnectedInteractive > const &") -> "bool":
    return _AIS.Handle_AIS_ConnectedInteractive_IsNull(t)

def Handle_AIS_Line_Create() -> "opencascade::handle< AIS_Line >":
    return _AIS.Handle_AIS_Line_Create()

def Handle_AIS_Line_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< AIS_Line >":
    return _AIS.Handle_AIS_Line_DownCast(t)

def Handle_AIS_Line_IsNull(t: "opencascade::handle< AIS_Line > const &") -> "bool":
    return _AIS.Handle_AIS_Line_IsNull(t)

def Handle_AIS_Manipulator_Create() -> "opencascade::handle< AIS_Manipulator >":
    return _AIS.Handle_AIS_Manipulator_Create()

def Handle_AIS_Manipulator_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< AIS_Manipulator >":
    return _AIS.Handle_AIS_Manipulator_DownCast(t)

def Handle_AIS_Manipulator_IsNull(t: "opencascade::handle< AIS_Manipulator > const &") -> "bool":
    return _AIS.Handle_AIS_Manipulator_IsNull(t)

def Handle_AIS_MultipleConnectedInteractive_Create() -> "opencascade::handle< AIS_MultipleConnectedInteractive >":
    return _AIS.Handle_AIS_MultipleConnectedInteractive_Create()

def Handle_AIS_MultipleConnectedInteractive_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< AIS_MultipleConnectedInteractive >":
    return _AIS.Handle_AIS_MultipleConnectedInteractive_DownCast(t)

def Handle_AIS_MultipleConnectedInteractive_IsNull(t: "opencascade::handle< AIS_MultipleConnectedInteractive > const &") -> "bool":
    return _AIS.Handle_AIS_MultipleConnectedInteractive_IsNull(t)

def Handle_AIS_Plane_Create() -> "opencascade::handle< AIS_Plane >":
    return _AIS.Handle_AIS_Plane_Create()

def Handle_AIS_Plane_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< AIS_Plane >":
    return _AIS.Handle_AIS_Plane_DownCast(t)

def Handle_AIS_Plane_IsNull(t: "opencascade::handle< AIS_Plane > const &") -> "bool":
    return _AIS.Handle_AIS_Plane_IsNull(t)

def Handle_AIS_PlaneTrihedron_Create() -> "opencascade::handle< AIS_PlaneTrihedron >":
    return _AIS.Handle_AIS_PlaneTrihedron_Create()

def Handle_AIS_PlaneTrihedron_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< AIS_PlaneTrihedron >":
    return _AIS.Handle_AIS_PlaneTrihedron_DownCast(t)

def Handle_AIS_PlaneTrihedron_IsNull(t: "opencascade::handle< AIS_PlaneTrihedron > const &") -> "bool":
    return _AIS.Handle_AIS_PlaneTrihedron_IsNull(t)

def Handle_AIS_Point_Create() -> "opencascade::handle< AIS_Point >":
    return _AIS.Handle_AIS_Point_Create()

def Handle_AIS_Point_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< AIS_Point >":
    return _AIS.Handle_AIS_Point_DownCast(t)

def Handle_AIS_Point_IsNull(t: "opencascade::handle< AIS_Point > const &") -> "bool":
    return _AIS.Handle_AIS_Point_IsNull(t)

def Handle_AIS_PointCloud_Create() -> "opencascade::handle< AIS_PointCloud >":
    return _AIS.Handle_AIS_PointCloud_Create()

def Handle_AIS_PointCloud_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< AIS_PointCloud >":
    return _AIS.Handle_AIS_PointCloud_DownCast(t)

def Handle_AIS_PointCloud_IsNull(t: "opencascade::handle< AIS_PointCloud > const &") -> "bool":
    return _AIS.Handle_AIS_PointCloud_IsNull(t)

def Handle_AIS_RubberBand_Create() -> "opencascade::handle< AIS_RubberBand >":
    return _AIS.Handle_AIS_RubberBand_Create()

def Handle_AIS_RubberBand_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< AIS_RubberBand >":
    return _AIS.Handle_AIS_RubberBand_DownCast(t)

def Handle_AIS_RubberBand_IsNull(t: "opencascade::handle< AIS_RubberBand > const &") -> "bool":
    return _AIS.Handle_AIS_RubberBand_IsNull(t)

def Handle_AIS_Shape_Create() -> "opencascade::handle< AIS_Shape >":
    return _AIS.Handle_AIS_Shape_Create()

def Handle_AIS_Shape_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< AIS_Shape >":
    return _AIS.Handle_AIS_Shape_DownCast(t)

def Handle_AIS_Shape_IsNull(t: "opencascade::handle< AIS_Shape > const &") -> "bool":
    return _AIS.Handle_AIS_Shape_IsNull(t)

def Handle_AIS_SignatureFilter_Create() -> "opencascade::handle< AIS_SignatureFilter >":
    return _AIS.Handle_AIS_SignatureFilter_Create()

def Handle_AIS_SignatureFilter_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< AIS_SignatureFilter >":
    return _AIS.Handle_AIS_SignatureFilter_DownCast(t)

def Handle_AIS_SignatureFilter_IsNull(t: "opencascade::handle< AIS_SignatureFilter > const &") -> "bool":
    return _AIS.Handle_AIS_SignatureFilter_IsNull(t)

def Handle_AIS_TextLabel_Create() -> "opencascade::handle< AIS_TextLabel >":
    return _AIS.Handle_AIS_TextLabel_Create()

def Handle_AIS_TextLabel_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< AIS_TextLabel >":
    return _AIS.Handle_AIS_TextLabel_DownCast(t)

def Handle_AIS_TextLabel_IsNull(t: "opencascade::handle< AIS_TextLabel > const &") -> "bool":
    return _AIS.Handle_AIS_TextLabel_IsNull(t)

def Handle_AIS_Triangulation_Create() -> "opencascade::handle< AIS_Triangulation >":
    return _AIS.Handle_AIS_Triangulation_Create()

def Handle_AIS_Triangulation_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< AIS_Triangulation >":
    return _AIS.Handle_AIS_Triangulation_DownCast(t)

def Handle_AIS_Triangulation_IsNull(t: "opencascade::handle< AIS_Triangulation > const &") -> "bool":
    return _AIS.Handle_AIS_Triangulation_IsNull(t)

def Handle_AIS_Trihedron_Create() -> "opencascade::handle< AIS_Trihedron >":
    return _AIS.Handle_AIS_Trihedron_Create()

def Handle_AIS_Trihedron_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< AIS_Trihedron >":
    return _AIS.Handle_AIS_Trihedron_DownCast(t)

def Handle_AIS_Trihedron_IsNull(t: "opencascade::handle< AIS_Trihedron > const &") -> "bool":
    return _AIS.Handle_AIS_Trihedron_IsNull(t)

def Handle_AIS_ColoredShape_Create() -> "opencascade::handle< AIS_ColoredShape >":
    return _AIS.Handle_AIS_ColoredShape_Create()

def Handle_AIS_ColoredShape_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< AIS_ColoredShape >":
    return _AIS.Handle_AIS_ColoredShape_DownCast(t)

def Handle_AIS_ColoredShape_IsNull(t: "opencascade::handle< AIS_ColoredShape > const &") -> "bool":
    return _AIS.Handle_AIS_ColoredShape_IsNull(t)

def Handle_AIS_TexturedShape_Create() -> "opencascade::handle< AIS_TexturedShape >":
    return _AIS.Handle_AIS_TexturedShape_Create()

def Handle_AIS_TexturedShape_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< AIS_TexturedShape >":
    return _AIS.Handle_AIS_TexturedShape_DownCast(t)

def Handle_AIS_TexturedShape_IsNull(t: "opencascade::handle< AIS_TexturedShape > const &") -> "bool":
    return _AIS.Handle_AIS_TexturedShape_IsNull(t)
class AIS_DataMapOfIOStatus(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< opencascade::handle< AIS_InteractiveObject >,opencascade::handle< AIS_GlobalStatus >,NCollection_DefaultHasher< opencascade::handle< Standard_Transient > > >::iterator":
        return _AIS.AIS_DataMapOfIOStatus_begin(self)

    def end(self) -> "NCollection_DataMap< opencascade::handle< AIS_InteractiveObject >,opencascade::handle< AIS_GlobalStatus >,NCollection_DefaultHasher< opencascade::handle< Standard_Transient > > >::iterator":
        return _AIS.AIS_DataMapOfIOStatus_end(self)

    def cbegin(self) -> "NCollection_DataMap< opencascade::handle< AIS_InteractiveObject >,opencascade::handle< AIS_GlobalStatus >,NCollection_DefaultHasher< opencascade::handle< Standard_Transient > > >::const_iterator":
        return _AIS.AIS_DataMapOfIOStatus_cbegin(self)

    def cend(self) -> "NCollection_DataMap< opencascade::handle< AIS_InteractiveObject >,opencascade::handle< AIS_GlobalStatus >,NCollection_DefaultHasher< opencascade::handle< Standard_Transient > > >::const_iterator":
        return _AIS.AIS_DataMapOfIOStatus_cend(self)

    def __init__(self, *args):
        _AIS.AIS_DataMapOfIOStatus_swiginit(self, _AIS.new_AIS_DataMapOfIOStatus(*args))

    def Exchange(self, theOther: "AIS_DataMapOfIOStatus") -> "void":
        return _AIS.AIS_DataMapOfIOStatus_Exchange(self, theOther)

    def Assign(self, theOther: "AIS_DataMapOfIOStatus") -> "NCollection_DataMap< opencascade::handle< AIS_InteractiveObject >,opencascade::handle< AIS_GlobalStatus >,TColStd_MapTransientHasher > &":
        return _AIS.AIS_DataMapOfIOStatus_Assign(self, theOther)

    def Set(self, theOther: "AIS_DataMapOfIOStatus") -> "NCollection_DataMap< opencascade::handle< AIS_InteractiveObject >,opencascade::handle< AIS_GlobalStatus >,TColStd_MapTransientHasher > &":
        return _AIS.AIS_DataMapOfIOStatus_Set(self, theOther)

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

    def Bind(self, theKey: "opencascade::handle< AIS_InteractiveObject > const &", theItem: "opencascade::handle< AIS_GlobalStatus > const &") -> "Standard_Boolean":
        return _AIS.AIS_DataMapOfIOStatus_Bind(self, theKey, theItem)

    def Bound(self, theKey: "opencascade::handle< AIS_InteractiveObject > const &", theItem: "opencascade::handle< AIS_GlobalStatus > const &") -> "opencascade::handle< AIS_GlobalStatus > *":
        return _AIS.AIS_DataMapOfIOStatus_Bound(self, theKey, theItem)

    def IsBound(self, theKey: "opencascade::handle< AIS_InteractiveObject > const &") -> "Standard_Boolean":
        return _AIS.AIS_DataMapOfIOStatus_IsBound(self, theKey)

    def UnBind(self, theKey: "opencascade::handle< AIS_InteractiveObject > const &") -> "Standard_Boolean":
        return _AIS.AIS_DataMapOfIOStatus_UnBind(self, theKey)

    def Seek(self, theKey: "opencascade::handle< AIS_InteractiveObject > const &") -> "opencascade::handle< AIS_GlobalStatus > const *":
        return _AIS.AIS_DataMapOfIOStatus_Seek(self, theKey)

    def Find(self, *args) -> "Standard_Boolean":
        return _AIS.AIS_DataMapOfIOStatus_Find(self, *args)

    def ChangeSeek(self, theKey: "opencascade::handle< AIS_InteractiveObject > const &") -> "opencascade::handle< AIS_GlobalStatus > *":
        return _AIS.AIS_DataMapOfIOStatus_ChangeSeek(self, theKey)

    def ChangeFind(self, theKey: "opencascade::handle< AIS_InteractiveObject > const &") -> "opencascade::handle< AIS_GlobalStatus > &":
        return _AIS.AIS_DataMapOfIOStatus_ChangeFind(self, theKey)

    def __call__(self, *args) -> "opencascade::handle< AIS_GlobalStatus > &":
        return _AIS.AIS_DataMapOfIOStatus___call__(self, *args)

    def Clear(self, *args) -> "void":
        return _AIS.AIS_DataMapOfIOStatus_Clear(self, *args)
    __swig_destroy__ = _AIS.delete_AIS_DataMapOfIOStatus

    def Size(self) -> "Standard_Integer":
        return _AIS.AIS_DataMapOfIOStatus_Size(self)

# Register AIS_DataMapOfIOStatus in _AIS:
_AIS.AIS_DataMapOfIOStatus_swigregister(AIS_DataMapOfIOStatus)

class AIS_DataMapOfShapeDrawer(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< TopoDS_Shape,opencascade::handle< AIS_ColoredDrawer >,TopTools_ShapeMapHasher >::iterator":
        return _AIS.AIS_DataMapOfShapeDrawer_begin(self)

    def end(self) -> "NCollection_DataMap< TopoDS_Shape,opencascade::handle< AIS_ColoredDrawer >,TopTools_ShapeMapHasher >::iterator":
        return _AIS.AIS_DataMapOfShapeDrawer_end(self)

    def cbegin(self) -> "NCollection_DataMap< TopoDS_Shape,opencascade::handle< AIS_ColoredDrawer >,TopTools_ShapeMapHasher >::const_iterator":
        return _AIS.AIS_DataMapOfShapeDrawer_cbegin(self)

    def cend(self) -> "NCollection_DataMap< TopoDS_Shape,opencascade::handle< AIS_ColoredDrawer >,TopTools_ShapeMapHasher >::const_iterator":
        return _AIS.AIS_DataMapOfShapeDrawer_cend(self)

    def __init__(self, *args):
        _AIS.AIS_DataMapOfShapeDrawer_swiginit(self, _AIS.new_AIS_DataMapOfShapeDrawer(*args))

    def Exchange(self, theOther: "AIS_DataMapOfShapeDrawer") -> "void":
        return _AIS.AIS_DataMapOfShapeDrawer_Exchange(self, theOther)

    def Assign(self, theOther: "AIS_DataMapOfShapeDrawer") -> "NCollection_DataMap< TopoDS_Shape,opencascade::handle< AIS_ColoredDrawer >,TopTools_ShapeMapHasher > &":
        return _AIS.AIS_DataMapOfShapeDrawer_Assign(self, theOther)

    def Set(self, theOther: "AIS_DataMapOfShapeDrawer") -> "NCollection_DataMap< TopoDS_Shape,opencascade::handle< AIS_ColoredDrawer >,TopTools_ShapeMapHasher > &":
        return _AIS.AIS_DataMapOfShapeDrawer_Set(self, theOther)

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

    def Bind(self, theKey: "TopoDS_Shape", theItem: "opencascade::handle< AIS_ColoredDrawer > const &") -> "Standard_Boolean":
        return _AIS.AIS_DataMapOfShapeDrawer_Bind(self, theKey, theItem)

    def Bound(self, theKey: "TopoDS_Shape", theItem: "opencascade::handle< AIS_ColoredDrawer > const &") -> "opencascade::handle< AIS_ColoredDrawer > *":
        return _AIS.AIS_DataMapOfShapeDrawer_Bound(self, theKey, theItem)

    def IsBound(self, theKey: "TopoDS_Shape") -> "Standard_Boolean":
        return _AIS.AIS_DataMapOfShapeDrawer_IsBound(self, theKey)

    def UnBind(self, theKey: "TopoDS_Shape") -> "Standard_Boolean":
        return _AIS.AIS_DataMapOfShapeDrawer_UnBind(self, theKey)

    def Seek(self, theKey: "TopoDS_Shape") -> "opencascade::handle< AIS_ColoredDrawer > const *":
        return _AIS.AIS_DataMapOfShapeDrawer_Seek(self, theKey)

    def Find(self, *args) -> "Standard_Boolean":
        return _AIS.AIS_DataMapOfShapeDrawer_Find(self, *args)

    def ChangeSeek(self, theKey: "TopoDS_Shape") -> "opencascade::handle< AIS_ColoredDrawer > *":
        return _AIS.AIS_DataMapOfShapeDrawer_ChangeSeek(self, theKey)

    def ChangeFind(self, theKey: "TopoDS_Shape") -> "opencascade::handle< AIS_ColoredDrawer > &":
        return _AIS.AIS_DataMapOfShapeDrawer_ChangeFind(self, theKey)

    def __call__(self, *args) -> "opencascade::handle< AIS_ColoredDrawer > &":
        return _AIS.AIS_DataMapOfShapeDrawer___call__(self, *args)

    def Clear(self, *args) -> "void":
        return _AIS.AIS_DataMapOfShapeDrawer_Clear(self, *args)
    __swig_destroy__ = _AIS.delete_AIS_DataMapOfShapeDrawer

    def Size(self) -> "Standard_Integer":
        return _AIS.AIS_DataMapOfShapeDrawer_Size(self)

# Register AIS_DataMapOfShapeDrawer in _AIS:
_AIS.AIS_DataMapOfShapeDrawer_swigregister(AIS_DataMapOfShapeDrawer)

class AIS_DataMapofIntegerListOfinteractive(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< int,AIS_ListOfInteractive,NCollection_DefaultHasher< int > >::iterator":
        return _AIS.AIS_DataMapofIntegerListOfinteractive_begin(self)

    def end(self) -> "NCollection_DataMap< int,AIS_ListOfInteractive,NCollection_DefaultHasher< int > >::iterator":
        return _AIS.AIS_DataMapofIntegerListOfinteractive_end(self)

    def cbegin(self) -> "NCollection_DataMap< int,AIS_ListOfInteractive,NCollection_DefaultHasher< int > >::const_iterator":
        return _AIS.AIS_DataMapofIntegerListOfinteractive_cbegin(self)

    def cend(self) -> "NCollection_DataMap< int,AIS_ListOfInteractive,NCollection_DefaultHasher< int > >::const_iterator":
        return _AIS.AIS_DataMapofIntegerListOfinteractive_cend(self)

    def __init__(self, *args):
        _AIS.AIS_DataMapofIntegerListOfinteractive_swiginit(self, _AIS.new_AIS_DataMapofIntegerListOfinteractive(*args))

    def Exchange(self, theOther: "NCollection_DataMap< Standard_Integer,AIS_ListOfInteractive,TColStd_MapIntegerHasher > &") -> "void":
        return _AIS.AIS_DataMapofIntegerListOfinteractive_Exchange(self, theOther)

    def Assign(self, theOther: "NCollection_DataMap< Standard_Integer,AIS_ListOfInteractive,TColStd_MapIntegerHasher > const &") -> "NCollection_DataMap< Standard_Integer,AIS_ListOfInteractive,TColStd_MapIntegerHasher > &":
        return _AIS.AIS_DataMapofIntegerListOfinteractive_Assign(self, theOther)

    def Set(self, theOther: "NCollection_DataMap< Standard_Integer,AIS_ListOfInteractive,TColStd_MapIntegerHasher > const &") -> "NCollection_DataMap< Standard_Integer,AIS_ListOfInteractive,TColStd_MapIntegerHasher > &":
        return _AIS.AIS_DataMapofIntegerListOfinteractive_Set(self, theOther)

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

    def Bind(self, theKey: "int const &", theItem: "AIS_ListOfInteractive") -> "Standard_Boolean":
        return _AIS.AIS_DataMapofIntegerListOfinteractive_Bind(self, theKey, theItem)

    def Bound(self, theKey: "int const &", theItem: "AIS_ListOfInteractive") -> "AIS_ListOfInteractive *":
        return _AIS.AIS_DataMapofIntegerListOfinteractive_Bound(self, theKey, theItem)

    def IsBound(self, theKey: "int const &") -> "Standard_Boolean":
        return _AIS.AIS_DataMapofIntegerListOfinteractive_IsBound(self, theKey)

    def UnBind(self, theKey: "int const &") -> "Standard_Boolean":
        return _AIS.AIS_DataMapofIntegerListOfinteractive_UnBind(self, theKey)

    def Seek(self, theKey: "int const &") -> "AIS_ListOfInteractive const *":
        return _AIS.AIS_DataMapofIntegerListOfinteractive_Seek(self, theKey)

    def Find(self, *args) -> "Standard_Boolean":
        return _AIS.AIS_DataMapofIntegerListOfinteractive_Find(self, *args)

    def ChangeSeek(self, theKey: "int const &") -> "AIS_ListOfInteractive *":
        return _AIS.AIS_DataMapofIntegerListOfinteractive_ChangeSeek(self, theKey)

    def ChangeFind(self, theKey: "int const &") -> "AIS_ListOfInteractive &":
        return _AIS.AIS_DataMapofIntegerListOfinteractive_ChangeFind(self, theKey)

    def __call__(self, *args) -> "AIS_ListOfInteractive &":
        return _AIS.AIS_DataMapofIntegerListOfinteractive___call__(self, *args)

    def Clear(self, *args) -> "void":
        return _AIS.AIS_DataMapofIntegerListOfinteractive_Clear(self, *args)
    __swig_destroy__ = _AIS.delete_AIS_DataMapofIntegerListOfinteractive

    def Size(self) -> "Standard_Integer":
        return _AIS.AIS_DataMapofIntegerListOfinteractive_Size(self)

    def Keys(self) -> "PyObject *":
        return _AIS.AIS_DataMapofIntegerListOfinteractive_Keys(self)

# Register AIS_DataMapofIntegerListOfinteractive in _AIS:
_AIS.AIS_DataMapofIntegerListOfinteractive_swigregister(AIS_DataMapofIntegerListOfinteractive)

class AIS_IndexedDataMapOfOwnerPrs(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_IndexedDataMap< opencascade::handle< SelectMgr_EntityOwner >,opencascade::handle< Graphic3d_Structure >,NCollection_DefaultHasher< opencascade::handle< Standard_Transient > > >::iterator":
        return _AIS.AIS_IndexedDataMapOfOwnerPrs_begin(self)

    def end(self) -> "NCollection_IndexedDataMap< opencascade::handle< SelectMgr_EntityOwner >,opencascade::handle< Graphic3d_Structure >,NCollection_DefaultHasher< opencascade::handle< Standard_Transient > > >::iterator":
        return _AIS.AIS_IndexedDataMapOfOwnerPrs_end(self)

    def cbegin(self) -> "NCollection_IndexedDataMap< opencascade::handle< SelectMgr_EntityOwner >,opencascade::handle< Graphic3d_Structure >,NCollection_DefaultHasher< opencascade::handle< Standard_Transient > > >::const_iterator":
        return _AIS.AIS_IndexedDataMapOfOwnerPrs_cbegin(self)

    def cend(self) -> "NCollection_IndexedDataMap< opencascade::handle< SelectMgr_EntityOwner >,opencascade::handle< Graphic3d_Structure >,NCollection_DefaultHasher< opencascade::handle< Standard_Transient > > >::const_iterator":
        return _AIS.AIS_IndexedDataMapOfOwnerPrs_cend(self)

    def __init__(self, *args):
        _AIS.AIS_IndexedDataMapOfOwnerPrs_swiginit(self, _AIS.new_AIS_IndexedDataMapOfOwnerPrs(*args))

    def Exchange(self, theOther: "AIS_IndexedDataMapOfOwnerPrs") -> "void":
        return _AIS.AIS_IndexedDataMapOfOwnerPrs_Exchange(self, theOther)

    def Assign(self, theOther: "AIS_IndexedDataMapOfOwnerPrs") -> "NCollection_IndexedDataMap< opencascade::handle< SelectMgr_EntityOwner >,opencascade::handle< Prs3d_Presentation >,TColStd_MapTransientHasher > &":
        return _AIS.AIS_IndexedDataMapOfOwnerPrs_Assign(self, theOther)

    def Set(self, theOther: "AIS_IndexedDataMapOfOwnerPrs") -> "NCollection_IndexedDataMap< opencascade::handle< SelectMgr_EntityOwner >,opencascade::handle< Prs3d_Presentation >,TColStd_MapTransientHasher > &":
        return _AIS.AIS_IndexedDataMapOfOwnerPrs_Set(self, theOther)

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

    def Add(self, theKey1: "opencascade::handle< SelectMgr_EntityOwner > const &", theItem: "opencascade::handle< Graphic3d_Structure > const &") -> "Standard_Integer":
        return _AIS.AIS_IndexedDataMapOfOwnerPrs_Add(self, theKey1, theItem)

    def Contains(self, theKey1: "opencascade::handle< SelectMgr_EntityOwner > const &") -> "Standard_Boolean":
        return _AIS.AIS_IndexedDataMapOfOwnerPrs_Contains(self, theKey1)

    def Substitute(self, theIndex: "Standard_Integer const", theKey1: "opencascade::handle< SelectMgr_EntityOwner > const &", theItem: "opencascade::handle< Graphic3d_Structure > const &") -> "void":
        return _AIS.AIS_IndexedDataMapOfOwnerPrs_Substitute(self, theIndex, theKey1, theItem)

    def Swap(self, theIndex1: "Standard_Integer const", theIndex2: "Standard_Integer const") -> "void":
        return _AIS.AIS_IndexedDataMapOfOwnerPrs_Swap(self, theIndex1, theIndex2)

    def RemoveLast(self) -> "void":
        return _AIS.AIS_IndexedDataMapOfOwnerPrs_RemoveLast(self)

    def RemoveFromIndex(self, theIndex: "Standard_Integer const") -> "void":
        return _AIS.AIS_IndexedDataMapOfOwnerPrs_RemoveFromIndex(self, theIndex)

    def RemoveKey(self, theKey1: "opencascade::handle< SelectMgr_EntityOwner > const &") -> "void":
        return _AIS.AIS_IndexedDataMapOfOwnerPrs_RemoveKey(self, theKey1)

    def FindKey(self, theIndex: "Standard_Integer const") -> "opencascade::handle< SelectMgr_EntityOwner > const &":
        return _AIS.AIS_IndexedDataMapOfOwnerPrs_FindKey(self, theIndex)

    def FindFromIndex(self, theIndex: "Standard_Integer const") -> "opencascade::handle< Graphic3d_Structure > const &":
        return _AIS.AIS_IndexedDataMapOfOwnerPrs_FindFromIndex(self, theIndex)

    def ChangeFromIndex(self, theIndex: "Standard_Integer const") -> "opencascade::handle< Graphic3d_Structure > &":
        return _AIS.AIS_IndexedDataMapOfOwnerPrs_ChangeFromIndex(self, theIndex)

    def __call__(self, *args) -> "opencascade::handle< Graphic3d_Structure > &":
        return _AIS.AIS_IndexedDataMapOfOwnerPrs___call__(self, *args)

    def FindIndex(self, theKey1: "opencascade::handle< SelectMgr_EntityOwner > const &") -> "Standard_Integer":
        return _AIS.AIS_IndexedDataMapOfOwnerPrs_FindIndex(self, theKey1)

    def ChangeFromKey(self, theKey1: "opencascade::handle< SelectMgr_EntityOwner > const &") -> "opencascade::handle< Graphic3d_Structure > &":
        return _AIS.AIS_IndexedDataMapOfOwnerPrs_ChangeFromKey(self, theKey1)

    def Seek(self, theKey1: "opencascade::handle< SelectMgr_EntityOwner > const &") -> "opencascade::handle< Graphic3d_Structure > const *":
        return _AIS.AIS_IndexedDataMapOfOwnerPrs_Seek(self, theKey1)

    def ChangeSeek(self, theKey1: "opencascade::handle< SelectMgr_EntityOwner > const &") -> "opencascade::handle< Graphic3d_Structure > *":
        return _AIS.AIS_IndexedDataMapOfOwnerPrs_ChangeSeek(self, theKey1)

    def FindFromKey(self, *args) -> "Standard_Boolean":
        return _AIS.AIS_IndexedDataMapOfOwnerPrs_FindFromKey(self, *args)

    def Clear(self, *args) -> "void":
        return _AIS.AIS_IndexedDataMapOfOwnerPrs_Clear(self, *args)
    __swig_destroy__ = _AIS.delete_AIS_IndexedDataMapOfOwnerPrs

    def Size(self) -> "Standard_Integer":
        return _AIS.AIS_IndexedDataMapOfOwnerPrs_Size(self)

# Register AIS_IndexedDataMapOfOwnerPrs in _AIS:
_AIS.AIS_IndexedDataMapOfOwnerPrs_swigregister(AIS_IndexedDataMapOfOwnerPrs)

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

    def __init__(self, *args):
        _AIS.AIS_ListIteratorOfListOfInteractive_swiginit(self, _AIS.new_AIS_ListIteratorOfListOfInteractive(*args))

    def More(self) -> "Standard_Boolean":
        return _AIS.AIS_ListIteratorOfListOfInteractive_More(self)

    def Next(self) -> "void":
        return _AIS.AIS_ListIteratorOfListOfInteractive_Next(self)

    def Value(self) -> "opencascade::handle< AIS_InteractiveObject > const &":
        return _AIS.AIS_ListIteratorOfListOfInteractive_Value(self)

    def ChangeValue(self) -> "opencascade::handle< AIS_InteractiveObject > &":
        return _AIS.AIS_ListIteratorOfListOfInteractive_ChangeValue(self)
    __swig_destroy__ = _AIS.delete_AIS_ListIteratorOfListOfInteractive

# Register AIS_ListIteratorOfListOfInteractive in _AIS:
_AIS.AIS_ListIteratorOfListOfInteractive_swigregister(AIS_ListIteratorOfListOfInteractive)

class AIS_ListOfInteractive(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_List< opencascade::handle< AIS_InteractiveObject > >::iterator":
        return _AIS.AIS_ListOfInteractive_begin(self)

    def end(self) -> "NCollection_List< opencascade::handle< AIS_InteractiveObject > >::iterator":
        return _AIS.AIS_ListOfInteractive_end(self)

    def cbegin(self) -> "NCollection_List< opencascade::handle< AIS_InteractiveObject > >::const_iterator":
        return _AIS.AIS_ListOfInteractive_cbegin(self)

    def cend(self) -> "NCollection_List< opencascade::handle< AIS_InteractiveObject > >::const_iterator":
        return _AIS.AIS_ListOfInteractive_cend(self)

    def __init__(self, *args):
        _AIS.AIS_ListOfInteractive_swiginit(self, _AIS.new_AIS_ListOfInteractive(*args))

    def Size(self) -> "Standard_Integer":
        return _AIS.AIS_ListOfInteractive_Size(self)

    def Assign(self, theOther: "AIS_ListOfInteractive") -> "NCollection_List< opencascade::handle< AIS_InteractiveObject > > &":
        return _AIS.AIS_ListOfInteractive_Assign(self, theOther)

    def Set(self, theOther: "AIS_ListOfInteractive") -> "NCollection_List< opencascade::handle< AIS_InteractiveObject > > &":
        return _AIS.AIS_ListOfInteractive_Set(self, theOther)

    def Clear(self, theAllocator: "opencascade::handle< NCollection_BaseAllocator > const &"=0) -> "void":
        return _AIS.AIS_ListOfInteractive_Clear(self, theAllocator)

    def First(self) -> "opencascade::handle< AIS_InteractiveObject > const &":
        return _AIS.AIS_ListOfInteractive_First(self)

    def Last(self) -> "opencascade::handle< AIS_InteractiveObject > const &":
        return _AIS.AIS_ListOfInteractive_Last(self)

    def Append(self, *args) -> "void":
        return _AIS.AIS_ListOfInteractive_Append(self, *args)

    def Prepend(self, *args) -> "void":
        return _AIS.AIS_ListOfInteractive_Prepend(self, *args)

    def RemoveFirst(self) -> "void":
        return _AIS.AIS_ListOfInteractive_RemoveFirst(self)

    def Remove(self, theIter: "AIS_ListIteratorOfListOfInteractive") -> "void":
        return _AIS.AIS_ListOfInteractive_Remove(self, theIter)

    def InsertBefore(self, *args) -> "void":
        return _AIS.AIS_ListOfInteractive_InsertBefore(self, *args)

    def InsertAfter(self, *args) -> "void":
        return _AIS.AIS_ListOfInteractive_InsertAfter(self, *args)

    def Reverse(self) -> "void":
        return _AIS.AIS_ListOfInteractive_Reverse(self)
    __swig_destroy__ = _AIS.delete_AIS_ListOfInteractive

    def __len__(self):
        return self.Size()


# Register AIS_ListOfInteractive in _AIS:
_AIS.AIS_ListOfInteractive_swigregister(AIS_ListOfInteractive)

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

    def cbegin(self) -> "NCollection_Map< opencascade::handle< AIS_InteractiveObject >,NCollection_DefaultHasher< opencascade::handle< Standard_Transient > > >::const_iterator":
        return _AIS.AIS_MapOfInteractive_cbegin(self)

    def cend(self) -> "NCollection_Map< opencascade::handle< AIS_InteractiveObject >,NCollection_DefaultHasher< opencascade::handle< Standard_Transient > > >::const_iterator":
        return _AIS.AIS_MapOfInteractive_cend(self)

    def __init__(self, *args):
        _AIS.AIS_MapOfInteractive_swiginit(self, _AIS.new_AIS_MapOfInteractive(*args))

    def Exchange(self, theOther: "AIS_MapOfInteractive") -> "void":
        return _AIS.AIS_MapOfInteractive_Exchange(self, theOther)

    def Assign(self, theOther: "AIS_MapOfInteractive") -> "NCollection_Map< opencascade::handle< AIS_InteractiveObject >,TColStd_MapTransientHasher > &":
        return _AIS.AIS_MapOfInteractive_Assign(self, theOther)

    def Set(self, theOther: "AIS_MapOfInteractive") -> "NCollection_Map< opencascade::handle< AIS_InteractiveObject >,TColStd_MapTransientHasher > &":
        return _AIS.AIS_MapOfInteractive_Set(self, theOther)

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

    def Add(self, K: "opencascade::handle< AIS_InteractiveObject > const &") -> "Standard_Boolean":
        return _AIS.AIS_MapOfInteractive_Add(self, K)

    def Added(self, K: "opencascade::handle< AIS_InteractiveObject > const &") -> "opencascade::handle< AIS_InteractiveObject > const &":
        return _AIS.AIS_MapOfInteractive_Added(self, K)

    def Remove(self, K: "opencascade::handle< AIS_InteractiveObject > const &") -> "Standard_Boolean":
        return _AIS.AIS_MapOfInteractive_Remove(self, K)

    def Clear(self, *args) -> "void":
        return _AIS.AIS_MapOfInteractive_Clear(self, *args)
    __swig_destroy__ = _AIS.delete_AIS_MapOfInteractive

    def Size(self) -> "Standard_Integer":
        return _AIS.AIS_MapOfInteractive_Size(self)

    def IsEqual(self, theOther: "AIS_MapOfInteractive") -> "Standard_Boolean":
        return _AIS.AIS_MapOfInteractive_IsEqual(self, theOther)

    def Contains(self, *args) -> "Standard_Boolean":
        return _AIS.AIS_MapOfInteractive_Contains(self, *args)

    def Union(self, theLeft: "AIS_MapOfInteractive", theRight: "AIS_MapOfInteractive") -> "void":
        return _AIS.AIS_MapOfInteractive_Union(self, theLeft, theRight)

    def Unite(self, theOther: "AIS_MapOfInteractive") -> "Standard_Boolean":
        return _AIS.AIS_MapOfInteractive_Unite(self, theOther)

    def HasIntersection(self, theMap: "AIS_MapOfInteractive") -> "Standard_Boolean":
        return _AIS.AIS_MapOfInteractive_HasIntersection(self, theMap)

    def Intersection(self, theLeft: "AIS_MapOfInteractive", theRight: "AIS_MapOfInteractive") -> "void":
        return _AIS.AIS_MapOfInteractive_Intersection(self, theLeft, theRight)

    def Intersect(self, theOther: "AIS_MapOfInteractive") -> "Standard_Boolean":
        return _AIS.AIS_MapOfInteractive_Intersect(self, theOther)

    def Subtraction(self, theLeft: "AIS_MapOfInteractive", theRight: "AIS_MapOfInteractive") -> "void":
        return _AIS.AIS_MapOfInteractive_Subtraction(self, theLeft, theRight)

    def Subtract(self, theOther: "AIS_MapOfInteractive") -> "Standard_Boolean":
        return _AIS.AIS_MapOfInteractive_Subtract(self, theOther)

    def Difference(self, theLeft: "AIS_MapOfInteractive", theRight: "AIS_MapOfInteractive") -> "void":
        return _AIS.AIS_MapOfInteractive_Difference(self, theLeft, theRight)

    def Differ(self, theOther: "AIS_MapOfInteractive") -> "Standard_Boolean":
        return _AIS.AIS_MapOfInteractive_Differ(self, theOther)

# Register AIS_MapOfInteractive in _AIS:
_AIS.AIS_MapOfInteractive_swigregister(AIS_MapOfInteractive)

class AIS_MouseGestureMap(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< unsigned int,enum AIS_MouseGesture >::iterator":
        return _AIS.AIS_MouseGestureMap_begin(self)

    def end(self) -> "NCollection_DataMap< unsigned int,enum AIS_MouseGesture >::iterator":
        return _AIS.AIS_MouseGestureMap_end(self)

    def cbegin(self) -> "NCollection_DataMap< unsigned int,enum AIS_MouseGesture >::const_iterator":
        return _AIS.AIS_MouseGestureMap_cbegin(self)

    def cend(self) -> "NCollection_DataMap< unsigned int,enum AIS_MouseGesture >::const_iterator":
        return _AIS.AIS_MouseGestureMap_cend(self)

    def __init__(self, *args):
        _AIS.AIS_MouseGestureMap_swiginit(self, _AIS.new_AIS_MouseGestureMap(*args))

    def Exchange(self, theOther: "AIS_MouseGestureMap") -> "void":
        return _AIS.AIS_MouseGestureMap_Exchange(self, theOther)

    def Assign(self, theOther: "AIS_MouseGestureMap") -> "NCollection_DataMap< unsigned int,AIS_MouseGesture > &":
        return _AIS.AIS_MouseGestureMap_Assign(self, theOther)

    def Set(self, theOther: "AIS_MouseGestureMap") -> "NCollection_DataMap< unsigned int,AIS_MouseGesture > &":
        return _AIS.AIS_MouseGestureMap_Set(self, theOther)

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

    def Bind(self, theKey: "unsigned int const &", theItem: "AIS_MouseGesture const &") -> "Standard_Boolean":
        return _AIS.AIS_MouseGestureMap_Bind(self, theKey, theItem)

    def Bound(self, theKey: "unsigned int const &", theItem: "AIS_MouseGesture const &") -> "AIS_MouseGesture *":
        return _AIS.AIS_MouseGestureMap_Bound(self, theKey, theItem)

    def IsBound(self, theKey: "unsigned int const &") -> "Standard_Boolean":
        return _AIS.AIS_MouseGestureMap_IsBound(self, theKey)

    def UnBind(self, theKey: "unsigned int const &") -> "Standard_Boolean":
        return _AIS.AIS_MouseGestureMap_UnBind(self, theKey)

    def Seek(self, theKey: "unsigned int const &") -> "AIS_MouseGesture const *":
        return _AIS.AIS_MouseGestureMap_Seek(self, theKey)

    def Find(self, *args) -> "Standard_Boolean":
        return _AIS.AIS_MouseGestureMap_Find(self, *args)

    def ChangeSeek(self, theKey: "unsigned int const &") -> "AIS_MouseGesture *":
        return _AIS.AIS_MouseGestureMap_ChangeSeek(self, theKey)

    def ChangeFind(self, theKey: "unsigned int const &") -> "AIS_MouseGesture &":
        return _AIS.AIS_MouseGestureMap_ChangeFind(self, theKey)

    def __call__(self, *args) -> "AIS_MouseGesture &":
        return _AIS.AIS_MouseGestureMap___call__(self, *args)

    def Clear(self, *args) -> "void":
        return _AIS.AIS_MouseGestureMap_Clear(self, *args)
    __swig_destroy__ = _AIS.delete_AIS_MouseGestureMap

    def Size(self) -> "Standard_Integer":
        return _AIS.AIS_MouseGestureMap_Size(self)

# Register AIS_MouseGestureMap in _AIS:
_AIS.AIS_MouseGestureMap_swigregister(AIS_MouseGestureMap)

class AIS_NListOfEntityOwner(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_List< opencascade::handle< SelectMgr_EntityOwner > >::iterator":
        return _AIS.AIS_NListOfEntityOwner_begin(self)

    def end(self) -> "NCollection_List< opencascade::handle< SelectMgr_EntityOwner > >::iterator":
        return _AIS.AIS_NListOfEntityOwner_end(self)

    def cbegin(self) -> "NCollection_List< opencascade::handle< SelectMgr_EntityOwner > >::const_iterator":
        return _AIS.AIS_NListOfEntityOwner_cbegin(self)

    def cend(self) -> "NCollection_List< opencascade::handle< SelectMgr_EntityOwner > >::const_iterator":
        return _AIS.AIS_NListOfEntityOwner_cend(self)

    def __init__(self, *args):
        _AIS.AIS_NListOfEntityOwner_swiginit(self, _AIS.new_AIS_NListOfEntityOwner(*args))

    def Size(self) -> "Standard_Integer":
        return _AIS.AIS_NListOfEntityOwner_Size(self)

    def Assign(self, theOther: "AIS_NListOfEntityOwner") -> "NCollection_List< opencascade::handle< SelectMgr_EntityOwner > > &":
        return _AIS.AIS_NListOfEntityOwner_Assign(self, theOther)

    def Set(self, theOther: "AIS_NListOfEntityOwner") -> "NCollection_List< opencascade::handle< SelectMgr_EntityOwner > > &":
        return _AIS.AIS_NListOfEntityOwner_Set(self, theOther)

    def Clear(self, theAllocator: "opencascade::handle< NCollection_BaseAllocator > const &"=0) -> "void":
        return _AIS.AIS_NListOfEntityOwner_Clear(self, theAllocator)

    def First(self) -> "opencascade::handle< SelectMgr_EntityOwner > const &":
        return _AIS.AIS_NListOfEntityOwner_First(self)

    def Last(self) -> "opencascade::handle< SelectMgr_EntityOwner > const &":
        return _AIS.AIS_NListOfEntityOwner_Last(self)

    def Append(self, *args) -> "void":
        return _AIS.AIS_NListOfEntityOwner_Append(self, *args)

    def Prepend(self, *args) -> "void":
        return _AIS.AIS_NListOfEntityOwner_Prepend(self, *args)

    def RemoveFirst(self) -> "void":
        return _AIS.AIS_NListOfEntityOwner_RemoveFirst(self)

    def Remove(self, theIter: "NCollection_List< opencascade::handle< SelectMgr_EntityOwner > >::Iterator &") -> "void":
        return _AIS.AIS_NListOfEntityOwner_Remove(self, theIter)

    def InsertBefore(self, *args) -> "void":
        return _AIS.AIS_NListOfEntityOwner_InsertBefore(self, *args)

    def InsertAfter(self, *args) -> "void":
        return _AIS.AIS_NListOfEntityOwner_InsertAfter(self, *args)

    def Reverse(self) -> "void":
        return _AIS.AIS_NListOfEntityOwner_Reverse(self)
    __swig_destroy__ = _AIS.delete_AIS_NListOfEntityOwner

    def __len__(self):
        return self.Size()


# Register AIS_NListOfEntityOwner in _AIS:
_AIS.AIS_NListOfEntityOwner_swigregister(AIS_NListOfEntityOwner)

class AIS_SequenceOfInteractive(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_Sequence< opencascade::handle< AIS_InteractiveObject > >::iterator":
        return _AIS.AIS_SequenceOfInteractive_begin(self)

    def end(self) -> "NCollection_Sequence< opencascade::handle< AIS_InteractiveObject > >::iterator":
        return _AIS.AIS_SequenceOfInteractive_end(self)

    def cbegin(self) -> "NCollection_Sequence< opencascade::handle< AIS_InteractiveObject > >::const_iterator":
        return _AIS.AIS_SequenceOfInteractive_cbegin(self)

    def cend(self) -> "NCollection_Sequence< opencascade::handle< AIS_InteractiveObject > >::const_iterator":
        return _AIS.AIS_SequenceOfInteractive_cend(self)

    def __init__(self, *args):
        _AIS.AIS_SequenceOfInteractive_swiginit(self, _AIS.new_AIS_SequenceOfInteractive(*args))

    def Size(self) -> "Standard_Integer":
        return _AIS.AIS_SequenceOfInteractive_Size(self)

    def Length(self) -> "Standard_Integer":
        return _AIS.AIS_SequenceOfInteractive_Length(self)

    def Lower(self) -> "Standard_Integer":
        return _AIS.AIS_SequenceOfInteractive_Lower(self)

    def Upper(self) -> "Standard_Integer":
        return _AIS.AIS_SequenceOfInteractive_Upper(self)

    def IsEmpty(self) -> "Standard_Boolean":
        return _AIS.AIS_SequenceOfInteractive_IsEmpty(self)

    def Reverse(self) -> "void":
        return _AIS.AIS_SequenceOfInteractive_Reverse(self)

    def Exchange(self, I: "Standard_Integer const", J: "Standard_Integer const") -> "void":
        return _AIS.AIS_SequenceOfInteractive_Exchange(self, I, J)

    @staticmethod
    def delNode(theNode: "NCollection_SeqNode *", theAl: "opencascade::handle< NCollection_BaseAllocator > &") -> "void":
        return _AIS.AIS_SequenceOfInteractive_delNode(theNode, theAl)

    def Clear(self, theAllocator: "opencascade::handle< NCollection_BaseAllocator > const &"=0) -> "void":
        return _AIS.AIS_SequenceOfInteractive_Clear(self, theAllocator)

    def Assign(self, theOther: "AIS_SequenceOfInteractive") -> "NCollection_Sequence< opencascade::handle< AIS_InteractiveObject > > &":
        return _AIS.AIS_SequenceOfInteractive_Assign(self, theOther)

    def Set(self, theOther: "AIS_SequenceOfInteractive") -> "NCollection_Sequence< opencascade::handle< AIS_InteractiveObject > > &":
        return _AIS.AIS_SequenceOfInteractive_Set(self, theOther)

    def Remove(self, *args) -> "void":
        return _AIS.AIS_SequenceOfInteractive_Remove(self, *args)

    def Append(self, *args) -> "void":
        return _AIS.AIS_SequenceOfInteractive_Append(self, *args)

    def Prepend(self, *args) -> "void":
        return _AIS.AIS_SequenceOfInteractive_Prepend(self, *args)

    def InsertBefore(self, *args) -> "void":
        return _AIS.AIS_SequenceOfInteractive_InsertBefore(self, *args)

    def InsertAfter(self, *args) -> "void":
        return _AIS.AIS_SequenceOfInteractive_InsertAfter(self, *args)

    def Split(self, theIndex: "Standard_Integer const", theSeq: "AIS_SequenceOfInteractive") -> "void":
        return _AIS.AIS_SequenceOfInteractive_Split(self, theIndex, theSeq)

    def First(self) -> "opencascade::handle< AIS_InteractiveObject > const &":
        return _AIS.AIS_SequenceOfInteractive_First(self)

    def ChangeFirst(self) -> "opencascade::handle< AIS_InteractiveObject > &":
        return _AIS.AIS_SequenceOfInteractive_ChangeFirst(self)

    def Last(self) -> "opencascade::handle< AIS_InteractiveObject > const &":
        return _AIS.AIS_SequenceOfInteractive_Last(self)

    def ChangeLast(self) -> "opencascade::handle< AIS_InteractiveObject > &":
        return _AIS.AIS_SequenceOfInteractive_ChangeLast(self)

    def Value(self, theIndex: "Standard_Integer const") -> "opencascade::handle< AIS_InteractiveObject > const &":
        return _AIS.AIS_SequenceOfInteractive_Value(self, theIndex)

    def ChangeValue(self, theIndex: "Standard_Integer const") -> "opencascade::handle< AIS_InteractiveObject > &":
        return _AIS.AIS_SequenceOfInteractive_ChangeValue(self, theIndex)

    def __call__(self, *args) -> "opencascade::handle< AIS_InteractiveObject > &":
        return _AIS.AIS_SequenceOfInteractive___call__(self, *args)

    def SetValue(self, theIndex: "Standard_Integer const", theItem: "opencascade::handle< AIS_InteractiveObject > const &") -> "void":
        return _AIS.AIS_SequenceOfInteractive_SetValue(self, theIndex, theItem)
    __swig_destroy__ = _AIS.delete_AIS_SequenceOfInteractive

    def __len__(self):
        return self.Size()


# Register AIS_SequenceOfInteractive in _AIS:
_AIS.AIS_SequenceOfInteractive_swigregister(AIS_SequenceOfInteractive)

def AIS_SequenceOfInteractive_delNode(theNode: "NCollection_SeqNode *", theAl: "opencascade::handle< NCollection_BaseAllocator > &") -> "void":
    return _AIS.AIS_SequenceOfInteractive_delNode(theNode, theAl)

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

    __repr__ = _dumps_object


    def __init__(self):
        _AIS.ais_swiginit(self, _AIS.new_ais())
    __swig_destroy__ = _AIS.delete_ais

# Register ais in _AIS:
_AIS.ais_swigregister(ais)

class AIS_Animation(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"""
        Creates empty animation.

        Parameters
        ----------
        theAnimationName: TCollection_AsciiString

        Returns
        -------
        None

        """
        _AIS.AIS_Animation_swiginit(self, _AIS.new_AIS_Animation(*args))

    def Add(self, *args) -> "void":
        r"""
        Add single animation to the timeline. @param theanimation input animation.

        Parameters
        ----------
        theAnimation: AIS_Animation

        Returns
        -------
        None

        """
        return _AIS.AIS_Animation_Add(self, *args)

    def Children(self, *args) -> "NCollection_Sequence< opencascade::handle< AIS_Animation > > const &":
        r"""
        Return sequence of child animations.

        Returns
        -------
        NCollection_Sequence<opencascade::handle<AIS_Animation>>

        """
        return _AIS.AIS_Animation_Children(self, *args)

    def Clear(self, *args) -> "void":
        r"""
        Clear animation timeline - remove all animations from it.

        Returns
        -------
        None

        """
        return _AIS.AIS_Animation_Clear(self, *args)

    def CopyFrom(self, *args) -> "void":
        r"""
        Clears own children and then copy child animations from another object. copy also start time and duration values.

        Parameters
        ----------
        theOther: AIS_Animation

        Returns
        -------
        None

        """
        return _AIS.AIS_Animation_CopyFrom(self, *args)

    def Duration(self, *args) -> "Standard_Real":
        r"""
        Returns duration of the animation in the timeline.

        Returns
        -------
        float

        """
        return _AIS.AIS_Animation_Duration(self, *args)

    def ElapsedTime(self, *args) -> "Standard_Real":
        r"""
        Return elapsed time.

        Returns
        -------
        float

        """
        return _AIS.AIS_Animation_ElapsedTime(self, *args)

    def Find(self, *args) -> "opencascade::handle< AIS_Animation >":
        r"""
        Return the child animation with the given name.

        Parameters
        ----------
        theAnimationName: TCollection_AsciiString

        Returns
        -------
        opencascade::handle<AIS_Animation>

        """
        return _AIS.AIS_Animation_Find(self, *args)

    def HasOwnDuration(self, *args) -> "Standard_Boolean":
        r"""
        Return true if duration is defined.

        Returns
        -------
        bool

        """
        return _AIS.AIS_Animation_HasOwnDuration(self, *args)

    def IsStopped(self, *args) -> "bool":
        r"""
        Check if animation is to be performed in the animation timeline. returns true if it is stopped of finished.

        Returns
        -------
        bool

        """
        return _AIS.AIS_Animation_IsStopped(self, *args)

    def Name(self, *args) -> "TCollection_AsciiString const &":
        r"""
        Animation name.

        Returns
        -------
        TCollection_AsciiString

        """
        return _AIS.AIS_Animation_Name(self, *args)

    def OwnDuration(self, *args) -> "Standard_Real":
        r"""
        Returns own duration of the animation in the timeline.

        Returns
        -------
        float

        """
        return _AIS.AIS_Animation_OwnDuration(self, *args)

    def Pause(self, *args) -> "void":
        r"""
        Pause the process timeline.

        Returns
        -------
        None

        """
        return _AIS.AIS_Animation_Pause(self, *args)

    def Remove(self, *args) -> "Standard_Boolean":
        r"""
        Remove the child animation.

        Parameters
        ----------
        theAnimation: AIS_Animation

        Returns
        -------
        bool

        """
        return _AIS.AIS_Animation_Remove(self, *args)

    def Replace(self, *args) -> "Standard_Boolean":
        r"""
        Replace the child animation.

        Parameters
        ----------
        theAnimationOld: AIS_Animation
        theAnimationNew: AIS_Animation

        Returns
        -------
        bool

        """
        return _AIS.AIS_Animation_Replace(self, *args)

    def SetOwnDuration(self, *args) -> "void":
        r"""
        Defines duration of the animation.

        Parameters
        ----------
        theDuration: float

        Returns
        -------
        None

        """
        return _AIS.AIS_Animation_SetOwnDuration(self, *args)

    def SetStartPts(self, *args) -> "void":
        r"""
        Sets time limits for animation in the animation timeline.

        Parameters
        ----------
        thePtsStart: float

        Returns
        -------
        None

        """
        return _AIS.AIS_Animation_SetStartPts(self, *args)

    def Start(self, *args) -> "void":
        r"""
        Start animation. this method changes status of the animation to started. this status defines whether animation is to be performed in the timeline or not. @param thetoupdate call update() method.

        Parameters
        ----------
        theToUpdate: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_Animation_Start(self, *args)

    def StartPts(self, *args) -> "Standard_Real":
        r"""
        Returns start time of the animation in the timeline.

        Returns
        -------
        float

        """
        return _AIS.AIS_Animation_StartPts(self, *args)

    def StartTimer(self, *args) -> "void":
        r"""
        Start animation with internally defined timer instance. calls ::start() internally. //! note, that this method initializes a timer calculating an elapsed time (presentation timestamps within ais_animation::updatetimer()), not a multimedia timer executing viewer updates at specific intervals! viewer redrawing should be managed at application level, so that ais_animation::updatetimer() is called once right before each redrawing of a viewer content. //! @param thestartpts starting timer position (presentation timestamp) @param theplayspeed playback speed (1.0 means normal speed) @param thetoupdate flag to update defined animations to specified start position @param thetostoptimer flag to pause timer at the starting position.

        Parameters
        ----------
        theStartPts: float
        thePlaySpeed: float
        theToUpdate: bool
        theToStopTimer: bool,optional
        	default value is Standard_False

        Returns
        -------
        None

        """
        return _AIS.AIS_Animation_StartTimer(self, *args)

    def Stop(self, *args) -> "void":
        r"""
        Stop animation. this method changed status of the animation to stopped. this status shows that animation will not be performed in the timeline or it is finished.

        Returns
        -------
        None

        """
        return _AIS.AIS_Animation_Stop(self, *args)

    def Update(self, *args) -> "Standard_Boolean":
        r"""
        Update single frame of animation, update timer state @param thepts [in] the time moment within [0; duration()] returns true if timeline is in progress.

        Parameters
        ----------
        thePts: float

        Returns
        -------
        bool

        """
        return _AIS.AIS_Animation_Update(self, *args)

    def UpdateTimer(self, *args) -> "Standard_Real":
        r"""
        Update single frame of animation, update timer state returns current time of timeline progress.

        Returns
        -------
        float

        """
        return _AIS.AIS_Animation_UpdateTimer(self, *args)

    def UpdateTotalDuration(self, *args) -> "void":
        r"""
        Update total duration considering all animations on timeline.

        Returns
        -------
        None

        """
        return _AIS.AIS_Animation_UpdateTotalDuration(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_Animation

# Register AIS_Animation in _AIS:
_AIS.AIS_Animation_swigregister(AIS_Animation)

class AIS_AnimationProgress(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Pts = property(_AIS.AIS_AnimationProgress_Pts_get, _AIS.AIS_AnimationProgress_Pts_set)
    LocalPts = property(_AIS.AIS_AnimationProgress_LocalPts_get, _AIS.AIS_AnimationProgress_LocalPts_set)
    LocalNormalized = property(_AIS.AIS_AnimationProgress_LocalNormalized_get, _AIS.AIS_AnimationProgress_LocalNormalized_set)

    def __init__(self, *args):
        r"""
        No available documentation.

        Returns
        -------
        None

        """
        _AIS.AIS_AnimationProgress_swiginit(self, _AIS.new_AIS_AnimationProgress(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_AnimationProgress

# Register AIS_AnimationProgress in _AIS:
_AIS.AIS_AnimationProgress_swigregister(AIS_AnimationProgress)

class AIS_AttributeFilter(OCC.Core.SelectMgr.SelectMgr_Filter):
    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 attribute filter object. this filter object determines whether selectable interactive objects have a non-null owner.

        Returns
        -------
        None
        Constructs an attribute filter object defined by the color attribute acol.

        Parameters
        ----------
        aCol: Quantity_NameOfColor

        Returns
        -------
        None
        Constructs an attribute filter object defined by the line width attribute awidth.

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

        Returns
        -------
        None

        """
        _AIS.AIS_AttributeFilter_swiginit(self, _AIS.new_AIS_AttributeFilter(*args))

    def HasColor(self, *args) -> "Standard_Boolean":
        r"""
        Indicates that the interactive object has the color setting specified by the argument acol at construction time.

        Returns
        -------
        bool

        """
        return _AIS.AIS_AttributeFilter_HasColor(self, *args)

    def HasWidth(self, *args) -> "Standard_Boolean":
        r"""
        Indicates that the interactive object has the width setting specified by the argument awidth at construction time.

        Returns
        -------
        bool

        """
        return _AIS.AIS_AttributeFilter_HasWidth(self, *args)

    def SetColor(self, *args) -> "void":
        r"""
        Sets the color acol. this must be chosen from the list of colors in quantity_nameofcolor.

        Parameters
        ----------
        aCol: Quantity_NameOfColor

        Returns
        -------
        None

        """
        return _AIS.AIS_AttributeFilter_SetColor(self, *args)

    def SetWidth(self, *args) -> "void":
        r"""
        Sets the line width awidth.

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

        Returns
        -------
        None

        """
        return _AIS.AIS_AttributeFilter_SetWidth(self, *args)

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

        Returns
        -------
        None

        """
        return _AIS.AIS_AttributeFilter_UnsetColor(self, *args)

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

        Returns
        -------
        None

        """
        return _AIS.AIS_AttributeFilter_UnsetWidth(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_AttributeFilter

# Register AIS_AttributeFilter in _AIS:
_AIS.AIS_AttributeFilter_swigregister(AIS_AttributeFilter)

class AIS_BadEdgeFilter(OCC.Core.SelectMgr.SelectMgr_Filter):
    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 filter object for bad edges.

        Returns
        -------
        None

        """
        _AIS.AIS_BadEdgeFilter_swiginit(self, _AIS.new_AIS_BadEdgeFilter(*args))

    def AddEdge(self, *args) -> "void":
        r"""
        Adds an edge to the list of non-selectionnable edges.

        Parameters
        ----------
        anEdge: TopoDS_Edge
        Index: int

        Returns
        -------
        None

        """
        return _AIS.AIS_BadEdgeFilter_AddEdge(self, *args)

    def RemoveEdges(self, *args) -> "void":
        r"""
        Removes from the list of non-selectionnable edges all edges in the contour <index>.

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

        Returns
        -------
        None

        """
        return _AIS.AIS_BadEdgeFilter_RemoveEdges(self, *args)

    def SetContour(self, *args) -> "void":
        r"""
        Sets <mycontour> with current contour. used by isok.

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

        Returns
        -------
        None

        """
        return _AIS.AIS_BadEdgeFilter_SetContour(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_BadEdgeFilter

# Register AIS_BadEdgeFilter in _AIS:
_AIS.AIS_BadEdgeFilter_swigregister(AIS_BadEdgeFilter)

class AIS_C0RegularityFilter(OCC.Core.SelectMgr.SelectMgr_Filter):
    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.

        Parameters
        ----------
        aShape: TopoDS_Shape

        Returns
        -------
        None

        """
        _AIS.AIS_C0RegularityFilter_swiginit(self, _AIS.new_AIS_C0RegularityFilter(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_C0RegularityFilter

# Register AIS_C0RegularityFilter in _AIS:
_AIS.AIS_C0RegularityFilter_swigregister(AIS_C0RegularityFilter)

class AIS_ColoredDrawer(OCC.Core.Prs3d.Prs3d_Drawer):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    myIsHidden = property(_AIS.AIS_ColoredDrawer_myIsHidden_get, _AIS.AIS_ColoredDrawer_myIsHidden_set, doc=r"""myIsHidden : bool""")
    myHasOwnMaterial = property(_AIS.AIS_ColoredDrawer_myHasOwnMaterial_get, _AIS.AIS_ColoredDrawer_myHasOwnMaterial_set, doc=r"""myHasOwnMaterial : bool""")
    myHasOwnColor = property(_AIS.AIS_ColoredDrawer_myHasOwnColor_get, _AIS.AIS_ColoredDrawer_myHasOwnColor_set, doc=r"""myHasOwnColor : bool""")
    myHasOwnTransp = property(_AIS.AIS_ColoredDrawer_myHasOwnTransp_get, _AIS.AIS_ColoredDrawer_myHasOwnTransp_set, doc=r"""myHasOwnTransp : bool""")
    myHasOwnWidth = property(_AIS.AIS_ColoredDrawer_myHasOwnWidth_get, _AIS.AIS_ColoredDrawer_myHasOwnWidth_set, doc=r"""myHasOwnWidth : bool""")

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

        Parameters
        ----------
        theLink: Prs3d_Drawer

        Returns
        -------
        None

        """
        _AIS.AIS_ColoredDrawer_swiginit(self, _AIS.new_AIS_ColoredDrawer(*args))

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

        Returns
        -------
        bool

        """
        return _AIS.AIS_ColoredDrawer_HasOwnColor(self, *args)

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

        Returns
        -------
        bool

        """
        return _AIS.AIS_ColoredDrawer_HasOwnMaterial(self, *args)

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

        Returns
        -------
        bool

        """
        return _AIS.AIS_ColoredDrawer_HasOwnTransparency(self, *args)

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

        Returns
        -------
        bool

        """
        return _AIS.AIS_ColoredDrawer_HasOwnWidth(self, *args)

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

        Returns
        -------
        bool

        """
        return _AIS.AIS_ColoredDrawer_IsHidden(self, *args)

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

        Parameters
        ----------
        theToHide: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_ColoredDrawer_SetHidden(self, *args)

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

        Parameters
        ----------
        &: Quantity_Color

        Returns
        -------
        None

        """
        return _AIS.AIS_ColoredDrawer_SetOwnColor(self, *args)

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

        Returns
        -------
        None

        """
        return _AIS.AIS_ColoredDrawer_SetOwnMaterial(self, *args)

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

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

        Returns
        -------
        None

        """
        return _AIS.AIS_ColoredDrawer_SetOwnTransparency(self, *args)

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

        Parameters
        ----------
        Standard_Real: 

        Returns
        -------
        None

        """
        return _AIS.AIS_ColoredDrawer_SetOwnWidth(self, *args)

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

        Returns
        -------
        None

        """
        return _AIS.AIS_ColoredDrawer_UnsetOwnColor(self, *args)

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

        Returns
        -------
        None

        """
        return _AIS.AIS_ColoredDrawer_UnsetOwnMaterial(self, *args)

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

        Returns
        -------
        None

        """
        return _AIS.AIS_ColoredDrawer_UnsetOwnTransparency(self, *args)

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

        Returns
        -------
        None

        """
        return _AIS.AIS_ColoredDrawer_UnsetOwnWidth(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_ColoredDrawer

# Register AIS_ColoredDrawer in _AIS:
_AIS.AIS_ColoredDrawer_swigregister(AIS_ColoredDrawer)

class AIS_ExclusionFilter(OCC.Core.SelectMgr.SelectMgr_Filter):
    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 exclusion filter object defined by the flag setting exclusionflagon. by default, the flag is set to true.

        Parameters
        ----------
        ExclusionFlagOn: bool,optional
        	default value is Standard_True

        Returns
        -------
        None
        All the ais objects of <typetoexclude> will be rejected by the isok method.

        Parameters
        ----------
        TypeToExclude: AIS_KindOfInteractive
        ExclusionFlagOn: bool,optional
        	default value is Standard_True

        Returns
        -------
        None
        Constructs an exclusion filter object defined by the enumeration value typetoexclude, the signature signatureintype, and the flag setting exclusionflagon. by default, the flag is set to true.

        Parameters
        ----------
        TypeToExclude: AIS_KindOfInteractive
        SignatureInType: int
        ExclusionFlagOn: bool,optional
        	default value is Standard_True

        Returns
        -------
        None

        """
        _AIS.AIS_ExclusionFilter_swiginit(self, _AIS.new_AIS_ExclusionFilter(*args))

    def Add(self, *args) -> "Standard_Boolean":
        r"""
        Adds the type typetoexclude to the list of types.

        Parameters
        ----------
        TypeToExclude: AIS_KindOfInteractive

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

        Parameters
        ----------
        TypeToExclude: AIS_KindOfInteractive
        SignatureInType: int

        Returns
        -------
        bool

        """
        return _AIS.AIS_ExclusionFilter_Add(self, *args)

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

        Returns
        -------
        None

        """
        return _AIS.AIS_ExclusionFilter_Clear(self, *args)

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

        Returns
        -------
        bool

        """
        return _AIS.AIS_ExclusionFilter_IsExclusionFlagOn(self, *args)

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

        Parameters
        ----------
        aType: AIS_KindOfInteractive

        Returns
        -------
        bool

        """
        return _AIS.AIS_ExclusionFilter_IsStored(self, *args)

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

        Parameters
        ----------
        aType: AIS_KindOfInteractive
        TheStoredList: TColStd_ListOfInteger

        Returns
        -------
        None

        """
        return _AIS.AIS_ExclusionFilter_ListOfSignature(self, *args)

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

        Parameters
        ----------
        TheList: TColStd_ListOfInteger

        Returns
        -------
        None

        """
        return _AIS.AIS_ExclusionFilter_ListOfStoredTypes(self, *args)

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

        Parameters
        ----------
        TypeToExclude: AIS_KindOfInteractive

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

        Parameters
        ----------
        TypeToExclude: AIS_KindOfInteractive
        SignatureInType: int

        Returns
        -------
        bool

        """
        return _AIS.AIS_ExclusionFilter_Remove(self, *args)

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

        Parameters
        ----------
        Status: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_ExclusionFilter_SetExclusionFlag(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_ExclusionFilter

# Register AIS_ExclusionFilter in _AIS:
_AIS.AIS_ExclusionFilter_swigregister(AIS_ExclusionFilter)

class AIS_GlobalStatus(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"""
        No available documentation.

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        aStat: AIS_DisplayStatus
        aDispMode: int
        aSelMode: int
        ishilighted: bool,optional
        	default value is Standard_False
        aLayerIndex: int,optional
        	default value is 0

        Returns
        -------
        None

        """
        _AIS.AIS_GlobalStatus_swiginit(self, _AIS.new_AIS_GlobalStatus(*args))

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

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

        Returns
        -------
        None

        """
        return _AIS.AIS_GlobalStatus_AddSelectionMode(self, *args)

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

        Returns
        -------
        None

        """
        return _AIS.AIS_GlobalStatus_ClearSelectionModes(self, *args)

    def DisplayMode(self, *args) -> "Standard_Integer":
        r"""
        Returns the display mode.

        Returns
        -------
        int

        """
        return _AIS.AIS_GlobalStatus_DisplayMode(self, *args)

    def GetLayerIndex(self, *args) -> "Standard_Integer":
        r"""
        Returns layer index.

        Returns
        -------
        int

        """
        return _AIS.AIS_GlobalStatus_GetLayerIndex(self, *args)

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

        Returns
        -------
        AIS_DisplayStatus

        """
        return _AIS.AIS_GlobalStatus_GraphicStatus(self, *args)

    def HilightStyle(self, *args) -> "opencascade::handle< Prs3d_Drawer > const &":
        r"""
        Returns applied highlight style for a particular object.

        Returns
        -------
        opencascade::handle<Prs3d_Drawer>

        """
        return _AIS.AIS_GlobalStatus_HilightStyle(self, *args)

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

        Returns
        -------
        bool

        """
        return _AIS.AIS_GlobalStatus_IsHilighted(self, *args)

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

        Parameters
        ----------
        aMode: int

        Returns
        -------
        bool

        """
        return _AIS.AIS_GlobalStatus_IsSModeIn(self, *args)

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

        Returns
        -------
        bool

        """
        return _AIS.AIS_GlobalStatus_IsSubIntensityOn(self, *args)

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

        Parameters
        ----------
        aMode: int

        Returns
        -------
        None

        """
        return _AIS.AIS_GlobalStatus_RemoveSelectionMode(self, *args)

    def SelectionModes(self, *args) -> "TColStd_ListOfInteger const &":
        r"""
        Keeps the active selection modes of the object in the main viewer.

        Returns
        -------
        TColStd_ListOfInteger

        """
        return _AIS.AIS_GlobalStatus_SelectionModes(self, *args)

    def SetDisplayMode(self, *args) -> "void":
        r"""
        Sets display mode.

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

        Returns
        -------
        None

        """
        return _AIS.AIS_GlobalStatus_SetDisplayMode(self, *args)

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

        Parameters
        ----------
        theStatus: AIS_DisplayStatus

        Returns
        -------
        None

        """
        return _AIS.AIS_GlobalStatus_SetGraphicStatus(self, *args)

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

        Parameters
        ----------
        theStatus: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_GlobalStatus_SetHilightStatus(self, *args)

    def SetHilightStyle(self, *args) -> "void":
        r"""
        Changes applied highlight style for a particular object.

        Parameters
        ----------
        theStyle: Prs3d_Drawer

        Returns
        -------
        None

        """
        return _AIS.AIS_GlobalStatus_SetHilightStyle(self, *args)

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

        Parameters
        ----------
        theIndex: int

        Returns
        -------
        None

        """
        return _AIS.AIS_GlobalStatus_SetLayerIndex(self, *args)

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

        Returns
        -------
        None

        """
        return _AIS.AIS_GlobalStatus_SubIntensityOff(self, *args)

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

        Returns
        -------
        None

        """
        return _AIS.AIS_GlobalStatus_SubIntensityOn(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_GlobalStatus

# Register AIS_GlobalStatus in _AIS:
_AIS.AIS_GlobalStatus_swigregister(AIS_GlobalStatus)

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

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

        Parameters
        ----------
        aDrawer: Prs3d_Drawer

        Returns
        -------
        Quantity_NameOfColor
        No available documentation.

        Parameters
        ----------
        aDrawer: Prs3d_Drawer
        aColor: Quantity_Color

        Returns
        -------
        None

        """
        return _AIS.AIS_GraphicTool_GetInteriorColor(*args)

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

        Parameters
        ----------
        aDrawer: Prs3d_Drawer
        TheTypeOfAttributes: AIS_TypeOfAttribute
        aCol: Quantity_NameOfColor
        aTyp: Aspect_TypeOfLine

        Returns
        -------
        aWidth: float

        """
        return _AIS.AIS_GraphicTool_GetLineAtt(*args)

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

        Parameters
        ----------
        aDrawer: Prs3d_Drawer
        TheTypeOfAttributes: AIS_TypeOfAttribute

        Returns
        -------
        Quantity_NameOfColor
        No available documentation.

        Parameters
        ----------
        aDrawer: Prs3d_Drawer
        TheTypeOfAttributes: AIS_TypeOfAttribute
        TheLineColor: Quantity_Color

        Returns
        -------
        None

        """
        return _AIS.AIS_GraphicTool_GetLineColor(*args)

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

        Parameters
        ----------
        aDrawer: Prs3d_Drawer
        TheTypeOfAttributes: AIS_TypeOfAttribute

        Returns
        -------
        Aspect_TypeOfLine

        """
        return _AIS.AIS_GraphicTool_GetLineType(*args)

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

        Parameters
        ----------
        aDrawer: Prs3d_Drawer
        TheTypeOfAttributes: AIS_TypeOfAttribute

        Returns
        -------
        float

        """
        return _AIS.AIS_GraphicTool_GetLineWidth(*args)

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

        Parameters
        ----------
        aDrawer: Prs3d_Drawer

        Returns
        -------
        Graphic3d_MaterialAspect

        """
        return _AIS.AIS_GraphicTool_GetMaterial(*args)

    __repr__ = _dumps_object


    def __init__(self):
        _AIS.AIS_GraphicTool_swiginit(self, _AIS.new_AIS_GraphicTool())
    __swig_destroy__ = _AIS.delete_AIS_GraphicTool

# Register AIS_GraphicTool in _AIS:
_AIS.AIS_GraphicTool_swigregister(AIS_GraphicTool)

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

    Parameters
    ----------
    aDrawer: Prs3d_Drawer

    Returns
    -------
    Quantity_NameOfColor
    No available documentation.

    Parameters
    ----------
    aDrawer: Prs3d_Drawer
    aColor: Quantity_Color

    Returns
    -------
    None

    """
    return _AIS.AIS_GraphicTool_GetInteriorColor(*args)

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

    Parameters
    ----------
    aDrawer: Prs3d_Drawer
    TheTypeOfAttributes: AIS_TypeOfAttribute
    aCol: Quantity_NameOfColor
    aTyp: Aspect_TypeOfLine

    Returns
    -------
    aWidth: float

    """
    return _AIS.AIS_GraphicTool_GetLineAtt(*args)

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

    Parameters
    ----------
    aDrawer: Prs3d_Drawer
    TheTypeOfAttributes: AIS_TypeOfAttribute

    Returns
    -------
    Quantity_NameOfColor
    No available documentation.

    Parameters
    ----------
    aDrawer: Prs3d_Drawer
    TheTypeOfAttributes: AIS_TypeOfAttribute
    TheLineColor: Quantity_Color

    Returns
    -------
    None

    """
    return _AIS.AIS_GraphicTool_GetLineColor(*args)

def AIS_GraphicTool_GetLineType(*args) -> "Aspect_TypeOfLine":
    r"""
    No available documentation.

    Parameters
    ----------
    aDrawer: Prs3d_Drawer
    TheTypeOfAttributes: AIS_TypeOfAttribute

    Returns
    -------
    Aspect_TypeOfLine

    """
    return _AIS.AIS_GraphicTool_GetLineType(*args)

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

    Parameters
    ----------
    aDrawer: Prs3d_Drawer
    TheTypeOfAttributes: AIS_TypeOfAttribute

    Returns
    -------
    float

    """
    return _AIS.AIS_GraphicTool_GetLineWidth(*args)

def AIS_GraphicTool_GetMaterial(*args) -> "Graphic3d_MaterialAspect":
    r"""
    No available documentation.

    Parameters
    ----------
    aDrawer: Prs3d_Drawer

    Returns
    -------
    Graphic3d_MaterialAspect

    """
    return _AIS.AIS_GraphicTool_GetMaterial(*args)

class AIS_InteractiveContext(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"""
        Constructs the interactive context object defined by the principal viewer mainviewer.

        Parameters
        ----------
        MainViewer: V3d_Viewer

        Returns
        -------
        None

        """
        _AIS.AIS_InteractiveContext_swiginit(self, _AIS.new_AIS_InteractiveContext(*args))

    def Activate(self, *args) -> "void":
        r"""
        Activates the selection mode amode whose index is given, for the given interactive entity aniobj.

        Parameters
        ----------
        theObj: AIS_InteractiveObject
        theMode: int,optional
        	default value is 0
        theIsForce: bool,optional
        	default value is Standard_False

        Returns
        -------
        None
        Activates the given selection mode for the all displayed objects.

        Parameters
        ----------
        theMode: int
        theIsForce: bool,optional
        	default value is Standard_False

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_Activate(self, *args)

    def ActivatedModes(self, *args) -> "void":
        r"""
        Returns the list of activated selection modes.

        Parameters
        ----------
        anIobj: AIS_InteractiveObject
        theList: TColStd_ListOfInteger

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_ActivatedModes(self, *args)

    def AddFilter(self, *args) -> "void":
        r"""
        Allows you to add the filter.

        Parameters
        ----------
        theFilter: SelectMgr_Filter

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_AddFilter(self, *args)

    def AddOrRemoveCurrentObject(self, *args) -> "void":
        r"""
        Allows to add or remove the object given to the list of current and highlight/unhighlight it correspondingly. is valid for global context only; for local context use method addorremoveselected. since this method makes sence only for neutral point selection of a whole object, if 0 selection of the object is empty this method simply does nothing.

        Parameters
        ----------
        theObj: AIS_InteractiveObject
        theIsToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_AddOrRemoveCurrentObject(self, *args)

    def AddOrRemoveSelected(self, *args) -> "void":
        r"""
        Allows to highlight or unhighlight the owner given depending on its selection status.

        Parameters
        ----------
        theObject: AIS_InteractiveObject
        theToUpdateViewer: bool

        Returns
        -------
        None
        Allows to highlight or unhighlight the owner given depending on its selection status.

        Parameters
        ----------
        theOwner: SelectMgr_EntityOwner
        theToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_AddOrRemoveSelected(self, *args)

    def AddSelect(self, *args) -> "AIS_StatusOfPick":
        r"""
        Adds object in the selection.

        Parameters
        ----------
        theObject: SelectMgr_EntityOwner

        Returns
        -------
        AIS_StatusOfPick
        Adds object in the selection.

        Parameters
        ----------
        theObject: AIS_InteractiveObject

        Returns
        -------
        AIS_StatusOfPick

        """
        return _AIS.AIS_InteractiveContext_AddSelect(self, *args)

    def Applicative(self, *args) -> "opencascade::handle< Standard_Transient >":
        r"""
        Returns selectedinteractive()->getowner(). @sa selectedowner().

        Returns
        -------
        opencascade::handle<Standard_Transient>

        """
        return _AIS.AIS_InteractiveContext_Applicative(self, *args)

    def AutomaticHilight(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if the automatic highlight mode is active; true by default. @sa moveto(), select(), hilightwithcolor(), unhilight().

        Returns
        -------
        bool

        """
        return _AIS.AIS_InteractiveContext_AutomaticHilight(self, *args)

    def BeginImmediateDraw(self, *args) -> "Standard_Boolean":
        r"""
        Initializes the list of presentations to be displayed returns false if no local context is opened.

        Returns
        -------
        bool

        """
        return _AIS.AIS_InteractiveContext_BeginImmediateDraw(self, *args)

    def BoundingBoxOfSelection(self, *args) -> "Bnd_Box":
        r"""
        Returns bounding box of selected objects.

        Returns
        -------
        Bnd_Box

        """
        return _AIS.AIS_InteractiveContext_BoundingBoxOfSelection(self, *args)

    def ClearActiveSensitive(self, *args) -> "void":
        r"""
        Clear visualization of sensitives.

        Parameters
        ----------
        aView: V3d_View

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_ClearActiveSensitive(self, *args)

    def ClearCurrents(self, *args) -> "void":
        r"""
        Empties previous current objects in order to get the current objects detected by the selector using updatecurrent. objects selected when there is no open local context are called current objects; those selected in open local context, selected objects.

        Parameters
        ----------
        theToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_ClearCurrents(self, *args)

    def ClearDetected(self, *args) -> "Standard_Boolean":
        r"""
        Clears the list of entities detected by moveto() and resets dynamic highlighting. @param thetoredrawimmediate if true, the main viewer will be redrawn on update returns true if viewer needs to be updated (e.g. there were actually dynamically highlighted entities).

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

        Returns
        -------
        bool

        """
        return _AIS.AIS_InteractiveContext_ClearDetected(self, *args)

    def ClearPrs(self, *args) -> "void":
        r"""
        Empties the graphic presentation of the mode indexed by amode. warning! removes theiobj. theiobj is still active if it was previously activated.

        Parameters
        ----------
        theIObj: AIS_InteractiveObject
        theMode: int
        theToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_ClearPrs(self, *args)

    def ClearSelected(self, *args) -> "void":
        r"""
        Empties previous selected objects in order to get the selected objects detected by the selector using updateselected.

        Parameters
        ----------
        theToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_ClearSelected(self, *args)

    def Color(self, *args) -> "void":
        r"""
        Returns the color of the object in the interactive context.

        Parameters
        ----------
        aniobj: AIS_InteractiveObject
        acolor: Quantity_Color

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_Color(self, *args)

    def Current(self, *args) -> "opencascade::handle< AIS_InteractiveObject >":
        r"""
        Returns the current interactive object. objects selected when there is no open local context are called current objects; those selected in open local context, selected objects.

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

        """
        return _AIS.AIS_InteractiveContext_Current(self, *args)

    def CurrentViewer(self, *args) -> "opencascade::handle< V3d_Viewer > const &":
        r"""
        Returns the current viewer.

        Returns
        -------
        opencascade::handle<V3d_Viewer>

        """
        return _AIS.AIS_InteractiveContext_CurrentViewer(self, *args)

    def Deactivate(self, *args) -> "void":
        r"""
        Deactivates all the activated selection modes of an object.

        Parameters
        ----------
        theObj: AIS_InteractiveObject

        Returns
        -------
        None
        Deactivates all the activated selection modes of the interactive object aniobj with a given selection mode amode.

        Parameters
        ----------
        theObj: AIS_InteractiveObject
        theMode: int

        Returns
        -------
        None
        Deactivates the given selection mode for all displayed objects.

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

        Returns
        -------
        None
        Deactivates all the activated selection mode at all displayed objects.

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_Deactivate(self, *args)

    def DefaultDrawer(self, *args) -> "opencascade::handle< Prs3d_Drawer > const &":
        r"""
        Returns the default attribute manager. this contains all the color and line attributes which can be used by interactive objects which do not have their own attributes.

        Returns
        -------
        opencascade::handle<Prs3d_Drawer>

        """
        return _AIS.AIS_InteractiveContext_DefaultDrawer(self, *args)

    def DetectedCurrentObject(self, *args) -> "opencascade::handle< AIS_InteractiveObject >":
        r"""
        Returns current mouse-detected interactive object or null object, if there is no currently detected interactives @sa detectedcurrentowner()/initdetected()/moredetected()/nextdetected().

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

        """
        return _AIS.AIS_InteractiveContext_DetectedCurrentObject(self, *args)

    def DetectedCurrentOwner(self, *args) -> "opencascade::handle< SelectMgr_EntityOwner >":
        r"""
        Returns the owner from detected list pointed by current iterator position. warning! this method is irrelevant to detectedowner() which returns last picked owner regardless of iterator position! @sa initdetected()/moredetected()/nextdetected().

        Returns
        -------
        opencascade::handle<SelectMgr_EntityOwner>

        """
        return _AIS.AIS_InteractiveContext_DetectedCurrentOwner(self, *args)

    def DetectedCurrentShape(self, *args) -> "TopoDS_Shape const":
        r"""
        Returns current mouse-detected shape or empty (null) shape, if current interactive object is not a shape (ais_shape) or there is no current mouse-detected interactive object at all. @sa detectedcurrentowner()/initdetected()/moredetected()/nextdetected().

        Returns
        -------
        TopoDS_Shape

        """
        return _AIS.AIS_InteractiveContext_DetectedCurrentShape(self, *args)

    def DetectedInteractive(self, *args) -> "opencascade::handle< AIS_InteractiveObject >":
        r"""
        Returns the interactive objects last detected in context. in general this is just a wrapper for opencascade::handle<ais_interactiveobject>::downcast(detectedowner()->selectable()). @sa detectedowner().

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

        """
        return _AIS.AIS_InteractiveContext_DetectedInteractive(self, *args)

    def DetectedOwner(self, *args) -> "opencascade::handle< SelectMgr_EntityOwner > const &":
        r"""
        Returns the owner of the detected sensitive primitive which is currently dynamically highlighted. warning! this method is irrelevant to initdetected()/moredetected()/nextdetected(). @sa hasdetected()/hasnextdetected()/hilightpreviousdetected()/hilightnextdetected().

        Returns
        -------
        opencascade::handle<SelectMgr_EntityOwner>

        """
        return _AIS.AIS_InteractiveContext_DetectedOwner(self, *args)

    def DetectedShape(self, *args) -> "TopoDS_Shape const":
        r"""
        Returns the shape detected in local context. @sa detectedowner().

        Returns
        -------
        TopoDS_Shape

        """
        return _AIS.AIS_InteractiveContext_DetectedShape(self, *args)

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

        Returns
        -------
        float

        """
        return _AIS.AIS_InteractiveContext_DeviationAngle(self, *args)

    def DeviationCoefficient(self, *args) -> "Standard_Real":
        r"""
        Returns the deviation coefficient. drawings of curves or patches are made with respect to a maximal chordal deviation. a deviation coefficient is used in the shading display mode. the shape is seen decomposed into triangles. these are used to calculate reflection of light from the surface of the object. the triangles are formed from chords of the curves in the shape. the deviation coefficient gives the highest value of the angle with which a chord can deviate from a tangent to a curve. if this limit is reached, a new triangle is begun. this deviation is absolute and is set through prs3d_drawer::setmaximalchordialdeviation. the default value is 0.001. in drawing shapes, however, you are allowed to ask for a relative deviation. this deviation will be: sizeofobject * deviationcoefficient.

        Returns
        -------
        float

        """
        return _AIS.AIS_InteractiveContext_DeviationCoefficient(self, *args)

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

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_DisableDrawHiddenLine(self, *args)

    def Disconnect(self, *args) -> "void":
        r"""
        Disconnects theobjtodisconnect from theassembly and removes dependent selection structures.

        Parameters
        ----------
        theAssembly: AIS_InteractiveObject
        theObjToDisconnect: AIS_InteractiveObject,optional
        	default value is NULL

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_Disconnect(self, *args)

    def Display(self, *args) -> "void":
        r"""
        Displays the object in this context using default display mode. this will be the object's default display mode, if there is one. otherwise, it will be the context mode. the interactive object's default selection mode is activated if getautoactivateselection() is true. in general, this is 0.

        Parameters
        ----------
        theIObj: AIS_InteractiveObject
        theToUpdateViewer: bool

        Returns
        -------
        None
        Sets status, display mode and selection mode for specified object if theselectionmode equals -1, theiobj will not be activated: it will be displayed but will not be selectable.

        Parameters
        ----------
        theIObj: AIS_InteractiveObject
        theDispMode: int
        theSelectionMode: int
        theToUpdateViewer: bool
        theDispStatus: AIS_DisplayStatus,optional
        	default value is AIS_DS_None

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        theIObj: AIS_InteractiveObject
        theDispMode: int
        theSelectionMode: int
        theToUpdateViewer: bool
        theToAllowDecomposition: bool
        theDispStatus: AIS_DisplayStatus,optional
        	default value is AIS_DS_None

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_Display(self, *args)

    def DisplayActiveSensitive(self, *args) -> "void":
        r"""
        Visualization of sensitives - for debugging purposes!.

        Parameters
        ----------
        aView: V3d_View

        Returns
        -------
        None
        Visualization of sensitives - for debugging purposes!.

        Parameters
        ----------
        anObject: AIS_InteractiveObject
        aView: V3d_View

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_DisplayActiveSensitive(self, *args)

    def DisplayAll(self, *args) -> "void":
        r"""
        Displays all hidden objects.

        Parameters
        ----------
        theToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_DisplayAll(self, *args)

    def DisplayMode(self, *args) -> "Standard_Integer":
        r"""
        Returns the display mode setting to be used by default.

        Returns
        -------
        int

        """
        return _AIS.AIS_InteractiveContext_DisplayMode(self, *args)

    def DisplayPriority(self, *args) -> "Standard_Integer":
        r"""
        Returns the display priority of the object.

        Parameters
        ----------
        theIObj: AIS_InteractiveObject

        Returns
        -------
        int

        """
        return _AIS.AIS_InteractiveContext_DisplayPriority(self, *args)

    def DisplaySelected(self, *args) -> "void":
        r"""
        Displays current objects.

        Parameters
        ----------
        theToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_DisplaySelected(self, *args)

    def DisplayStatus(self, *args) -> "AIS_DisplayStatus":
        r"""
        Returns the display status of the entity aniobj. this will be one of the following: - ais_ds_displayed displayed in main viewer - ais_ds_erased hidden in main viewer - ais_ds_temporary temporarily displayed - ais_ds_none nowhere displayed.

        Parameters
        ----------
        anIobj: AIS_InteractiveObject

        Returns
        -------
        AIS_DisplayStatus

        """
        return _AIS.AIS_InteractiveContext_DisplayStatus(self, *args)

    def DisplayedObjects(self, *args) -> "void":
        r"""
        Returns the list of displayed objects of a particular type whichkind and signature whichsignature. by default, whichsignature equals -1. this means that there is a check on type only.

        Parameters
        ----------
        aListOfIO: AIS_ListOfInteractive

        Returns
        -------
        None
        Gives the list of displayed objects of a particular type and signature. by default, <whichsignature> = -1 means control only on <whichkind>.

        Parameters
        ----------
        theWhichKind: AIS_KindOfInteractive
        theWhichSignature: int
        theListOfIO: AIS_ListOfInteractive

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_DisplayedObjects(self, *args)

    def DrawHiddenLine(self, *args) -> "Standard_Boolean":
        r"""
        Returns standard_true if the hidden lines are to be drawn. by default the hidden lines are not drawn.

        Returns
        -------
        bool

        """
        return _AIS.AIS_InteractiveContext_DrawHiddenLine(self, *args)

    def DumpJsonToString(self, depth: "int"=-1) -> "std::string":
        r"""DumpJsonToString(AIS_InteractiveContext self, int depth=-1) -> std::string"""
        return _AIS.AIS_InteractiveContext_DumpJsonToString(self, depth)

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

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_EnableDrawHiddenLine(self, *args)

    def EndImmediateDraw(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if the immediate display has been done.

        Parameters
        ----------
        theView: V3d_View

        Returns
        -------
        bool
        Uses the first active view of main viewer! returns true if the immediate display has been done.

        Returns
        -------
        bool

        """
        return _AIS.AIS_InteractiveContext_EndImmediateDraw(self, *args)

    def Erase(self, *args) -> "void":
        r"""
        Hides the object. the object's presentations are simply flagged as invisible and therefore excluded from redrawing. to show hidden objects, use display().

        Parameters
        ----------
        theIObj: AIS_InteractiveObject
        theToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_Erase(self, *args)

    def EraseAll(self, *args) -> "void":
        r"""
        Hides all objects. the object's presentations are simply flagged as invisible and therefore excluded from redrawing. to show all hidden objects, use displayall().

        Parameters
        ----------
        theToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_EraseAll(self, *args)

    def EraseSelected(self, *args) -> "void":
        r"""
        Hides selected objects. the object's presentations are simply flagged as invisible and therefore excluded from redrawing. to show hidden objects, use display().

        Parameters
        ----------
        theToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_EraseSelected(self, *args)

    def ErasedObjects(self, *args) -> "void":
        r"""
        Returns the list thelistofio of erased objects (hidden objects) particular type whichkind and signature whichsignature. by default, whichsignature equals 1. this means that there is a check on type only.

        Parameters
        ----------
        theListOfIO: AIS_ListOfInteractive

        Returns
        -------
        None
        Gives the list of erased objects (hidden objects) type and signature by default, <whichsignature> = -1 means control only on <whichkind>.

        Parameters
        ----------
        theWhichKind: AIS_KindOfInteractive
        theWhichSignature: int
        theListOfIO: AIS_ListOfInteractive

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_ErasedObjects(self, *args)

    def FilterType(self, *args) -> "SelectMgr_FilterType":
        r"""
        Returns the context selection filter type.

        Returns
        -------
        SelectMgr_FilterType

        """
        return _AIS.AIS_InteractiveContext_FilterType(self, *args)

    def Filters(self, *args) -> "SelectMgr_ListOfFilter const &":
        r"""
        Returns the list of filters active in a local context.

        Returns
        -------
        SelectMgr_ListOfFilter

        """
        return _AIS.AIS_InteractiveContext_Filters(self, *args)

    def FirstSelectedObject(self, *args) -> "opencascade::handle< AIS_InteractiveObject >":
        r"""
        Returns the first selected object in the list of current selected.

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

        """
        return _AIS.AIS_InteractiveContext_FirstSelectedObject(self, *args)

    def FitSelected(self, *args) -> "void":
        r"""
        Fits the view correspondingly to the bounds of selected objects. infinite objects are ignored if infinite state of ais_interactiveobject is set to true.

        Parameters
        ----------
        theView: V3d_View
        theMargin: float
        theToUpdate: bool

        Returns
        -------
        None
        Fits the view correspondingly to the bounds of selected objects. infinite objects are ignored if infinite state of ais_interactiveobject is set to true.

        Parameters
        ----------
        theView: V3d_View

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_FitSelected(self, *args)

    def GetAutoActivateSelection(self, *args) -> "Standard_Boolean":
        r"""
        Manages displaying the new object should also automatically activate default selection mode; true by default.

        Returns
        -------
        bool

        """
        return _AIS.AIS_InteractiveContext_GetAutoActivateSelection(self, *args)

    def GetZLayer(self, *args) -> "Graphic3d_ZLayerId":
        r"""
        Get z layer id set for displayed interactive object.

        Parameters
        ----------
        theIObj: AIS_InteractiveObject

        Returns
        -------
        Graphic3d_ZLayerId

        """
        return _AIS.AIS_InteractiveContext_GetZLayer(self, *args)

    def GravityPoint(self, *args) -> "gp_Pnt":
        r"""
        Return rotation gravity point.

        Parameters
        ----------
        theView: V3d_View

        Returns
        -------
        gp_Pnt

        """
        return _AIS.AIS_InteractiveContext_GravityPoint(self, *args)

    def HasApplicative(self, *args) -> "Standard_Boolean":
        r"""
        Returns selectedinteractive()->hasowner(). @sa selectedowner().

        Returns
        -------
        bool

        """
        return _AIS.AIS_InteractiveContext_HasApplicative(self, *args)

    def HasColor(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if a view of the interactive object has color.

        Parameters
        ----------
        aniobj: AIS_InteractiveObject

        Returns
        -------
        bool

        """
        return _AIS.AIS_InteractiveContext_HasColor(self, *args)

    def HasDetected(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if there is a mouse-detected entity in context. @sa detectedowner()/hasnextdetected()/hilightpreviousdetected()/hilightnextdetected().

        Returns
        -------
        bool

        """
        return _AIS.AIS_InteractiveContext_HasDetected(self, *args)

    def HasDetectedShape(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if there is a detected shape in local context. @sa hasdetected()/detectedshape().

        Returns
        -------
        bool

        """
        return _AIS.AIS_InteractiveContext_HasDetectedShape(self, *args)

    def HasLocation(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if the object has a location.

        Parameters
        ----------
        theObject: AIS_InteractiveObject

        Returns
        -------
        bool

        """
        return _AIS.AIS_InteractiveContext_HasLocation(self, *args)

    def HasNextDetected(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if other entities were detected in the last mouse detection @sa hilightpreviousdetected()/hilightnextdetected().

        Returns
        -------
        bool

        """
        return _AIS.AIS_InteractiveContext_HasNextDetected(self, *args)

    def HasPolygonOffsets(self, *args) -> "Standard_Boolean":
        r"""
        Simply calls ais_interactiveobject::haspolygonoffsets().

        Parameters
        ----------
        anObj: AIS_InteractiveObject

        Returns
        -------
        bool

        """
        return _AIS.AIS_InteractiveContext_HasPolygonOffsets(self, *args)

    def HasSelectedShape(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if the interactive context has a shape selected. @sa selectedshape().

        Returns
        -------
        bool

        """
        return _AIS.AIS_InteractiveContext_HasSelectedShape(self, *args)

    def HiddenLineAspect(self, *args) -> "opencascade::handle< Prs3d_LineAspect >":
        r"""
        Initializes hidden line aspect in the default drawing tool, or drawer. the default values are: color: quantity_noc_yellow type of line: aspect_tol_dash width: 1.

        Returns
        -------
        opencascade::handle<Prs3d_LineAspect>

        """
        return _AIS.AIS_InteractiveContext_HiddenLineAspect(self, *args)

    def HighlightStyle(self, *args) -> "Standard_Boolean":
        r"""
        Returns highlight style settings.

        Parameters
        ----------
        theStyleType: Prs3d_TypeOfHighlight

        Returns
        -------
        opencascade::handle<Prs3d_Drawer>
        Returns current dynamic highlight style settings. by default: - the color of dynamic highlight is quantity_noc_cyan1; - the presentation for dynamic highlight is completely opaque; - the type of highlight is aspect_tohm_color.

        Returns
        -------
        opencascade::handle<Prs3d_Drawer>
        Returns highlight style of the object if it is marked as highlighted via global status @param theobj [in] the object to check.

        Parameters
        ----------
        theObj: AIS_InteractiveObject
        theStyle: Prs3d_Drawer

        Returns
        -------
        bool
        Returns highlight style of the owner if it is selected @param theowner [in] the owner to check.

        Parameters
        ----------
        theOwner: SelectMgr_EntityOwner
        theStyle: Prs3d_Drawer

        Returns
        -------
        bool

        """
        return _AIS.AIS_InteractiveContext_HighlightStyle(self, *args)

    def Hilight(self, *args) -> "void":
        r"""
        Updates the display in the viewer to take dynamic detection into account. on dynamic detection by the mouse cursor, sensitive primitives are highlighted. the highlight color of entities detected by mouse movement is white by default.

        Parameters
        ----------
        theObj: AIS_InteractiveObject
        theIsToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_Hilight(self, *args)

    def HilightCurrents(self, *args) -> "void":
        r"""
        Highlights current objects. objects selected when there is no open local context are called current objects; those selected in open local context, selected objects.

        Parameters
        ----------
        theToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_HilightCurrents(self, *args)

    def HilightNextDetected(self, *args) -> "Standard_Integer":
        r"""
        If more than 1 object is detected by the selector, only the 'best' owner is hilighted at the mouse position. this method allows the user to hilight one after another the other detected entities. if the method select is called, the selected entity will be the hilighted one! warning: loop method. when all the detected entities have been hilighted, the next call will hilight the first one again. returns the rank of hilighted entity @sa hasnextdetected()/hilightpreviousdetected().

        Parameters
        ----------
        theView: V3d_View
        theToRedrawImmediate: bool,optional
        	default value is Standard_True

        Returns
        -------
        int

        """
        return _AIS.AIS_InteractiveContext_HilightNextDetected(self, *args)

    def HilightPreviousDetected(self, *args) -> "Standard_Integer":
        r"""
        Same as previous methods in reverse direction. @sa hasnextdetected()/hilightnextdetected().

        Parameters
        ----------
        theView: V3d_View
        theToRedrawImmediate: bool,optional
        	default value is Standard_True

        Returns
        -------
        int

        """
        return _AIS.AIS_InteractiveContext_HilightPreviousDetected(self, *args)

    def HilightSelected(self, *args) -> "void":
        r"""
        Highlights selected objects.

        Parameters
        ----------
        theToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_HilightSelected(self, *args)

    def HilightWithColor(self, *args) -> "void":
        r"""
        Changes the color of all the lines of the object in view.

        Parameters
        ----------
        theObj: AIS_InteractiveObject
        theStyle: Prs3d_Drawer
        theToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_HilightWithColor(self, *args)

    def ImmediateAdd(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if <aniobj> has been stored in the list.

        Parameters
        ----------
        theObj: AIS_InteractiveObject
        theMode: int,optional
        	default value is 0

        Returns
        -------
        bool

        """
        return _AIS.AIS_InteractiveContext_ImmediateAdd(self, *args)

    def InitCurrent(self, *args) -> "void":
        r"""
        Initializes a scan of the current selected objects in neutral point. objects selected when there is no open local context are called current objects; those selected in open local context, selected objects.

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_InitCurrent(self, *args)

    def InitDetected(self, *args) -> "void":
        r"""
        Initialization for iteration through mouse-detected objects in interactive context or in local context if it is opened. @sa detectedcurrentowner()/moredetected()/nextdetected().

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_InitDetected(self, *args)

    def InitSelected(self, *args) -> "void":
        r"""
        Initializes a scan of the selected objects. @sa selectedowner()/moreselected()/nextselected().

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_InitSelected(self, *args)

    def IsCurrent(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if there is a non-null interactive object in neutral point. objects selected when there is no open local context are called current objects; those selected in open local context, selected objects.

        Parameters
        ----------
        theObject: AIS_InteractiveObject

        Returns
        -------
        bool

        """
        return _AIS.AIS_InteractiveContext_IsCurrent(self, *args)

    def IsDisplayed(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if object is displayed in the interactive context.

        Parameters
        ----------
        anIobj: AIS_InteractiveObject

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

        Parameters
        ----------
        aniobj: AIS_InteractiveObject
        aMode: int

        Returns
        -------
        bool

        """
        return _AIS.AIS_InteractiveContext_IsDisplayed(self, *args)

    def IsHilighted(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if the object is marked as highlighted via its global status @param theobj [in] the object to check.

        Parameters
        ----------
        theObj: AIS_InteractiveObject

        Returns
        -------
        bool
        Returns true if the owner is marked as selected @param theowner [in] the owner to check.

        Parameters
        ----------
        theOwner: SelectMgr_EntityOwner

        Returns
        -------
        bool

        """
        return _AIS.AIS_InteractiveContext_IsHilighted(self, *args)

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

        Returns
        -------
        bool

        """
        return _AIS.AIS_InteractiveContext_IsImmediateModeOn(self, *args)

    def IsSelected(self, *args) -> "Standard_Boolean":
        r"""
        Returns true is the owner given is selected.

        Parameters
        ----------
        theOwner: SelectMgr_EntityOwner

        Returns
        -------
        bool
        Returns true is the object given is selected.

        Parameters
        ----------
        theObj: AIS_InteractiveObject

        Returns
        -------
        bool

        """
        return _AIS.AIS_InteractiveContext_IsSelected(self, *args)

    def IsoNumber(self, *args) -> "Standard_Integer":
        r"""
        Returns the number of u and v isoparameters displayed.

        Parameters
        ----------
        WhichIsos: AIS_TypeOfIso,optional
        	default value is AIS_TOI_Both

        Returns
        -------
        int

        """
        return _AIS.AIS_InteractiveContext_IsoNumber(self, *args)

    def IsoOnPlane(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if drawing isoparameters on planes is enabled.

        Parameters
        ----------
        SwitchOn: bool

        Returns
        -------
        None
        Returns true if drawing isoparameters on planes is enabled. if <foruisos> = false,.

        Returns
        -------
        bool

        """
        return _AIS.AIS_InteractiveContext_IsoOnPlane(self, *args)

    def IsoOnTriangulation(self, *args) -> "Standard_Boolean":
        r"""
        Enables or disables on-triangulation build for isolines for a particular object. in case if on-triangulation builder is disabled, default on-plane builder will compute isolines for the object given.

        Parameters
        ----------
        theIsEnabled: bool
        theObject: AIS_InteractiveObject

        Returns
        -------
        None
        Enables or disables on-triangulation build for isolines for default drawer. in case if on-triangulation builder is disabled, default on-plane builder will compute isolines for the object given.

        Parameters
        ----------
        theToSwitchOn: bool

        Returns
        -------
        None
        Returns true if drawing isolines on triangulation algorithm is enabled.

        Returns
        -------
        bool

        """
        return _AIS.AIS_InteractiveContext_IsoOnTriangulation(self, *args)

    def LastActiveView(self, *args) -> "opencascade::handle< V3d_View >":
        r"""
        Returns last active view (argument of moveto()/select() methods).

        Returns
        -------
        opencascade::handle<V3d_View>

        """
        return _AIS.AIS_InteractiveContext_LastActiveView(self, *args)

    def Load(self, *args) -> "void":
        r"""
        Allows you to load the interactive object with a given selection mode, and/or with the desired decomposition option, whether the object is visualized or not. the loaded objects will be selectable but displayable in highlighting only when detected by the selector.

        Parameters
        ----------
        theObj: AIS_InteractiveObject
        theSelectionMode: int,optional
        	default value is -1

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        theObj: AIS_InteractiveObject
        theSelectionMode: int
        : bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_Load(self, *args)

    def Location(self, *args) -> "TopLoc_Location":
        r"""
        Returns the location of the object.

        Parameters
        ----------
        theObject: AIS_InteractiveObject

        Returns
        -------
        TopLoc_Location

        """
        return _AIS.AIS_InteractiveContext_Location(self, *args)

    def MainPrsMgr(self, *args) -> "opencascade::handle< PrsMgr_PresentationManager3d > const &":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<PrsMgr_PresentationManager3d>

        """
        return _AIS.AIS_InteractiveContext_MainPrsMgr(self, *args)

    def MainSelector(self, *args) -> "opencascade::handle< StdSelect_ViewerSelector3d > const &":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<StdSelect_ViewerSelector3d>

        """
        return _AIS.AIS_InteractiveContext_MainSelector(self, *args)

    def MoreCurrent(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if there is another object found by the scan of the list of current objects. objects selected when there is no open local context are called current objects; those selected in open local context, selected objects.

        Returns
        -------
        bool

        """
        return _AIS.AIS_InteractiveContext_MoreCurrent(self, *args)

    def MoreDetected(self, *args) -> "Standard_Boolean":
        r"""
        Return true if there is more mouse-detected objects after the current one during iteration through mouse-detected interactive objects. @sa detectedcurrentowner()/initdetected()/nextdetected().

        Returns
        -------
        bool

        """
        return _AIS.AIS_InteractiveContext_MoreDetected(self, *args)

    def MoreSelected(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if there is another object found by the scan of the list of selected objects. @sa selectedowner()/initselected()/nextselected().

        Returns
        -------
        bool

        """
        return _AIS.AIS_InteractiveContext_MoreSelected(self, *args)

    def MoveTo(self, *args) -> "AIS_StatusOfDetection":
        r"""
        Relays mouse position in pixels thexpix and theypix to the interactive context selectors. this is done by the view theview passing this position to the main viewer and updating it. if thetoredrawonupdate is set to false, callee should call redrawimmediate() to highlight detected object. @sa pickingstrategy().

        Parameters
        ----------
        theXPix: int
        theYPix: int
        theView: V3d_View
        theToRedrawOnUpdate: bool

        Returns
        -------
        AIS_StatusOfDetection

        """
        return _AIS.AIS_InteractiveContext_MoveTo(self, *args)

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

        Returns
        -------
        int

        """
        return _AIS.AIS_InteractiveContext_NbCurrents(self, *args)

    def NbSelected(self, *args) -> "Standard_Integer":
        r"""
        Count a number of selected entities using initselected()+moreselected()+nextselected() iterator. @sa selectedowner()/initselected()/moreselected()/nextselected().

        Returns
        -------
        int

        """
        return _AIS.AIS_InteractiveContext_NbSelected(self, *args)

    def NextCurrent(self, *args) -> "void":
        r"""
        Continues the scan to the next object in the list of current objects. objects selected when there is no open local context are called current objects; those selected in open local context, selected objects.

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_NextCurrent(self, *args)

    def NextDetected(self, *args) -> "void":
        r"""
        Gets next current object during iteration through mouse-detected interactive objects. @sa detectedcurrentowner()/initdetected()/moredetected().

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_NextDetected(self, *args)

    def NextSelected(self, *args) -> "void":
        r"""
        Continues the scan to the next object in the list of selected objects. @sa selectedowner()/initselected()/moreselected().

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_NextSelected(self, *args)

    def ObjectsByDisplayStatus(self, *args) -> "void":
        r"""
        Returns the list thelistofio of objects with indicated display status particular type whichkind and signature whichsignature. by default, whichsignature equals 1. this means that there is a check on type only.

        Parameters
        ----------
        theStatus: AIS_DisplayStatus
        theListOfIO: AIS_ListOfInteractive

        Returns
        -------
        None
        Gives the list of objects with indicated display status type and signature by default, <whichsignature> = -1 means control only on <whichkind>.

        Parameters
        ----------
        WhichKind: AIS_KindOfInteractive
        WhichSignature: int
        theStatus: AIS_DisplayStatus
        theListOfIO: AIS_ListOfInteractive

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_ObjectsByDisplayStatus(self, *args)

    def ObjectsForView(self, *args) -> "void":
        r"""
        Query objects visible or hidden in specified view due to affinity mask.

        Parameters
        ----------
        theListOfIO: AIS_ListOfInteractive
        theView: V3d_View
        theIsVisibleInView: bool
        theStatus: AIS_DisplayStatus,optional
        	default value is AIS_DS_None

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_ObjectsForView(self, *args)

    def ObjectsInside(self, *args) -> "void":
        r"""
        Fills <alistofio> with objects of a particular type and signature with no consideration of display status. by default, <whichsignature> = -1 means control only on <whichkind>. if <whichkind> = ais_koi_none and <whichsignature> = -1, all the objects are put into the list.

        Parameters
        ----------
        aListOfIO: AIS_ListOfInteractive
        WhichKind: AIS_KindOfInteractive,optional
        	default value is AIS_KOI_None
        WhichSignature: int,optional
        	default value is -1

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_ObjectsInside(self, *args)

    def PickingStrategy(self, *args) -> "SelectMgr_PickingStrategy":
        r"""
        Return picking strategy; selectmgr_pickingstrategy_firstacceptable by default. @sa moveto()/filters().

        Returns
        -------
        SelectMgr_PickingStrategy

        """
        return _AIS.AIS_InteractiveContext_PickingStrategy(self, *args)

    def PixelTolerance(self, *args) -> "Standard_Integer":
        r"""
        Returns the pixel tolerance, default is 2. pixel tolerance extends sensitivity within moveto() operation (picking by point) and can be adjusted by application based on user input precision (e.g. screen pixel density, input device precision, etc.).

        Returns
        -------
        int

        """
        return _AIS.AIS_InteractiveContext_PixelTolerance(self, *args)

    def PlaneSize(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if the length in the x direction xsize is the same as that in the y direction ysize.

        Parameters
        ----------

        Returns
        -------
        XSize: float
        YSize: float

        """
        return _AIS.AIS_InteractiveContext_PlaneSize(self, *args)

    def PolygonOffsets(self, *args) -> "void":
        r"""
        Retrieves current polygon offsets settings for object.

        Parameters
        ----------
        anObj: AIS_InteractiveObject
        aFactor: Standard_ShortReal
        aUnits: Standard_ShortReal

        Returns
        -------
        aMode: int

        """
        return _AIS.AIS_InteractiveContext_PolygonOffsets(self, *args)

    def PurgeDisplay(self, *args) -> "Standard_Integer":
        r"""
        Clears all the structures which don't belong to objects displayed at neutral point only effective when no local context is opened... returns the number of removed structures from the viewers.

        Returns
        -------
        int

        """
        return _AIS.AIS_InteractiveContext_PurgeDisplay(self, *args)

    def RebuildSelectionStructs(self, *args) -> "void":
        r"""
        Rebuilds 1st level of bvh selection forcibly.

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_RebuildSelectionStructs(self, *args)

    def RecomputePrsOnly(self, *args) -> "void":
        r"""
        Recomputes the displayed presentations, flags the others. doesn't update presentations.

        Parameters
        ----------
        theIObj: AIS_InteractiveObject
        theToUpdateViewer: bool
        theAllModes: bool,optional
        	default value is Standard_False

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_RecomputePrsOnly(self, *args)

    def RecomputeSelectionOnly(self, *args) -> "void":
        r"""
        Recomputes the active selections, flags the others. doesn't update presentations.

        Parameters
        ----------
        anIObj: AIS_InteractiveObject

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_RecomputeSelectionOnly(self, *args)

    def Redisplay(self, *args) -> "void":
        r"""
        Recomputes the seen parts presentation of the object. if theallmodes equals true, all presentations are present in the object even if unseen.

        Parameters
        ----------
        theIObj: AIS_InteractiveObject
        theToUpdateViewer: bool
        theAllModes: bool,optional
        	default value is Standard_False

        Returns
        -------
        None
        Recomputes the prs/selection of displayed objects of a given type and a given signature. if signature = -1 doesn't take signature criterion.

        Parameters
        ----------
        theTypeOfObject: AIS_KindOfInteractive
        theSignature: int
        theToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_Redisplay(self, *args)

    def RedrawImmediate(self, *args) -> "void":
        r"""
        Redraws immediate structures in all views of the viewer given taking into account its visibility.

        Parameters
        ----------
        theViewer: V3d_Viewer

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_RedrawImmediate(self, *args)

    def Remove(self, *args) -> "void":
        r"""
        Removes object from every viewer.

        Parameters
        ----------
        theIObj: AIS_InteractiveObject
        theToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_Remove(self, *args)

    def RemoveAll(self, *args) -> "void":
        r"""
        Removes all the objects from context.

        Parameters
        ----------
        theToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_RemoveAll(self, *args)

    def RemoveFilter(self, *args) -> "void":
        r"""
        Removes a filter from context.

        Parameters
        ----------
        theFilter: SelectMgr_Filter

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_RemoveFilter(self, *args)

    def RemoveFilters(self, *args) -> "void":
        r"""
        Remove all filters from context.

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_RemoveFilters(self, *args)

    def ResetLocation(self, *args) -> "void":
        r"""
        Puts the object back into its initial position.

        Parameters
        ----------
        theObject: AIS_InteractiveObject

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_ResetLocation(self, *args)

    def Select(self, *args) -> "AIS_StatusOfPick":
        r"""
        Selects everything found in the bounding rectangle defined by the pixel minima and maxima, xpmin, ypmin, xpmax, and ypmax in the view. the objects detected are passed to the main viewer, which is then updated.

        Parameters
        ----------
        theXPMin: int
        theYPMin: int
        theXPMax: int
        theYPMax: int
        theView: V3d_View
        theToUpdateViewer: bool

        Returns
        -------
        AIS_StatusOfPick
        Polyline selection; clears the previous picked list.

        Parameters
        ----------
        thePolyline: TColgp_Array1OfPnt2d
        theView: V3d_View
        theToUpdateViewer: bool

        Returns
        -------
        AIS_StatusOfPick
        Stores and hilights the previous detected; unhilights the previous picked. @sa moveto().

        Parameters
        ----------
        theToUpdateViewer: bool

        Returns
        -------
        AIS_StatusOfPick

        """
        return _AIS.AIS_InteractiveContext_Select(self, *args)

    def SelectedInteractive(self, *args) -> "opencascade::handle< AIS_InteractiveObject >":
        r"""
        Return opencascade::handle<ais_interactiveobject>::downcast (selectedowner()->selectable()). @sa selectedowner().

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

        """
        return _AIS.AIS_InteractiveContext_SelectedInteractive(self, *args)

    def SelectedOwner(self, *args) -> "opencascade::handle< SelectMgr_EntityOwner >":
        r"""
        Returns the owner of the selected entity. @sa initselected()/moreselected()/nextselected().

        Returns
        -------
        opencascade::handle<SelectMgr_EntityOwner>

        """
        return _AIS.AIS_InteractiveContext_SelectedOwner(self, *args)

    def SelectedShape(self, *args) -> "TopoDS_Shape":
        r"""
        Returns the selected shape. basically it is just a shape returned stored by stdselect_brepowner with graphic transformation being applied: @code const opencascade::handle<stdselect_brepowner> abrepowner = opencascade::handle<stdselect_brepowner>::downcast (selectedowner()); topods_shape aselshape = abrepowner->shape(); topods_shape alocatedshape = aselshape.located (abrepowner->location() * aselshape.location()); @endcode @sa selectedowner()/hasselectedshape().

        Returns
        -------
        TopoDS_Shape

        """
        return _AIS.AIS_InteractiveContext_SelectedShape(self, *args)

    def Selection(self, *args) -> "opencascade::handle< AIS_Selection > const &":
        r"""
        Returns selection instance.

        Returns
        -------
        opencascade::handle<AIS_Selection>

        """
        return _AIS.AIS_InteractiveContext_Selection(self, *args)

    def SelectionManager(self, *args) -> "opencascade::handle< SelectMgr_SelectionManager > const &":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<SelectMgr_SelectionManager>

        """
        return _AIS.AIS_InteractiveContext_SelectionManager(self, *args)

    def SelectionStyle(self, *args) -> "opencascade::handle< Prs3d_Drawer > const &":
        r"""
        Returns current selection style settings. by default: - the color of selection is quantity_noc_gray80; - the presentation for selection is completely opaque; - the type of highlight is aspect_tohm_color.

        Returns
        -------
        opencascade::handle<Prs3d_Drawer>

        """
        return _AIS.AIS_InteractiveContext_SelectionStyle(self, *args)

    def SetAngleAndDeviation(self, *args) -> "void":
        r"""
        Calls the ais_shape setangleanddeviation to set both angle and deviation coefficients.

        Parameters
        ----------
        theIObj: AIS_InteractiveObject
        theAngle: float
        theToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_SetAngleAndDeviation(self, *args)

    def SetAutoActivateSelection(self, *args) -> "void":
        r"""
        Enable or disable automatic activation of default selection mode while displaying the object.

        Parameters
        ----------
        theIsAuto: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_SetAutoActivateSelection(self, *args)

    def SetAutomaticHilight(self, *args) -> "void":
        r"""
        Sets the highlighting status of detected and selected entities. this function allows you to disconnect the automatic mode. //! moveto() will fill the list of detected entities and select() will set selected state to detected objects regardless of this flag, but with disabled automatichiligh() their highlighting state will be left unaffected, so that application will be able performing custom highlighting in a different way, if needed. //! this api should be distinguished from selectmgr_selectableobject::setautohilight() that is used to implement custom highlighting logic for a specific interactive object class. //! @sa moveto(), select(), hilightwithcolor(), unhilight().

        Parameters
        ----------
        theStatus: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_SetAutomaticHilight(self, *args)

    def SetColor(self, *args) -> "void":
        r"""
        Sets the color of the selected entity.

        Parameters
        ----------
        theIObj: AIS_InteractiveObject
        theColor: Quantity_Color
        theToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_SetColor(self, *args)

    def SetCurrentFacingModel(self, *args) -> "void":
        r"""
        Change the current facing model apply on polygons for setcolor(), settransparency(), setmaterial() methods default facing model is aspect_tofm_two_side. this mean that attributes is applying both on the front and back face.

        Parameters
        ----------
        aniobj: AIS_InteractiveObject
        aModel: Aspect_TypeOfFacingModel,optional
        	default value is Aspect_TOFM_BOTH_SIDE

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_SetCurrentFacingModel(self, *args)

    def SetCurrentObject(self, *args) -> "void":
        r"""
        Updates the view of the current object in open context. objects selected when there is no open local context are called current objects; those selected in open local context, selected objects.

        Parameters
        ----------
        theIObj: AIS_InteractiveObject
        theToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_SetCurrentObject(self, *args)

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

        Parameters
        ----------
        theIObj: AIS_InteractiveObject
        theAngle: float
        theToUpdateViewer: bool

        Returns
        -------
        None
        Default 20 degrees.

        Parameters
        ----------
        anAngle: float

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_SetDeviationAngle(self, *args)

    def SetDeviationCoefficient(self, *args) -> "void":
        r"""
        Sets the deviation coefficient thecoefficient. drawings of curves or patches are made with respect to a maximal chordal deviation. a deviation coefficient is used in the shading display mode. the shape is seen decomposed into triangles. these are used to calculate reflection of light from the surface of the object. the triangles are formed from chords of the curves in the shape. the deviation coefficient thecoefficient gives the highest value of the angle with which a chord can deviate from a tangent to a curve. if this limit is reached, a new triangle is begun. this deviation is absolute and is set through the method: setmaximalchordialdeviation. the default value is 0.001. in drawing shapes, however, you are allowed to ask for a relative deviation. this deviation will be: sizeofobject * deviationcoefficient.

        Parameters
        ----------
        theIObj: AIS_InteractiveObject
        theCoefficient: float
        theToUpdateViewer: bool

        Returns
        -------
        None
        Sets the deviation coefficient thecoefficient. drawings of curves or patches are made with respect to a maximal chordal deviation. a deviation coefficient is used in the shading display mode. the shape is seen decomposed into triangles. these are used to calculate reflection of light from the surface of the object. the triangles are formed from chords of the curves in the shape. the deviation coefficient thecoefficient gives the highest value of the angle with which a chord can deviate from a tangent to a curve. if this limit is reached, a new triangle is begun. this deviation is absolute and is set through the method: setmaximalchordialdeviation. the default value is 0.001. in drawing shapes, however, you are allowed to ask for a relative deviation. this deviation will be: sizeofobject * deviationcoefficient.

        Parameters
        ----------
        theCoefficient: float

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_SetDeviationCoefficient(self, *args)

    def SetDisplayMode(self, *args) -> "void":
        r"""
        Sets the display mode of seen interactive objects (which have no overridden display mode).

        Parameters
        ----------
        theMode: int
        theToUpdateViewer: bool

        Returns
        -------
        None
        Sets the display mode of seen interactive objects. themode provides the display mode index of the entity theiobj.

        Parameters
        ----------
        theIObj: AIS_InteractiveObject
        theMode: int
        theToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_SetDisplayMode(self, *args)

    def SetDisplayPriority(self, *args) -> "void":
        r"""
        Sets the display priority of the seen parts presentation of the object.

        Parameters
        ----------
        theIObj: AIS_InteractiveObject
        thePriority: int

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_SetDisplayPriority(self, *args)

    def SetFilterType(self, *args) -> "void":
        r"""
        Sets the context selection filter type. selectmgr_typefilter_or selection filter is used by default. @param thefiltertype the filter type.

        Parameters
        ----------
        theFilterType: SelectMgr_FilterType

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_SetFilterType(self, *args)

    def SetHiddenLineAspect(self, *args) -> "void":
        r"""
        Sets the hidden line aspect anaspect. aspect defines display attributes for hidden lines in hlr projections.

        Parameters
        ----------
        anAspect: Prs3d_LineAspect

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_SetHiddenLineAspect(self, *args)

    def SetHighlightStyle(self, *args) -> "void":
        r"""
        Setup highlight style settings. it is preferred modifying existing style returned by method highlightstyle() instead of creating a new drawer. //! if a new highlight style is created, its presentation zlayer should be checked, otherwise highlighting might not work as expected. default values are: - prs3d_typeofhighlight_dynamic: graphic3d_zlayerid_top, object highlighting is drawn on top of main scene within immediate layers, so that v3d_view::redrawimmediate() will be enough to see update; - prs3d_typeofhighlight_localdynamic: graphic3d_zlayerid_topmost, object parts highlighting is drawn on top of main scene within immediate layers with depth cleared (even overlapped geometry will be revealed); - prs3d_typeofhighlight_selected: graphic3d_zlayerid_unknown, object highlighting is drawn on top of main scene within the same layer as object itself (e.g. graphic3d_zlayerid_default by default) and increased priority.

        Parameters
        ----------
        theStyleType: Prs3d_TypeOfHighlight
        theStyle: Prs3d_Drawer

        Returns
        -------
        None
        Setup the style of dynamic highlighting. it is preferred modifying existing style returned by method highlightstyle() instead of creating a new drawer. //! if a new highlight style is created, its presentation zlayer should be checked, otherwise highlighting might not work as expected. default value is graphic3d_zlayerid_top, object highlighting is drawn on top of main scene within immediate layers, so that v3d_view::redrawimmediate() will be enough to see update;.

        Parameters
        ----------
        theStyle: Prs3d_Drawer

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_SetHighlightStyle(self, *args)

    def SetIsoNumber(self, *args) -> "void":
        r"""
        Sets the number of u and v isoparameters displayed.

        Parameters
        ----------
        NbIsos: int
        WhichIsos: AIS_TypeOfIso,optional
        	default value is AIS_TOI_Both

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_SetIsoNumber(self, *args)

    def SetLocalAttributes(self, *args) -> "void":
        r"""
        Sets the graphic attributes of the interactive object, such as visualization mode, color, and material.

        Parameters
        ----------
        theIObj: AIS_InteractiveObject
        theDrawer: Prs3d_Drawer
        theToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_SetLocalAttributes(self, *args)

    def SetLocation(self, *args) -> "void":
        r"""
        Puts the location on the initial graphic representation and the selection for the object.

        Parameters
        ----------
        theObject: AIS_InteractiveObject
        theLocation: TopLoc_Location

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_SetLocation(self, *args)

    def SetMaterial(self, *args) -> "void":
        r"""
        Provides the type of material setting for the view of the object.

        Parameters
        ----------
        theIObj: AIS_InteractiveObject
        theMaterial: Graphic3d_MaterialAspect
        theToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_SetMaterial(self, *args)

    def SetPickingStrategy(self, *args) -> "void":
        r"""
        Setup picking strategy - which entities detected by picking line will be accepted, considering selection filters. by default (selectmgr_pickingstrategy_firstacceptable), selection filters reduce the list of entities so that the context accepts topmost in remaining. //! this means that entities behind non-selectable (by filters) parts can be picked by user. if this behavior is undesirable, and user wants that non-selectable (by filters) parts should remain an obstacle for picking, selectmgr_pickingstrategy_onlytopmost can be set instead. //! notice, that since selection manager operates only objects registered in it, selectmgr_pickingstrategy_onlytopmost will not prevent picking entities behind visible by unregistered in selection manager presentations (e.g. deactivated). hence, selectmgr_pickingstrategy_onlytopmost changes behavior only with selection filters enabled.

        Parameters
        ----------
        theStrategy: SelectMgr_PickingStrategy

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_SetPickingStrategy(self, *args)

    def SetPixelTolerance(self, *args) -> "void":
        r"""
        Setup pixel tolerance for moveto() operation. @sa moveto().

        Parameters
        ----------
        thePrecision: int,optional
        	default value is 2

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_SetPixelTolerance(self, *args)

    def SetPlaneSize(self, *args) -> "void":
        r"""
        Sets the plane size defined by the length in the x direction xsize and that in the y direction ysize.

        Parameters
        ----------
        theSizeX: float
        theSizeY: float
        theToUpdateViewer: bool

        Returns
        -------
        None
        Sets the plane size asize.

        Parameters
        ----------
        theSize: float
        theToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_SetPlaneSize(self, *args)

    def SetPolygonOffsets(self, *args) -> "void":
        r"""
        Sets up polygon offsets for the given ais_interactiveobject. it simply calls ais_interactiveobject::setpolygonoffsets().

        Parameters
        ----------
        theIObj: AIS_InteractiveObject
        theMode: int
        theFactor: Standard_ShortReal
        theUnits: Standard_ShortReal
        theToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_SetPolygonOffsets(self, *args)

    def SetSelected(self, *args) -> "void":
        r"""
        Unhighlights previously selected owners and marks them as not selected. marks owner given as selected and highlights it. performs selection filters check.

        Parameters
        ----------
        theOwners: SelectMgr_EntityOwner
        theToUpdateViewer: bool

        Returns
        -------
        None
        Puts the interactive object aniobj in the list of selected objects. performs selection filters check.

        Parameters
        ----------
        theObject: AIS_InteractiveObject
        theToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_SetSelected(self, *args)

    def SetSelectedAspect(self, *args) -> "void":
        r"""
        Sets the graphic basic aspect to the current presentation of all selected objects.

        Parameters
        ----------
        theAspect: Prs3d_BasicAspect
        theToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_SetSelectedAspect(self, *args)

    def SetSelectedState(self, *args) -> "Standard_Boolean":
        r"""
        Updates selected state of specified owner without calling hilightselected(). has no effect if selected state is not changed, and redirects to addorremoveselected() otherwise. @param theowner owner object to set selected state @param theisselected new selected state returns true if selected state has been changed.

        Parameters
        ----------
        theOwner: SelectMgr_EntityOwner
        theIsSelected: bool

        Returns
        -------
        bool

        """
        return _AIS.AIS_InteractiveContext_SetSelectedState(self, *args)

    def SetSelection(self, *args) -> "void":
        r"""
        Sets selection instance to manipulate a container of selected owners @param theselection an instance of the selection.

        Parameters
        ----------
        theSelection: AIS_Selection

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_SetSelection(self, *args)

    def SetSelectionModeActive(self, *args) -> "void":
        r"""
        Activates or deactivates the selection mode for specified object. has no effect if selection mode was already active/deactivated. @param theobj object to activate/deactivate selection mode @param themode selection mode to activate/deactivate;  deactivation of -1 selection mode will effectively deactivate all selection modes;  activation of -1 selection mode with ais_selectionmodesconcurrency_single  will deactivate all selection modes, and will has no effect otherwise @param thetoactivate activation/deactivation flag @param theconcurrency specifies how to handle already activated selection modes;  default value (ais_selectionmodesconcurrency_multiple) means active selection modes should be left as is,  ais_selectionmodesconcurrency_single can be used if only one selection mode is expected to be active  and ais_selectionmodesconcurrency_globalorlocal can be used if either ais_interactiveobject::globalselectionmode()  or any combination of local selection modes is acceptable;  this value is considered only if thetoactivate set to true @param theisforce when set to true, the display status will be ignored while activating selection mode.

        Parameters
        ----------
        theObj: AIS_InteractiveObject
        theMode: int
        theToActivate: bool
        theConcurrency: AIS_SelectionModesConcurrency,optional
        	default value is AIS_SelectionModesConcurrency_Multiple
        theIsForce: bool,optional
        	default value is Standard_False

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_SetSelectionModeActive(self, *args)

    def SetSelectionSensitivity(self, *args) -> "void":
        r"""
        Allows to manage sensitivity of a particular selection of interactive object theobject and changes previous sensitivity value of all sensitive entities in selection with themode to the given thenewsensitivity.

        Parameters
        ----------
        theObject: AIS_InteractiveObject
        theMode: int
        theNewSensitivity: int

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_SetSelectionSensitivity(self, *args)

    def SetSelectionStyle(self, *args) -> "void":
        r"""
        Setup the style of selection highlighting.

        Parameters
        ----------
        theStyle: Prs3d_Drawer

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_SetSelectionStyle(self, *args)

    def SetSubIntensityColor(self, *args) -> "void":
        r"""
        Sub-intensity allows temporary highlighting of particular objects with specified color in a manner of selection highlight, but without actual selection (e.g., global status and owner's selection state will not be updated). the method sets up the color for such highlighting. by default, this is quantity_noc_gray40.

        Parameters
        ----------
        theColor: Quantity_Color

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_SetSubIntensityColor(self, *args)

    def SetToHilightSelected(self, *args) -> "void":
        r"""
        Specify whether selected object must be hilighted when mouse cursor is moved above it (in moveto method). by default this value is false and selected object is not hilighted in this case. @sa moveto().

        Parameters
        ----------
        toHilight: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_SetToHilightSelected(self, *args)

    def SetTransformPersistence(self, *args) -> "void":
        r"""
        Sets transform persistence.

        Parameters
        ----------
        theObject: AIS_InteractiveObject
        theTrsfPers: Graphic3d_TransformPers

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        theObj: AIS_InteractiveObject
        theFlag: Graphic3d_TransModeFlags
        thePoint: gp_Pnt,optional
        	default value is gp_Pnt(0.0,0.0,0.0)

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_SetTransformPersistence(self, *args)

    def SetTransparency(self, *args) -> "void":
        r"""
        Provides the transparency settings for viewing the object. the transparency value avalue may be between 0.0, opaque, and 1.0, fully transparent.

        Parameters
        ----------
        theIObj: AIS_InteractiveObject
        theValue: float
        theToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_SetTransparency(self, *args)

    def SetTrihedronSize(self, *args) -> "void":
        r"""
        Sets the size asize of the trihedron. is used to change the default value 100 mm for display of trihedra. use of this function in one of your own interactive objects requires a call to the compute function of the new class. this will recalculate the presentation for every trihedron displayed.

        Parameters
        ----------
        theSize: float
        theToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_SetTrihedronSize(self, *args)

    def SetViewAffinity(self, *args) -> "void":
        r"""
        Setup object visibility in specified view. has no effect if object is not displayed in this context.

        Parameters
        ----------
        theIObj: AIS_InteractiveObject
        theView: V3d_View
        theIsVisible: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_SetViewAffinity(self, *args)

    def SetWidth(self, *args) -> "void":
        r"""
        Sets the width of the object.

        Parameters
        ----------
        theIObj: AIS_InteractiveObject
        theValue: float
        theToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_SetWidth(self, *args)

    def SetZLayer(self, *args) -> "void":
        r"""
        Set z layer id for interactive object. the z layers can be used to display temporarily presentations of some object in front of the other objects in the scene. the ids for z layers are generated by v3d_viewer.

        Parameters
        ----------
        theIObj: AIS_InteractiveObject
        theLayerId: int

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_SetZLayer(self, *args)

    def ShiftSelect(self, *args) -> "AIS_StatusOfPick":
        r"""
        Adds the last detected to the list of previous picked. if the last detected was already declared as picked, removes it from the picked list. @sa moveto().

        Parameters
        ----------
        theToUpdateViewer: bool

        Returns
        -------
        AIS_StatusOfPick
        Adds the last detected to the list of previous picked. if the last detected was already declared as picked, removes it from the picked list.

        Parameters
        ----------
        thePolyline: TColgp_Array1OfPnt2d
        theView: V3d_View
        theToUpdateViewer: bool

        Returns
        -------
        AIS_StatusOfPick
        Rectangle of selection; adds new detected entities into the picked list, removes the detected entities that were already stored.

        Parameters
        ----------
        theXPMin: int
        theYPMin: int
        theXPMax: int
        theYPMax: int
        theView: V3d_View
        theToUpdateViewer: bool

        Returns
        -------
        AIS_StatusOfPick

        """
        return _AIS.AIS_InteractiveContext_ShiftSelect(self, *args)

    def SubIntensityColor(self, *args) -> "Quantity_Color const &":
        r"""
        Sub-intensity allows temporary highlighting of particular objects with specified color in a manner of selection highlight, but without actual selection (e.g., global status and owner's selection state will not be updated). the method returns the color of such highlighting. by default, it is quantity_noc_gray40.

        Returns
        -------
        Quantity_Color

        """
        return _AIS.AIS_InteractiveContext_SubIntensityColor(self, *args)

    def SubIntensityOff(self, *args) -> "void":
        r"""
        Removes the subintensity option for the entity. if a local context is open, the presentation of the interactive object activates the selection mode.

        Parameters
        ----------
        theIObj: AIS_InteractiveObject
        theToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_SubIntensityOff(self, *args)

    def SubIntensityOn(self, *args) -> "void":
        r"""
        Highlights, and removes highlights from, the displayed object which is displayed at neutral point with subintensity color. available only for active local context. there is no effect if there is no local context. if a local context is open, the presentation of the interactive object activates the selection mode.

        Parameters
        ----------
        theIObj: AIS_InteractiveObject
        theToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_SubIntensityOn(self, *args)

    def ToHilightSelected(self, *args) -> "Standard_Boolean":
        r"""
        Return value specified whether selected object must be hilighted when mouse cursor is moved above it @sa moveto().

        Returns
        -------
        bool

        """
        return _AIS.AIS_InteractiveContext_ToHilightSelected(self, *args)

    def TrihedronSize(self, *args) -> "Standard_Real":
        r"""
        Returns the current value of trihedron size.

        Returns
        -------
        float

        """
        return _AIS.AIS_InteractiveContext_TrihedronSize(self, *args)

    def Unhilight(self, *args) -> "void":
        r"""
        Removes hilighting from the object.

        Parameters
        ----------
        theIObj: AIS_InteractiveObject
        theToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_Unhilight(self, *args)

    def UnhilightCurrents(self, *args) -> "void":
        r"""
        Removes highlighting from current objects. objects selected when there is no open local context are called current objects; those selected in open local context, selected objects.

        Parameters
        ----------
        theToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_UnhilightCurrents(self, *args)

    def UnhilightSelected(self, *args) -> "void":
        r"""
        Removes highlighting from selected objects.

        Parameters
        ----------
        theToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_UnhilightSelected(self, *args)

    def UnsetColor(self, *args) -> "void":
        r"""
        Removes the color selection for the selected entity.

        Parameters
        ----------
        theIObj: AIS_InteractiveObject
        theToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_UnsetColor(self, *args)

    def UnsetDisplayMode(self, *args) -> "void":
        r"""
        Unsets the display mode of seen interactive objects.

        Parameters
        ----------
        theIObj: AIS_InteractiveObject
        theToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_UnsetDisplayMode(self, *args)

    def UnsetLocalAttributes(self, *args) -> "void":
        r"""
        Removes the settings for local attributes of the object and returns to defaults.

        Parameters
        ----------
        theIObj: AIS_InteractiveObject
        theToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_UnsetLocalAttributes(self, *args)

    def UnsetMaterial(self, *args) -> "void":
        r"""
        Removes the type of material setting for viewing the object.

        Parameters
        ----------
        theIObj: AIS_InteractiveObject
        theToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_UnsetMaterial(self, *args)

    def UnsetTransparency(self, *args) -> "void":
        r"""
        Removes the transparency settings for viewing the object.

        Parameters
        ----------
        theIObj: AIS_InteractiveObject
        theToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_UnsetTransparency(self, *args)

    def UnsetWidth(self, *args) -> "void":
        r"""
        Removes the width setting of the object.

        Parameters
        ----------
        theIObj: AIS_InteractiveObject
        theToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_UnsetWidth(self, *args)

    def Update(self, *args) -> "void":
        r"""
        Updates displayed interactive object by checking and recomputing its flagged as 'to be recomputed' presentation and selection structures. this method does not force any recomputation on its own. the method recomputes selections even if they are loaded without activation in particular selector.

        Parameters
        ----------
        theIObj: AIS_InteractiveObject
        theUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_Update(self, *args)

    def UpdateCurrent(self, *args) -> "void":
        r"""
        Updates the list of current objects, i.e. hilights new current objects, removes hilighting from former current objects. objects selected when there is no open local context are called current objects; those selected in open local context, selected objects.

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_UpdateCurrent(self, *args)

    def UpdateCurrentViewer(self, *args) -> "void":
        r"""
        Updates the current viewer.

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_UpdateCurrentViewer(self, *args)

    def UpdateSelected(self, *args) -> "void":
        r"""
        Updates the list of selected objects: i.e. highlights the newly selected ones and unhighlights previously selected objects. @sa hilightselected().

        Parameters
        ----------
        theToUpdateViewer: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveContext_UpdateSelected(self, *args)

    def Width(self, *args) -> "Standard_Real":
        r"""
        Returns the width of the interactive object in the interactive context.

        Parameters
        ----------
        aniobj: AIS_InteractiveObject

        Returns
        -------
        float

        """
        return _AIS.AIS_InteractiveContext_Width(self, *args)


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


    __repr__ = _dumps_object

    @methodnotwrapped
    def EntityOwners(self):
    	pass

    @methodnotwrapped
    def Status(self):
    	pass

    __swig_destroy__ = _AIS.delete_AIS_InteractiveContext

# Register AIS_InteractiveContext in _AIS:
_AIS.AIS_InteractiveContext_swigregister(AIS_InteractiveContext)

class AIS_InteractiveObject(OCC.Core.SelectMgr.SelectMgr_SelectableObject):
    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 ClearOwner(self, *args) -> "void":
        r"""
        Each interactive object has methods which allow us to attribute an owner to it in the form of a transient. this method removes the owner from the graphic entity.

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveObject_ClearOwner(self, *args)

    def DumpJsonToString(self, depth: "int"=-1) -> "std::string":
        r"""DumpJsonToString(AIS_InteractiveObject self, int depth=-1) -> std::string"""
        return _AIS.AIS_InteractiveObject_DumpJsonToString(self, depth)

    def GetContext(self, *args) -> "opencascade::handle< AIS_InteractiveContext >":
        r"""
        Returns the context pointer to the interactive context.

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

        """
        return _AIS.AIS_InteractiveObject_GetContext(self, *args)

    def GetOwner(self, *args) -> "opencascade::handle< Standard_Transient > const &":
        r"""
        Returns the owner of the interactive object. the owner can be a shape for a set of sub-shapes or a sub-shape for sub-shapes which it is composed of, and takes the form of a transient. there are two types of owners: - direct owners, decomposition shapes such as edges, wires, and faces. - users, presentable objects connecting to sensitive primitives, or a shape which has been decomposed.

        Returns
        -------
        opencascade::handle<Standard_Transient>

        """
        return _AIS.AIS_InteractiveObject_GetOwner(self, *args)

    def HasInteractiveContext(self, *args) -> "Standard_Boolean":
        r"""
        Indicates whether the interactive object has a pointer to an interactive context.

        Returns
        -------
        bool

        """
        return _AIS.AIS_InteractiveObject_HasInteractiveContext(self, *args)

    def HasOwner(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if the object has an owner attributed to it. the owner can be a shape for a set of sub-shapes or a sub-shape for sub-shapes which it is composed of, and takes the form of a transient.

        Returns
        -------
        bool

        """
        return _AIS.AIS_InteractiveObject_HasOwner(self, *args)

    def HasPresentation(self, *args) -> "Standard_Boolean":
        r"""
        Returns true when this object has a presentation in the current displaymode().

        Returns
        -------
        bool

        """
        return _AIS.AIS_InteractiveObject_HasPresentation(self, *args)

    def InteractiveContext(self, *args) -> "AIS_InteractiveContext *":
        r"""
        Returns the context pointer to the interactive context.

        Returns
        -------
        AIS_InteractiveContext *

        """
        return _AIS.AIS_InteractiveObject_InteractiveContext(self, *args)

    def Presentation(self, *args) -> "opencascade::handle< Prs3d_Presentation >":
        r"""
        Returns the current presentation of this object according to the current displaymode().

        Returns
        -------
        opencascade::handle<Prs3d_Presentation>

        """
        return _AIS.AIS_InteractiveObject_Presentation(self, *args)

    def ProcessDragging(self, *args) -> "Standard_Boolean":
        r"""
        Drag object in the viewer. @param thectx [in] interactive context @param theview [in] active view @param theowner [in] the owner of detected entity @param thedragfrom [in] drag start point @param thedragto [in] drag end point @param theaction [in] drag action returns false if object rejects dragging action (e.g. ais_dragaction_start).

        Parameters
        ----------
        theCtx: AIS_InteractiveContext
        theView: V3d_View
        theOwner: SelectMgr_EntityOwner
        theDragFrom: Graphic3d_Vec2i
        theDragTo: Graphic3d_Vec2i
        theAction: AIS_DragAction

        Returns
        -------
        bool

        """
        return _AIS.AIS_InteractiveObject_ProcessDragging(self, *args)

    def Redisplay(self, *args) -> "void":
        r"""
        Updates the active presentation; if <allmodes> = standard_true all the presentations inside are recomputed. important: it is preferable to call redisplay method of corresponding ais_interactivecontext instance for cases when it is accessible. this method just redirects call to myctxptr, so this class field must be up to date for proper result.

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

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveObject_Redisplay(self, *args)

    def SetAspect(self, *args) -> "void":
        r"""
        Sets the graphic basic aspect to the current presentation.

        Parameters
        ----------
        anAspect: Prs3d_BasicAspect

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveObject_SetAspect(self, *args)

    def SetContext(self, *args) -> "void":
        r"""
        Sets the interactive context actx and provides a link to the default drawing tool or 'drawer' if there is none.

        Parameters
        ----------
        aCtx: AIS_InteractiveContext

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveObject_SetContext(self, *args)

    def SetOwner(self, *args) -> "void":
        r"""
        Allows you to attribute the owner theapplicativeentity to an interactive object. this can be a shape for a set of sub-shapes or a sub-shape for sub-shapes which it is composed of. the owner takes the form of a transient.

        Parameters
        ----------
        theApplicativeEntity: Standard_Transient

        Returns
        -------
        None

        """
        return _AIS.AIS_InteractiveObject_SetOwner(self, *args)

    def Signature(self, *args) -> "Standard_Integer":
        r"""
        Specifies additional characteristics of interactive object of type(); -1 by default. among the datums, this signature is attributed to the shape. the remaining datums have the following default signatures: - point signature 1 - axis  signature 2 - trihedron signature 3 - planetrihedron signature 4 - line  signature 5 - circle signature 6 - plane signature 7.

        Returns
        -------
        int

        """
        return _AIS.AIS_InteractiveObject_Signature(self, *args)

    def Type(self, *args) -> "AIS_KindOfInteractive":
        r"""
        Returns the kind of interactive object; ais_koi_none by default.

        Returns
        -------
        AIS_KindOfInteractive

        """
        return _AIS.AIS_InteractiveObject_Type(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_InteractiveObject

# Register AIS_InteractiveObject in _AIS:
_AIS.AIS_InteractiveObject_swigregister(AIS_InteractiveObject)

class AIS_ManipulatorOwner(OCC.Core.SelectMgr.SelectMgr_EntityOwner):
    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.

        Parameters
        ----------
        theSelObject: SelectMgr_SelectableObject
        theIndex: int
        theMode: AIS_ManipulatorMode
        thePriority: int,optional
        	default value is 0

        Returns
        -------
        None

        """
        _AIS.AIS_ManipulatorOwner_swiginit(self, _AIS.new_AIS_ManipulatorOwner(*args))

    def Index(self, *args) -> "Standard_Integer":
        r"""
        Returns index of manipulator axis.

        Returns
        -------
        int

        """
        return _AIS.AIS_ManipulatorOwner_Index(self, *args)

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

        Returns
        -------
        AIS_ManipulatorMode

        """
        return _AIS.AIS_ManipulatorOwner_Mode(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_ManipulatorOwner

# Register AIS_ManipulatorOwner in _AIS:
_AIS.AIS_ManipulatorOwner_swigregister(AIS_ManipulatorOwner)

class AIS_PointCloudOwner(OCC.Core.SelectMgr.SelectMgr_EntityOwner):
    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"""
        Main constructor.

        Parameters
        ----------
        theOrigin: AIS_PointCloud

        Returns
        -------
        None

        """
        _AIS.AIS_PointCloudOwner_swiginit(self, _AIS.new_AIS_PointCloudOwner(*args))

    def DetectedPoints(self, *args) -> "opencascade::handle< TColStd_HPackedMapOfInteger > const &":
        r"""
        Return last detected points. warning! indexation starts with 0 (shifted by -1 comparing to graphic3d_arrayofpoints::vertice()).

        Returns
        -------
        opencascade::handle<TColStd_HPackedMapOfInteger>

        """
        return _AIS.AIS_PointCloudOwner_DetectedPoints(self, *args)

    def SelectedPoints(self, *args) -> "opencascade::handle< TColStd_HPackedMapOfInteger > const &":
        r"""
        Return selected points. warning! indexation starts with 0 (shifted by -1 comparing to graphic3d_arrayofpoints::vertice()).

        Returns
        -------
        opencascade::handle<TColStd_HPackedMapOfInteger>

        """
        return _AIS.AIS_PointCloudOwner_SelectedPoints(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_PointCloudOwner

# Register AIS_PointCloudOwner in _AIS:
_AIS.AIS_PointCloudOwner_swigregister(AIS_PointCloudOwner)

class AIS_Selection(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"""
        Creates a new selection.

        Returns
        -------
        None

        """
        _AIS.AIS_Selection_swiginit(self, _AIS.new_AIS_Selection(*args))

    def AddSelect(self, *args) -> "AIS_SelectStatus":
        r"""
        The object is always add int the selection. faster when the number of objects selected is great.

        Parameters
        ----------
        theObject: SelectMgr_EntityOwner

        Returns
        -------
        AIS_SelectStatus

        """
        return _AIS.AIS_Selection_AddSelect(self, *args)

    def Clear(self, *args) -> "void":
        r"""
        Removes all the object of the selection.

        Returns
        -------
        None

        """
        return _AIS.AIS_Selection_Clear(self, *args)

    def ClearAndSelect(self, *args) -> "void":
        r"""
        Clears the selection and adds the object in the selection.

        Parameters
        ----------
        theObject: SelectMgr_EntityOwner

        Returns
        -------
        None

        """
        return _AIS.AIS_Selection_ClearAndSelect(self, *args)

    def Extent(self, *args) -> "Standard_Integer":
        r"""
        Return the number of selected objects.

        Returns
        -------
        int

        """
        return _AIS.AIS_Selection_Extent(self, *args)

    def Init(self, *args) -> "void":
        r"""
        Start iteration through selected objects.

        Returns
        -------
        None

        """
        return _AIS.AIS_Selection_Init(self, *args)

    def IsEmpty(self, *args) -> "Standard_Boolean":
        r"""
        Return true if list of selected objects is empty.

        Returns
        -------
        bool

        """
        return _AIS.AIS_Selection_IsEmpty(self, *args)

    def IsSelected(self, *args) -> "Standard_Boolean":
        r"""
        Checks if the object is in the selection.

        Parameters
        ----------
        theObject: SelectMgr_EntityOwner

        Returns
        -------
        bool

        """
        return _AIS.AIS_Selection_IsSelected(self, *args)

    def More(self, *args) -> "Standard_Boolean":
        r"""
        Return true if iterator points to selected object.

        Returns
        -------
        bool

        """
        return _AIS.AIS_Selection_More(self, *args)

    def Next(self, *args) -> "void":
        r"""
        Continue iteration through selected objects.

        Returns
        -------
        None

        """
        return _AIS.AIS_Selection_Next(self, *args)

    def Objects(self, *args) -> "AIS_NListOfEntityOwner const &":
        r"""
        Return the list of selected objects.

        Returns
        -------
        AIS_NListOfEntityOwner

        """
        return _AIS.AIS_Selection_Objects(self, *args)

    def Select(self, *args) -> "AIS_SelectStatus":
        r"""
        If the object is not yet in the selection, it will be added. if the object is already in the selection, it will be removed.

        Parameters
        ----------
        theObject: SelectMgr_EntityOwner

        Returns
        -------
        AIS_SelectStatus

        """
        return _AIS.AIS_Selection_Select(self, *args)

    def Value(self, *args) -> "opencascade::handle< SelectMgr_EntityOwner > const &":
        r"""
        Return selected object at iterator position.

        Returns
        -------
        opencascade::handle<SelectMgr_EntityOwner>

        """
        return _AIS.AIS_Selection_Value(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_Selection

# Register AIS_Selection in _AIS:
_AIS.AIS_Selection_swigregister(AIS_Selection)

class AIS_TrihedronOwner(OCC.Core.SelectMgr.SelectMgr_EntityOwner):
    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"""
        Creates an owner of ais_trihedron object.

        Parameters
        ----------
        theSelObject: SelectMgr_SelectableObject
        theDatumPart: Prs3d_DatumParts
        thePriority: int

        Returns
        -------
        None

        """
        _AIS.AIS_TrihedronOwner_swiginit(self, _AIS.new_AIS_TrihedronOwner(*args))

    def DatumPart(self, *args) -> "Prs3d_DatumParts":
        r"""
        Returns the datum part identifier.

        Returns
        -------
        Prs3d_DatumParts

        """
        return _AIS.AIS_TrihedronOwner_DatumPart(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_TrihedronOwner

# Register AIS_TrihedronOwner in _AIS:
_AIS.AIS_TrihedronOwner_swigregister(AIS_TrihedronOwner)

class AIS_TypeFilter(OCC.Core.SelectMgr.SelectMgr_Filter):
    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"""
        Initializes filter for type, agivenkind.

        Parameters
        ----------
        aGivenKind: AIS_KindOfInteractive

        Returns
        -------
        None

        """
        _AIS.AIS_TypeFilter_swiginit(self, _AIS.new_AIS_TypeFilter(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_TypeFilter

# Register AIS_TypeFilter in _AIS:
_AIS.AIS_TypeFilter_swigregister(AIS_TypeFilter)

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

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

        Returns
        -------
        None

        """
        _AIS.AIS_ViewController_swiginit(self, _AIS.new_AIS_ViewController(*args))

    def AbortViewAnimation(self, *args) -> "void":
        r"""
        Interrupt active view animation.

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_AbortViewAnimation(self, *args)

    def AddTouchPoint(self, *args) -> "void":
        r"""
        Add touch point with the given id. this method is expected to be called from ui thread. @param theid touch unique identifier @param thepnt touch coordinates @param theclearbefore if true previously registered touches will be removed.

        Parameters
        ----------
        theId: Standard_Size
        thePnt: Graphic3d_Vec2d
        theClearBefore: bool,optional
        	default value is false

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_AddTouchPoint(self, *args)

    def Change3dMouseIsNoRotate(self, *args) -> "NCollection_Vec3< bool > &":
        r"""
        Return 3d mouse rotation axes (tilt/roll/spin) ignore flag; (false, false, false) by default.

        Returns
        -------
        NCollection_Vec3<bool>

        """
        return _AIS.AIS_ViewController_Change3dMouseIsNoRotate(self, *args)

    def Change3dMouseToReverse(self, *args) -> "NCollection_Vec3< bool > &":
        r"""
        Return 3d mouse rotation axes (tilt/roll/spin) reverse flag; (true, false, false) by default.

        Returns
        -------
        NCollection_Vec3<bool>

        """
        return _AIS.AIS_ViewController_Change3dMouseToReverse(self, *args)

    def ChangeInputBuffer(self, *args) -> "AIS_ViewInputBuffer &":
        r"""
        Return input buffer.

        Parameters
        ----------
        theType: AIS_ViewInputBufferType

        Returns
        -------
        AIS_ViewInputBuffer

        """
        return _AIS.AIS_ViewController_ChangeInputBuffer(self, *args)

    def ChangeKeys(self, *args) -> "Aspect_VKeySet &":
        r"""
        Return keyboard state.

        Returns
        -------
        Aspect_VKeySet

        """
        return _AIS.AIS_ViewController_ChangeKeys(self, *args)

    def ChangeMouseGestureMap(self, *args) -> "AIS_MouseGestureMap &":
        r"""
        Return map defining mouse gestures.

        Returns
        -------
        AIS_MouseGestureMap

        """
        return _AIS.AIS_ViewController_ChangeMouseGestureMap(self, *args)

    def EventTime(self, *args) -> "double":
        r"""
        Return event time (e.g. current time).

        Returns
        -------
        double

        """
        return _AIS.AIS_ViewController_EventTime(self, *args)

    def FetchNavigationKeys(self, *args) -> "AIS_WalkDelta":
        r"""
        Fetch active navigation actions.

        Parameters
        ----------
        theCrouchRatio: float
        theRunRatio: float

        Returns
        -------
        AIS_WalkDelta

        """
        return _AIS.AIS_ViewController_FetchNavigationKeys(self, *args)

    def FitAllAuto(self, *args) -> "void":
        r"""
        Modify view camera to fit all objects. default implementation fits either all visible and all selected objects (swapped on each call).

        Parameters
        ----------
        theCtx: AIS_InteractiveContext
        theView: V3d_View

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_FitAllAuto(self, *args)

    def FlushViewEvents(self, *args) -> "void":
        r"""
        Update buffer for rendering thread. this method is expected to be called within synchronization barrier between gui and rendering threads (e.g. gui thread should be locked beforehand to avoid data races). @param thectx interactive context @param theview active view @param thetohandle if true, the handleviewevents() will be called.

        Parameters
        ----------
        theCtx: AIS_InteractiveContext
        theView: V3d_View
        theToHandle: bool,optional
        	default value is Standard_False

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_FlushViewEvents(self, *args)

    def Get3dMouseIsNoRotate(self, *args) -> "NCollection_Vec3< bool > const &":
        r"""
        Return 3d mouse rotation axes (tilt/roll/spin) ignore flag; (false, false, false) by default.

        Returns
        -------
        NCollection_Vec3<bool>

        """
        return _AIS.AIS_ViewController_Get3dMouseIsNoRotate(self, *args)

    def Get3dMouseRotationScale(self, *args) -> "float":
        r"""
        Return acceleration ratio for rotation event; 4.0 by default.

        Returns
        -------
        float

        """
        return _AIS.AIS_ViewController_Get3dMouseRotationScale(self, *args)

    def Get3dMouseToReverse(self, *args) -> "NCollection_Vec3< bool > const &":
        r"""
        Return 3d mouse rotation axes (tilt/roll/spin) reverse flag; (true, false, false) by default.

        Returns
        -------
        NCollection_Vec3<bool>

        """
        return _AIS.AIS_ViewController_Get3dMouseToReverse(self, *args)

    def Get3dMouseTranslationScale(self, *args) -> "float":
        r"""
        Return acceleration ratio for translation event; 2.0 by default.

        Returns
        -------
        float

        """
        return _AIS.AIS_ViewController_Get3dMouseTranslationScale(self, *args)

    def GravityPoint(self, *args) -> "gp_Pnt":
        r"""
        Compute rotation gravity center point depending on rotation mode. this method is expected to be called from rendering thread.

        Parameters
        ----------
        theCtx: AIS_InteractiveContext
        theView: V3d_View

        Returns
        -------
        gp_Pnt

        """
        return _AIS.AIS_ViewController_GravityPoint(self, *args)

    def HandleViewEvents(self, *args) -> "void":
        r"""
        Process events within rendering thread.

        Parameters
        ----------
        theCtx: AIS_InteractiveContext
        theView: V3d_View

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_HandleViewEvents(self, *args)

    def HasPreviousMoveTo(self, *args) -> "bool":
        r"""
        Return true if previous position of moveto has been defined.

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewController_HasPreviousMoveTo(self, *args)

    def HasTouchPoints(self, *args) -> "bool":
        r"""
        Return true if touches map is not empty.

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewController_HasTouchPoints(self, *args)

    def InputBuffer(self, *args) -> "AIS_ViewInputBuffer const &":
        r"""
        Return input buffer.

        Parameters
        ----------
        theType: AIS_ViewInputBufferType

        Returns
        -------
        AIS_ViewInputBuffer

        """
        return _AIS.AIS_ViewController_InputBuffer(self, *args)

    def KeyDown(self, *args) -> "void":
        r"""
        Press key. @param thekey key pressed @param thetime event timestamp.

        Parameters
        ----------
        theKey: Aspect_VKey
        theTime: double
        thePressure: double,optional
        	default value is 1.0

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_KeyDown(self, *args)

    def KeyFromAxis(self, *args) -> "void":
        r"""
        Simulate key up/down events from axis value.

        Parameters
        ----------
        theNegative: Aspect_VKey
        thePositive: Aspect_VKey
        theTime: double
        thePressure: double

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_KeyFromAxis(self, *args)

    def KeyUp(self, *args) -> "void":
        r"""
        Release key. @param thekey key pressed @param thetime event timestamp.

        Parameters
        ----------
        theKey: Aspect_VKey
        theTime: double

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_KeyUp(self, *args)

    def Keys(self, *args) -> "Aspect_VKeySet const &":
        r"""
        Return keyboard state.

        Returns
        -------
        Aspect_VKeySet

        """
        return _AIS.AIS_ViewController_Keys(self, *args)

    def LastMouseFlags(self, *args) -> "Aspect_VKeyFlags":
        r"""
        Return active key modifiers passed with last mouse event.

        Returns
        -------
        Aspect_VKeyFlags

        """
        return _AIS.AIS_ViewController_LastMouseFlags(self, *args)

    def LastMousePosition(self, *args) -> "Graphic3d_Vec2i const &":
        r"""
        Return last mouse position.

        Returns
        -------
        Graphic3d_Vec2i

        """
        return _AIS.AIS_ViewController_LastMousePosition(self, *args)

    def MinZoomDistance(self, *args) -> "double":
        r"""
        Return minimal camera distance for zoom operation.

        Returns
        -------
        double

        """
        return _AIS.AIS_ViewController_MinZoomDistance(self, *args)

    def MouseAcceleration(self, *args) -> "float":
        r"""
        Return mouse input acceleration ratio in first person mode; 1.0 by default.

        Returns
        -------
        float

        """
        return _AIS.AIS_ViewController_MouseAcceleration(self, *args)

    def MouseDoubleClickInterval(self, *args) -> "double":
        r"""
        Return double click interval in seconds; 0.4 by default.

        Returns
        -------
        double

        """
        return _AIS.AIS_ViewController_MouseDoubleClickInterval(self, *args)

    def MouseGestureMap(self, *args) -> "AIS_MouseGestureMap const &":
        r"""
        Return map defining mouse gestures.

        Returns
        -------
        AIS_MouseGestureMap

        """
        return _AIS.AIS_ViewController_MouseGestureMap(self, *args)

    def NavigationMode(self, *args) -> "AIS_NavigationMode":
        r"""
        Return camera navigation mode; ais_navigationmode_orbit by default.

        Returns
        -------
        AIS_NavigationMode

        """
        return _AIS.AIS_ViewController_NavigationMode(self, *args)

    def OnObjectDragged(self, *args) -> "void":
        r"""
        Callback called by handlemoveto() on dragging object in 3d viewer. this method is expected to be called from rendering thread.

        Parameters
        ----------
        theCtx: AIS_InteractiveContext
        theView: V3d_View
        theAction: AIS_DragAction

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_OnObjectDragged(self, *args)

    def OnSelectionChanged(self, *args) -> "void":
        r"""
        Callback called by handlemoveto() on selection in 3d viewer. this method is expected to be called from rendering thread.

        Parameters
        ----------
        theCtx: AIS_InteractiveContext
        theView: V3d_View

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_OnSelectionChanged(self, *args)

    def OrbitAcceleration(self, *args) -> "float":
        r"""
        Return orbit rotation acceleration ratio; 1.0 by default.

        Returns
        -------
        float

        """
        return _AIS.AIS_ViewController_OrbitAcceleration(self, *args)

    def PickPoint(self, *args) -> "bool":
        r"""
        Pick closest point under mouse cursor. this method is expected to be called from rendering thread. @param thepnt [out] result point @param thectx [in] interactive context @param theview [in] active view @param thecursor [in] mouse cursor @param thetosticktopickray [in] when true, the result point will lie on picking ray returns true if result has been found.

        Parameters
        ----------
        thePnt: gp_Pnt
        theCtx: AIS_InteractiveContext
        theView: V3d_View
        theCursor: Graphic3d_Vec2i
        theToStickToPickRay: bool

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewController_PickPoint(self, *args)

    def PressMouseButton(self, *args) -> "bool":
        r"""
        Handle mouse button press event. this method is expected to be called from ui thread. @param thepoint mouse cursor position @param thebutton pressed button @param themodifiers key modifiers @param theisemulated if true then mouse event comes not from real mouse  but emulated from non-precise input like touch on screen returns true if view should be redrawn.

        Parameters
        ----------
        thePoint: Graphic3d_Vec2i
        theButton: Aspect_VKeyMouse
        theModifiers: Aspect_VKeyFlags
        theIsEmulated: bool

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewController_PressMouseButton(self, *args)

    def PressedMouseButtons(self, *args) -> "Aspect_VKeyMouse":
        r"""
        Return currently pressed mouse buttons.

        Returns
        -------
        Aspect_VKeyMouse

        """
        return _AIS.AIS_ViewController_PressedMouseButtons(self, *args)

    def PreviousMoveTo(self, *args) -> "Graphic3d_Vec2i const &":
        r"""
        Return previous position of moveto event in 3d viewer.

        Returns
        -------
        Graphic3d_Vec2i

        """
        return _AIS.AIS_ViewController_PreviousMoveTo(self, *args)

    def ReleaseMouseButton(self, *args) -> "bool":
        r"""
        Handle mouse button release event. this method is expected to be called from ui thread. @param thepoint mouse cursor position @param thebutton released button @param themodifiers key modifiers @param theisemulated if true then mouse event comes not from real mouse  but emulated from non-precise input like touch on screen returns true if view should be redrawn.

        Parameters
        ----------
        thePoint: Graphic3d_Vec2i
        theButton: Aspect_VKeyMouse
        theModifiers: Aspect_VKeyFlags
        theIsEmulated: bool

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewController_ReleaseMouseButton(self, *args)

    def RemoveTouchPoint(self, *args) -> "bool":
        r"""
        Remove touch point with the given id. this method is expected to be called from ui thread. @param theid touch unique identifier @param theclearselectpnts if true will initiate clearing of selection points returns true if point has been removed.

        Parameters
        ----------
        theId: Standard_Size
        theClearSelectPnts: bool,optional
        	default value is false

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewController_RemoveTouchPoint(self, *args)

    def ResetPreviousMoveTo(self, *args) -> "void":
        r"""
        Reset previous position of moveto.

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_ResetPreviousMoveTo(self, *args)

    def ResetViewInput(self, *args) -> "void":
        r"""
        Reset input state (pressed keys, mouse buttons, etc.) e.g. on window focus loss. this method is expected to be called from ui thread.

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_ResetViewInput(self, *args)

    def RotationMode(self, *args) -> "AIS_RotationMode":
        r"""
        Return camera rotation mode, ais_rotationmode_bndboxactive by default.

        Returns
        -------
        AIS_RotationMode

        """
        return _AIS.AIS_ViewController_RotationMode(self, *args)

    def SelectInViewer(self, *args) -> "void":
        r"""
        Perform selection in 3d viewer. this method is expected to be called from ui thread. @param thepnt picking point @param theisxor xor selection flag.

        Parameters
        ----------
        thePnt: Graphic3d_Vec2i
        theIsXOR: bool,optional
        	default value is false

        Returns
        -------
        None
        Perform selection in 3d viewer. this method is expected to be called from ui thread. @param thepnts picking point @param theisxor xor selection flag.

        Parameters
        ----------
        thePnts: NCollection_Sequence<Graphic3d_Vec2i>
        theIsXOR: bool,optional
        	default value is false

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_SelectInViewer(self, *args)

    def Set3dMousePreciseInput(self, *args) -> "void":
        r"""
        Set quadric acceleration flag.

        Parameters
        ----------
        theIsQuadric: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_Set3dMousePreciseInput(self, *args)

    def Set3dMouseRotationScale(self, *args) -> "void":
        r"""
        Set acceleration ratio for rotation event.

        Parameters
        ----------
        theScale: float

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_Set3dMouseRotationScale(self, *args)

    def Set3dMouseTranslationScale(self, *args) -> "void":
        r"""
        Set acceleration ratio for translation event.

        Parameters
        ----------
        theScale: float

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_Set3dMouseTranslationScale(self, *args)

    def SetAllowDragging(self, *args) -> "void":
        r"""
        Set if dynamic highlight on mouse move is allowed.

        Parameters
        ----------
        theToEnable: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_SetAllowDragging(self, *args)

    def SetAllowHighlight(self, *args) -> "void":
        r"""
        Set if dragging object is allowed.

        Parameters
        ----------
        theToEnable: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_SetAllowHighlight(self, *args)

    def SetAllowPanning(self, *args) -> "void":
        r"""
        Set if panning is allowed.

        Parameters
        ----------
        theToEnable: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_SetAllowPanning(self, *args)

    def SetAllowRotation(self, *args) -> "void":
        r"""
        Set if camera rotation is allowed.

        Parameters
        ----------
        theToEnable: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_SetAllowRotation(self, *args)

    def SetAllowTouchZRotation(self, *args) -> "void":
        r"""
        Set if z-rotation via two-touches gesture is enabled.

        Parameters
        ----------
        theToEnable: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_SetAllowTouchZRotation(self, *args)

    def SetAllowZFocus(self, *args) -> "void":
        r"""
        Set if zfocus change is allowed.

        Parameters
        ----------
        theToEnable: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_SetAllowZFocus(self, *args)

    def SetAllowZooming(self, *args) -> "void":
        r"""
        Set if zooming is allowed.

        Parameters
        ----------
        theToEnable: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_SetAllowZooming(self, *args)

    def SetDisplayXRAuxDevices(self, *args) -> "void":
        r"""
        Set if auxiliary tracked xr devices should be displayed.

        Parameters
        ----------
        theToDisplay: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_SetDisplayXRAuxDevices(self, *args)

    def SetDisplayXRHands(self, *args) -> "void":
        r"""
        Set if tracked xr hand controllers should be displayed.

        Parameters
        ----------
        theToDisplay: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_SetDisplayXRHands(self, *args)

    def SetInvertPitch(self, *args) -> "void":
        r"""
        Set flag inverting pitch direction.

        Parameters
        ----------
        theToInvert: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_SetInvertPitch(self, *args)

    def SetLockOrbitZUp(self, *args) -> "void":
        r"""
        Set if camera up orientation within ais_navigationmode_orbit rotation mode should be forced z up.

        Parameters
        ----------
        theToForceUp: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_SetLockOrbitZUp(self, *args)

    def SetMinZoomDistance(self, *args) -> "void":
        r"""
        Set minimal camera distance for zoom operation.

        Parameters
        ----------
        theDist: double

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_SetMinZoomDistance(self, *args)

    def SetMouseAcceleration(self, *args) -> "void":
        r"""
        Set mouse input acceleration ratio.

        Parameters
        ----------
        theRatio: float

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_SetMouseAcceleration(self, *args)

    def SetMouseDoubleClickInterval(self, *args) -> "void":
        r"""
        Set double click interval in seconds.

        Parameters
        ----------
        theSeconds: double

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_SetMouseDoubleClickInterval(self, *args)

    def SetNavigationMode(self, *args) -> "void":
        r"""
        Set camera navigation mode.

        Parameters
        ----------
        theMode: AIS_NavigationMode

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_SetNavigationMode(self, *args)

    def SetOrbitAcceleration(self, *args) -> "void":
        r"""
        Set orbit rotation acceleration ratio.

        Parameters
        ----------
        theRatio: float

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_SetOrbitAcceleration(self, *args)

    def SetRotationMode(self, *args) -> "void":
        r"""
        Set camera rotation mode.

        Parameters
        ----------
        theMode: AIS_RotationMode

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_SetRotationMode(self, *args)

    def SetShowPanAnchorPoint(self, *args) -> "void":
        r"""
        Set if panning anchor point within perspective projection should be displayed in 3d viewer.

        Parameters
        ----------
        theToShow: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_SetShowPanAnchorPoint(self, *args)

    def SetShowRotateCenter(self, *args) -> "void":
        r"""
        Set if rotation point should be displayed in 3d viewer.

        Parameters
        ----------
        theToShow: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_SetShowRotateCenter(self, *args)

    def SetStickToRayOnRotation(self, *args) -> "void":
        r"""
        Set if picked point should be projected to picking ray on rotating around point.

        Parameters
        ----------
        theToEnable: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_SetStickToRayOnRotation(self, *args)

    def SetStickToRayOnZoom(self, *args) -> "void":
        r"""
        Set if picked point should be projected to picking ray on zooming at point.

        Parameters
        ----------
        theToEnable: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_SetStickToRayOnZoom(self, *args)

    def SetThrustSpeed(self, *args) -> "void":
        r"""
        Set active thrust value.

        Parameters
        ----------
        theSpeed: float

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_SetThrustSpeed(self, *args)

    def SetTouchToleranceScale(self, *args) -> "void":
        r"""
        Set scale factor for adjusting tolerances for starting multi-touch gestures.

        Parameters
        ----------
        theTolerance: float

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_SetTouchToleranceScale(self, *args)

    def SetViewAnimation(self, *args) -> "void":
        r"""
        Set view animation to be handled within handleviewredraw().

        Parameters
        ----------
        theAnimation: AIS_AnimationCamera

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_SetViewAnimation(self, *args)

    def SetWalkSpeedAbsolute(self, *args) -> "void":
        r"""
        Set normal walking speed, in m/s; 1.5 by default.

        Parameters
        ----------
        theSpeed: float

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_SetWalkSpeedAbsolute(self, *args)

    def SetWalkSpeedRelative(self, *args) -> "void":
        r"""
        Set walking speed relative to scene bounding box.

        Parameters
        ----------
        theFactor: float

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_SetWalkSpeedRelative(self, *args)

    def ThrustSpeed(self, *args) -> "float":
        r"""
        Return active thrust value; 0.0f by default.

        Returns
        -------
        float

        """
        return _AIS.AIS_ViewController_ThrustSpeed(self, *args)

    def To3dMousePreciseInput(self, *args) -> "bool":
        r"""
        Return quadric acceleration flag; true by default.

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewController_To3dMousePreciseInput(self, *args)

    def ToAllowDragging(self, *args) -> "bool":
        r"""
        Return true if dragging object is allowed; true by default.

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewController_ToAllowDragging(self, *args)

    def ToAllowHighlight(self, *args) -> "bool":
        r"""
        Return true if dynamic highlight on mouse move is allowed; true by default.

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewController_ToAllowHighlight(self, *args)

    def ToAllowPanning(self, *args) -> "bool":
        r"""
        Return true if panning is allowed; true by default.

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewController_ToAllowPanning(self, *args)

    def ToAllowRotation(self, *args) -> "bool":
        r"""
        Return true if camera rotation is allowed; true by default.

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewController_ToAllowRotation(self, *args)

    def ToAllowTouchZRotation(self, *args) -> "bool":
        r"""
        Return true if z-rotation via two-touches gesture is enabled; false by default.

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewController_ToAllowTouchZRotation(self, *args)

    def ToAllowZFocus(self, *args) -> "bool":
        r"""
        Return true if zfocus change is allowed; true by default.

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewController_ToAllowZFocus(self, *args)

    def ToAllowZooming(self, *args) -> "bool":
        r"""
        Return true if zooming is allowed; true by default.

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewController_ToAllowZooming(self, *args)

    def ToDisplayXRAuxDevices(self, *args) -> "bool":
        r"""
        Return true to display auxiliary tracked xr devices (like tracking stations).

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewController_ToDisplayXRAuxDevices(self, *args)

    def ToDisplayXRHands(self, *args) -> "bool":
        r"""
        Return true to display xr hand controllers.

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewController_ToDisplayXRHands(self, *args)

    def ToInvertPitch(self, *args) -> "bool":
        r"""
        Return true if pitch direction should be inverted while processing aspect_vkey_navlookup/aspect_vkey_navlookdown; false by default.

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewController_ToInvertPitch(self, *args)

    def ToLockOrbitZUp(self, *args) -> "bool":
        r"""
        Return true if camera up orientation within ais_navigationmode_orbit rotation mode should be forced z up; false by default.

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewController_ToLockOrbitZUp(self, *args)

    def ToShowPanAnchorPoint(self, *args) -> "bool":
        r"""
        Return true if panning anchor point within perspective projection should be displayed in 3d viewer; true by default.

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewController_ToShowPanAnchorPoint(self, *args)

    def ToShowRotateCenter(self, *args) -> "bool":
        r"""
        Return true if rotation point should be displayed in 3d viewer; true by default.

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewController_ToShowRotateCenter(self, *args)

    def ToStickToRayOnRotation(self, *args) -> "bool":
        r"""
        Return true if picked point should be projected to picking ray on rotating around point; true by default.

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewController_ToStickToRayOnRotation(self, *args)

    def ToStickToRayOnZoom(self, *args) -> "bool":
        r"""
        Return true if picked point should be projected to picking ray on zooming at point; true by default.

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewController_ToStickToRayOnZoom(self, *args)

    def TouchToleranceScale(self, *args) -> "float":
        r"""
        Return scale factor for adjusting tolerances for starting multi-touch gestures; 1.0 by default this scale factor is expected to be computed from touch screen resolution.

        Returns
        -------
        float

        """
        return _AIS.AIS_ViewController_TouchToleranceScale(self, *args)

    def Update3dMouse(self, *args) -> "bool":
        r"""
        Process 3d mouse input event (redirects to translation, rotation and keys).

        Parameters
        ----------
        theEvent: WNT_HIDSpaceMouse

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewController_Update3dMouse(self, *args)

    def UpdateMouseButtons(self, *args) -> "bool":
        r"""
        Handle mouse button press/release event. this method is expected to be called from ui thread. @param thepoint mouse cursor position @param thebuttons pressed buttons @param themodifiers key modifiers @param theisemulated if true then mouse event comes not from real mouse  but emulated from non-precise input like touch on screen returns true if view should be redrawn.

        Parameters
        ----------
        thePoint: Graphic3d_Vec2i
        theButtons: Aspect_VKeyMouse
        theModifiers: Aspect_VKeyFlags
        theIsEmulated: bool

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewController_UpdateMouseButtons(self, *args)

    def UpdateMouseClick(self, *args) -> "bool":
        r"""
        Handle mouse button click event (emulated by updatemousebuttons() while releasing single button). note that as this method is called by updatemousebuttons(), it should be executed from ui thread. default implementation redirects to selectinviewer(). this method is expected to be called from ui thread. @param thepoint mouse cursor position @param thebutton clicked button @param themodifiers key modifiers @param theisdoubleclick flag indicating double mouse click returns true if view should be redrawn.

        Parameters
        ----------
        thePoint: Graphic3d_Vec2i
        theButton: Aspect_VKeyMouse
        theModifiers: Aspect_VKeyFlags
        theIsDoubleClick: bool

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewController_UpdateMouseClick(self, *args)

    def UpdateMousePosition(self, *args) -> "bool":
        r"""
        Handle mouse cursor movement event. this method is expected to be called from ui thread. @param thepoint mouse cursor position @param thebuttons pressed buttons @param themodifiers key modifiers @param theisemulated if true then mouse event comes not from real mouse  but emulated from non-precise input like touch on screen returns true if view should be redrawn.

        Parameters
        ----------
        thePoint: Graphic3d_Vec2i
        theButtons: Aspect_VKeyMouse
        theModifiers: Aspect_VKeyFlags
        theIsEmulated: bool

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewController_UpdateMousePosition(self, *args)

    def UpdateMouseScroll(self, *args) -> "bool":
        r"""
        Update mouse scroll event; redirects to updatezoom by default. this method is expected to be called from ui thread. @param thedelta mouse cursor position and delta returns true if new event has been created or false if existing one has been updated.

        Parameters
        ----------
        theDelta: Aspect_ScrollDelta

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewController_UpdateMouseScroll(self, *args)

    def UpdatePolySelection(self, *args) -> "void":
        r"""
        Update polygonal selection tool. this method is expected to be called from ui thread. @param thepnt new point to add to polygon @param thetoappend append new point or update the last point.

        Parameters
        ----------
        thePnt: Graphic3d_Vec2i
        theToAppend: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_UpdatePolySelection(self, *args)

    def UpdateRubberBand(self, *args) -> "void":
        r"""
        Update rectangle selection tool. this method is expected to be called from ui thread. @param thepntfrom rectangle first corner @param thepntto rectangle another corner @param theisxor xor selection flag.

        Parameters
        ----------
        thePntFrom: Graphic3d_Vec2i
        thePntTo: Graphic3d_Vec2i
        theIsXOR: bool,optional
        	default value is false

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_UpdateRubberBand(self, *args)

    def UpdateTouchPoint(self, *args) -> "void":
        r"""
        Update touch point with the given id. if point with specified id was not registered before, it will be added. this method is expected to be called from ui thread. @param theid touch unique identifier @param thepnt touch coordinates.

        Parameters
        ----------
        theId: Standard_Size
        thePnt: Graphic3d_Vec2d

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_UpdateTouchPoint(self, *args)

    def UpdateViewOrientation(self, *args) -> "void":
        r"""
        Reset view orientation. this method is expected to be called from ui thread.

        Parameters
        ----------
        theOrientation: V3d_TypeOfOrientation
        theToFitAll: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_UpdateViewOrientation(self, *args)

    def UpdateZRotation(self, *args) -> "bool":
        r"""
        Update z rotation event. @param theangle rotation angle, in radians. returns true if new zoom event has been created or false if existing one has been updated.

        Parameters
        ----------
        theAngle: double

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewController_UpdateZRotation(self, *args)

    def UpdateZoom(self, *args) -> "bool":
        r"""
        Update zoom event (e.g. from mouse scroll). this method is expected to be called from ui thread. @param thedelta mouse cursor position to zoom at and zoom delta returns true if new zoom event has been created or false if existing one has been updated.

        Parameters
        ----------
        theDelta: Aspect_ScrollDelta

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewController_UpdateZoom(self, *args)

    def ViewAnimation(self, *args) -> "opencascade::handle< AIS_AnimationCamera > const &":
        r"""
        Return view animation; empty (but not null) animation by default.

        Returns
        -------
        opencascade::handle<AIS_AnimationCamera>

        """
        return _AIS.AIS_ViewController_ViewAnimation(self, *args)

    def WalkSpeedAbsolute(self, *args) -> "float":
        r"""
        Return normal walking speed, in m/s; 1.5 by default.

        Returns
        -------
        float

        """
        return _AIS.AIS_ViewController_WalkSpeedAbsolute(self, *args)

    def WalkSpeedRelative(self, *args) -> "float":
        r"""
        Return walking speed relative to scene bounding box; 0.1 by default.

        Returns
        -------
        float

        """
        return _AIS.AIS_ViewController_WalkSpeedRelative(self, *args)

    def handleCameraActions(self, *args) -> "void":
        r"""
        Perform immediate camera actions (rotate/zoom/pan) on gesture progress. this method is expected to be called from rendering thread.

        Parameters
        ----------
        theCtx: AIS_InteractiveContext
        theView: V3d_View
        theWalk: AIS_WalkDelta

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_handleCameraActions(self, *args)

    def handleMoveTo(self, *args) -> "void":
        r"""
        Perform moveto/selection/dragging. this method is expected to be called from rendering thread.

        Parameters
        ----------
        theCtx: AIS_InteractiveContext
        theView: V3d_View

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_handleMoveTo(self, *args)

    def handleNavigationKeys(self, *args) -> "AIS_WalkDelta":
        r"""
        Perform navigation (aspect_vkey_navforward and similar keys). this method is expected to be called from rendering thread.

        Parameters
        ----------
        theCtx: AIS_InteractiveContext
        theView: V3d_View

        Returns
        -------
        AIS_WalkDelta

        """
        return _AIS.AIS_ViewController_handleNavigationKeys(self, *args)

    def handleOrbitRotation(self, *args) -> "void":
        r"""
        Handle orbital rotation events mygl.orbitrotation. @param theview view to modify @param thepnt 3d point to rotate around @param thetolockzup amend camera to exclude roll angle (put camera up vector to plane containing global z and view direction).

        Parameters
        ----------
        theView: V3d_View
        thePnt: gp_Pnt
        theToLockZUp: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_handleOrbitRotation(self, *args)

    def handlePanning(self, *args) -> "void":
        r"""
        Handle panning event mygl.panning.

        Parameters
        ----------
        theView: V3d_View

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_handlePanning(self, *args)

    def handleViewOrientationKeys(self, *args) -> "void":
        r"""
        Handle hot-keys defining new camera orientation (aspect_vkey_viewtop and similar keys). default implementation starts an animated transaction from the current to the target camera orientation, when specific action key was pressed. this method is expected to be called from rendering thread.

        Parameters
        ----------
        theCtx: AIS_InteractiveContext
        theView: V3d_View

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_handleViewOrientationKeys(self, *args)

    def handleViewRedraw(self, *args) -> "void":
        r"""
        Handle view redraw. this method is expected to be called from rendering thread.

        Parameters
        ----------
        theCtx: AIS_InteractiveContext
        theView: V3d_View

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_handleViewRedraw(self, *args)

    def handleViewRotation(self, *args) -> "void":
        r"""
        Handle view direction rotation events mygl.viewrotation. this method is expected to be called from rendering thread. @param theview camera to modify @param theyawextra extra yaw increment @param thepitchextra extra pitch increment @param theroll roll value @param thetorestartonincrement flag indicating flight mode.

        Parameters
        ----------
        theView: V3d_View
        theYawExtra: double
        thePitchExtra: double
        theRoll: double
        theToRestartOnIncrement: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_handleViewRotation(self, *args)

    def handleXRHighlight(self, *args) -> "void":
        r"""
        Perform dynamic highlighting for active hand.

        Parameters
        ----------
        theCtx: AIS_InteractiveContext
        theView: V3d_View

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_handleXRHighlight(self, *args)

    def handleXRInput(self, *args) -> "void":
        r"""
        Perform xr input. this method is expected to be called from rendering thread.

        Parameters
        ----------
        theCtx: AIS_InteractiveContext
        theView: V3d_View
        theWalk: AIS_WalkDelta

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_handleXRInput(self, *args)

    def handleXRMoveTo(self, *args) -> "Standard_Integer":
        r"""
        Perform picking with/without dynamic highlighting for xr pose.

        Parameters
        ----------
        theCtx: AIS_InteractiveContext
        theView: V3d_View
        thePose: gp_Trsf
        theToHighlight: bool

        Returns
        -------
        int

        """
        return _AIS.AIS_ViewController_handleXRMoveTo(self, *args)

    def handleXRPicking(self, *args) -> "void":
        r"""
        Handle picking on trigger click.

        Parameters
        ----------
        theCtx: AIS_InteractiveContext
        theView: V3d_View

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_handleXRPicking(self, *args)

    def handleXRPresentations(self, *args) -> "void":
        r"""
        Display auxiliary xr presentations.

        Parameters
        ----------
        theCtx: AIS_InteractiveContext
        theView: V3d_View

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_handleXRPresentations(self, *args)

    def handleXRTeleport(self, *args) -> "void":
        r"""
        Handle trackpad teleportation action.

        Parameters
        ----------
        theCtx: AIS_InteractiveContext
        theView: V3d_View

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_handleXRTeleport(self, *args)

    def handleXRTurnPad(self, *args) -> "void":
        r"""
        Handle trackpad view turn action.

        Parameters
        ----------
        theCtx: AIS_InteractiveContext
        theView: V3d_View

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_handleXRTurnPad(self, *args)

    def handleZFocusScroll(self, *args) -> "void":
        r"""
        Handle zscroll event mygl.zoomactions. this method is expected to be called from rendering thread.

        Parameters
        ----------
        theView: V3d_View
        theParams: Aspect_ScrollDelta

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_handleZFocusScroll(self, *args)

    def handleZRotate(self, *args) -> "void":
        r"""
        Handle z rotation event mygl.zrotate.

        Parameters
        ----------
        theView: V3d_View

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_handleZRotate(self, *args)

    def handleZoom(self, *args) -> "void":
        r"""
        Handle zoom event mygl.zoomactions. this method is expected to be called from rendering thread.

        Parameters
        ----------
        theView: V3d_View
        theParams: Aspect_ScrollDelta
        thePnt: gp_Pnt *

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_handleZoom(self, *args)

    def hasPanningAnchorPoint(self, *args) -> "bool":
        r"""
        Return if panning anchor point has been defined.

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewController_hasPanningAnchorPoint(self, *args)

    def panningAnchorPoint(self, *args) -> "gp_Pnt const":
        r"""
        Return active panning anchor point.

        Returns
        -------
        gp_Pnt

        """
        return _AIS.AIS_ViewController_panningAnchorPoint(self, *args)

    def setAskNextFrame(self, *args) -> "void":
        r"""
        Set if another frame should be drawn right after this one.

        Parameters
        ----------
        theToDraw: bool,optional
        	default value is true

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_setAskNextFrame(self, *args)

    def setPanningAnchorPoint(self, *args) -> "void":
        r"""
        Set active panning anchor point.

        Parameters
        ----------
        thePnt: gp_Pnt

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewController_setPanningAnchorPoint(self, *args)

    def toAskNextFrame(self, *args) -> "bool":
        r"""
        Return true if another frame should be drawn right after this one.

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewController_toAskNextFrame(self, *args)

    def update3dMouseKeys(self, *args) -> "bool":
        r"""
        Process 3d mouse input keys event.

        Parameters
        ----------
        theEvent: WNT_HIDSpaceMouse

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewController_update3dMouseKeys(self, *args)

    def update3dMouseRotation(self, *args) -> "bool":
        r"""
        Process 3d mouse input rotation event.

        Parameters
        ----------
        theEvent: WNT_HIDSpaceMouse

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewController_update3dMouseRotation(self, *args)

    def update3dMouseTranslation(self, *args) -> "bool":
        r"""
        Process 3d mouse input translation event.

        Parameters
        ----------
        theEvent: WNT_HIDSpaceMouse

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewController_update3dMouseTranslation(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_ViewController

# Register AIS_ViewController in _AIS:
_AIS.AIS_ViewController_swigregister(AIS_ViewController)

class AIS_ViewCubeOwner(OCC.Core.SelectMgr.SelectMgr_EntityOwner):
    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"""
        Main constructor.

        Parameters
        ----------
        theObject: AIS_ViewCube
        theOrient: V3d_TypeOfOrientation
        thePriority: int,optional
        	default value is 5

        Returns
        -------
        None

        """
        _AIS.AIS_ViewCubeOwner_swiginit(self, _AIS.new_AIS_ViewCubeOwner(*args))

    def MainOrientation(self, *args) -> "V3d_TypeOfOrientation":
        r"""
        Return new orientation to set.

        Returns
        -------
        V3d_TypeOfOrientation

        """
        return _AIS.AIS_ViewCubeOwner_MainOrientation(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_ViewCubeOwner

# Register AIS_ViewCubeOwner in _AIS:
_AIS.AIS_ViewCubeOwner_swigregister(AIS_ViewCubeOwner)

class AIS_ViewInputBuffer(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    IsNewGesture = property(_AIS.AIS_ViewInputBuffer_IsNewGesture_get, _AIS.AIS_ViewInputBuffer_IsNewGesture_set)
    ZoomActions = property(_AIS.AIS_ViewInputBuffer_ZoomActions_get, _AIS.AIS_ViewInputBuffer_ZoomActions_set)
    Orientation = property(_AIS.AIS_ViewInputBuffer_Orientation_get, _AIS.AIS_ViewInputBuffer_Orientation_set)
    MoveTo = property(_AIS.AIS_ViewInputBuffer_MoveTo_get, _AIS.AIS_ViewInputBuffer_MoveTo_set)
    Selection = property(_AIS.AIS_ViewInputBuffer_Selection_get, _AIS.AIS_ViewInputBuffer_Selection_set)
    Panning = property(_AIS.AIS_ViewInputBuffer_Panning_get, _AIS.AIS_ViewInputBuffer_Panning_set)
    Dragging = property(_AIS.AIS_ViewInputBuffer_Dragging_get, _AIS.AIS_ViewInputBuffer_Dragging_set)
    OrbitRotation = property(_AIS.AIS_ViewInputBuffer_OrbitRotation_get, _AIS.AIS_ViewInputBuffer_OrbitRotation_set)
    ViewRotation = property(_AIS.AIS_ViewInputBuffer_ViewRotation_get, _AIS.AIS_ViewInputBuffer_ViewRotation_set)
    ZRotate = property(_AIS.AIS_ViewInputBuffer_ZRotate_get, _AIS.AIS_ViewInputBuffer_ZRotate_set)

    def __init__(self, *args):
        r"""
        No available documentation.

        Returns
        -------
        None

        """
        _AIS.AIS_ViewInputBuffer_swiginit(self, _AIS.new_AIS_ViewInputBuffer(*args))

    def Reset(self, *args) -> "void":
        r"""
        Reset events buffer.

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewInputBuffer_Reset(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_ViewInputBuffer

# Register AIS_ViewInputBuffer in _AIS:
_AIS.AIS_ViewInputBuffer_swigregister(AIS_ViewInputBuffer)

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

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

        Returns
        -------
        None

        """
        _AIS.AIS_WalkDelta_swiginit(self, _AIS.new_AIS_WalkDelta(*args))

    def IsCrouching(self, *args) -> "bool":
        r"""
        Return crouching state.

        Returns
        -------
        bool

        """
        return _AIS.AIS_WalkDelta_IsCrouching(self, *args)

    def IsEmpty(self, *args) -> "bool":
        r"""
        Return true when both rotation and translation deltas are empty.

        Returns
        -------
        bool

        """
        return _AIS.AIS_WalkDelta_IsEmpty(self, *args)

    def IsJumping(self, *args) -> "bool":
        r"""
        Return jumping state.

        Returns
        -------
        bool

        """
        return _AIS.AIS_WalkDelta_IsJumping(self, *args)

    def IsRunning(self, *args) -> "bool":
        r"""
        Return running state.

        Returns
        -------
        bool

        """
        return _AIS.AIS_WalkDelta_IsRunning(self, *args)

    def SetCrouching(self, *args) -> "void":
        r"""
        Set crouching state.

        Parameters
        ----------
        theIsCrouching: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_WalkDelta_SetCrouching(self, *args)

    def SetJumping(self, *args) -> "void":
        r"""
        Set jumping state.

        Parameters
        ----------
        theIsJumping: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_WalkDelta_SetJumping(self, *args)

    def SetRunning(self, *args) -> "void":
        r"""
        Set running state.

        Parameters
        ----------
        theIsRunning: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_WalkDelta_SetRunning(self, *args)

    def ToMove(self, *args) -> "bool":
        r"""
        Return true if translation delta is defined.

        Returns
        -------
        bool

        """
        return _AIS.AIS_WalkDelta_ToMove(self, *args)

    def ToRotate(self, *args) -> "bool":
        r"""
        Return true if rotation delta is defined.

        Returns
        -------
        bool

        """
        return _AIS.AIS_WalkDelta_ToRotate(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_WalkDelta

# Register AIS_WalkDelta in _AIS:
_AIS.AIS_WalkDelta_swigregister(AIS_WalkDelta)

class AIS_WalkPart(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Value = property(_AIS.AIS_WalkPart_Value_get, _AIS.AIS_WalkPart_Value_set)
    Pressure = property(_AIS.AIS_WalkPart_Pressure_get, _AIS.AIS_WalkPart_Pressure_set)
    Duration = property(_AIS.AIS_WalkPart_Duration_get, _AIS.AIS_WalkPart_Duration_set)

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

        Returns
        -------
        None

        """
        _AIS.AIS_WalkPart_swiginit(self, _AIS.new_AIS_WalkPart(*args))

    def IsEmpty(self, *args) -> "bool":
        r"""
        Return true if delta is empty.

        Returns
        -------
        bool

        """
        return _AIS.AIS_WalkPart_IsEmpty(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_WalkPart

# Register AIS_WalkPart in _AIS:
_AIS.AIS_WalkPart_swigregister(AIS_WalkPart)

class AIS_AnimationCamera(AIS_Animation):
    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"""
        Main constructor.

        Parameters
        ----------
        theAnimationName: TCollection_AsciiString
        theView: V3d_View

        Returns
        -------
        None

        """
        _AIS.AIS_AnimationCamera_swiginit(self, _AIS.new_AIS_AnimationCamera(*args))

    def CameraEnd(self, *args) -> "opencascade::handle< Graphic3d_Camera > const &":
        r"""
        Return camera end position.

        Returns
        -------
        opencascade::handle<Graphic3d_Camera>

        """
        return _AIS.AIS_AnimationCamera_CameraEnd(self, *args)

    def CameraStart(self, *args) -> "opencascade::handle< Graphic3d_Camera > const &":
        r"""
        Return camera start position.

        Returns
        -------
        opencascade::handle<Graphic3d_Camera>

        """
        return _AIS.AIS_AnimationCamera_CameraStart(self, *args)

    def SetCameraEnd(self, *args) -> "void":
        r"""
        Define camera end position.

        Parameters
        ----------
        theCameraEnd: Graphic3d_Camera

        Returns
        -------
        None

        """
        return _AIS.AIS_AnimationCamera_SetCameraEnd(self, *args)

    def SetCameraStart(self, *args) -> "void":
        r"""
        Define camera start position.

        Parameters
        ----------
        theCameraStart: Graphic3d_Camera

        Returns
        -------
        None

        """
        return _AIS.AIS_AnimationCamera_SetCameraStart(self, *args)

    def SetView(self, *args) -> "void":
        r"""
        Set target view.

        Parameters
        ----------
        theView: V3d_View

        Returns
        -------
        None

        """
        return _AIS.AIS_AnimationCamera_SetView(self, *args)

    def View(self, *args) -> "opencascade::handle< V3d_View > const &":
        r"""
        Return the target view.

        Returns
        -------
        opencascade::handle<V3d_View>

        """
        return _AIS.AIS_AnimationCamera_View(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_AnimationCamera

# Register AIS_AnimationCamera in _AIS:
_AIS.AIS_AnimationCamera_swigregister(AIS_AnimationCamera)

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

    def __init__(self, *args):
        r"""
        Constructor with initialization. note that start/end transformations specify exactly local transformation of the object, not the transformation to be applied to existing local transformation. @param theanimationname animation identifier @param thecontext interactive context where object have been displayed @param theobject object to apply local transformation @param thetrsfstart local transformation at the start of animation (e.g. theobject->localtransformation()) @param thetrsfend local transformation at the end of animation.

        Parameters
        ----------
        theAnimationName: TCollection_AsciiString
        theContext: AIS_InteractiveContext
        theObject: AIS_InteractiveObject
        theTrsfStart: gp_Trsf
        theTrsfEnd: gp_Trsf

        Returns
        -------
        None

        """
        _AIS.AIS_AnimationObject_swiginit(self, _AIS.new_AIS_AnimationObject(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_AnimationObject

# Register AIS_AnimationObject in _AIS:
_AIS.AIS_AnimationObject_swigregister(AIS_AnimationObject)

class AIS_Axis(AIS_InteractiveObject):
    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"""
        Initializes the line acomponent.

        Parameters
        ----------
        aComponent: Geom_Line

        Returns
        -------
        None
        Initializes the axis2 position acomponent. the coordinate system used is right-handed.

        Parameters
        ----------
        aComponent: Geom_Axis2Placement
        anAxisType: AIS_TypeOfAxis

        Returns
        -------
        None
        Initializes the axis1 position anaxis.

        Parameters
        ----------
        anAxis: Geom_Axis1Placement

        Returns
        -------
        None

        """
        _AIS.AIS_Axis_swiginit(self, _AIS.new_AIS_Axis(*args))

    def Axis2Placement(self, *args) -> "opencascade::handle< Geom_Axis2Placement > const &":
        r"""
        Returns the position of axis2 and positions it by identifying it as the x, y, or z axis and giving its direction in 3d space. the coordinate system used is right-handed.

        Returns
        -------
        opencascade::handle<Geom_Axis2Placement>

        """
        return _AIS.AIS_Axis_Axis2Placement(self, *args)

    def Component(self, *args) -> "opencascade::handle< Geom_Line > const &":
        r"""
        Returns the axis entity acomponent and identifies it as a component of a shape.

        Returns
        -------
        opencascade::handle<Geom_Line>

        """
        return _AIS.AIS_Axis_Component(self, *args)

    def IsXYZAxis(self, *args) -> "Standard_Boolean":
        r"""
        Returns a signature of 2 for axis datums. when you activate mode 2 by a signature, you pick ais objects of type ais_axis.

        Returns
        -------
        bool

        """
        return _AIS.AIS_Axis_IsXYZAxis(self, *args)

    def SetAxis1Placement(self, *args) -> "void":
        r"""
        Constructs a new line to serve as the axis anaxis in 3d space.

        Parameters
        ----------
        anAxis: Geom_Axis1Placement

        Returns
        -------
        None

        """
        return _AIS.AIS_Axis_SetAxis1Placement(self, *args)

    def SetAxis2Placement(self, *args) -> "void":
        r"""
        Allows you to provide settings for acomponent:the position and direction of an axis in 3d space. the coordinate system used is right-handed.

        Parameters
        ----------
        aComponent: Geom_Axis2Placement
        anAxisType: AIS_TypeOfAxis

        Returns
        -------
        None

        """
        return _AIS.AIS_Axis_SetAxis2Placement(self, *args)

    def SetComponent(self, *args) -> "void":
        r"""
        Sets the coordinates of the lin acomponent.

        Parameters
        ----------
        aComponent: Geom_Line

        Returns
        -------
        None

        """
        return _AIS.AIS_Axis_SetComponent(self, *args)

    def SetTypeOfAxis(self, *args) -> "void":
        r"""
        Constructs the entity thetypeaxis to stock information concerning type of axis.

        Parameters
        ----------
        theTypeAxis: AIS_TypeOfAxis

        Returns
        -------
        None

        """
        return _AIS.AIS_Axis_SetTypeOfAxis(self, *args)

    def TypeOfAxis(self, *args) -> "AIS_TypeOfAxis":
        r"""
        Returns the type of axis.

        Returns
        -------
        AIS_TypeOfAxis

        """
        return _AIS.AIS_Axis_TypeOfAxis(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_Axis

# Register AIS_Axis in _AIS:
_AIS.AIS_Axis_swigregister(AIS_Axis)

class AIS_CameraFrustum(AIS_InteractiveObject):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    SelectionMode_Edges = _AIS.AIS_CameraFrustum_SelectionMode_Edges
    
    SelectionMode_Volume = _AIS.AIS_CameraFrustum_SelectionMode_Volume
    


    class SelectionMode(IntEnum):
    	SelectionMode_Edges = 0
    	SelectionMode_Volume = 1
    SelectionMode_Edges = SelectionMode.SelectionMode_Edges
    SelectionMode_Volume = SelectionMode.SelectionMode_Volume


    def __init__(self, *args):
        r"""
        Constructs camera frustum with default configuration.

        Returns
        -------
        None

        """
        _AIS.AIS_CameraFrustum_swiginit(self, _AIS.new_AIS_CameraFrustum(*args))

    def SetCameraFrustum(self, *args) -> "void":
        r"""
        Sets camera frustum.

        Parameters
        ----------
        theCamera: Graphic3d_Camera

        Returns
        -------
        None

        """
        return _AIS.AIS_CameraFrustum_SetCameraFrustum(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_CameraFrustum

# Register AIS_CameraFrustum in _AIS:
_AIS.AIS_CameraFrustum_swigregister(AIS_CameraFrustum)

class AIS_Circle(AIS_InteractiveObject):
    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"""
        Initializes this algorithm for constructing ais circle datums initializes the circle acircle.

        Parameters
        ----------
        aCircle: Geom_Circle

        Returns
        -------
        None
        Initializes this algorithm for constructing ais circle datums. initializes the circle thecircle, the arc starting point theustart, the arc ending point theuend, and the type of sensitivity theisfilledcirclesens.

        Parameters
        ----------
        theCircle: Geom_Circle
        theUStart: float
        theUEnd: float
        theIsFilledCircleSens: bool,optional
        	default value is Standard_False

        Returns
        -------
        None

        """
        _AIS.AIS_Circle_swiginit(self, _AIS.new_AIS_Circle(*args))

    def Circle(self, *args) -> "opencascade::handle< Geom_Circle > const &":
        r"""
        Returns the circle component defined in setcircle.

        Returns
        -------
        opencascade::handle<Geom_Circle>

        """
        return _AIS.AIS_Circle_Circle(self, *args)

    def IsFilledCircleSens(self, *args) -> "Standard_Boolean":
        r"""
        Returns the type of sensitivity for the circle;.

        Returns
        -------
        bool

        """
        return _AIS.AIS_Circle_IsFilledCircleSens(self, *args)

    def Parameters(self, *args) -> "void":
        r"""
        Constructs instances of the starting point and the end point parameters, theu1 and theu2.

        Parameters
        ----------

        Returns
        -------
        theU1: float
        theU2: float

        """
        return _AIS.AIS_Circle_Parameters(self, *args)

    def SetCircle(self, *args) -> "void":
        r"""
        Allows you to provide settings for the circle datum acircle.

        Parameters
        ----------
        theCircle: Geom_Circle

        Returns
        -------
        None

        """
        return _AIS.AIS_Circle_SetCircle(self, *args)

    def SetFilledCircleSens(self, *args) -> "void":
        r"""
        Sets the type of sensitivity for the circle. if theisfilledcirclesens set to standard_true then the whole circle will be detectable, otherwise only the boundary of the circle.

        Parameters
        ----------
        theIsFilledCircleSens: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_Circle_SetFilledCircleSens(self, *args)

    def SetFirstParam(self, *args) -> "void":
        r"""
        Allows you to set the parameter theu for the starting point of an arc.

        Parameters
        ----------
        theU: float

        Returns
        -------
        None

        """
        return _AIS.AIS_Circle_SetFirstParam(self, *args)

    def SetLastParam(self, *args) -> "void":
        r"""
        Allows you to provide the parameter theu for the end point of an arc.

        Parameters
        ----------
        theU: float

        Returns
        -------
        None

        """
        return _AIS.AIS_Circle_SetLastParam(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_Circle

# Register AIS_Circle in _AIS:
_AIS.AIS_Circle_swigregister(AIS_Circle)

class AIS_ColorScale(AIS_InteractiveObject):
    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

        """
        _AIS.AIS_ColorScale_swiginit(self, _AIS.new_AIS_ColorScale(*args))

    def ColorRange(self, *args) -> "void":
        r"""
        Returns color range corresponding to minimum and maximum values, blue to red by default.

        Parameters
        ----------
        theMinColor: Quantity_Color
        theMaxColor: Quantity_Color

        Returns
        -------
        None

        """
        return _AIS.AIS_ColorScale_ColorRange(self, *args)

    def Compute(self, *args) -> "void":
        r"""
        Compute presentation.

        Parameters
        ----------
        thePresentationManager: PrsMgr_PresentationManager3d
        thePresentation: Prs3d_Presentation
        theMode: int

        Returns
        -------
        None

        """
        return _AIS.AIS_ColorScale_Compute(self, *args)

    def FindColor(self, *args) -> "Standard_Boolean":
        r"""
        Calculate color according passed value; returns true if value is in range or false, if isn't.

        Parameters
        ----------
        theValue: float
        theMin: float
        theMax: float
        theColorsCount: int
        theColorHlsMin: Graphic3d_Vec3d
        theColorHlsMax: Graphic3d_Vec3d
        theColor: Quantity_Color

        Returns
        -------
        bool
        Calculate color according passed value; returns true if value is in range or false, if isn't.

        Parameters
        ----------
        theValue: float
        theMin: float
        theMax: float
        theColorsCount: int
        theColor: Quantity_Color

        Returns
        -------
        bool
        Calculate color according passed value; returns true if value is in range or false, if isn't.

        Parameters
        ----------
        theValue: float
        theColor: Quantity_Color

        Returns
        -------
        bool

        """
        return _AIS.AIS_ColorScale_FindColor(self, *args)

    def Format(self, *args) -> "TCollection_AsciiString const &":
        r"""
        Returns the format of text.

        Returns
        -------
        TCollection_AsciiString

        """
        return _AIS.AIS_ColorScale_Format(self, *args)

    def GetBreadth(self, *args) -> "Standard_Integer":
        r"""
        Returns the breadth of color bar, 0 by default (e.g. should be set by user explicitly before displaying).

        Returns
        -------
        int

        """
        return _AIS.AIS_ColorScale_GetBreadth(self, *args)

    def GetColorType(self, *args) -> "Aspect_TypeOfColorScaleData":
        r"""
        Returns the type of colors, aspect_tocsd_auto by default. aspect_tocsd_auto - value between red and blue aspect_tocsd_user - user specified color from color map.

        Returns
        -------
        Aspect_TypeOfColorScaleData

        """
        return _AIS.AIS_ColorScale_GetColorType(self, *args)

    def GetColors(self, *args) -> "Aspect_SequenceOfColor const &":
        r"""
        Returns the user specified colors.

        Parameters
        ----------
        theColors: Aspect_SequenceOfColor

        Returns
        -------
        None
        Returns the user specified colors.

        Returns
        -------
        Aspect_SequenceOfColor

        """
        return _AIS.AIS_ColorScale_GetColors(self, *args)

    def GetFormat(self, *args) -> "TCollection_AsciiString const &":
        r"""
        Returns the format for numbers, '%.4g' by default. the same like format for function printf(). used if getlabeltype() is tocsd_auto;.

        Returns
        -------
        TCollection_AsciiString

        """
        return _AIS.AIS_ColorScale_GetFormat(self, *args)

    def GetHeight(self, *args) -> "Standard_Integer":
        r"""
        Returns the height of color bar, 0 by default (e.g. should be set by user explicitly before displaying).

        Returns
        -------
        int

        """
        return _AIS.AIS_ColorScale_GetHeight(self, *args)

    def GetIntervalColor(self, *args) -> "Quantity_Color":
        r"""
        Returns the user specified color from color map with index (starts at 1). returns default color if index is out of range in color map.

        Parameters
        ----------
        theIndex: int

        Returns
        -------
        Quantity_Color

        """
        return _AIS.AIS_ColorScale_GetIntervalColor(self, *args)

    def GetLabel(self, *args) -> "TCollection_ExtendedString":
        r"""
        Returns the user specified label with index theindex. index is in range from 1 to getnumberofintervals() or to getnumberofintervals() + 1 if islabelatborder() is true. returns empty string if label not defined.

        Parameters
        ----------
        theIndex: int

        Returns
        -------
        TCollection_ExtendedString

        """
        return _AIS.AIS_ColorScale_GetLabel(self, *args)

    def GetLabelPosition(self, *args) -> "Aspect_TypeOfColorScalePosition":
        r"""
        Returns the position of labels concerning color filled rectangles, aspect_tocsp_right by default.

        Returns
        -------
        Aspect_TypeOfColorScalePosition

        """
        return _AIS.AIS_ColorScale_GetLabelPosition(self, *args)

    def GetLabelType(self, *args) -> "Aspect_TypeOfColorScaleData":
        r"""
        Returns the type of labels, aspect_tocsd_auto by default. aspect_tocsd_auto - labels as boundary values for intervals aspect_tocsd_user - user specified label is used.

        Returns
        -------
        Aspect_TypeOfColorScaleData

        """
        return _AIS.AIS_ColorScale_GetLabelType(self, *args)

    def GetLabels(self, *args) -> "void":
        r"""
        Returns the user specified labels.

        Parameters
        ----------
        theLabels: TColStd_SequenceOfExtendedString

        Returns
        -------
        None

        """
        return _AIS.AIS_ColorScale_GetLabels(self, *args)

    def GetMax(self, *args) -> "Standard_Real":
        r"""
        Returns maximal value of color scale, 1.0 by default.

        Returns
        -------
        float

        """
        return _AIS.AIS_ColorScale_GetMax(self, *args)

    def GetMin(self, *args) -> "Standard_Real":
        r"""
        Returns minimal value of color scale, 0.0 by default.

        Returns
        -------
        float

        """
        return _AIS.AIS_ColorScale_GetMin(self, *args)

    def GetNumberOfIntervals(self, *args) -> "Standard_Integer":
        r"""
        Returns the number of color scale intervals, 10 by default.

        Returns
        -------
        int

        """
        return _AIS.AIS_ColorScale_GetNumberOfIntervals(self, *args)

    def GetPosition(self, *args) -> "void":
        r"""
        Returns the bottom-left position of color scale, 0x0 by default.

        Parameters
        ----------

        Returns
        -------
        theX: float
        theY: float

        """
        return _AIS.AIS_ColorScale_GetPosition(self, *args)

    def GetRange(self, *args) -> "void":
        r"""
        Returns minimal and maximal values of color scale, 0.0 to 1.0 by default.

        Parameters
        ----------

        Returns
        -------
        theMin: float
        theMax: float

        """
        return _AIS.AIS_ColorScale_GetRange(self, *args)

    def GetSize(self, *args) -> "void":
        r"""
        Returns the size of color bar, 0 and 0 by default (e.g. should be set by user explicitly before displaying).

        Parameters
        ----------

        Returns
        -------
        theBreadth: int
        theHeight: int

        """
        return _AIS.AIS_ColorScale_GetSize(self, *args)

    def GetTextHeight(self, *args) -> "Standard_Integer":
        r"""
        Returns the font height of text labels, 20 by default.

        Returns
        -------
        int

        """
        return _AIS.AIS_ColorScale_GetTextHeight(self, *args)

    def GetTitle(self, *args) -> "TCollection_ExtendedString const &":
        r"""
        Returns the color scale title string, empty string by default.

        Returns
        -------
        TCollection_ExtendedString

        """
        return _AIS.AIS_ColorScale_GetTitle(self, *args)

    def GetTitlePosition(self, *args) -> "Aspect_TypeOfColorScalePosition":
        r"""
        Returns the position of color scale title, aspect_tocsp_left by default.

        Returns
        -------
        Aspect_TypeOfColorScalePosition

        """
        return _AIS.AIS_ColorScale_GetTitlePosition(self, *args)

    def GetXPosition(self, *args) -> "Standard_Integer":
        r"""
        Returns the left position of color scale, 0 by default.

        Returns
        -------
        int

        """
        return _AIS.AIS_ColorScale_GetXPosition(self, *args)

    def GetYPosition(self, *args) -> "Standard_Integer":
        r"""
        Returns the bottom position of color scale, 0 by default.

        Returns
        -------
        int

        """
        return _AIS.AIS_ColorScale_GetYPosition(self, *args)

    def HueMax(self, *args) -> "Standard_Real":
        r"""
        Returns the hue angle corresponding to maximum value, 0 by default (red).

        Returns
        -------
        float

        """
        return _AIS.AIS_ColorScale_HueMax(self, *args)

    def HueMin(self, *args) -> "Standard_Real":
        r"""
        Returns the hue angle corresponding to minimum value, 230 by default (blue).

        Returns
        -------
        float

        """
        return _AIS.AIS_ColorScale_HueMin(self, *args)

    def HueRange(self, *args) -> "void":
        r"""
        Returns the hue angle range corresponding to minimum and maximum values, 230 to 0 by default (blue to red).

        Parameters
        ----------

        Returns
        -------
        theMinAngle: float
        theMaxAngle: float

        """
        return _AIS.AIS_ColorScale_HueRange(self, *args)

    def IsLabelAtBorder(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if the labels are placed at border of color intervals, true by default. the automatically generated label will show value exactly on the current position: - value connecting two neighbor intervals (true) - value in the middle of interval (false).

        Returns
        -------
        bool

        """
        return _AIS.AIS_ColorScale_IsLabelAtBorder(self, *args)

    def IsLogarithmic(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if the color scale has logarithmic intervals, false by default.

        Returns
        -------
        bool

        """
        return _AIS.AIS_ColorScale_IsLogarithmic(self, *args)

    def IsReversed(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if the labels and colors used in reversed order, false by default. - normal, bottom-up order with minimal value on the bottom and maximum value on top. - reversed, top-down order with maximum value on the bottom and minimum value on top.

        Returns
        -------
        bool

        """
        return _AIS.AIS_ColorScale_IsReversed(self, *args)

    def IsSmoothTransition(self, *args) -> "Standard_Boolean":
        r"""
        Return true if color transition between neighbor intervals should be linearly interpolated, false by default.

        Returns
        -------
        bool

        """
        return _AIS.AIS_ColorScale_IsSmoothTransition(self, *args)

    def Labels(self, *args) -> "TColStd_SequenceOfExtendedString const &":
        r"""
        Returns the user specified labels.

        Returns
        -------
        TColStd_SequenceOfExtendedString

        """
        return _AIS.AIS_ColorScale_Labels(self, *args)

    @staticmethod
    def MakeUniformColors(*args) -> "Aspect_SequenceOfColor":
        r"""
        Generates sequence of colors of the same lightness value in cie lch color space (see #quantity_toc_cielch), with hue values in the specified range. the colors are distributed across the range such as to have perceptually same difference between neighbour colors. for each color, maximal chroma value fitting in srgb gamut is used. //! @param thenbcolors - number of colors to generate @param thelightness - lightness to be used (0 is black, 100 is white, 32 is lightness of pure blue) @param thehuefrom - hue value at the start of the scale @param thehueto - hue value defining the end of the scale hue value can be out of the range [0, 360], interpreted as modulo 360. the colors of the scale will be in the order of increasing hue if thehueto > thehuefrom, and decreasing otherwise.

        Parameters
        ----------
        theNbColors: int
        theLightness: float
        theHueFrom: float
        theHueTo: float

        Returns
        -------
        Aspect_SequenceOfColor

        """
        return _AIS.AIS_ColorScale_MakeUniformColors(*args)

    def SetBreadth(self, *args) -> "void":
        r"""
        Sets the width of color bar.

        Parameters
        ----------
        theBreadth: int

        Returns
        -------
        None

        """
        return _AIS.AIS_ColorScale_SetBreadth(self, *args)

    def SetColorRange(self, *args) -> "void":
        r"""
        Sets color range corresponding to minimum and maximum values.

        Parameters
        ----------
        theMinColor: Quantity_Color
        theMaxColor: Quantity_Color

        Returns
        -------
        None

        """
        return _AIS.AIS_ColorScale_SetColorRange(self, *args)

    def SetColorType(self, *args) -> "void":
        r"""
        Sets the type of colors. aspect_tocsd_auto - value between red and blue aspect_tocsd_user - user specified color from color map.

        Parameters
        ----------
        theType: Aspect_TypeOfColorScaleData

        Returns
        -------
        None

        """
        return _AIS.AIS_ColorScale_SetColorType(self, *args)

    def SetColors(self, *args) -> "void":
        r"""
        Sets the color scale colors. the length of the sequence should be equal to getnumberofintervals().

        Parameters
        ----------
        theSeq: Aspect_SequenceOfColor

        Returns
        -------
        None

        """
        return _AIS.AIS_ColorScale_SetColors(self, *args)

    def SetFormat(self, *args) -> "void":
        r"""
        Sets the color scale auto label format specification.

        Parameters
        ----------
        theFormat: TCollection_AsciiString

        Returns
        -------
        None

        """
        return _AIS.AIS_ColorScale_SetFormat(self, *args)

    def SetHeight(self, *args) -> "void":
        r"""
        Sets the height of color bar.

        Parameters
        ----------
        theHeight: int

        Returns
        -------
        None

        """
        return _AIS.AIS_ColorScale_SetHeight(self, *args)

    def SetHueRange(self, *args) -> "void":
        r"""
        Sets hue angle range corresponding to minimum and maximum values. the valid angle range is [0, 360], see quantity_color and quantity_toc_hls for more details.

        Parameters
        ----------
        theMinAngle: float
        theMaxAngle: float

        Returns
        -------
        None

        """
        return _AIS.AIS_ColorScale_SetHueRange(self, *args)

    def SetIntervalColor(self, *args) -> "void":
        r"""
        Sets the color of the specified interval. note that list is automatically resized to include specified index. @param thecolor color value to set @param theindex index in range [1, getnumberofintervals()];  appended to the end of list if -1 is specified.

        Parameters
        ----------
        theColor: Quantity_Color
        theIndex: int

        Returns
        -------
        None

        """
        return _AIS.AIS_ColorScale_SetIntervalColor(self, *args)

    def SetLabel(self, *args) -> "void":
        r"""
        Sets the color scale label at index. note that list is automatically resized to include specified index. @param thelabel new label text @param theindex index in range [1, getnumberofintervals()] or [1, getnumberofintervals() + 1] if islabelatborder() is true;  label is appended to the end of list if negative index is specified.

        Parameters
        ----------
        theLabel: TCollection_ExtendedString
        theIndex: int

        Returns
        -------
        None

        """
        return _AIS.AIS_ColorScale_SetLabel(self, *args)

    def SetLabelAtBorder(self, *args) -> "void":
        r"""
        Sets true if the labels are placed at border of color intervals (true by default). if set to false, labels will be drawn at color intervals rather than at borders.

        Parameters
        ----------
        theOn: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_ColorScale_SetLabelAtBorder(self, *args)

    def SetLabelPosition(self, *args) -> "void":
        r"""
        Sets the color scale labels position relative to color bar.

        Parameters
        ----------
        thePos: Aspect_TypeOfColorScalePosition

        Returns
        -------
        None

        """
        return _AIS.AIS_ColorScale_SetLabelPosition(self, *args)

    def SetLabelType(self, *args) -> "void":
        r"""
        Sets the type of labels. aspect_tocsd_auto - labels as boundary values for intervals aspect_tocsd_user - user specified label is used.

        Parameters
        ----------
        theType: Aspect_TypeOfColorScaleData

        Returns
        -------
        None

        """
        return _AIS.AIS_ColorScale_SetLabelType(self, *args)

    def SetLabels(self, *args) -> "void":
        r"""
        Sets the color scale labels. the length of the sequence should be equal to getnumberofintervals() or to getnumberofintervals() + 1 if islabelatborder() is true. if length of the sequence does not much the number of intervals, then these labels will be considered as 'free' and will be located at the virtual intervals corresponding to the number of labels (with flag islabelatborder() having the same effect as in normal case).

        Parameters
        ----------
        theSeq: TColStd_SequenceOfExtendedString

        Returns
        -------
        None

        """
        return _AIS.AIS_ColorScale_SetLabels(self, *args)

    def SetLogarithmic(self, *args) -> "void":
        r"""
        Sets true if the color scale has logarithmic intervals.

        Parameters
        ----------
        isLogarithmic: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_ColorScale_SetLogarithmic(self, *args)

    def SetMax(self, *args) -> "void":
        r"""
        Sets the maximal value of color scale.

        Parameters
        ----------
        theMax: float

        Returns
        -------
        None

        """
        return _AIS.AIS_ColorScale_SetMax(self, *args)

    def SetMin(self, *args) -> "void":
        r"""
        Sets the minimal value of color scale.

        Parameters
        ----------
        theMin: float

        Returns
        -------
        None

        """
        return _AIS.AIS_ColorScale_SetMin(self, *args)

    def SetNumberOfIntervals(self, *args) -> "void":
        r"""
        Sets the number of color scale intervals.

        Parameters
        ----------
        theNum: int

        Returns
        -------
        None

        """
        return _AIS.AIS_ColorScale_SetNumberOfIntervals(self, *args)

    def SetPosition(self, *args) -> "void":
        r"""
        Sets the position of color scale.

        Parameters
        ----------
        theX: int
        theY: int

        Returns
        -------
        None

        """
        return _AIS.AIS_ColorScale_SetPosition(self, *args)

    def SetRange(self, *args) -> "void":
        r"""
        Sets the minimal and maximal value of color scale. note that values order will be ignored - the minimum and maximum values will be swapped if needed. ::setreversed() should be called to swap displaying order.

        Parameters
        ----------
        theMin: float
        theMax: float

        Returns
        -------
        None

        """
        return _AIS.AIS_ColorScale_SetRange(self, *args)

    def SetReversed(self, *args) -> "void":
        r"""
        Sets true if the labels and colors used in reversed order.

        Parameters
        ----------
        theReverse: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_ColorScale_SetReversed(self, *args)

    def SetSize(self, *args) -> "void":
        r"""
        Sets the size of color bar.

        Parameters
        ----------
        theBreadth: int
        theHeight: int

        Returns
        -------
        None

        """
        return _AIS.AIS_ColorScale_SetSize(self, *args)

    def SetSmoothTransition(self, *args) -> "void":
        r"""
        Setup smooth color transition.

        Parameters
        ----------
        theIsSmooth: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_ColorScale_SetSmoothTransition(self, *args)

    def SetTextHeight(self, *args) -> "void":
        r"""
        Sets the height of text of color scale.

        Parameters
        ----------
        theHeight: int

        Returns
        -------
        None

        """
        return _AIS.AIS_ColorScale_SetTextHeight(self, *args)

    def SetTitle(self, *args) -> "void":
        r"""
        Sets the color scale title string.

        Parameters
        ----------
        theTitle: TCollection_ExtendedString

        Returns
        -------
        None

        """
        return _AIS.AIS_ColorScale_SetTitle(self, *args)

    def SetTitlePosition(self, *args) -> "void":
        r"""
        Sets the color scale title position.

        Parameters
        ----------
        thePos: Aspect_TypeOfColorScalePosition

        Returns
        -------
        None

        """
        return _AIS.AIS_ColorScale_SetTitlePosition(self, *args)

    def SetUniformColors(self, *args) -> "void":
        r"""
        Populates colors scale by colors of the same lightness value in cie lch color space, distributed by hue, with perceptually uniform differences between consequent colors. see makeuniformcolors() for description of parameters.

        Parameters
        ----------
        theLightness: float
        theHueFrom: float
        theHueTo: float

        Returns
        -------
        None

        """
        return _AIS.AIS_ColorScale_SetUniformColors(self, *args)

    def SetXPosition(self, *args) -> "void":
        r"""
        Sets the left position of color scale.

        Parameters
        ----------
        theX: int

        Returns
        -------
        None

        """
        return _AIS.AIS_ColorScale_SetXPosition(self, *args)

    def SetYPosition(self, *args) -> "void":
        r"""
        Sets the bottom position of color scale.

        Parameters
        ----------
        theY: int

        Returns
        -------
        None

        """
        return _AIS.AIS_ColorScale_SetYPosition(self, *args)

    def TextHeight(self, *args) -> "Standard_Integer":
        r"""
        Returns the height of text. @param thetext [in] the text of which to calculate height.

        Parameters
        ----------
        theText: TCollection_ExtendedString

        Returns
        -------
        int

        """
        return _AIS.AIS_ColorScale_TextHeight(self, *args)

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

        Parameters
        ----------
        theText: TCollection_ExtendedString
        theHeight: int

        Returns
        -------
        theWidth: int
        theAscent: int
        theDescent: int

        """
        return _AIS.AIS_ColorScale_TextSize(self, *args)

    def TextWidth(self, *args) -> "Standard_Integer":
        r"""
        Returns the width of text. @param thetext [in] the text of which to calculate width.

        Parameters
        ----------
        theText: TCollection_ExtendedString

        Returns
        -------
        int

        """
        return _AIS.AIS_ColorScale_TextWidth(self, *args)

    @staticmethod
    def hueToValidRange(*args) -> "Standard_Real":
        r"""
        Shift hue into valid range. lightness and saturation should be specified in valid range [0.0, 1.0], however hue might be given out of quantity_color range to specify desired range for interpolation.

        Parameters
        ----------
        theHue: float

        Returns
        -------
        float

        """
        return _AIS.AIS_ColorScale_hueToValidRange(*args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_ColorScale

# Register AIS_ColorScale in _AIS:
_AIS.AIS_ColorScale_swigregister(AIS_ColorScale)

def AIS_ColorScale_MakeUniformColors(*args) -> "Aspect_SequenceOfColor":
    r"""
    Generates sequence of colors of the same lightness value in cie lch color space (see #quantity_toc_cielch), with hue values in the specified range. the colors are distributed across the range such as to have perceptually same difference between neighbour colors. for each color, maximal chroma value fitting in srgb gamut is used. //! @param thenbcolors - number of colors to generate @param thelightness - lightness to be used (0 is black, 100 is white, 32 is lightness of pure blue) @param thehuefrom - hue value at the start of the scale @param thehueto - hue value defining the end of the scale hue value can be out of the range [0, 360], interpreted as modulo 360. the colors of the scale will be in the order of increasing hue if thehueto > thehuefrom, and decreasing otherwise.

    Parameters
    ----------
    theNbColors: int
    theLightness: float
    theHueFrom: float
    theHueTo: float

    Returns
    -------
    Aspect_SequenceOfColor

    """
    return _AIS.AIS_ColorScale_MakeUniformColors(*args)

def AIS_ColorScale_hueToValidRange(*args) -> "Standard_Real":
    r"""
    Shift hue into valid range. lightness and saturation should be specified in valid range [0.0, 1.0], however hue might be given out of quantity_color range to specify desired range for interpolation.

    Parameters
    ----------
    theHue: float

    Returns
    -------
    float

    """
    return _AIS.AIS_ColorScale_hueToValidRange(*args)

class AIS_ConnectedInteractive(AIS_InteractiveObject):
    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"""
        Disconnects the previous view and sets highlight mode to 0. this highlights the wireframe presentation atypeofpresentation3d. top_allview deactivates hidden line removal.

        Parameters
        ----------
        aTypeOfPresentation3d: PrsMgr_TypeOfPresentation3d,optional
        	default value is PrsMgr_TOP_AllView

        Returns
        -------
        None

        """
        _AIS.AIS_ConnectedInteractive_swiginit(self, _AIS.new_AIS_ConnectedInteractive(*args))

    def Connect(self, *args) -> "void":
        r"""
        Establishes the connection between the connected interactive object, anotheriobj, and its reference.

        Parameters
        ----------
        theAnotherObj: AIS_InteractiveObject

        Returns
        -------
        None
        Establishes the connection between the connected interactive object, anotheriobj, and its reference. locates instance in alocation.

        Parameters
        ----------
        theAnotherObj: AIS_InteractiveObject
        theLocation: gp_Trsf

        Returns
        -------
        None
        Establishes the connection between the connected interactive object, anotheriobj, and its reference. locates instance in alocation.

        Parameters
        ----------
        theAnotherObj: AIS_InteractiveObject
        theLocation: TopLoc_Datum3D

        Returns
        -------
        None

        """
        return _AIS.AIS_ConnectedInteractive_Connect(self, *args)

    def ConnectedTo(self, *args) -> "opencascade::handle< AIS_InteractiveObject > const &":
        r"""
        Returns the connection with the reference interactive object.

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

        """
        return _AIS.AIS_ConnectedInteractive_ConnectedTo(self, *args)

    def Disconnect(self, *args) -> "void":
        r"""
        Clears the connection with a source reference. the presentation will no longer be displayed. warning must be done before deleting the presentation.

        Returns
        -------
        None

        """
        return _AIS.AIS_ConnectedInteractive_Disconnect(self, *args)

    def HasConnection(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if there is a connection established between the presentation and its source reference.

        Returns
        -------
        bool

        """
        return _AIS.AIS_ConnectedInteractive_HasConnection(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_ConnectedInteractive

# Register AIS_ConnectedInteractive in _AIS:
_AIS.AIS_ConnectedInteractive_swigregister(AIS_ConnectedInteractive)

class AIS_Line(AIS_InteractiveObject):
    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"""
        Initializes the line aline.

        Parameters
        ----------
        aLine: Geom_Line

        Returns
        -------
        None
        Initializes a starting point astartpoint and a finishing point aendpoint for the line.

        Parameters
        ----------
        aStartPoint: Geom_Point
        aEndPoint: Geom_Point

        Returns
        -------
        None

        """
        _AIS.AIS_Line_swiginit(self, _AIS.new_AIS_Line(*args))

    def Line(self, *args) -> "opencascade::handle< Geom_Line > const &":
        r"""
        Constructs an infinite line.

        Returns
        -------
        opencascade::handle<Geom_Line>

        """
        return _AIS.AIS_Line_Line(self, *args)

    def Points(self, *args) -> "void":
        r"""
        Returns the starting point thepstart and the end point thepend of the line set by setpoints.

        Parameters
        ----------
        thePStart: Geom_Point
        thePEnd: Geom_Point

        Returns
        -------
        None

        """
        return _AIS.AIS_Line_Points(self, *args)

    def SetLine(self, *args) -> "void":
        r"""
        Instantiates an infinite line.

        Parameters
        ----------
        theLine: Geom_Line

        Returns
        -------
        None

        """
        return _AIS.AIS_Line_SetLine(self, *args)

    def SetPoints(self, *args) -> "void":
        r"""
        Sets the starting point thepstart and ending point thepend of the infinite line to create a finite line segment.

        Parameters
        ----------
        thePStart: Geom_Point
        thePEnd: Geom_Point

        Returns
        -------
        None

        """
        return _AIS.AIS_Line_SetPoints(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_Line

# Register AIS_Line in _AIS:
_AIS.AIS_Line_swigregister(AIS_Line)

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

    def __init__(self, *args):
        r"""
        Constructs a manipulator object with default placement and all parts to be displayed.

        Returns
        -------
        None
        Constructs a manipulator object with input location and positions of axes and all parts to be displayed.

        Parameters
        ----------
        thePosition: gp_Ax2

        Returns
        -------
        None

        """
        _AIS.AIS_Manipulator_swiginit(self, _AIS.new_AIS_Manipulator(*args))

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

        Returns
        -------
        int

        """
        return _AIS.AIS_Manipulator_ActiveAxisIndex(self, *args)

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

        Returns
        -------
        AIS_ManipulatorMode

        """
        return _AIS.AIS_Manipulator_ActiveMode(self, *args)

    def Attach(self, *args) -> "void":
        r"""
        Attaches himself to the input interactive object and become displayed in the same context. it is placed in the center of object bounding box, and its size is adjusted to the object bounding box.

        Parameters
        ----------
        theObject: AIS_InteractiveObject
        theOptions: OptionsForAttach,optional
        	default value is OptionsForAttach()

        Returns
        -------
        None
        Attaches himself to the input interactive object group and become displayed in the same context. it become attached to the first object, baut manage manipulation of the whole group. it is placed in the center of object bounding box, and its size is adjusted to the object bounding box.

        Parameters
        ----------
        theObject: AIS_ManipulatorObjectSequence
        theOptions: OptionsForAttach,optional
        	default value is OptionsForAttach()

        Returns
        -------
        None

        """
        return _AIS.AIS_Manipulator_Attach(self, *args)

    def Compute(self, *args) -> "void":
        r"""
        Fills presentation. @note manipulator presentation does not use display mode and for all modes has the same presentation.

        Parameters
        ----------
        thePrsMgr: PrsMgr_PresentationManager3d
        thePrs: Prs3d_Presentation
        theMode: int,optional
        	default value is 0

        Returns
        -------
        None

        """
        return _AIS.AIS_Manipulator_Compute(self, *args)

    def DeactivateCurrentMode(self, *args) -> "void":
        r"""
        Make inactive the current selected manipulator part and reset current axis index and current mode. after its call hasactivemode() returns false. @sa hasactivemode().

        Returns
        -------
        None

        """
        return _AIS.AIS_Manipulator_DeactivateCurrentMode(self, *args)

    def Detach(self, *args) -> "void":
        r"""
        Detaches himself from the owner object, and removes itself from context.

        Returns
        -------
        None

        """
        return _AIS.AIS_Manipulator_Detach(self, *args)

    def EnableMode(self, *args) -> "void":
        r"""
        Enable manipualtion mode. @warning it activates selection mode in the current context. if manipulator is not displayed, no mode will be activated.

        Parameters
        ----------
        theMode: AIS_ManipulatorMode

        Returns
        -------
        None

        """
        return _AIS.AIS_Manipulator_EnableMode(self, *args)

    def HasActiveMode(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if some part of manipulator is selected (transformation mode is active, and owning object can be transformed).

        Returns
        -------
        bool

        """
        return _AIS.AIS_Manipulator_HasActiveMode(self, *args)

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

        Returns
        -------
        bool

        """
        return _AIS.AIS_Manipulator_HasActiveTransformation(self, *args)

    def IsAttached(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if manipulator is attached to some interactive object (has owning object).

        Returns
        -------
        bool

        """
        return _AIS.AIS_Manipulator_IsAttached(self, *args)

    def IsModeActivationOnDetection(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if manual mode activation is enabled.

        Returns
        -------
        bool

        """
        return _AIS.AIS_Manipulator_IsModeActivationOnDetection(self, *args)

    def Object(self, *args) -> "opencascade::handle< AIS_InteractiveObject >":
        r"""
        Returns the first (leading) object of the owning objects.

        Returns
        -------
        opencascade::handle<AIS_InteractiveObject>
        Returns one of the owning objects. @warning raises program error if theindex is more than owning objects count or less than 1.

        Parameters
        ----------
        theIndex: int

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

        """
        return _AIS.AIS_Manipulator_Object(self, *args)

    def ObjectTransformation(self, *args) -> "Standard_Boolean":
        r"""
        Computes transformation of parent object according to the active mode and input motion vector. you can use this method to get object transformation according to current mode or use own algorithm to implement any other tranformation for modes. returns transformation of parent object.

        Parameters
        ----------
        theX: int
        theY: int
        theView: V3d_View
        theTrsf: gp_Trsf

        Returns
        -------
        bool

        """
        return _AIS.AIS_Manipulator_ObjectTransformation(self, *args)

    def Objects(self, *args) -> "opencascade::handle< AIS_ManipulatorObjectSequence >":
        r"""
        Returns all owning objects.

        Returns
        -------
        opencascade::handle<AIS_ManipulatorObjectSequence>

        """
        return _AIS.AIS_Manipulator_Objects(self, *args)

    def Position(self, *args) -> "gp_Ax2 const":
        r"""
        Returns poition of manipulator interactive object.

        Returns
        -------
        gp_Ax2

        """
        return _AIS.AIS_Manipulator_Position(self, *args)

    def SetGap(self, *args) -> "void":
        r"""
        Sets gaps between translator, scaler and rotator sub-presentations.

        Parameters
        ----------
        theValue: Standard_ShortReal

        Returns
        -------
        None

        """
        return _AIS.AIS_Manipulator_SetGap(self, *args)

    def SetModeActivationOnDetection(self, *args) -> "void":
        r"""
        Enables mode activation on detection (highlighting). by default, mode is activated on selection of manipulator part. @warning if this mode is enabled, selection of parts does nothing.

        Parameters
        ----------
        theToEnable: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_Manipulator_SetModeActivationOnDetection(self, *args)

    def SetPart(self, *args) -> "void":
        r"""
        Disable or enable visual parts for translation, rotation or scaling for some axis. by default all parts are enabled (will be displayed). @warning enabling or disabling of visual parts of manipulator does not manage the manipulation (selection) mode. @warning raises program error if axis index is < 0 or > 2.

        Parameters
        ----------
        theAxisIndex: int
        theMode: AIS_ManipulatorMode
        theIsEnabled: bool

        Returns
        -------
        None
        Disable or enable visual parts for translation, rotation or scaling for all axes. by default all parts are enabled (will be displayed). @warning enabling or disabling of visual parts of manipulator does not manage the manipulation (selection) mode. @warning raises program error if axis index is < 0 or > 2.

        Parameters
        ----------
        theMode: AIS_ManipulatorMode
        theIsEnabled: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_Manipulator_SetPart(self, *args)

    def SetPosition(self, *args) -> "void":
        r"""
        Sets position of the manipulator object.

        Parameters
        ----------
        thePosition: gp_Ax2

        Returns
        -------
        None

        """
        return _AIS.AIS_Manipulator_SetPosition(self, *args)

    def SetSize(self, *args) -> "void":
        r"""
        Sets size (length of side of the manipulator cubic bounding box.

        Parameters
        ----------
        theSideLength: Standard_ShortReal

        Returns
        -------
        None

        """
        return _AIS.AIS_Manipulator_SetSize(self, *args)

    def SetZoomPersistence(self, *args) -> "void":
        r"""
        Enable or disable zoom persistence mode for the manipulator. with this mode turned on the presentation will keep fixed screen size. @warning when turned on this option overrides transform persistence properties and local transformation to achieve necessary visual effect. @warning revise use of adjustsize argument of of \sa attachtoobjects method when enabling zoom persistence.

        Parameters
        ----------
        theToEnable: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_Manipulator_SetZoomPersistence(self, *args)

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

        Returns
        -------
        Standard_ShortReal

        """
        return _AIS.AIS_Manipulator_Size(self, *args)

    def StartTransform(self, *args) -> "void":
        r"""
        Init start (reference) transformation. @warning it is used in chain with starttransform-transform(gp_trsf)-stoptransform and is used only for custom transform set. if transform(const standard_integer, const standard_integer) is used, initial data is set automatically, and it is reset on deactivatecurrentmode call if it is not reset yet.

        Parameters
        ----------
        theX: int
        theY: int
        theView: V3d_View

        Returns
        -------
        None

        """
        return _AIS.AIS_Manipulator_StartTransform(self, *args)

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

        Returns
        -------
        gp_Trsf
        No available documentation.

        Parameters
        ----------
        theIndex: int

        Returns
        -------
        gp_Trsf

        """
        return _AIS.AIS_Manipulator_StartTransformation(self, *args)

    def StopTransform(self, *args) -> "void":
        r"""
        Reset start (reference) transformation. @param thetoapply [in] option to apply or to cancel the started transformation. @warning it is used in chain with starttransform-transform(gp_trsf)-stoptransform and is used only for custom transform set.

        Parameters
        ----------
        theToApply: bool,optional
        	default value is Standard_True

        Returns
        -------
        None

        """
        return _AIS.AIS_Manipulator_StopTransform(self, *args)

    def Transform(self, *args) -> "gp_Trsf":
        r"""
        Apply to the owning objects the input transformation. @remark the transformation is set using setlocaltransformation for owning objects. the location of the manipulator is stored also in local transformation, so that there's no need to redisplay objects. @warning it is used in chain with starttransform-transform(gp_trsf)-stoptransform and is used only for custom transform set. @warning it will does nothing if transformation is not initiated (with starttransform() call).

        Parameters
        ----------
        aTrsf: gp_Trsf

        Returns
        -------
        None
        Apply transformation made from mouse moving from start position (save on the first tranform() call and reset on deactivatecurrentmode() call.) to the in/out mouse position (thex, they).

        Parameters
        ----------
        theX: int
        theY: int
        theView: V3d_View

        Returns
        -------
        gp_Trsf

        """
        return _AIS.AIS_Manipulator_Transform(self, *args)

    def ZoomPersistence(self, *args) -> "Standard_Boolean":
        r"""
        Returns state of zoom persistence mode, whether it turned on or off.

        Returns
        -------
        bool

        """
        return _AIS.AIS_Manipulator_ZoomPersistence(self, *args)


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


    __repr__ = _dumps_object

    @methodnotwrapped
    def TransformBehavior(self):
    	pass

    @methodnotwrapped
    def ChangeTransformBehavior(self):
    	pass

    @methodnotwrapped
    def SetTransformBehavior(self):
    	pass

    __swig_destroy__ = _AIS.delete_AIS_Manipulator

# Register AIS_Manipulator in _AIS:
_AIS.AIS_Manipulator_swigregister(AIS_Manipulator)

class AIS_MediaPlayer(AIS_InteractiveObject):
    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"""
        Empty constructor.

        Returns
        -------
        None

        """
        _AIS.AIS_MediaPlayer_swiginit(self, _AIS.new_AIS_MediaPlayer(*args))

    def Duration(self, *args) -> "double":
        r"""
        Return duration.

        Returns
        -------
        double

        """
        return _AIS.AIS_MediaPlayer_Duration(self, *args)

    def OpenInput(self, *args) -> "void":
        r"""
        Open specified file.

        Parameters
        ----------
        thePath: TCollection_AsciiString
        theToWait: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_MediaPlayer_OpenInput(self, *args)

    def PlayPause(self, *args) -> "void":
        r"""
        Switch playback state.

        Returns
        -------
        None

        """
        return _AIS.AIS_MediaPlayer_PlayPause(self, *args)

    def PlayerContext(self, *args) -> "opencascade::handle< Media_PlayerContext > const &":
        r"""
        Return player context.

        Returns
        -------
        opencascade::handle<Media_PlayerContext>

        """
        return _AIS.AIS_MediaPlayer_PlayerContext(self, *args)

    def PresentFrame(self, *args) -> "bool":
        r"""
        Display new frame.

        Parameters
        ----------
        theLeftCorner: Graphic3d_Vec2i
        theMaxSize: Graphic3d_Vec2i

        Returns
        -------
        bool

        """
        return _AIS.AIS_MediaPlayer_PresentFrame(self, *args)

    def SetCallback(self, *args) -> "void":
        r"""
        Setup callback to be called on queue progress (e.g. when new frame should be displayed).

        Parameters
        ----------
        theCallbackFunction: Graphic3d_MediaTextureSet::CallbackOnUpdate_t
        theCallbackUserPtr: void *

        Returns
        -------
        None

        """
        return _AIS.AIS_MediaPlayer_SetCallback(self, *args)

    def SetClosePlayer(self, *args) -> "void":
        r"""
        Schedule player to be closed.

        Returns
        -------
        None

        """
        return _AIS.AIS_MediaPlayer_SetClosePlayer(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_MediaPlayer

# Register AIS_MediaPlayer in _AIS:
_AIS.AIS_MediaPlayer_swigregister(AIS_MediaPlayer)

class AIS_MultipleConnectedInteractive(AIS_InteractiveObject):
    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"""
        Initializes the interactive object with multiple connections to ais_interactive objects.

        Returns
        -------
        None

        """
        _AIS.AIS_MultipleConnectedInteractive_swiginit(self, _AIS.new_AIS_MultipleConnectedInteractive(*args))

    def Connect(self, *args) -> "opencascade::handle< AIS_InteractiveObject >":
        r"""
        Establishes the connection between the connected interactive object, theinteractive, and its reference. locates instance in thelocation and applies specified transformation persistence mode. returns created instance object (ais_connectedinteractive or ais_multipleconnectedinteractive).

        Parameters
        ----------
        theAnotherObj: AIS_InteractiveObject
        theLocation: TopLoc_Datum3D
        theTrsfPers: Graphic3d_TransformPers

        Returns
        -------
        opencascade::handle<AIS_InteractiveObject>
        Establishes the connection between the connected interactive object, theinteractive, and its reference. copies local transformation and transformation persistence mode from theinteractive. returns created instance object (ais_connectedinteractive or ais_multipleconnectedinteractive).

        Parameters
        ----------
        theAnotherObj: AIS_InteractiveObject

        Returns
        -------
        opencascade::handle<AIS_InteractiveObject>
        Establishes the connection between the connected interactive object, theinteractive, and its reference. locates instance in thelocation and copies transformation persistence mode from theinteractive. returns created instance object (ais_connectedinteractive or ais_multipleconnectedinteractive).

        Parameters
        ----------
        theAnotherObj: AIS_InteractiveObject
        theLocation: gp_Trsf

        Returns
        -------
        opencascade::handle<AIS_InteractiveObject>
        Establishes the connection between the connected interactive object, theinteractive, and its reference. locates instance in thelocation and applies specified transformation persistence mode. returns created instance object (ais_connectedinteractive or ais_multipleconnectedinteractive).

        Parameters
        ----------
        theAnotherObj: AIS_InteractiveObject
        theLocation: gp_Trsf
        theTrsfPers: Graphic3d_TransformPers

        Returns
        -------
        opencascade::handle<AIS_InteractiveObject>
        No available documentation.

        Parameters
        ----------
        theInteractive: AIS_InteractiveObject
        theLocation: gp_Trsf
        theTrsfPersFlag: Graphic3d_TransModeFlags
        theTrsfPersPoint: gp_Pnt

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

        """
        return _AIS.AIS_MultipleConnectedInteractive_Connect(self, *args)

    def Disconnect(self, *args) -> "void":
        r"""
        Removes the connection with theinteractive.

        Parameters
        ----------
        theInteractive: AIS_InteractiveObject

        Returns
        -------
        None

        """
        return _AIS.AIS_MultipleConnectedInteractive_Disconnect(self, *args)

    def DisconnectAll(self, *args) -> "void":
        r"""
        Clears all the connections to objects.

        Returns
        -------
        None

        """
        return _AIS.AIS_MultipleConnectedInteractive_DisconnectAll(self, *args)

    def HasConnection(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if the object is connected to others.

        Returns
        -------
        bool

        """
        return _AIS.AIS_MultipleConnectedInteractive_HasConnection(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_MultipleConnectedInteractive

# Register AIS_MultipleConnectedInteractive in _AIS:
_AIS.AIS_MultipleConnectedInteractive_swigregister(AIS_MultipleConnectedInteractive)

class AIS_Plane(AIS_InteractiveObject):
    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"""
        Initializes the plane acomponent. if the mode acurrentmode equals true, the drawing tool, 'drawer' is not initialized.

        Parameters
        ----------
        aComponent: Geom_Plane
        aCurrentMode: bool,optional
        	default value is Standard_False

        Returns
        -------
        None
        Initializes the plane acomponent and the point acenter. if the mode acurrentmode equals true, the drawing tool, 'drawer' is not initialized. acurrentmode equals true, the drawing tool, 'drawer' is not initialized.

        Parameters
        ----------
        aComponent: Geom_Plane
        aCenter: gp_Pnt
        aCurrentMode: bool,optional
        	default value is Standard_False

        Returns
        -------
        None
        Initializes the plane acomponent, the point acenter, and the minimum and maximum points, apmin and apmax. if the mode acurrentmode equals true, the drawing tool, 'drawer' is not initialized.

        Parameters
        ----------
        aComponent: Geom_Plane
        aCenter: gp_Pnt
        aPmin: gp_Pnt
        aPmax: gp_Pnt
        aCurrentMode: bool,optional
        	default value is Standard_False

        Returns
        -------
        None
        No available documentation.

        Parameters
        ----------
        aComponent: Geom_Axis2Placement
        aPlaneType: AIS_TypeOfPlane
        aCurrentMode: bool,optional
        	default value is Standard_False

        Returns
        -------
        None

        """
        _AIS.AIS_Plane_swiginit(self, _AIS.new_AIS_Plane(*args))

    def Axis2Placement(self, *args) -> "opencascade::handle< Geom_Axis2Placement >":
        r"""
        Returns the position of the plane's axis2 system identifying the x, y, or z axis and giving the plane a direction in 3d space. an axis2 system is a right-handed coordinate system.

        Returns
        -------
        opencascade::handle<Geom_Axis2Placement>

        """
        return _AIS.AIS_Plane_Axis2Placement(self, *args)

    def Center(self, *args) -> "gp_Pnt const":
        r"""
        Returns the coordinates of the center point.

        Returns
        -------
        gp_Pnt

        """
        return _AIS.AIS_Plane_Center(self, *args)

    def Component(self, *args) -> "opencascade::handle< Geom_Plane > const &":
        r"""
        Returns the component specified in setcomponent.

        Returns
        -------
        opencascade::handle<Geom_Plane>

        """
        return _AIS.AIS_Plane_Component(self, *args)

    def CurrentMode(self, *args) -> "Standard_Boolean":
        r"""
        Returns the non-default current display mode set by setcurrentmode.

        Returns
        -------
        bool

        """
        return _AIS.AIS_Plane_CurrentMode(self, *args)

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

        Returns
        -------
        bool

        """
        return _AIS.AIS_Plane_HasOwnSize(self, *args)

    def IsXYZPlane(self, *args) -> "Standard_Boolean":
        r"""
        Returns the type of plane - xy, yz, or xz.

        Returns
        -------
        bool

        """
        return _AIS.AIS_Plane_IsXYZPlane(self, *args)

    def PlaneAttributes(self, *args) -> "Standard_Boolean":
        r"""
        Returns the settings for the selected plane acomponent, provided in setplaneattributes. these include the points acenter, apmin, and apmax.

        Parameters
        ----------
        aComponent: Geom_Plane
        aCenter: gp_Pnt
        aPmin: gp_Pnt
        aPmax: gp_Pnt

        Returns
        -------
        bool

        """
        return _AIS.AIS_Plane_PlaneAttributes(self, *args)

    def SetAxis2Placement(self, *args) -> "void":
        r"""
        Allows you to provide settings for the position and direction of one of the plane's axes, acomponent, in 3d space. the coordinate system used is right-handed, and the type of plane aplanetype is one of: - ais_ topl_unknown - ais_ topl_xyplane - ais_ topl_xzplane - ais_ topl_yzplane}.

        Parameters
        ----------
        aComponent: Geom_Axis2Placement
        aPlaneType: AIS_TypeOfPlane

        Returns
        -------
        None

        """
        return _AIS.AIS_Plane_SetAxis2Placement(self, *args)

    def SetCenter(self, *args) -> "void":
        r"""
        Provides settings for the center thecenter other than (0, 0, 0).

        Parameters
        ----------
        theCenter: gp_Pnt

        Returns
        -------
        None

        """
        return _AIS.AIS_Plane_SetCenter(self, *args)

    def SetComponent(self, *args) -> "void":
        r"""
        Creates an instance of the plane acomponent.

        Parameters
        ----------
        aComponent: Geom_Plane

        Returns
        -------
        None

        """
        return _AIS.AIS_Plane_SetComponent(self, *args)

    def SetCurrentMode(self, *args) -> "void":
        r"""
        Allows you to provide settings for a non-default current display mode.

        Parameters
        ----------
        theCurrentMode: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_Plane_SetCurrentMode(self, *args)

    def SetPlaneAttributes(self, *args) -> "void":
        r"""
        Allows you to provide settings other than default ones for the selected plane. these include: center point acenter, maximum apmax and minimum apmin.

        Parameters
        ----------
        aComponent: Geom_Plane
        aCenter: gp_Pnt
        aPmin: gp_Pnt
        aPmax: gp_Pnt

        Returns
        -------
        None

        """
        return _AIS.AIS_Plane_SetPlaneAttributes(self, *args)

    def SetSize(self, *args) -> "void":
        r"""
        Same value for x and y directions.

        Parameters
        ----------
        aValue: float

        Returns
        -------
        None
        Sets the size defined by the length along the x axis xval and the length along the y axis yval.

        Parameters
        ----------
        Xval: float
        YVal: float

        Returns
        -------
        None

        """
        return _AIS.AIS_Plane_SetSize(self, *args)

    def SetTypeOfSensitivity(self, *args) -> "void":
        r"""
        Sets the type of sensitivity for the plane.

        Parameters
        ----------
        theTypeOfSensitivity: Select3D_TypeOfSensitivity

        Returns
        -------
        None

        """
        return _AIS.AIS_Plane_SetTypeOfSensitivity(self, *args)

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

        Parameters
        ----------

        Returns
        -------
        X: float
        Y: float

        """
        return _AIS.AIS_Plane_Size(self, *args)

    def TypeOfPlane(self, *args) -> "AIS_TypeOfPlane":
        r"""
        Returns the type of plane - xy, yz, xz or unknown.

        Returns
        -------
        AIS_TypeOfPlane

        """
        return _AIS.AIS_Plane_TypeOfPlane(self, *args)

    def TypeOfSensitivity(self, *args) -> "Select3D_TypeOfSensitivity":
        r"""
        Returns the type of sensitivity for the plane;.

        Returns
        -------
        Select3D_TypeOfSensitivity

        """
        return _AIS.AIS_Plane_TypeOfSensitivity(self, *args)

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

        Returns
        -------
        None

        """
        return _AIS.AIS_Plane_UnsetSize(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_Plane

# Register AIS_Plane in _AIS:
_AIS.AIS_Plane_swigregister(AIS_Plane)

class AIS_PlaneTrihedron(AIS_InteractiveObject):
    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"""
        Initializes the plane aplane. the plane trihedron is constructed from this and an axis.

        Parameters
        ----------
        aPlane: Geom_Plane

        Returns
        -------
        None

        """
        _AIS.AIS_PlaneTrihedron_swiginit(self, _AIS.new_AIS_PlaneTrihedron(*args))

    def Component(self, *args) -> "opencascade::handle< Geom_Plane >":
        r"""
        Returns the component specified in setcomponent.

        Returns
        -------
        opencascade::handle<Geom_Plane>

        """
        return _AIS.AIS_PlaneTrihedron_Component(self, *args)

    def GetLength(self, *args) -> "Standard_Real":
        r"""
        Returns the length of x and y axes.

        Returns
        -------
        float

        """
        return _AIS.AIS_PlaneTrihedron_GetLength(self, *args)

    def Position(self, *args) -> "opencascade::handle< AIS_Point >":
        r"""
        Returns the point of origin of the plane trihedron.

        Returns
        -------
        opencascade::handle<AIS_Point>

        """
        return _AIS.AIS_PlaneTrihedron_Position(self, *args)

    def SetComponent(self, *args) -> "void":
        r"""
        Creates an instance of the component object aplane.

        Parameters
        ----------
        aPlane: Geom_Plane

        Returns
        -------
        None

        """
        return _AIS.AIS_PlaneTrihedron_SetComponent(self, *args)

    def SetLength(self, *args) -> "void":
        r"""
        Sets the length of the x and y axes.

        Parameters
        ----------
        theLength: float

        Returns
        -------
        None

        """
        return _AIS.AIS_PlaneTrihedron_SetLength(self, *args)

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

        Parameters
        ----------
        theLabel: TCollection_AsciiString

        Returns
        -------
        None

        """
        return _AIS.AIS_PlaneTrihedron_SetXLabel(self, *args)

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

        Parameters
        ----------
        theLabel: TCollection_AsciiString

        Returns
        -------
        None

        """
        return _AIS.AIS_PlaneTrihedron_SetYLabel(self, *args)

    def XAxis(self, *args) -> "opencascade::handle< AIS_Line >":
        r"""
        Returns the 'xaxis'.

        Returns
        -------
        opencascade::handle<AIS_Line>

        """
        return _AIS.AIS_PlaneTrihedron_XAxis(self, *args)

    def YAxis(self, *args) -> "opencascade::handle< AIS_Line >":
        r"""
        Returns the 'yaxis'.

        Returns
        -------
        opencascade::handle<AIS_Line>

        """
        return _AIS.AIS_PlaneTrihedron_YAxis(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_PlaneTrihedron

# Register AIS_PlaneTrihedron in _AIS:
_AIS.AIS_PlaneTrihedron_swigregister(AIS_PlaneTrihedron)

class AIS_Point(AIS_InteractiveObject):
    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"""
        Initializes the point acomponent from which the point datum will be built.

        Parameters
        ----------
        aComponent: Geom_Point

        Returns
        -------
        None

        """
        _AIS.AIS_Point_swiginit(self, _AIS.new_AIS_Point(*args))

    def Component(self, *args) -> "opencascade::handle< Geom_Point >":
        r"""
        Returns the component specified in setcomponent.

        Returns
        -------
        opencascade::handle<Geom_Point>

        """
        return _AIS.AIS_Point_Component(self, *args)

    def HasMarker(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if the point datum has a marker.

        Returns
        -------
        bool

        """
        return _AIS.AIS_Point_HasMarker(self, *args)

    def SetComponent(self, *args) -> "void":
        r"""
        Constructs an instance of the point acomponent.

        Parameters
        ----------
        aComponent: Geom_Point

        Returns
        -------
        None

        """
        return _AIS.AIS_Point_SetComponent(self, *args)

    def SetMarker(self, *args) -> "void":
        r"""
        Allows you to provide settings for a marker. these include - type of marker, - marker color, - scale factor.

        Parameters
        ----------
        aType: Aspect_TypeOfMarker

        Returns
        -------
        None

        """
        return _AIS.AIS_Point_SetMarker(self, *args)

    def UnsetMarker(self, *args) -> "void":
        r"""
        Removes the marker settings.

        Returns
        -------
        None

        """
        return _AIS.AIS_Point_UnsetMarker(self, *args)

    def Vertex(self, *args) -> "TopoDS_Vertex":
        r"""
        Converts a point into a vertex.

        Returns
        -------
        TopoDS_Vertex

        """
        return _AIS.AIS_Point_Vertex(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_Point

# Register AIS_Point in _AIS:
_AIS.AIS_Point_swigregister(AIS_Point)

class AIS_PointCloud(AIS_InteractiveObject):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    DM_Points = _AIS.AIS_PointCloud_DM_Points
    
    DM_BndBox = _AIS.AIS_PointCloud_DM_BndBox
    
    SM_Points = _AIS.AIS_PointCloud_SM_Points
    
    SM_SubsetOfPoints = _AIS.AIS_PointCloud_SM_SubsetOfPoints
    
    SM_BndBox = _AIS.AIS_PointCloud_SM_BndBox
    


    class DisplayMode(IntEnum):
    	DM_Points = 0
    	DM_BndBox = 2
    DM_Points = DisplayMode.DM_Points
    DM_BndBox = DisplayMode.DM_BndBox

    class SelectionMode(IntEnum):
    	SM_Points = 0
    	SM_SubsetOfPoints = 1
    	SM_BndBox = 2
    SM_Points = SelectionMode.SM_Points
    SM_SubsetOfPoints = SelectionMode.SM_SubsetOfPoints
    SM_BndBox = SelectionMode.SM_BndBox


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

        Returns
        -------
        None

        """
        _AIS.AIS_PointCloud_swiginit(self, _AIS.new_AIS_PointCloud(*args))

    def GetBoundingBox(self, *args) -> "Bnd_Box":
        r"""
        Get bounding box for presentation.

        Returns
        -------
        Bnd_Box

        """
        return _AIS.AIS_PointCloud_GetBoundingBox(self, *args)

    def GetPoints(self, *args) -> "opencascade::handle< Graphic3d_ArrayOfPoints > const":
        r"""
        Get the points array. method might be overridden to fill in points array dynamically from application data structures. returns the array of points.

        Returns
        -------
        opencascade::handle<Graphic3d_ArrayOfPoints>

        """
        return _AIS.AIS_PointCloud_GetPoints(self, *args)

    def SetPoints(self, *args) -> "void":
        r"""
        Sets the points from array of points. method will not copy the input data - array will be stored as handle. @param thepoints [in] the array of points.

        Parameters
        ----------
        thePoints: Graphic3d_ArrayOfPoints

        Returns
        -------
        None
        Sets the points with optional colors. the input data will be copied into internal buffer. the input arrays should have equal length, otherwise the presentation will not be computed and displayed. @param thecoords [in] the array of coordinates @param thecolors [in] optional array of colors @param thenormals [in] optional array of normals.

        Parameters
        ----------
        theCoords: TColgp_HArray1OfPnt
        theColors: Quantity_HArray1OfColor,optional
        	default value is NULL
        theNormals: TColgp_HArray1OfDir,optional
        	default value is NULL

        Returns
        -------
        None

        """
        return _AIS.AIS_PointCloud_SetPoints(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_PointCloud

# Register AIS_PointCloud in _AIS:
_AIS.AIS_PointCloud_swigregister(AIS_PointCloud)

class AIS_RubberBand(AIS_InteractiveObject):
    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 rubber band with default configuration: empty filling and white solid lines. @warning it binds this object with graphic3d_zlayerid_toposd layer.

        Returns
        -------
        None
        Consructs the rubber band with empty filling and defined line style. @param thelinecolor [in] color of rubber band lines @param thetype [in] type of rubber band lines @param thelinewidth [in] width of rubber band line. by default it is 1. @warning it binds this object with graphic3d_zlayerid_toposd layer.

        Parameters
        ----------
        theLineColor: Quantity_Color
        theType: Aspect_TypeOfLine
        theLineWidth: float,optional
        	default value is 1.0
        theIsPolygonClosed: bool,optional
        	default value is Standard_True

        Returns
        -------
        None
        Constructs the rubber band with defined filling and line parameters. @param thelinecolor [in] color of rubber band lines @param thetype [in] type of rubber band lines @param thefillcolor [in] color of rubber band filling @param thetransparency [in] transparency of the filling. 0 is for opaque filling. by default it is transparent. @param thelinewidth [in] width of rubber band line. by default it is 1. @warning it binds this object with graphic3d_zlayerid_toposd layer.

        Parameters
        ----------
        theLineColor: Quantity_Color
        theType: Aspect_TypeOfLine
        theFillColor: Quantity_Color
        theTransparency: float,optional
        	default value is 1.0
        theLineWidth: float,optional
        	default value is 1.0
        theIsPolygonClosed: bool,optional
        	default value is Standard_True

        Returns
        -------
        None

        """
        _AIS.AIS_RubberBand_swiginit(self, _AIS.new_AIS_RubberBand(*args))

    def AddPoint(self, *args) -> "void":
        r"""
        Adds last point to the list of points. they are used to build polygon for rubber band. @sa removelastpoint(), getpoints().

        Parameters
        ----------
        thePoint: Graphic3d_Vec2i

        Returns
        -------
        None

        """
        return _AIS.AIS_RubberBand_AddPoint(self, *args)

    def ClearPoints(self, *args) -> "void":
        r"""
        Remove all points for the rubber band polygon.

        Returns
        -------
        None

        """
        return _AIS.AIS_RubberBand_ClearPoints(self, *args)

    def FillColor(self, *args) -> "Quantity_Color":
        r"""
        Returns the color of rubber band filling.

        Returns
        -------
        Quantity_Color

        """
        return _AIS.AIS_RubberBand_FillColor(self, *args)

    def FillTransparency(self, *args) -> "Standard_Real":
        r"""
        Returns fill transparency.

        Returns
        -------
        float

        """
        return _AIS.AIS_RubberBand_FillTransparency(self, *args)

    def IsFilling(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if filling of rubber band is enabled.

        Returns
        -------
        bool

        """
        return _AIS.AIS_RubberBand_IsFilling(self, *args)

    def IsPolygonClosed(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if automatic closing of rubber band is enabled.

        Returns
        -------
        bool

        """
        return _AIS.AIS_RubberBand_IsPolygonClosed(self, *args)

    def LineColor(self, *args) -> "Quantity_Color":
        r"""
        Returns the color attributes.

        Returns
        -------
        Quantity_Color

        """
        return _AIS.AIS_RubberBand_LineColor(self, *args)

    def LineType(self, *args) -> "Aspect_TypeOfLine":
        r"""
        Returns type of lines.

        Returns
        -------
        Aspect_TypeOfLine

        """
        return _AIS.AIS_RubberBand_LineType(self, *args)

    def LineWidth(self, *args) -> "Standard_Real":
        r"""
        Returns width of lines.

        Returns
        -------
        float

        """
        return _AIS.AIS_RubberBand_LineWidth(self, *args)

    def Points(self, *args) -> "NCollection_Sequence< Graphic3d_Vec2i > const &":
        r"""
        Returns points for the rubber band polygon.

        Returns
        -------
        NCollection_Sequence<Graphic3d_Vec2i>

        """
        return _AIS.AIS_RubberBand_Points(self, *args)

    def RemoveLastPoint(self, *args) -> "void":
        r"""
        Remove last point from the list of points for the rubber band polygon. @sa addpoint(), getpoints().

        Returns
        -------
        None

        """
        return _AIS.AIS_RubberBand_RemoveLastPoint(self, *args)

    def SetFillColor(self, *args) -> "void":
        r"""
        Sets color of rubber band filling.

        Parameters
        ----------
        theColor: Quantity_Color

        Returns
        -------
        None

        """
        return _AIS.AIS_RubberBand_SetFillColor(self, *args)

    def SetFillTransparency(self, *args) -> "void":
        r"""
        Sets fill transparency. @param thevalue [in] the transparency value. 1.0 is for transparent background.

        Parameters
        ----------
        theValue: float

        Returns
        -------
        None

        """
        return _AIS.AIS_RubberBand_SetFillTransparency(self, *args)

    def SetFilling(self, *args) -> "void":
        r"""
        Enable or disable filling of rubber band.

        Parameters
        ----------
        theIsFilling: bool

        Returns
        -------
        None
        Enable filling of rubber band with defined parameters. @param thecolor [in] color of filling @param thetransparency [in] transparency of the filling. 0 is for opaque filling.

        Parameters
        ----------
        theColor: Quantity_Color
        theTransparency: float

        Returns
        -------
        None

        """
        return _AIS.AIS_RubberBand_SetFilling(self, *args)

    def SetLineColor(self, *args) -> "void":
        r"""
        Sets color of lines for rubber band presentation.

        Parameters
        ----------
        theColor: Quantity_Color

        Returns
        -------
        None

        """
        return _AIS.AIS_RubberBand_SetLineColor(self, *args)

    def SetLineType(self, *args) -> "void":
        r"""
        Sets type of line for rubber band presentation.

        Parameters
        ----------
        theType: Aspect_TypeOfLine

        Returns
        -------
        None

        """
        return _AIS.AIS_RubberBand_SetLineType(self, *args)

    def SetLineWidth(self, *args) -> "void":
        r"""
        Sets width of line for rubber band presentation.

        Parameters
        ----------
        theWidth: float

        Returns
        -------
        None

        """
        return _AIS.AIS_RubberBand_SetLineWidth(self, *args)

    def SetPolygonClosed(self, *args) -> "void":
        r"""
        Automatically create an additional line connecting the first and the last screen points to close the boundary polyline.

        Parameters
        ----------
        theIsPolygonClosed: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_RubberBand_SetPolygonClosed(self, *args)

    def SetRectangle(self, *args) -> "void":
        r"""
        Sets rectangle bounds.

        Parameters
        ----------
        theMinX: int
        theMinY: int
        theMaxX: int
        theMaxY: int

        Returns
        -------
        None

        """
        return _AIS.AIS_RubberBand_SetRectangle(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_RubberBand

# Register AIS_RubberBand in _AIS:
_AIS.AIS_RubberBand_swigregister(AIS_RubberBand)

class AIS_Shape(AIS_InteractiveObject):
    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"""
        Initializes construction of the shape shap from wires, edges and vertices.

        Parameters
        ----------
        shap: TopoDS_Shape

        Returns
        -------
        None

        """
        _AIS.AIS_Shape_swiginit(self, _AIS.new_AIS_Shape(*args))

    def BoundingBox(self, *args) -> "Bnd_Box const &":
        r"""
        Constructs a bounding box with which to reconstruct compound topological shapes for presentation.

        Returns
        -------
        Bnd_Box

        """
        return _AIS.AIS_Shape_BoundingBox(self, *args)

    def DumpJsonToString(self, depth: "int"=-1) -> "std::string":
        r"""DumpJsonToString(AIS_Shape self, int depth=-1) -> std::string"""
        return _AIS.AIS_Shape_DumpJsonToString(self, depth)

    def OwnDeviationAngle(self, *args) -> "Standard_Boolean":
        r"""
        Returns true and the values of the deviation angle anangle and the previous deviation angle apreviousangle. if these values are not already set, false is returned.

        Parameters
        ----------

        Returns
        -------
        anAngle: float
        aPreviousAngle: float

        """
        return _AIS.AIS_Shape_OwnDeviationAngle(self, *args)

    def OwnDeviationCoefficient(self, *args) -> "Standard_Boolean":
        r"""
        Returns true and the values of the deviation coefficient acoefficient and the previous deviation coefficient apreviouscoefficient. if these values are not already set, false is returned.

        Parameters
        ----------

        Returns
        -------
        aCoefficient: float
        aPreviousCoefficient: float

        """
        return _AIS.AIS_Shape_OwnDeviationCoefficient(self, *args)

    @staticmethod
    def SelectionMode(*args) -> "Standard_Integer":
        r"""
        Return selection mode for specified shape type.

        Parameters
        ----------
        theShapeType: TopAbs_ShapeEnum

        Returns
        -------
        int

        """
        return _AIS.AIS_Shape_SelectionMode(*args)

    @staticmethod
    def SelectionType(*args) -> "TopAbs_ShapeEnum":
        r"""
        Return shape type for specified selection mode.

        Parameters
        ----------
        theSelMode: int

        Returns
        -------
        TopAbs_ShapeEnum

        """
        return _AIS.AIS_Shape_SelectionType(*args)

    def Set(self, *args) -> "void":
        r"""
        Alias for ::setshape().

        Parameters
        ----------
        theShape: TopoDS_Shape

        Returns
        -------
        None

        """
        return _AIS.AIS_Shape_Set(self, *args)

    def SetAngleAndDeviation(self, *args) -> "void":
        r"""
        This compute a new angle and deviation from the value anangle and set the values stored in mydrawer with these that become local to the shape.

        Parameters
        ----------
        anAngle: float

        Returns
        -------
        None

        """
        return _AIS.AIS_Shape_SetAngleAndDeviation(self, *args)

    def SetOwnDeviationAngle(self, *args) -> "void":
        r"""
        Sets a local value for deviation angle for this specific shape.

        Returns
        -------
        bool
        Sets myowndeviationangle field in prs3d_drawer & recomputes presentation.

        Parameters
        ----------
        anAngle: float

        Returns
        -------
        None

        """
        return _AIS.AIS_Shape_SetOwnDeviationAngle(self, *args)

    def SetOwnDeviationCoefficient(self, *args) -> "void":
        r"""
        Sets a local value for deviation coefficient for this specific shape.

        Returns
        -------
        bool
        Sets a local value for deviation coefficient for this specific shape.

        Parameters
        ----------
        aCoefficient: float

        Returns
        -------
        None

        """
        return _AIS.AIS_Shape_SetOwnDeviationCoefficient(self, *args)

    def SetShape(self, *args) -> "void":
        r"""
        Constructs an instance of the shape object theshape.

        Parameters
        ----------
        theShape: TopoDS_Shape

        Returns
        -------
        None

        """
        return _AIS.AIS_Shape_SetShape(self, *args)

    def SetTextureOriginUV(self, *args) -> "void":
        r"""
        Use this method to change the origin of the texture. the texel (0,0) will be mapped to the surface (myuvorigin.x(), myuvorigin.y()).

        Parameters
        ----------
        theOriginUV: gp_Pnt2d

        Returns
        -------
        None

        """
        return _AIS.AIS_Shape_SetTextureOriginUV(self, *args)

    def SetTextureRepeatUV(self, *args) -> "void":
        r"""
        Sets the number of occurrences of the texture on each face. the texture itself is parameterized in (0,1) by (0,1). each face of the shape to be textured is parameterized in uv space (umin,umax) by (vmin,vmax).

        Parameters
        ----------
        theRepeatUV: gp_Pnt2d

        Returns
        -------
        None

        """
        return _AIS.AIS_Shape_SetTextureRepeatUV(self, *args)

    def SetTextureScaleUV(self, *args) -> "void":
        r"""
        Use this method to scale the texture (percent of the face). you can specify a scale factor for both u and v. example: if you set scaleu and scalev to 0.5 and you enable texture repeat, the texture will appear twice on the face in each direction.

        Parameters
        ----------
        theScaleUV: gp_Pnt2d

        Returns
        -------
        None

        """
        return _AIS.AIS_Shape_SetTextureScaleUV(self, *args)

    def SetTypeOfHLR(self, *args) -> "void":
        r"""
        Sets the type of hlr algorithm used by the shape.

        Parameters
        ----------
        theTypeOfHLR: Prs3d_TypeOfHLR

        Returns
        -------
        None

        """
        return _AIS.AIS_Shape_SetTypeOfHLR(self, *args)

    def Shape(self, *args) -> "TopoDS_Shape const":
        r"""
        Returns this shape object.

        Returns
        -------
        TopoDS_Shape

        """
        return _AIS.AIS_Shape_Shape(self, *args)

    def TextureOriginUV(self, *args) -> "gp_Pnt2d const":
        r"""
        Return texture origin uv position; (0, 0) by default.

        Returns
        -------
        gp_Pnt2d

        """
        return _AIS.AIS_Shape_TextureOriginUV(self, *args)

    def TextureRepeatUV(self, *args) -> "gp_Pnt2d const":
        r"""
        Return texture repeat uv values; (1, 1) by default.

        Returns
        -------
        gp_Pnt2d

        """
        return _AIS.AIS_Shape_TextureRepeatUV(self, *args)

    def TextureScaleUV(self, *args) -> "gp_Pnt2d const":
        r"""
        Return scale factor for uv coordinates; (1, 1) by default.

        Returns
        -------
        gp_Pnt2d

        """
        return _AIS.AIS_Shape_TextureScaleUV(self, *args)

    def TypeOfHLR(self, *args) -> "Prs3d_TypeOfHLR":
        r"""
        Gets the type of hlr algorithm.

        Returns
        -------
        Prs3d_TypeOfHLR

        """
        return _AIS.AIS_Shape_TypeOfHLR(self, *args)

    def UserAngle(self, *args) -> "Standard_Real":
        r"""
        Gives back the angle initial value put by the user.

        Returns
        -------
        float

        """
        return _AIS.AIS_Shape_UserAngle(self, *args)

    @staticmethod
    def computeHlrPresentation(*args) -> "void":
        r"""
        Compute hlr presentation for specified shape.

        Parameters
        ----------
        theProjector: Graphic3d_Camera
        thePrs: Prs3d_Presentation
        theShape: TopoDS_Shape
        theDrawer: Prs3d_Drawer

        Returns
        -------
        None

        """
        return _AIS.AIS_Shape_computeHlrPresentation(*args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_Shape

# Register AIS_Shape in _AIS:
_AIS.AIS_Shape_swigregister(AIS_Shape)

def AIS_Shape_SelectionMode(*args) -> "Standard_Integer":
    r"""
    Return selection mode for specified shape type.

    Parameters
    ----------
    theShapeType: TopAbs_ShapeEnum

    Returns
    -------
    int

    """
    return _AIS.AIS_Shape_SelectionMode(*args)

def AIS_Shape_SelectionType(*args) -> "TopAbs_ShapeEnum":
    r"""
    Return shape type for specified selection mode.

    Parameters
    ----------
    theSelMode: int

    Returns
    -------
    TopAbs_ShapeEnum

    """
    return _AIS.AIS_Shape_SelectionType(*args)

def AIS_Shape_computeHlrPresentation(*args) -> "void":
    r"""
    Compute hlr presentation for specified shape.

    Parameters
    ----------
    theProjector: Graphic3d_Camera
    thePrs: Prs3d_Presentation
    theShape: TopoDS_Shape
    theDrawer: Prs3d_Drawer

    Returns
    -------
    None

    """
    return _AIS.AIS_Shape_computeHlrPresentation(*args)

class AIS_SignatureFilter(AIS_TypeFilter):
    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"""
        Initializes the signature filter, adding the signature specification, agivensignature, to that for type, agivenkind, in ais_typefilter.

        Parameters
        ----------
        aGivenKind: AIS_KindOfInteractive
        aGivenSignature: int

        Returns
        -------
        None

        """
        _AIS.AIS_SignatureFilter_swiginit(self, _AIS.new_AIS_SignatureFilter(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_SignatureFilter

# Register AIS_SignatureFilter in _AIS:
_AIS.AIS_SignatureFilter_swigregister(AIS_SignatureFilter)

class AIS_TextLabel(AIS_InteractiveObject):
    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

        """
        _AIS.AIS_TextLabel_swiginit(self, _AIS.new_AIS_TextLabel(*args))

    def FontAspect(self, *args) -> "Font_FontAspect":
        r"""
        Returns the font aspect of the label text.

        Returns
        -------
        Font_FontAspect

        """
        return _AIS.AIS_TextLabel_FontAspect(self, *args)

    def FontName(self, *args) -> "TCollection_AsciiString const &":
        r"""
        Returns the font of the label text.

        Returns
        -------
        TCollection_AsciiString

        """
        return _AIS.AIS_TextLabel_FontName(self, *args)

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

        Returns
        -------
        bool

        """
        return _AIS.AIS_TextLabel_HasFlipping(self, *args)

    def HasOrientation3D(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if the current text placement mode uses text orientation in the model 3d space.

        Returns
        -------
        bool

        """
        return _AIS.AIS_TextLabel_HasOrientation3D(self, *args)

    def HasOwnAnchorPoint(self, *args) -> "Standard_Boolean":
        r"""
        Returns flag if text uses position as point of attach.

        Returns
        -------
        bool

        """
        return _AIS.AIS_TextLabel_HasOwnAnchorPoint(self, *args)

    def Orientation3D(self, *args) -> "gp_Ax2 const":
        r"""
        Returns label orientation in the model 3d space.

        Returns
        -------
        gp_Ax2

        """
        return _AIS.AIS_TextLabel_Orientation3D(self, *args)

    def Position(self, *args) -> "gp_Pnt const":
        r"""
        Returns position.

        Returns
        -------
        gp_Pnt

        """
        return _AIS.AIS_TextLabel_Position(self, *args)

    def SetAngle(self, *args) -> "void":
        r"""
        Setup angle.

        Parameters
        ----------
        theAngle: float

        Returns
        -------
        None

        """
        return _AIS.AIS_TextLabel_SetAngle(self, *args)

    def SetColorSubTitle(self, *args) -> "void":
        r"""
        Modifies the colour of the subtitle for the todt_subtitle textdisplaytype and the colour of backgroubd for the todt_dekale textdisplaytype.

        Parameters
        ----------
        theColor: Quantity_Color

        Returns
        -------
        None

        """
        return _AIS.AIS_TextLabel_SetColorSubTitle(self, *args)

    def SetDisplayType(self, *args) -> "void":
        r"""
        Define the display type of the text. //! todt_normal default display. text only. todt_subtitle there is a subtitle under the text. todt_dekale the text is displayed with a 3d style. todt_blend the text is displayed in xor. todt_dimension dimension line under text will be invisible.

        Parameters
        ----------
        theDisplayType: Aspect_TypeOfDisplayText

        Returns
        -------
        None

        """
        return _AIS.AIS_TextLabel_SetDisplayType(self, *args)

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

        Parameters
        ----------
        theIsFlipping: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_TextLabel_SetFlipping(self, *args)

    def SetFont(self, *args) -> "void":
        r"""
        Setup font.

        Parameters
        ----------
        theFont: char *

        Returns
        -------
        None

        """
        return _AIS.AIS_TextLabel_SetFont(self, *args)

    def SetFontAspect(self, *args) -> "void":
        r"""
        Setup font aspect.

        Parameters
        ----------
        theFontAspect: Font_FontAspect

        Returns
        -------
        None

        """
        return _AIS.AIS_TextLabel_SetFontAspect(self, *args)

    def SetHJustification(self, *args) -> "void":
        r"""
        Setup horizontal justification.

        Parameters
        ----------
        theHJust: Graphic3d_HorizontalTextAlignment

        Returns
        -------
        None

        """
        return _AIS.AIS_TextLabel_SetHJustification(self, *args)

    def SetHeight(self, *args) -> "void":
        r"""
        Setup height.

        Parameters
        ----------
        theHeight: float

        Returns
        -------
        None

        """
        return _AIS.AIS_TextLabel_SetHeight(self, *args)

    def SetOrientation3D(self, *args) -> "void":
        r"""
        Setup label orientation in the model 3d space.

        Parameters
        ----------
        theOrientation: gp_Ax2

        Returns
        -------
        None

        """
        return _AIS.AIS_TextLabel_SetOrientation3D(self, *args)

    def SetOwnAnchorPoint(self, *args) -> "void":
        r"""
        Set flag if text uses position as point of attach.

        Parameters
        ----------
        theOwnAnchorPoint: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_TextLabel_SetOwnAnchorPoint(self, *args)

    def SetPosition(self, *args) -> "void":
        r"""
        Setup position.

        Parameters
        ----------
        thePosition: gp_Pnt

        Returns
        -------
        None

        """
        return _AIS.AIS_TextLabel_SetPosition(self, *args)

    def SetText(self, *args) -> "void":
        r"""
        Setup text.

        Parameters
        ----------
        theText: TCollection_ExtendedString

        Returns
        -------
        None

        """
        return _AIS.AIS_TextLabel_SetText(self, *args)

    def SetTextFormatter(self, *args) -> "void":
        r"""
        Setup text formatter for presentation. it's empty by default.

        Parameters
        ----------
        theFormatter: Font_TextFormatter

        Returns
        -------
        None

        """
        return _AIS.AIS_TextLabel_SetTextFormatter(self, *args)

    def SetVJustification(self, *args) -> "void":
        r"""
        Setup vertical justification.

        Parameters
        ----------
        theVJust: Graphic3d_VerticalTextAlignment

        Returns
        -------
        None

        """
        return _AIS.AIS_TextLabel_SetVJustification(self, *args)

    def SetZoomable(self, *args) -> "void":
        r"""
        Setup zoomable property.

        Parameters
        ----------
        theIsZoomable: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_TextLabel_SetZoomable(self, *args)

    def Text(self, *args) -> "TCollection_ExtendedString const &":
        r"""
        Returns the label text.

        Returns
        -------
        TCollection_ExtendedString

        """
        return _AIS.AIS_TextLabel_Text(self, *args)

    def TextFormatter(self, *args) -> "opencascade::handle< Font_TextFormatter > const &":
        r"""
        Returns text presentation formatter; null by default, which means standard text formatter will be used.

        Returns
        -------
        opencascade::handle<Font_TextFormatter>

        """
        return _AIS.AIS_TextLabel_TextFormatter(self, *args)

    def UnsetOrientation3D(self, *args) -> "void":
        r"""
        Reset label orientation in the model 3d space.

        Returns
        -------
        None

        """
        return _AIS.AIS_TextLabel_UnsetOrientation3D(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_TextLabel

# Register AIS_TextLabel in _AIS:
_AIS.AIS_TextLabel_swigregister(AIS_TextLabel)

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

    def __init__(self, *args):
        r"""
        Constructs the triangulation display object.

        Parameters
        ----------
        aTriangulation: Poly_Triangulation

        Returns
        -------
        None

        """
        _AIS.AIS_Triangulation_swiginit(self, _AIS.new_AIS_Triangulation(*args))

    def GetColors(self, *args) -> "opencascade::handle< TColStd_HArray1OfInteger >":
        r"""
        Get the color for each node. each 32-bit color is alpha << 24 + blue << 16 + green << 8 + red.

        Returns
        -------
        opencascade::handle<TColStd_HArray1OfInteger>

        """
        return _AIS.AIS_Triangulation_GetColors(self, *args)

    def GetTriangulation(self, *args) -> "opencascade::handle< Poly_Triangulation >":
        r"""
        Returns poly_triangulation .

        Returns
        -------
        opencascade::handle<Poly_Triangulation>

        """
        return _AIS.AIS_Triangulation_GetTriangulation(self, *args)

    def HasVertexColors(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if triangulation has vertex colors.

        Returns
        -------
        bool

        """
        return _AIS.AIS_Triangulation_HasVertexColors(self, *args)

    def SetColors(self, *args) -> "void":
        r"""
        Set the color for each node. each 32-bit color is alpha << 24 + blue << 16 + green << 8 + red order of color components is essential for further usage by opengl.

        Parameters
        ----------
        aColor: TColStd_HArray1OfInteger

        Returns
        -------
        None

        """
        return _AIS.AIS_Triangulation_SetColors(self, *args)

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

        Parameters
        ----------
        aTriangulation: Poly_Triangulation

        Returns
        -------
        None

        """
        return _AIS.AIS_Triangulation_SetTriangulation(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_Triangulation

# Register AIS_Triangulation in _AIS:
_AIS.AIS_Triangulation_swigregister(AIS_Triangulation)

class AIS_Trihedron(AIS_InteractiveObject):
    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"""
        Initializes a trihedron entity.

        Parameters
        ----------
        theComponent: Geom_Axis2Placement

        Returns
        -------
        None

        """
        _AIS.AIS_Trihedron_swiginit(self, _AIS.new_AIS_Trihedron(*args))

    def ArrowColor(self, *args) -> "Quantity_Color":
        r"""
        Returns trihedron arrow color.

        Returns
        -------
        Quantity_Color

        """
        return _AIS.AIS_Trihedron_ArrowColor(self, *args)

    def Component(self, *args) -> "opencascade::handle< Geom_Axis2Placement > const &":
        r"""
        Returns the right-handed coordinate system set in setcomponent.

        Returns
        -------
        opencascade::handle<Geom_Axis2Placement>

        """
        return _AIS.AIS_Trihedron_Component(self, *args)

    def DatumDisplayMode(self, *args) -> "Prs3d_DatumMode":
        r"""
        Returns datum display mode.

        Returns
        -------
        Prs3d_DatumMode

        """
        return _AIS.AIS_Trihedron_DatumDisplayMode(self, *args)

    def DatumPartColor(self, *args) -> "Quantity_Color":
        r"""
        Returns color of datum part: origin or some of trihedron axes.

        Parameters
        ----------
        thePart: Prs3d_DatumParts

        Returns
        -------
        Quantity_Color

        """
        return _AIS.AIS_Trihedron_DatumPartColor(self, *args)

    def HasArrowColor(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if trihedron has own arrow color.

        Returns
        -------
        bool

        """
        return _AIS.AIS_Trihedron_HasArrowColor(self, *args)

    def HasOwnSize(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if the trihedron object has a size other than the default size of 100 mm. along each axis.

        Returns
        -------
        bool

        """
        return _AIS.AIS_Trihedron_HasOwnSize(self, *args)

    def HasTextColor(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if trihedron has own text color.

        Returns
        -------
        bool

        """
        return _AIS.AIS_Trihedron_HasTextColor(self, *args)

    def Label(self, *args) -> "TCollection_ExtendedString const &":
        r"""
        Returns text of axis. parameter thepart should be xaxis, yaxis or zaxis.

        Parameters
        ----------
        thePart: Prs3d_DatumParts

        Returns
        -------
        TCollection_ExtendedString

        """
        return _AIS.AIS_Trihedron_Label(self, *args)

    def SelectionPriority(self, *args) -> "Standard_Integer":
        r"""
        Sets priority of selection for owner of the given type.

        Parameters
        ----------
        thePart: Prs3d_DatumParts

        Returns
        -------
        int

        """
        return _AIS.AIS_Trihedron_SelectionPriority(self, *args)

    def SetArrowColor(self, *args) -> "void":
        r"""
        Sets color of arrow of trihedron axes. used only in wireframe mode.

        Parameters
        ----------
        theColor: Quantity_Color

        Returns
        -------
        None

        """
        return _AIS.AIS_Trihedron_SetArrowColor(self, *args)

    def SetAxisColor(self, *args) -> "void":
        r"""
        Sets color of z-axis. //standard_deprecated('this method is deprecated - setcolor() should be called instead').

        Parameters
        ----------
        theColor: Quantity_Color

        Returns
        -------
        None

        """
        return _AIS.AIS_Trihedron_SetAxisColor(self, *args)

    def SetComponent(self, *args) -> "void":
        r"""
        Constructs the right-handed coordinate system acomponent.

        Parameters
        ----------
        theComponent: Geom_Axis2Placement

        Returns
        -------
        None

        """
        return _AIS.AIS_Trihedron_SetComponent(self, *args)

    def SetDatumDisplayMode(self, *args) -> "void":
        r"""
        Sets shading or wireframe display mode, triangle or segment graphic group is used relatively.

        Parameters
        ----------
        theMode: Prs3d_DatumMode

        Returns
        -------
        None

        """
        return _AIS.AIS_Trihedron_SetDatumDisplayMode(self, *args)

    def SetDatumPartColor(self, *args) -> "void":
        r"""
        Sets color of datum part: origin or some of trihedron axes. if presentation is shading mode, this color is set for both sides of facing model.

        Parameters
        ----------
        thePart: Prs3d_DatumParts
        theColor: Quantity_Color

        Returns
        -------
        None

        """
        return _AIS.AIS_Trihedron_SetDatumPartColor(self, *args)

    def SetDrawArrows(self, *args) -> "void":
        r"""
        Sets whether to draw the arrows in visualization.

        Parameters
        ----------
        theToDraw: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_Trihedron_SetDrawArrows(self, *args)

    def SetLabel(self, *args) -> "void":
        r"""
        Sets text label for trihedron axis. parameter thepart should be xaxis, yaxis or zaxis.

        Parameters
        ----------
        thePart: Prs3d_DatumParts
        thePriority: TCollection_ExtendedString

        Returns
        -------
        None

        """
        return _AIS.AIS_Trihedron_SetLabel(self, *args)

    def SetOriginColor(self, *args) -> "void":
        r"""
        Sets color of origin. //standard_deprecated('this method is deprecated - setcolor() should be called instead').

        Parameters
        ----------
        theColor: Quantity_Color

        Returns
        -------
        None

        """
        return _AIS.AIS_Trihedron_SetOriginColor(self, *args)

    def SetSelectionPriority(self, *args) -> "void":
        r"""
        Sets priority of selection for owner of the given type.

        Parameters
        ----------
        thePart: Prs3d_DatumParts
        thePriority: int

        Returns
        -------
        None

        """
        return _AIS.AIS_Trihedron_SetSelectionPriority(self, *args)

    def SetSize(self, *args) -> "void":
        r"""
        Sets the size avalue for the trihedron object. the default value is 100 mm.

        Parameters
        ----------
        theValue: float

        Returns
        -------
        None

        """
        return _AIS.AIS_Trihedron_SetSize(self, *args)

    def SetTextColor(self, *args) -> "void":
        r"""
        Sets color of label of trihedron axes.

        Parameters
        ----------
        theColor: Quantity_Color

        Returns
        -------
        None

        """
        return _AIS.AIS_Trihedron_SetTextColor(self, *args)

    def SetXAxisColor(self, *args) -> "void":
        r"""
        Sets color of x-axis. //standard_deprecated('this method is deprecated - setcolor() should be called instead').

        Parameters
        ----------
        theColor: Quantity_Color

        Returns
        -------
        None

        """
        return _AIS.AIS_Trihedron_SetXAxisColor(self, *args)

    def SetYAxisColor(self, *args) -> "void":
        r"""
        Sets color of y-axis. //standard_deprecated('this method is deprecated - setcolor() should be called instead').

        Parameters
        ----------
        theColor: Quantity_Color

        Returns
        -------
        None

        """
        return _AIS.AIS_Trihedron_SetYAxisColor(self, *args)

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

        Returns
        -------
        float

        """
        return _AIS.AIS_Trihedron_Size(self, *args)

    def TextColor(self, *args) -> "Quantity_Color":
        r"""
        Returns trihedron text color.

        Returns
        -------
        Quantity_Color

        """
        return _AIS.AIS_Trihedron_TextColor(self, *args)

    def ToDrawArrows(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if arrows are to be drawn.

        Returns
        -------
        bool

        """
        return _AIS.AIS_Trihedron_ToDrawArrows(self, *args)

    def UnsetSize(self, *args) -> "void":
        r"""
        Removes any non-default settings for size of this trihedron object. if the object has 1 color, the default size of the drawer is reproduced, otherwise datumaspect becomes null.

        Returns
        -------
        None

        """
        return _AIS.AIS_Trihedron_UnsetSize(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_Trihedron

# Register AIS_Trihedron in _AIS:
_AIS.AIS_Trihedron_swigregister(AIS_Trihedron)

class AIS_ViewCube(AIS_InteractiveObject):
    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"""
        Empty constructor.

        Returns
        -------
        None

        """
        _AIS.AIS_ViewCube_swiginit(self, _AIS.new_AIS_ViewCube(*args))

    def AxesConeRadius(self, *args) -> "Standard_Real":
        r"""
        Returns radius of cone of axes of the trihedron; 3.0 by default.

        Returns
        -------
        float

        """
        return _AIS.AIS_ViewCube_AxesConeRadius(self, *args)

    def AxesPadding(self, *args) -> "Standard_Real":
        r"""
        Return padding between axes and 3d part (box); 10 by default.

        Returns
        -------
        float

        """
        return _AIS.AIS_ViewCube_AxesPadding(self, *args)

    def AxesRadius(self, *args) -> "Standard_Real":
        r"""
        Returns radius of axes of the trihedron; 1.0 by default.

        Returns
        -------
        float

        """
        return _AIS.AIS_ViewCube_AxesRadius(self, *args)

    def AxesSphereRadius(self, *args) -> "Standard_Real":
        r"""
        Returns radius of sphere (central point) of the trihedron; 4.0 by default.

        Returns
        -------
        float

        """
        return _AIS.AIS_ViewCube_AxesSphereRadius(self, *args)

    def AxisLabel(self, *args) -> "TCollection_AsciiString":
        r"""
        Return axes labels or empty string if undefined. default labels: x, y, z.

        Parameters
        ----------
        theAxis: Prs3d_DatumParts

        Returns
        -------
        TCollection_AsciiString

        """
        return _AIS.AIS_ViewCube_AxisLabel(self, *args)

    def BoxColor(self, *args) -> "Quantity_Color const &":
        r"""
        Return value of front color for the 3d part of object.

        Returns
        -------
        Quantity_Color

        """
        return _AIS.AIS_ViewCube_BoxColor(self, *args)

    def BoxCornerMinSize(self, *args) -> "Standard_Real":
        r"""
        Return minimal size of box corner; 2 by default.

        Returns
        -------
        float

        """
        return _AIS.AIS_ViewCube_BoxCornerMinSize(self, *args)

    def BoxCornerStyle(self, *args) -> "opencascade::handle< Prs3d_ShadingAspect > const &":
        r"""
        Return shading style of box corners.

        Returns
        -------
        opencascade::handle<Prs3d_ShadingAspect>

        """
        return _AIS.AIS_ViewCube_BoxCornerStyle(self, *args)

    def BoxEdgeGap(self, *args) -> "Standard_Real":
        r"""
        Return gap between box edges and box sides; 0 by default.

        Returns
        -------
        float

        """
        return _AIS.AIS_ViewCube_BoxEdgeGap(self, *args)

    def BoxEdgeMinSize(self, *args) -> "Standard_Real":
        r"""
        Return minimal size of box edge; 2 by default.

        Returns
        -------
        float

        """
        return _AIS.AIS_ViewCube_BoxEdgeMinSize(self, *args)

    def BoxEdgeStyle(self, *args) -> "opencascade::handle< Prs3d_ShadingAspect > const &":
        r"""
        Return shading style of box edges.

        Returns
        -------
        opencascade::handle<Prs3d_ShadingAspect>

        """
        return _AIS.AIS_ViewCube_BoxEdgeStyle(self, *args)

    def BoxFacetExtension(self, *args) -> "Standard_Real":
        r"""
        Return box facet extension to edge/corner facet split; 10 by default.

        Returns
        -------
        float

        """
        return _AIS.AIS_ViewCube_BoxFacetExtension(self, *args)

    def BoxSideLabel(self, *args) -> "TCollection_AsciiString":
        r"""
        Return box side label or empty string if undefined. default labels: front, back, left, right, top, bottom.

        Parameters
        ----------
        theSide: V3d_TypeOfOrientation

        Returns
        -------
        TCollection_AsciiString

        """
        return _AIS.AIS_ViewCube_BoxSideLabel(self, *args)

    def BoxSideStyle(self, *args) -> "opencascade::handle< Prs3d_ShadingAspect > const &":
        r"""
        Return shading style of box sides.

        Returns
        -------
        opencascade::handle<Prs3d_ShadingAspect>

        """
        return _AIS.AIS_ViewCube_BoxSideStyle(self, *args)

    def BoxTransparency(self, *args) -> "Standard_Real":
        r"""
        Return transparency for 3d part of object.

        Returns
        -------
        float

        """
        return _AIS.AIS_ViewCube_BoxTransparency(self, *args)

    def Compute(self, *args) -> "void":
        r"""
        Compute 3d part of view cube. @param theprsmgr [in] presentation manager. @param theprs [in] input presentation that is to be filled with flat presentation primitives. @param themode [in] display mode. @warning this object accept only 0 display mode.

        Parameters
        ----------
        thePrsMgr: PrsMgr_PresentationManager3d
        thePrs: Prs3d_Presentation
        theMode: int,optional
        	default value is 0

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewCube_Compute(self, *args)

    def Duration(self, *args) -> "Standard_Real":
        r"""
        Return duration of animation in seconds; 0.5 sec by default.

        Returns
        -------
        float

        """
        return _AIS.AIS_ViewCube_Duration(self, *args)

    def Font(self, *args) -> "TCollection_AsciiString const &":
        r"""
        Return font name that is used for displaying of sides and axes text. alias for: @code attributes()->textaspect()->aspect()->setfont() @endcode.

        Returns
        -------
        TCollection_AsciiString

        """
        return _AIS.AIS_ViewCube_Font(self, *args)

    def FontHeight(self, *args) -> "Standard_Real":
        r"""
        Return height of font.

        Returns
        -------
        float

        """
        return _AIS.AIS_ViewCube_FontHeight(self, *args)

    def HandleClick(self, *args) -> "void":
        r"""
        Perform camera transformation corresponding to the input detected owner.

        Parameters
        ----------
        theOwner: AIS_ViewCubeOwner

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewCube_HandleClick(self, *args)

    def HasAnimation(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if view cube has unfinished animation of view camera.

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewCube_HasAnimation(self, *args)

    def InnerColor(self, *args) -> "Quantity_Color const &":
        r"""
        Return color of sides back material.

        Returns
        -------
        Quantity_Color

        """
        return _AIS.AIS_ViewCube_InnerColor(self, *args)

    @staticmethod
    def IsBoxCorner(*args) -> "bool":
        r"""
        Return true if specified orientation belongs to box corner (vertex).

        Parameters
        ----------
        theOrient: V3d_TypeOfOrientation

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewCube_IsBoxCorner(*args)

    @staticmethod
    def IsBoxEdge(*args) -> "bool":
        r"""
        Return true if specified orientation belongs to box edge.

        Parameters
        ----------
        theOrient: V3d_TypeOfOrientation

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewCube_IsBoxEdge(*args)

    @staticmethod
    def IsBoxSide(*args) -> "bool":
        r"""
        Return true if specified orientation belongs to box side.

        Parameters
        ----------
        theOrient: V3d_TypeOfOrientation

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewCube_IsBoxSide(*args)

    def IsFixedAnimationLoop(self, *args) -> "Standard_Boolean":
        r"""
        Return true if camera animation should be done in uninterruptible loop; true by default.

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewCube_IsFixedAnimationLoop(self, *args)

    def IsYup(self, *args) -> "Standard_Boolean":
        r"""
        Return true if application expects y-up viewer orientation instead of z-up; false by default.

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewCube_IsYup(self, *args)

    def ResetStyles(self, *args) -> "void":
        r"""
        Reset all size and style parameters to default. @warning it doesn't reset position of view cube.

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewCube_ResetStyles(self, *args)

    def RoundRadius(self, *args) -> "Standard_Real":
        r"""
        Return relative radius of side corners (round rectangle); 0.0 by default. the value in within [0, 0.5] range meaning absolute radius = roundradius() / size().

        Returns
        -------
        float

        """
        return _AIS.AIS_ViewCube_RoundRadius(self, *args)

    def SetAutoStartAnimation(self, *args) -> "void":
        r"""
        Enable/disable automatic camera transformation on selection (highlighting). the automatic logic can be disabled if application wants performing action manually basing on picking results (ais_viewcubeowner).

        Parameters
        ----------
        theToEnable: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewCube_SetAutoStartAnimation(self, *args)

    def SetAxesConeRadius(self, *args) -> "void":
        r"""
        Sets radius of cone of axes of the trihedron.

        Parameters
        ----------
        theRadius: float

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewCube_SetAxesConeRadius(self, *args)

    def SetAxesLabels(self, *args) -> "void":
        r"""
        Set axes labels.

        Parameters
        ----------
        theX: TCollection_AsciiString
        theY: TCollection_AsciiString
        theZ: TCollection_AsciiString

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewCube_SetAxesLabels(self, *args)

    def SetAxesPadding(self, *args) -> "void":
        r"""
        Set new value of padding between axes and 3d part (box).

        Parameters
        ----------
        theValue: float

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewCube_SetAxesPadding(self, *args)

    def SetAxesRadius(self, *args) -> "void":
        r"""
        Sets radius of axes of the trihedron.

        Parameters
        ----------
        theRadius: float

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewCube_SetAxesRadius(self, *args)

    def SetAxesSphereRadius(self, *args) -> "void":
        r"""
        Sets radius of sphere (central point) of the trihedron.

        Parameters
        ----------
        theRadius: float

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewCube_SetAxesSphereRadius(self, *args)

    def SetBoxColor(self, *args) -> "void":
        r"""
        Set new value of front color for the 3d part of object. @param thecolor [in] input color value.

        Parameters
        ----------
        theColor: Quantity_Color

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewCube_SetBoxColor(self, *args)

    def SetBoxCornerMinSize(self, *args) -> "void":
        r"""
        Set new value of box corner minimal size.

        Parameters
        ----------
        theValue: float

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewCube_SetBoxCornerMinSize(self, *args)

    def SetBoxEdgeGap(self, *args) -> "void":
        r"""
        Set new value of box edges gap.

        Parameters
        ----------
        theValue: float

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewCube_SetBoxEdgeGap(self, *args)

    def SetBoxEdgeMinSize(self, *args) -> "void":
        r"""
        Set new value of box edge minimal size.

        Parameters
        ----------
        theValue: float

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewCube_SetBoxEdgeMinSize(self, *args)

    def SetBoxFacetExtension(self, *args) -> "void":
        r"""
        Set new value of box facet extension.

        Parameters
        ----------
        theValue: float

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewCube_SetBoxFacetExtension(self, *args)

    def SetBoxSideLabel(self, *args) -> "void":
        r"""
        Set box side label.

        Parameters
        ----------
        theSide: V3d_TypeOfOrientation
        theLabel: TCollection_AsciiString

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewCube_SetBoxSideLabel(self, *args)

    def SetBoxTransparency(self, *args) -> "void":
        r"""
        Set new value of transparency for 3d part of object. @param thevalue [in] input transparency value.

        Parameters
        ----------
        theValue: float

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewCube_SetBoxTransparency(self, *args)

    def SetDrawAxes(self, *args) -> "void":
        r"""
        Enable/disable drawing of trihedron.

        Parameters
        ----------
        theValue: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewCube_SetDrawAxes(self, *args)

    def SetDrawEdges(self, *args) -> "void":
        r"""
        Enable/disable drawing of edges of view cube.

        Parameters
        ----------
        theValue: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewCube_SetDrawEdges(self, *args)

    def SetDrawVertices(self, *args) -> "void":
        r"""
        Enable/disable drawing of vertices (corners) of view cube.

        Parameters
        ----------
        theValue: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewCube_SetDrawVertices(self, *args)

    def SetDuration(self, *args) -> "void":
        r"""
        Set duration of animation. @param thevalue [in] input value of duration in seconds.

        Parameters
        ----------
        theValue: float

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewCube_SetDuration(self, *args)

    def SetFitSelected(self, *args) -> "void":
        r"""
        Set if animation should fit selected objects or to fit entire scene.

        Parameters
        ----------
        theToFitSelected: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewCube_SetFitSelected(self, *args)

    def SetFixedAnimationLoop(self, *args) -> "void":
        r"""
        Set if camera animation should be done in uninterruptible loop.

        Parameters
        ----------
        theToEnable: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewCube_SetFixedAnimationLoop(self, *args)

    def SetFont(self, *args) -> "void":
        r"""
        Set font name that is used for displaying of sides and axes text. alias for: @code attributes()->textaspect()->setfont() @endcode.

        Parameters
        ----------
        theFont: TCollection_AsciiString

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewCube_SetFont(self, *args)

    def SetFontHeight(self, *args) -> "void":
        r"""
        Change font height. alias for: @code attributes()->textaspect()->setheight() @endcode.

        Parameters
        ----------
        theValue: float

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewCube_SetFontHeight(self, *args)

    def SetInnerColor(self, *args) -> "void":
        r"""
        Set color of sides back material. alias for: @code attributes()->shadingaspect()->aspect()->changebackmaterial().setcolor() @endcode.

        Parameters
        ----------
        theColor: Quantity_Color

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewCube_SetInnerColor(self, *args)

    def SetResetCamera(self, *args) -> "void":
        r"""
        Set if new camera up direction should be always set to default value for a new camera direction.

        Parameters
        ----------
        theToReset: bool

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewCube_SetResetCamera(self, *args)

    def SetRoundRadius(self, *args) -> "void":
        r"""
        Set relative radius of view cube sides corners (round rectangle). the value should be within [0, 0.5] range.

        Parameters
        ----------
        theValue: float

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewCube_SetRoundRadius(self, *args)

    def SetSize(self, *args) -> "void":
        r"""
        Sets size (width and height) of view cube sides. @param thetoadaptanother if true, then other parameters will be adapted to specified size.

        Parameters
        ----------
        theValue: float
        theToAdaptAnother: bool,optional
        	default value is true

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewCube_SetSize(self, *args)

    def SetTextColor(self, *args) -> "void":
        r"""
        Set color of text labels on box sides. alias for: @code attributes()->textaspect()->setcolor() @endcode.

        Parameters
        ----------
        theColor: Quantity_Color

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewCube_SetTextColor(self, *args)

    def SetViewAnimation(self, *args) -> "void":
        r"""
        Set view animation.

        Parameters
        ----------
        theAnimation: AIS_AnimationCamera

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewCube_SetViewAnimation(self, *args)

    def SetYup(self, *args) -> "void":
        r"""
        Set if application expects y-up viewer orientation instead of z-up.

        Parameters
        ----------
        theIsYup: bool
        theToUpdateLabels: bool,optional
        	default value is Standard_True

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewCube_SetYup(self, *args)

    def Size(self, *args) -> "Standard_Real":
        r"""
        Returns size (width and height) of view cube sides; 100 by default.

        Returns
        -------
        float

        """
        return _AIS.AIS_ViewCube_Size(self, *args)

    def StartAnimation(self, *args) -> "void":
        r"""
        Start camera transformation corresponding to the input detected owner. @param theowner [in] detected owner.

        Parameters
        ----------
        theOwner: AIS_ViewCubeOwner

        Returns
        -------
        None

        """
        return _AIS.AIS_ViewCube_StartAnimation(self, *args)

    def TextColor(self, *args) -> "Quantity_Color const &":
        r"""
        Return text color of labels of box sides; black by default.

        Returns
        -------
        Quantity_Color

        """
        return _AIS.AIS_ViewCube_TextColor(self, *args)

    def ToAutoStartAnimation(self, *args) -> "Standard_Boolean":
        r"""
        Return true if automatic camera transformation on selection (highlighting) is enabled; true by default.

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewCube_ToAutoStartAnimation(self, *args)

    def ToDrawAxes(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if trihedron is drawn; true by default.

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewCube_ToDrawAxes(self, *args)

    def ToDrawEdges(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if edges of view cube is drawn; true by default.

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewCube_ToDrawEdges(self, *args)

    def ToDrawVertices(self, *args) -> "Standard_Boolean":
        r"""
        Return true if vertices (vertex) of view cube is drawn; true by default.

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewCube_ToDrawVertices(self, *args)

    def ToFitSelected(self, *args) -> "Standard_Boolean":
        r"""
        Return true if animation should fit selected objects and false to fit entire scene; true by default.

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewCube_ToFitSelected(self, *args)

    def ToResetCameraUp(self, *args) -> "Standard_Boolean":
        r"""
        Return true if new camera up direction should be always set to default value for a new camera direction; false by default. when this flag is false, the new camera up will be set as current up orthogonalized to the new camera direction, and will set to default up on second click.

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewCube_ToResetCameraUp(self, *args)

    def UpdateAnimation(self, *args) -> "Standard_Boolean":
        r"""
        Perform one step of current camera transformation. thetoupdate [in] enable/disable update of view. returns true if animation is not stopped.

        Parameters
        ----------
        theToUpdate: bool

        Returns
        -------
        bool

        """
        return _AIS.AIS_ViewCube_UpdateAnimation(self, *args)

    def ViewAnimation(self, *args) -> "opencascade::handle< AIS_AnimationCamera > const &":
        r"""
        Return view animation.

        Returns
        -------
        opencascade::handle<AIS_AnimationCamera>

        """
        return _AIS.AIS_ViewCube_ViewAnimation(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_ViewCube

# Register AIS_ViewCube in _AIS:
_AIS.AIS_ViewCube_swigregister(AIS_ViewCube)

def AIS_ViewCube_IsBoxCorner(*args) -> "bool":
    r"""
    Return true if specified orientation belongs to box corner (vertex).

    Parameters
    ----------
    theOrient: V3d_TypeOfOrientation

    Returns
    -------
    bool

    """
    return _AIS.AIS_ViewCube_IsBoxCorner(*args)

def AIS_ViewCube_IsBoxEdge(*args) -> "bool":
    r"""
    Return true if specified orientation belongs to box edge.

    Parameters
    ----------
    theOrient: V3d_TypeOfOrientation

    Returns
    -------
    bool

    """
    return _AIS.AIS_ViewCube_IsBoxEdge(*args)

def AIS_ViewCube_IsBoxSide(*args) -> "bool":
    r"""
    Return true if specified orientation belongs to box side.

    Parameters
    ----------
    theOrient: V3d_TypeOfOrientation

    Returns
    -------
    bool

    """
    return _AIS.AIS_ViewCube_IsBoxSide(*args)

class AIS_XRTrackedDevice(AIS_InteractiveObject):
    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"""
        Main constructor.

        Parameters
        ----------
        theTris: Graphic3d_ArrayOfTriangles
        theTexture: Image_Texture

        Returns
        -------
        None
        Empty constructor.

        Returns
        -------
        None

        """
        _AIS.AIS_XRTrackedDevice_swiginit(self, _AIS.new_AIS_XRTrackedDevice(*args))

    def LaserColor(self, *args) -> "Quantity_Color const &":
        r"""
        Return laser color.

        Returns
        -------
        Quantity_Color

        """
        return _AIS.AIS_XRTrackedDevice_LaserColor(self, *args)

    def LaserLength(self, *args) -> "Standard_ShortReal":
        r"""
        Return laser length.

        Returns
        -------
        Standard_ShortReal

        """
        return _AIS.AIS_XRTrackedDevice_LaserLength(self, *args)

    def Role(self, *args) -> "Aspect_XRTrackedDeviceRole":
        r"""
        Return device role.

        Returns
        -------
        Aspect_XRTrackedDeviceRole

        """
        return _AIS.AIS_XRTrackedDevice_Role(self, *args)

    def SetLaserColor(self, *args) -> "void":
        r"""
        Set laser color.

        Parameters
        ----------
        theColor: Quantity_Color

        Returns
        -------
        None

        """
        return _AIS.AIS_XRTrackedDevice_SetLaserColor(self, *args)

    def SetLaserLength(self, *args) -> "void":
        r"""
        Set laser length.

        Parameters
        ----------
        theLength: Standard_ShortReal

        Returns
        -------
        None

        """
        return _AIS.AIS_XRTrackedDevice_SetLaserLength(self, *args)

    def SetRole(self, *args) -> "void":
        r"""
        Set device role.

        Parameters
        ----------
        theRole: Aspect_XRTrackedDeviceRole

        Returns
        -------
        None

        """
        return _AIS.AIS_XRTrackedDevice_SetRole(self, *args)

    def SetUnitFactor(self, *args) -> "void":
        r"""
        Set unit scale factor.

        Parameters
        ----------
        theFactor: Standard_ShortReal

        Returns
        -------
        None

        """
        return _AIS.AIS_XRTrackedDevice_SetUnitFactor(self, *args)

    def UnitFactor(self, *args) -> "Standard_ShortReal":
        r"""
        Return unit scale factor.

        Returns
        -------
        Standard_ShortReal

        """
        return _AIS.AIS_XRTrackedDevice_UnitFactor(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_XRTrackedDevice

# Register AIS_XRTrackedDevice in _AIS:
_AIS.AIS_XRTrackedDevice_swigregister(AIS_XRTrackedDevice)

class AIS_ColoredShape(AIS_Shape):
    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.

        Parameters
        ----------
        theShape: TopoDS_Shape

        Returns
        -------
        None
        Copy constructor.

        Parameters
        ----------
        theShape: AIS_Shape

        Returns
        -------
        None

        """
        _AIS.AIS_ColoredShape_swiginit(self, _AIS.new_AIS_ColoredShape(*args))

    def ChangeCustomAspectsMap(self, *args) -> "AIS_DataMapOfShapeDrawer &":
        r"""
        Return the map of custom aspects.

        Returns
        -------
        AIS_DataMapOfShapeDrawer

        """
        return _AIS.AIS_ColoredShape_ChangeCustomAspectsMap(self, *args)

    def ClearCustomAspects(self, *args) -> "void":
        r"""
        Reset the map of custom sub-shape aspects.

        Returns
        -------
        None

        """
        return _AIS.AIS_ColoredShape_ClearCustomAspects(self, *args)

    def CustomAspects(self, *args) -> "opencascade::handle< AIS_ColoredDrawer >":
        r"""
        Customize properties of specified sub-shape. the shape will be stored in the map but ignored, if it is not sub-shape of main shape! this method can be used to mark sub-shapes with customizable properties.

        Parameters
        ----------
        theShape: TopoDS_Shape

        Returns
        -------
        opencascade::handle<AIS_ColoredDrawer>

        """
        return _AIS.AIS_ColoredShape_CustomAspects(self, *args)

    def CustomAspectsMap(self, *args) -> "AIS_DataMapOfShapeDrawer const &":
        r"""
        Return the map of custom aspects.

        Returns
        -------
        AIS_DataMapOfShapeDrawer

        """
        return _AIS.AIS_ColoredShape_CustomAspectsMap(self, *args)

    def SetCustomColor(self, *args) -> "void":
        r"""
        Customize color of specified sub-shape.

        Parameters
        ----------
        theShape: TopoDS_Shape
        theColor: Quantity_Color

        Returns
        -------
        None

        """
        return _AIS.AIS_ColoredShape_SetCustomColor(self, *args)

    def SetCustomTransparency(self, *args) -> "void":
        r"""
        Customize transparency of specified sub-shape.

        Parameters
        ----------
        theShape: TopoDS_Shape
        theTransparency: float

        Returns
        -------
        None

        """
        return _AIS.AIS_ColoredShape_SetCustomTransparency(self, *args)

    def SetCustomWidth(self, *args) -> "void":
        r"""
        Customize line width of specified sub-shape.

        Parameters
        ----------
        theShape: TopoDS_Shape
        theLineWidth: float

        Returns
        -------
        None

        """
        return _AIS.AIS_ColoredShape_SetCustomWidth(self, *args)

    def UnsetCustomAspects(self, *args) -> "void":
        r"""
        Reset custom properties of specified sub-shape. @param thetounregister unregister or not sub-shape from the map.

        Parameters
        ----------
        theShape: TopoDS_Shape
        theToUnregister: bool,optional
        	default value is Standard_False

        Returns
        -------
        None

        """
        return _AIS.AIS_ColoredShape_UnsetCustomAspects(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _AIS.delete_AIS_ColoredShape

# Register AIS_ColoredShape in _AIS:
_AIS.AIS_ColoredShape_swigregister(AIS_ColoredShape)

class AIS_TexturedShape(AIS_Shape):
    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"""
        Initializes the textured shape.

        Parameters
        ----------
        theShape: TopoDS_Shape

        Returns
        -------
        None

        """
        _AIS.AIS_TexturedShape_swiginit(self, _AIS.new_AIS_TexturedShape(*args))

    def DisableTextureModulate(self, *args) -> "void":
        r"""
        Disables texture modulation.

        Returns
        -------
        None

        """
        return _AIS.AIS_TexturedShape_DisableTextureModulate(self, *args)

    def EnableTextureModulate(self, *args) -> "void":
        r"""
        Enables texture modulation.

        Returns
        -------
        None

        """
        return _AIS.AIS_TexturedShape_EnableTextureModulate(self, *args)

    def SetTextureFileName(self, *args) -> "void":
        r"""
        Sets the texture source. <thetexturefilename> can specify path to texture image or one of the standard predefined textures. the accepted file types are those used in image_alienpixmap with extensions such as rgb, png, jpg and more. to specify the standard predefined texture, the <thetexturefilename> should contain integer - the graphic3d_nameoftexture2d enumeration index. setting texture source using this method resets the source pixmap (if was set previously).

        Parameters
        ----------
        theTextureFileName: TCollection_AsciiString

        Returns
        -------
        None

        """
        return _AIS.AIS_TexturedShape_SetTextureFileName(self, *args)

    def SetTextureMapOff(self, *args) -> "void":
        r"""
        Disables texture mapping.

        Returns
        -------
        None

        """
        return _AIS.AIS_TexturedShape_SetTextureMapOff(self, *args)

    def SetTextureMapOn(self, *args) -> "void":
        r"""
        Enables texture mapping.

        Returns
        -------
        None

        """
        return _AIS.AIS_TexturedShape_SetTextureMapOn(self, *args)

    def SetTextureOrigin(self, *args) -> "void":
        r"""
        Use this method to change the origin of the texture. the texel (0,0) will be mapped to the surface (uorigin,vorigin).

        Parameters
        ----------
        theToSetTextureOrigin: bool
        theUOrigin: float,optional
        	default value is 0.0
        theVOrigin: float,optional
        	default value is 0.0

        Returns
        -------
        None

        """
        return _AIS.AIS_TexturedShape_SetTextureOrigin(self, *args)

    def SetTexturePixMap(self, *args) -> "void":
        r"""
        Sets the texture source. <thetexturepixmap> specifies image data. please note that the data should be in bottom-up order, the flag of image_pixmap::istopdown() will be ignored by graphic driver. setting texture source using this method resets the source by filename (if was set previously).

        Parameters
        ----------
        theTexturePixMap: Image_PixMap

        Returns
        -------
        None

        """
        return _AIS.AIS_TexturedShape_SetTexturePixMap(self, *args)

    def SetTextureRepeat(self, *args) -> "void":
        r"""
        Sets the number of occurrences of the texture on each face. the texture itself is parameterized in (0,1) by (0,1). each face of the shape to be textured is parameterized in uv space (umin,umax) by (vmin,vmax). if repeatyn is set to false, texture coordinates are clamped in the range (0,1)x(0,1) of the face.

        Parameters
        ----------
        theToRepeat: bool
        theURepeat: float,optional
        	default value is 1.0
        theVRepeat: float,optional
        	default value is 1.0

        Returns
        -------
        None

        """
        return _AIS.AIS_TexturedShape_SetTextureRepeat(self, *args)

    def SetTextureScale(self, *args) -> "void":
        r"""
        Use this method to scale the texture (percent of the face). you can specify a scale factor for both u and v. example: if you set scaleu and scalev to 0.5 and you enable texture repeat, the texture will appear twice on the face in each direction.

        Parameters
        ----------
        theToSetTextureScale: bool
        theScaleU: float,optional
        	default value is 1.0
        theScaleV: float,optional
        	default value is 1.0

        Returns
        -------
        None

        """
        return _AIS.AIS_TexturedShape_SetTextureScale(self, *args)

    def TextureFile(self, *args) -> "char const *":
        r"""
        Returns path to the texture file.

        Returns
        -------
        char *

        """
        return _AIS.AIS_TexturedShape_TextureFile(self, *args)

    def TextureMapState(self, *args) -> "Standard_Boolean":
        r"""
        Returns flag to control texture mapping (for presentation mode 3).

        Returns
        -------
        bool

        """
        return _AIS.AIS_TexturedShape_TextureMapState(self, *args)

    def TextureModulate(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if texture color modulation is turned on.

        Returns
        -------
        bool

        """
        return _AIS.AIS_TexturedShape_TextureModulate(self, *args)

    def TextureOrigin(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if texture uv origin has been modified.

        Returns
        -------
        bool

        """
        return _AIS.AIS_TexturedShape_TextureOrigin(self, *args)

    def TexturePixMap(self, *args) -> "opencascade::handle< Image_PixMap > const &":
        r"""
        Returns the source pixmap for texture map.

        Returns
        -------
        opencascade::handle<Image_PixMap>

        """
        return _AIS.AIS_TexturedShape_TexturePixMap(self, *args)

    def TextureRepeat(self, *args) -> "Standard_Boolean":
        r"""
        Returns texture repeat flag.

        Returns
        -------
        bool

        """
        return _AIS.AIS_TexturedShape_TextureRepeat(self, *args)

    def TextureScale(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if scale factor should be applied to texture mapping.

        Returns
        -------
        bool

        """
        return _AIS.AIS_TexturedShape_TextureScale(self, *args)

    def TextureScaleU(self, *args) -> "Standard_Real":
        r"""
        Returns scale factor for u coordinate (1.0 by default).

        Returns
        -------
        float

        """
        return _AIS.AIS_TexturedShape_TextureScaleU(self, *args)

    def TextureScaleV(self, *args) -> "Standard_Real":
        r"""
        Returns scale factor for v coordinate (1.0 by default).

        Returns
        -------
        float

        """
        return _AIS.AIS_TexturedShape_TextureScaleV(self, *args)

    def TextureUOrigin(self, *args) -> "Standard_Real":
        r"""
        Returns texture origin u position (0.0 by default).

        Returns
        -------
        float

        """
        return _AIS.AIS_TexturedShape_TextureUOrigin(self, *args)

    def TextureVOrigin(self, *args) -> "Standard_Real":
        r"""
        Returns texture origin v position (0.0 by default).

        Returns
        -------
        float

        """
        return _AIS.AIS_TexturedShape_TextureVOrigin(self, *args)

    def URepeat(self, *args) -> "Standard_Real":
        r"""
        Returns texture repeat u value.

        Returns
        -------
        float

        """
        return _AIS.AIS_TexturedShape_URepeat(self, *args)

    def UpdateAttributes(self, *args) -> "void":
        r"""
        Use this method to display the textured shape without recomputing the whole presentation. use this method when only the texture content has been changed. if other parameters (ie: scale factors, texture origin, texture repeat...) have changed, the whole presentation has to be recomputed: @code if (myshape->displaymode() == 3) { myaiscontext->recomputeprsonly (myshape); } else { myaiscontext->setdisplaymode (myshape, 3, standard_false); myaiscontext->display (myshape, standard_true); } @endcode.

        Returns
        -------
        None

        """
        return _AIS.AIS_TexturedShape_UpdateAttributes(self, *args)

    def VRepeat(self, *args) -> "Standard_Real":
        r"""
        Returns texture repeat v value.

        Returns
        -------
        float

        """
        return _AIS.AIS_TexturedShape_VRepeat(self, *args)


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


    __repr__ = _dumps_object

    @methodnotwrapped
    def ShowTriangles(self):
    	pass

    __swig_destroy__ = _AIS.delete_AIS_TexturedShape

# Register AIS_TexturedShape in _AIS:
_AIS.AIS_TexturedShape_swigregister(AIS_TexturedShape)


AIS_AnimationTimer=OCC.Core.Media.Media_Timer



