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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

V3d_POSITIONCAMERA = _V3d.V3d_POSITIONCAMERA
V3d_SPACECAMERA = _V3d.V3d_SPACECAMERA
V3d_RADIUSTEXTCAMERA = _V3d.V3d_RADIUSTEXTCAMERA
V3d_ExtRADIUSCAMERA = _V3d.V3d_ExtRADIUSCAMERA
V3d_IntRADIUSCAMERA = _V3d.V3d_IntRADIUSCAMERA
V3d_NOTHINGCAMERA = _V3d.V3d_NOTHINGCAMERA
V3d_WIREFRAME = _V3d.V3d_WIREFRAME
V3d_ZBUFFER = _V3d.V3d_ZBUFFER
V3d_ORTHOGRAPHIC = _V3d.V3d_ORTHOGRAPHIC
V3d_PERSPECTIVE = _V3d.V3d_PERSPECTIVE
V3d_SDO_MONO = _V3d.V3d_SDO_MONO
V3d_SDO_LEFT_EYE = _V3d.V3d_SDO_LEFT_EYE
V3d_SDO_RIGHT_EYE = _V3d.V3d_SDO_RIGHT_EYE
V3d_SDO_BLENDED = _V3d.V3d_SDO_BLENDED
V3d_Xpos = _V3d.V3d_Xpos
V3d_Ypos = _V3d.V3d_Ypos
V3d_Zpos = _V3d.V3d_Zpos
V3d_Xneg = _V3d.V3d_Xneg
V3d_Yneg = _V3d.V3d_Yneg
V3d_Zneg = _V3d.V3d_Zneg
V3d_XposYpos = _V3d.V3d_XposYpos
V3d_XposZpos = _V3d.V3d_XposZpos
V3d_YposZpos = _V3d.V3d_YposZpos
V3d_XnegYneg = _V3d.V3d_XnegYneg
V3d_XnegYpos = _V3d.V3d_XnegYpos
V3d_XnegZneg = _V3d.V3d_XnegZneg
V3d_XnegZpos = _V3d.V3d_XnegZpos
V3d_YnegZneg = _V3d.V3d_YnegZneg
V3d_YnegZpos = _V3d.V3d_YnegZpos
V3d_XposYneg = _V3d.V3d_XposYneg
V3d_XposZneg = _V3d.V3d_XposZneg
V3d_YposZneg = _V3d.V3d_YposZneg
V3d_XposYposZpos = _V3d.V3d_XposYposZpos
V3d_XposYnegZpos = _V3d.V3d_XposYnegZpos
V3d_XposYposZneg = _V3d.V3d_XposYposZneg
V3d_XnegYposZpos = _V3d.V3d_XnegYposZpos
V3d_XposYnegZneg = _V3d.V3d_XposYnegZneg
V3d_XnegYposZneg = _V3d.V3d_XnegYposZneg
V3d_XnegYnegZpos = _V3d.V3d_XnegYnegZpos
V3d_XnegYnegZneg = _V3d.V3d_XnegYnegZneg
V3d_TypeOfOrientation_Zup_AxoLeft = _V3d.V3d_TypeOfOrientation_Zup_AxoLeft
V3d_TypeOfOrientation_Zup_AxoRight = _V3d.V3d_TypeOfOrientation_Zup_AxoRight
V3d_TypeOfOrientation_Zup_Front = _V3d.V3d_TypeOfOrientation_Zup_Front
V3d_TypeOfOrientation_Zup_Back = _V3d.V3d_TypeOfOrientation_Zup_Back
V3d_TypeOfOrientation_Zup_Top = _V3d.V3d_TypeOfOrientation_Zup_Top
V3d_TypeOfOrientation_Zup_Bottom = _V3d.V3d_TypeOfOrientation_Zup_Bottom
V3d_TypeOfOrientation_Zup_Left = _V3d.V3d_TypeOfOrientation_Zup_Left
V3d_TypeOfOrientation_Zup_Right = _V3d.V3d_TypeOfOrientation_Zup_Right
V3d_TypeOfOrientation_Yup_AxoLeft = _V3d.V3d_TypeOfOrientation_Yup_AxoLeft
V3d_TypeOfOrientation_Yup_AxoRight = _V3d.V3d_TypeOfOrientation_Yup_AxoRight
V3d_TypeOfOrientation_Yup_Front = _V3d.V3d_TypeOfOrientation_Yup_Front
V3d_TypeOfOrientation_Yup_Back = _V3d.V3d_TypeOfOrientation_Yup_Back
V3d_TypeOfOrientation_Yup_Top = _V3d.V3d_TypeOfOrientation_Yup_Top
V3d_TypeOfOrientation_Yup_Bottom = _V3d.V3d_TypeOfOrientation_Yup_Bottom
V3d_TypeOfOrientation_Yup_Left = _V3d.V3d_TypeOfOrientation_Yup_Left
V3d_TypeOfOrientation_Yup_Right = _V3d.V3d_TypeOfOrientation_Yup_Right
V3d_X = _V3d.V3d_X
V3d_Y = _V3d.V3d_Y
V3d_Z = _V3d.V3d_Z
V3d_SIMPLE = _V3d.V3d_SIMPLE
V3d_COMPLETE = _V3d.V3d_COMPLETE
V3d_PARTIAL = _V3d.V3d_PARTIAL
V3d_SAMELAST = _V3d.V3d_SAMELAST
V3d_TOBM_AUTOMATIC = _V3d.V3d_TOBM_AUTOMATIC
V3d_TOBM_ALWAYS_DISPLAYED = _V3d.V3d_TOBM_ALWAYS_DISPLAYED
V3d_TOBM_NEVER_DISPLAYED = _V3d.V3d_TOBM_NEVER_DISPLAYED
V3d_POSITIONLIGHT = _V3d.V3d_POSITIONLIGHT
V3d_SPACELIGHT = _V3d.V3d_SPACELIGHT
V3d_RADIUSTEXTLIGHT = _V3d.V3d_RADIUSTEXTLIGHT
V3d_ExtRADIUSLIGHT = _V3d.V3d_ExtRADIUSLIGHT
V3d_IntRADIUSLIGHT = _V3d.V3d_IntRADIUSLIGHT
V3d_NOTHING = _V3d.V3d_NOTHING


class V3d_TypeOfPickCamera(IntEnum):
	V3d_POSITIONCAMERA = 0
	V3d_SPACECAMERA = 1
	V3d_RADIUSTEXTCAMERA = 2
	V3d_ExtRADIUSCAMERA = 3
	V3d_IntRADIUSCAMERA = 4
	V3d_NOTHINGCAMERA = 5
V3d_POSITIONCAMERA = V3d_TypeOfPickCamera.V3d_POSITIONCAMERA
V3d_SPACECAMERA = V3d_TypeOfPickCamera.V3d_SPACECAMERA
V3d_RADIUSTEXTCAMERA = V3d_TypeOfPickCamera.V3d_RADIUSTEXTCAMERA
V3d_ExtRADIUSCAMERA = V3d_TypeOfPickCamera.V3d_ExtRADIUSCAMERA
V3d_IntRADIUSCAMERA = V3d_TypeOfPickCamera.V3d_IntRADIUSCAMERA
V3d_NOTHINGCAMERA = V3d_TypeOfPickCamera.V3d_NOTHINGCAMERA

class V3d_TypeOfVisualization(IntEnum):
	V3d_WIREFRAME = 0
	V3d_ZBUFFER = 1
V3d_WIREFRAME = V3d_TypeOfVisualization.V3d_WIREFRAME
V3d_ZBUFFER = V3d_TypeOfVisualization.V3d_ZBUFFER

class V3d_TypeOfView(IntEnum):
	V3d_ORTHOGRAPHIC = 0
	V3d_PERSPECTIVE = 1
V3d_ORTHOGRAPHIC = V3d_TypeOfView.V3d_ORTHOGRAPHIC
V3d_PERSPECTIVE = V3d_TypeOfView.V3d_PERSPECTIVE

class V3d_StereoDumpOptions(IntEnum):
	V3d_SDO_MONO = 0
	V3d_SDO_LEFT_EYE = 1
	V3d_SDO_RIGHT_EYE = 2
	V3d_SDO_BLENDED = 3
V3d_SDO_MONO = V3d_StereoDumpOptions.V3d_SDO_MONO
V3d_SDO_LEFT_EYE = V3d_StereoDumpOptions.V3d_SDO_LEFT_EYE
V3d_SDO_RIGHT_EYE = V3d_StereoDumpOptions.V3d_SDO_RIGHT_EYE
V3d_SDO_BLENDED = V3d_StereoDumpOptions.V3d_SDO_BLENDED

class V3d_TypeOfOrientation(IntEnum):
	V3d_Xpos = 0
	V3d_Ypos = 1
	V3d_Zpos = 2
	V3d_Xneg = 3
	V3d_Yneg = 4
	V3d_Zneg = 5
	V3d_XposYpos = 6
	V3d_XposZpos = 7
	V3d_YposZpos = 8
	V3d_XnegYneg = 9
	V3d_XnegYpos = 10
	V3d_XnegZneg = 11
	V3d_XnegZpos = 12
	V3d_YnegZneg = 13
	V3d_YnegZpos = 14
	V3d_XposYneg = 15
	V3d_XposZneg = 16
	V3d_YposZneg = 17
	V3d_XposYposZpos = 18
	V3d_XposYnegZpos = 19
	V3d_XposYposZneg = 20
	V3d_XnegYposZpos = 21
	V3d_XposYnegZneg = 22
	V3d_XnegYposZneg = 23
	V3d_XnegYnegZpos = 24
	V3d_XnegYnegZneg = 25
	V3d_TypeOfOrientation_Zup_AxoLeft = V3d_XnegYnegZpos
	V3d_TypeOfOrientation_Zup_AxoRight = V3d_XposYnegZpos
	V3d_TypeOfOrientation_Zup_Front = V3d_Yneg
	V3d_TypeOfOrientation_Zup_Back = V3d_Ypos
	V3d_TypeOfOrientation_Zup_Top = V3d_Zpos
	V3d_TypeOfOrientation_Zup_Bottom = V3d_Zneg
	V3d_TypeOfOrientation_Zup_Left = V3d_Xneg
	V3d_TypeOfOrientation_Zup_Right = V3d_Xpos
	V3d_TypeOfOrientation_Yup_AxoLeft = V3d_XnegYposZpos
	V3d_TypeOfOrientation_Yup_AxoRight = V3d_XposYposZpos
	V3d_TypeOfOrientation_Yup_Front = V3d_Zpos
	V3d_TypeOfOrientation_Yup_Back = V3d_Zneg
	V3d_TypeOfOrientation_Yup_Top = V3d_Ypos
	V3d_TypeOfOrientation_Yup_Bottom = V3d_Yneg
	V3d_TypeOfOrientation_Yup_Left = V3d_Xpos
	V3d_TypeOfOrientation_Yup_Right = V3d_Xneg
V3d_Xpos = V3d_TypeOfOrientation.V3d_Xpos
V3d_Ypos = V3d_TypeOfOrientation.V3d_Ypos
V3d_Zpos = V3d_TypeOfOrientation.V3d_Zpos
V3d_Xneg = V3d_TypeOfOrientation.V3d_Xneg
V3d_Yneg = V3d_TypeOfOrientation.V3d_Yneg
V3d_Zneg = V3d_TypeOfOrientation.V3d_Zneg
V3d_XposYpos = V3d_TypeOfOrientation.V3d_XposYpos
V3d_XposZpos = V3d_TypeOfOrientation.V3d_XposZpos
V3d_YposZpos = V3d_TypeOfOrientation.V3d_YposZpos
V3d_XnegYneg = V3d_TypeOfOrientation.V3d_XnegYneg
V3d_XnegYpos = V3d_TypeOfOrientation.V3d_XnegYpos
V3d_XnegZneg = V3d_TypeOfOrientation.V3d_XnegZneg
V3d_XnegZpos = V3d_TypeOfOrientation.V3d_XnegZpos
V3d_YnegZneg = V3d_TypeOfOrientation.V3d_YnegZneg
V3d_YnegZpos = V3d_TypeOfOrientation.V3d_YnegZpos
V3d_XposYneg = V3d_TypeOfOrientation.V3d_XposYneg
V3d_XposZneg = V3d_TypeOfOrientation.V3d_XposZneg
V3d_YposZneg = V3d_TypeOfOrientation.V3d_YposZneg
V3d_XposYposZpos = V3d_TypeOfOrientation.V3d_XposYposZpos
V3d_XposYnegZpos = V3d_TypeOfOrientation.V3d_XposYnegZpos
V3d_XposYposZneg = V3d_TypeOfOrientation.V3d_XposYposZneg
V3d_XnegYposZpos = V3d_TypeOfOrientation.V3d_XnegYposZpos
V3d_XposYnegZneg = V3d_TypeOfOrientation.V3d_XposYnegZneg
V3d_XnegYposZneg = V3d_TypeOfOrientation.V3d_XnegYposZneg
V3d_XnegYnegZpos = V3d_TypeOfOrientation.V3d_XnegYnegZpos
V3d_XnegYnegZneg = V3d_TypeOfOrientation.V3d_XnegYnegZneg
V3d_TypeOfOrientation_Zup_AxoLeft = V3d_TypeOfOrientation.V3d_TypeOfOrientation_Zup_AxoLeft
V3d_TypeOfOrientation_Zup_AxoRight = V3d_TypeOfOrientation.V3d_TypeOfOrientation_Zup_AxoRight
V3d_TypeOfOrientation_Zup_Front = V3d_TypeOfOrientation.V3d_TypeOfOrientation_Zup_Front
V3d_TypeOfOrientation_Zup_Back = V3d_TypeOfOrientation.V3d_TypeOfOrientation_Zup_Back
V3d_TypeOfOrientation_Zup_Top = V3d_TypeOfOrientation.V3d_TypeOfOrientation_Zup_Top
V3d_TypeOfOrientation_Zup_Bottom = V3d_TypeOfOrientation.V3d_TypeOfOrientation_Zup_Bottom
V3d_TypeOfOrientation_Zup_Left = V3d_TypeOfOrientation.V3d_TypeOfOrientation_Zup_Left
V3d_TypeOfOrientation_Zup_Right = V3d_TypeOfOrientation.V3d_TypeOfOrientation_Zup_Right
V3d_TypeOfOrientation_Yup_AxoLeft = V3d_TypeOfOrientation.V3d_TypeOfOrientation_Yup_AxoLeft
V3d_TypeOfOrientation_Yup_AxoRight = V3d_TypeOfOrientation.V3d_TypeOfOrientation_Yup_AxoRight
V3d_TypeOfOrientation_Yup_Front = V3d_TypeOfOrientation.V3d_TypeOfOrientation_Yup_Front
V3d_TypeOfOrientation_Yup_Back = V3d_TypeOfOrientation.V3d_TypeOfOrientation_Yup_Back
V3d_TypeOfOrientation_Yup_Top = V3d_TypeOfOrientation.V3d_TypeOfOrientation_Yup_Top
V3d_TypeOfOrientation_Yup_Bottom = V3d_TypeOfOrientation.V3d_TypeOfOrientation_Yup_Bottom
V3d_TypeOfOrientation_Yup_Left = V3d_TypeOfOrientation.V3d_TypeOfOrientation_Yup_Left
V3d_TypeOfOrientation_Yup_Right = V3d_TypeOfOrientation.V3d_TypeOfOrientation_Yup_Right

class V3d_TypeOfAxe(IntEnum):
	V3d_X = 0
	V3d_Y = 1
	V3d_Z = 2
V3d_X = V3d_TypeOfAxe.V3d_X
V3d_Y = V3d_TypeOfAxe.V3d_Y
V3d_Z = V3d_TypeOfAxe.V3d_Z

class V3d_TypeOfRepresentation(IntEnum):
	V3d_SIMPLE = 0
	V3d_COMPLETE = 1
	V3d_PARTIAL = 2
	V3d_SAMELAST = 3
V3d_SIMPLE = V3d_TypeOfRepresentation.V3d_SIMPLE
V3d_COMPLETE = V3d_TypeOfRepresentation.V3d_COMPLETE
V3d_PARTIAL = V3d_TypeOfRepresentation.V3d_PARTIAL
V3d_SAMELAST = V3d_TypeOfRepresentation.V3d_SAMELAST

class V3d_TypeOfBackfacingModel(IntEnum):
	V3d_TOBM_AUTOMATIC = 0
	V3d_TOBM_ALWAYS_DISPLAYED = 1
	V3d_TOBM_NEVER_DISPLAYED = 2
V3d_TOBM_AUTOMATIC = V3d_TypeOfBackfacingModel.V3d_TOBM_AUTOMATIC
V3d_TOBM_ALWAYS_DISPLAYED = V3d_TypeOfBackfacingModel.V3d_TOBM_ALWAYS_DISPLAYED
V3d_TOBM_NEVER_DISPLAYED = V3d_TypeOfBackfacingModel.V3d_TOBM_NEVER_DISPLAYED

class V3d_TypeOfPickLight(IntEnum):
	V3d_POSITIONLIGHT = 0
	V3d_SPACELIGHT = 1
	V3d_RADIUSTEXTLIGHT = 2
	V3d_ExtRADIUSLIGHT = 3
	V3d_IntRADIUSLIGHT = 4
	V3d_NOTHING = 5
V3d_POSITIONLIGHT = V3d_TypeOfPickLight.V3d_POSITIONLIGHT
V3d_SPACELIGHT = V3d_TypeOfPickLight.V3d_SPACELIGHT
V3d_RADIUSTEXTLIGHT = V3d_TypeOfPickLight.V3d_RADIUSTEXTLIGHT
V3d_ExtRADIUSLIGHT = V3d_TypeOfPickLight.V3d_ExtRADIUSLIGHT
V3d_IntRADIUSLIGHT = V3d_TypeOfPickLight.V3d_IntRADIUSLIGHT
V3d_NOTHING = V3d_TypeOfPickLight.V3d_NOTHING


def Handle_V3d_AmbientLight_Create() -> "opencascade::handle< V3d_AmbientLight >":
    return _V3d.Handle_V3d_AmbientLight_Create()

def Handle_V3d_AmbientLight_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< V3d_AmbientLight >":
    return _V3d.Handle_V3d_AmbientLight_DownCast(t)

def Handle_V3d_AmbientLight_IsNull(t: "opencascade::handle< V3d_AmbientLight > const &") -> "bool":
    return _V3d.Handle_V3d_AmbientLight_IsNull(t)

def Handle_V3d_CircularGrid_Create() -> "opencascade::handle< V3d_CircularGrid >":
    return _V3d.Handle_V3d_CircularGrid_Create()

def Handle_V3d_CircularGrid_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< V3d_CircularGrid >":
    return _V3d.Handle_V3d_CircularGrid_DownCast(t)

def Handle_V3d_CircularGrid_IsNull(t: "opencascade::handle< V3d_CircularGrid > const &") -> "bool":
    return _V3d.Handle_V3d_CircularGrid_IsNull(t)

def Handle_V3d_Plane_Create() -> "opencascade::handle< V3d_Plane >":
    return _V3d.Handle_V3d_Plane_Create()

def Handle_V3d_Plane_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< V3d_Plane >":
    return _V3d.Handle_V3d_Plane_DownCast(t)

def Handle_V3d_Plane_IsNull(t: "opencascade::handle< V3d_Plane > const &") -> "bool":
    return _V3d.Handle_V3d_Plane_IsNull(t)

def Handle_V3d_PositionLight_Create() -> "opencascade::handle< V3d_PositionLight >":
    return _V3d.Handle_V3d_PositionLight_Create()

def Handle_V3d_PositionLight_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< V3d_PositionLight >":
    return _V3d.Handle_V3d_PositionLight_DownCast(t)

def Handle_V3d_PositionLight_IsNull(t: "opencascade::handle< V3d_PositionLight > const &") -> "bool":
    return _V3d.Handle_V3d_PositionLight_IsNull(t)

def Handle_V3d_RectangularGrid_Create() -> "opencascade::handle< V3d_RectangularGrid >":
    return _V3d.Handle_V3d_RectangularGrid_Create()

def Handle_V3d_RectangularGrid_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< V3d_RectangularGrid >":
    return _V3d.Handle_V3d_RectangularGrid_DownCast(t)

def Handle_V3d_RectangularGrid_IsNull(t: "opencascade::handle< V3d_RectangularGrid > const &") -> "bool":
    return _V3d.Handle_V3d_RectangularGrid_IsNull(t)

def Handle_V3d_Trihedron_Create() -> "opencascade::handle< V3d_Trihedron >":
    return _V3d.Handle_V3d_Trihedron_Create()

def Handle_V3d_Trihedron_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< V3d_Trihedron >":
    return _V3d.Handle_V3d_Trihedron_DownCast(t)

def Handle_V3d_Trihedron_IsNull(t: "opencascade::handle< V3d_Trihedron > const &") -> "bool":
    return _V3d.Handle_V3d_Trihedron_IsNull(t)

def Handle_V3d_View_Create() -> "opencascade::handle< V3d_View >":
    return _V3d.Handle_V3d_View_Create()

def Handle_V3d_View_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< V3d_View >":
    return _V3d.Handle_V3d_View_DownCast(t)

def Handle_V3d_View_IsNull(t: "opencascade::handle< V3d_View > const &") -> "bool":
    return _V3d.Handle_V3d_View_IsNull(t)

def Handle_V3d_Viewer_Create() -> "opencascade::handle< V3d_Viewer >":
    return _V3d.Handle_V3d_Viewer_Create()

def Handle_V3d_Viewer_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< V3d_Viewer >":
    return _V3d.Handle_V3d_Viewer_DownCast(t)

def Handle_V3d_Viewer_IsNull(t: "opencascade::handle< V3d_Viewer > const &") -> "bool":
    return _V3d.Handle_V3d_Viewer_IsNull(t)

def Handle_V3d_DirectionalLight_Create() -> "opencascade::handle< V3d_DirectionalLight >":
    return _V3d.Handle_V3d_DirectionalLight_Create()

def Handle_V3d_DirectionalLight_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< V3d_DirectionalLight >":
    return _V3d.Handle_V3d_DirectionalLight_DownCast(t)

def Handle_V3d_DirectionalLight_IsNull(t: "opencascade::handle< V3d_DirectionalLight > const &") -> "bool":
    return _V3d.Handle_V3d_DirectionalLight_IsNull(t)

def Handle_V3d_PositionalLight_Create() -> "opencascade::handle< V3d_PositionalLight >":
    return _V3d.Handle_V3d_PositionalLight_Create()

def Handle_V3d_PositionalLight_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< V3d_PositionalLight >":
    return _V3d.Handle_V3d_PositionalLight_DownCast(t)

def Handle_V3d_PositionalLight_IsNull(t: "opencascade::handle< V3d_PositionalLight > const &") -> "bool":
    return _V3d.Handle_V3d_PositionalLight_IsNull(t)

def Handle_V3d_SpotLight_Create() -> "opencascade::handle< V3d_SpotLight >":
    return _V3d.Handle_V3d_SpotLight_Create()

def Handle_V3d_SpotLight_DownCast(t: "opencascade::handle< Standard_Transient > const &") -> "opencascade::handle< V3d_SpotLight >":
    return _V3d.Handle_V3d_SpotLight_DownCast(t)

def Handle_V3d_SpotLight_IsNull(t: "opencascade::handle< V3d_SpotLight > const &") -> "bool":
    return _V3d.Handle_V3d_SpotLight_IsNull(t)
class V3d_ListOfLight(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< Graphic3d_CLight > >::iterator":
        return _V3d.V3d_ListOfLight_begin(self)

    def end(self) -> "NCollection_List< opencascade::handle< Graphic3d_CLight > >::iterator":
        return _V3d.V3d_ListOfLight_end(self)

    def cbegin(self) -> "NCollection_List< opencascade::handle< Graphic3d_CLight > >::const_iterator":
        return _V3d.V3d_ListOfLight_cbegin(self)

    def cend(self) -> "NCollection_List< opencascade::handle< Graphic3d_CLight > >::const_iterator":
        return _V3d.V3d_ListOfLight_cend(self)

    def __init__(self, *args):
        _V3d.V3d_ListOfLight_swiginit(self, _V3d.new_V3d_ListOfLight(*args))

    def Size(self) -> "Standard_Integer":
        return _V3d.V3d_ListOfLight_Size(self)

    def Assign(self, theOther: "V3d_ListOfLight") -> "NCollection_List< opencascade::handle< Graphic3d_CLight > > &":
        return _V3d.V3d_ListOfLight_Assign(self, theOther)

    def Set(self, theOther: "V3d_ListOfLight") -> "NCollection_List< opencascade::handle< Graphic3d_CLight > > &":
        return _V3d.V3d_ListOfLight_Set(self, theOther)

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

    def First(self) -> "opencascade::handle< Graphic3d_CLight > const &":
        return _V3d.V3d_ListOfLight_First(self)

    def Last(self) -> "opencascade::handle< Graphic3d_CLight > const &":
        return _V3d.V3d_ListOfLight_Last(self)

    def Append(self, *args) -> "void":
        return _V3d.V3d_ListOfLight_Append(self, *args)

    def Prepend(self, *args) -> "void":
        return _V3d.V3d_ListOfLight_Prepend(self, *args)

    def RemoveFirst(self) -> "void":
        return _V3d.V3d_ListOfLight_RemoveFirst(self)

    def Remove(self, theIter: "NCollection_List< opencascade::handle< Graphic3d_CLight > >::Iterator &") -> "void":
        return _V3d.V3d_ListOfLight_Remove(self, theIter)

    def InsertBefore(self, *args) -> "void":
        return _V3d.V3d_ListOfLight_InsertBefore(self, *args)

    def InsertAfter(self, *args) -> "void":
        return _V3d.V3d_ListOfLight_InsertAfter(self, *args)

    def Reverse(self) -> "void":
        return _V3d.V3d_ListOfLight_Reverse(self)
    __swig_destroy__ = _V3d.delete_V3d_ListOfLight

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


# Register V3d_ListOfLight in _V3d:
_V3d.V3d_ListOfLight_swigregister(V3d_ListOfLight)

class V3d_ListOfView(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< V3d_View > >::iterator":
        return _V3d.V3d_ListOfView_begin(self)

    def end(self) -> "NCollection_List< opencascade::handle< V3d_View > >::iterator":
        return _V3d.V3d_ListOfView_end(self)

    def cbegin(self) -> "NCollection_List< opencascade::handle< V3d_View > >::const_iterator":
        return _V3d.V3d_ListOfView_cbegin(self)

    def cend(self) -> "NCollection_List< opencascade::handle< V3d_View > >::const_iterator":
        return _V3d.V3d_ListOfView_cend(self)

    def __init__(self, *args):
        _V3d.V3d_ListOfView_swiginit(self, _V3d.new_V3d_ListOfView(*args))

    def Size(self) -> "Standard_Integer":
        return _V3d.V3d_ListOfView_Size(self)

    def Assign(self, theOther: "V3d_ListOfView") -> "NCollection_List< opencascade::handle< V3d_View > > &":
        return _V3d.V3d_ListOfView_Assign(self, theOther)

    def Set(self, theOther: "V3d_ListOfView") -> "NCollection_List< opencascade::handle< V3d_View > > &":
        return _V3d.V3d_ListOfView_Set(self, theOther)

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

    def First(self) -> "opencascade::handle< V3d_View > const &":
        return _V3d.V3d_ListOfView_First(self)

    def Last(self) -> "opencascade::handle< V3d_View > const &":
        return _V3d.V3d_ListOfView_Last(self)

    def Append(self, *args) -> "void":
        return _V3d.V3d_ListOfView_Append(self, *args)

    def Prepend(self, *args) -> "void":
        return _V3d.V3d_ListOfView_Prepend(self, *args)

    def RemoveFirst(self) -> "void":
        return _V3d.V3d_ListOfView_RemoveFirst(self)

    def Remove(self, theIter: "NCollection_List< opencascade::handle< V3d_View > >::Iterator &") -> "void":
        return _V3d.V3d_ListOfView_Remove(self, theIter)

    def InsertBefore(self, *args) -> "void":
        return _V3d.V3d_ListOfView_InsertBefore(self, *args)

    def InsertAfter(self, *args) -> "void":
        return _V3d.V3d_ListOfView_InsertAfter(self, *args)

    def Reverse(self) -> "void":
        return _V3d.V3d_ListOfView_Reverse(self)
    __swig_destroy__ = _V3d.delete_V3d_ListOfView

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


# Register V3d_ListOfView in _V3d:
_V3d.V3d_ListOfView_swigregister(V3d_ListOfView)

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

    @staticmethod
    def ArrowOfRadius(*args) -> "void":
        r"""
        Compute the graphic structure of arrow. x0,y0,z0 : coordinate of the arrow. dx,dy,dz : direction of the arrow. alpha : angle of arrow. lng : length of arrow.

        Parameters
        ----------
        garrow: Graphic3d_Group
        X0: float
        Y0: float
        Z0: float
        DX: float
        DY: float
        DZ: float
        Alpha: float
        Lng: float

        Returns
        -------
        None

        """
        return _V3d.v3d_ArrowOfRadius(*args)

    @staticmethod
    def CircleInPlane(*args) -> "void":
        r"""
        Compute the graphic structure of circle. x0,y0,z0 : center of circle. vx,vy,vz : axis of circle. radius : radius of circle.

        Parameters
        ----------
        gcircle: Graphic3d_Group
        X0: float
        Y0: float
        Z0: float
        VX: float
        VY: float
        VZ: float
        Radius: float

        Returns
        -------
        None

        """
        return _V3d.v3d_CircleInPlane(*args)

    @staticmethod
    def GetProjAxis(*args) -> "gp_Dir":
        r"""
        Determines the orientation vector corresponding to the predefined orientation type.

        Parameters
        ----------
        theOrientation: V3d_TypeOfOrientation

        Returns
        -------
        gp_Dir

        """
        return _V3d.v3d_GetProjAxis(*args)

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

        Parameters
        ----------
        aPreviousView: V3d_View
        aNextView: V3d_View

        Returns
        -------
        None

        """
        return _V3d.v3d_SwitchViewsinWindow(*args)

    @staticmethod
    def TypeOfOrientationFromString(*args) -> "Standard_Boolean":
        r"""
        Returns the orientation type from the given string identifier (using case-insensitive comparison). @param thetypestring string identifier returns orientation type or v3d_typeoforientation if string identifier is invalid.

        Parameters
        ----------
        theTypeString: char *

        Returns
        -------
        V3d_TypeOfOrientation
        Determines the shape type from the given string identifier (using case-insensitive comparison). @param thetypestring string identifier @param thetype detected shape type returns true if string identifier is known.

        Parameters
        ----------
        theTypeString: char *
        theType: V3d_TypeOfOrientation

        Returns
        -------
        bool

        """
        return _V3d.v3d_TypeOfOrientationFromString(*args)

    @staticmethod
    def TypeOfOrientationToString(*args) -> "char const *":
        r"""
        Returns the string name for a given orientation type. @param thetype orientation type returns string identifier from the list xpos, ypos, zpos and others.

        Parameters
        ----------
        theType: V3d_TypeOfOrientation

        Returns
        -------
        char *

        """
        return _V3d.v3d_TypeOfOrientationToString(*args)

    __repr__ = _dumps_object


    def __init__(self):
        _V3d.v3d_swiginit(self, _V3d.new_v3d())
    __swig_destroy__ = _V3d.delete_v3d

# Register v3d in _V3d:
_V3d.v3d_swigregister(v3d)

def v3d_ArrowOfRadius(*args) -> "void":
    r"""
    Compute the graphic structure of arrow. x0,y0,z0 : coordinate of the arrow. dx,dy,dz : direction of the arrow. alpha : angle of arrow. lng : length of arrow.

    Parameters
    ----------
    garrow: Graphic3d_Group
    X0: float
    Y0: float
    Z0: float
    DX: float
    DY: float
    DZ: float
    Alpha: float
    Lng: float

    Returns
    -------
    None

    """
    return _V3d.v3d_ArrowOfRadius(*args)

def v3d_CircleInPlane(*args) -> "void":
    r"""
    Compute the graphic structure of circle. x0,y0,z0 : center of circle. vx,vy,vz : axis of circle. radius : radius of circle.

    Parameters
    ----------
    gcircle: Graphic3d_Group
    X0: float
    Y0: float
    Z0: float
    VX: float
    VY: float
    VZ: float
    Radius: float

    Returns
    -------
    None

    """
    return _V3d.v3d_CircleInPlane(*args)

def v3d_GetProjAxis(*args) -> "gp_Dir":
    r"""
    Determines the orientation vector corresponding to the predefined orientation type.

    Parameters
    ----------
    theOrientation: V3d_TypeOfOrientation

    Returns
    -------
    gp_Dir

    """
    return _V3d.v3d_GetProjAxis(*args)

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

    Parameters
    ----------
    aPreviousView: V3d_View
    aNextView: V3d_View

    Returns
    -------
    None

    """
    return _V3d.v3d_SwitchViewsinWindow(*args)

def v3d_TypeOfOrientationFromString(*args) -> "Standard_Boolean":
    r"""
    Returns the orientation type from the given string identifier (using case-insensitive comparison). @param thetypestring string identifier returns orientation type or v3d_typeoforientation if string identifier is invalid.

    Parameters
    ----------
    theTypeString: char *

    Returns
    -------
    V3d_TypeOfOrientation
    Determines the shape type from the given string identifier (using case-insensitive comparison). @param thetypestring string identifier @param thetype detected shape type returns true if string identifier is known.

    Parameters
    ----------
    theTypeString: char *
    theType: V3d_TypeOfOrientation

    Returns
    -------
    bool

    """
    return _V3d.v3d_TypeOfOrientationFromString(*args)

def v3d_TypeOfOrientationToString(*args) -> "char const *":
    r"""
    Returns the string name for a given orientation type. @param thetype orientation type returns string identifier from the list xpos, ypos, zpos and others.

    Parameters
    ----------
    theType: V3d_TypeOfOrientation

    Returns
    -------
    char *

    """
    return _V3d.v3d_TypeOfOrientationToString(*args)

class V3d_AmbientLight(OCC.Core.Graphic3d.Graphic3d_CLight):
    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 ambient light source in the viewer. the default color of this light source is white.

        Parameters
        ----------
        theColor: Quantity_Color,optional
        	default value is Quantity_NOC_WHITE

        Returns
        -------
        None

        """
        _V3d.V3d_AmbientLight_swiginit(self, _V3d.new_V3d_AmbientLight(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _V3d.delete_V3d_AmbientLight

# Register V3d_AmbientLight in _V3d:
_V3d.V3d_AmbientLight_swigregister(V3d_AmbientLight)

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

        Parameters
        ----------
        aViewer: V3d_ViewerPointer
        aColor: Quantity_Color
        aTenthColor: Quantity_Color

        Returns
        -------
        None

        """
        _V3d.V3d_CircularGrid_swiginit(self, _V3d.new_V3d_CircularGrid(*args))

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

        Returns
        -------
        None

        """
        return _V3d.V3d_CircularGrid_Display(self, *args)

    def DumpJsonToString(self, depth: "int"=-1) -> "std::string":
        r"""DumpJsonToString(V3d_CircularGrid self, int depth=-1) -> std::string"""
        return _V3d.V3d_CircularGrid_DumpJsonToString(self, depth)

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

        Returns
        -------
        None

        """
        return _V3d.V3d_CircularGrid_Erase(self, *args)

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

        Parameters
        ----------

        Returns
        -------
        Radius: float
        OffSet: float

        """
        return _V3d.V3d_CircularGrid_GraphicValues(self, *args)

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

        Returns
        -------
        bool

        """
        return _V3d.V3d_CircularGrid_IsDisplayed(self, *args)

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

        Parameters
        ----------
        aColor: Quantity_Color
        aTenthColor: Quantity_Color

        Returns
        -------
        None

        """
        return _V3d.V3d_CircularGrid_SetColors(self, *args)

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

        Parameters
        ----------
        Radius: float
        OffSet: float

        Returns
        -------
        None

        """
        return _V3d.V3d_CircularGrid_SetGraphicValues(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _V3d.delete_V3d_CircularGrid

# Register V3d_CircularGrid in _V3d:
_V3d.V3d_CircularGrid_swigregister(V3d_CircularGrid)

class V3d_ImageDumpOptions(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Width = property(_V3d.V3d_ImageDumpOptions_Width_get, _V3d.V3d_ImageDumpOptions_Width_set)
    Height = property(_V3d.V3d_ImageDumpOptions_Height_get, _V3d.V3d_ImageDumpOptions_Height_set)
    BufferType = property(_V3d.V3d_ImageDumpOptions_BufferType_get, _V3d.V3d_ImageDumpOptions_BufferType_set)
    StereoOptions = property(_V3d.V3d_ImageDumpOptions_StereoOptions_get, _V3d.V3d_ImageDumpOptions_StereoOptions_set)
    TileSize = property(_V3d.V3d_ImageDumpOptions_TileSize_get, _V3d.V3d_ImageDumpOptions_TileSize_set)
    ToAdjustAspect = property(_V3d.V3d_ImageDumpOptions_ToAdjustAspect_get, _V3d.V3d_ImageDumpOptions_ToAdjustAspect_set)

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

        Returns
        -------
        None

        """
        _V3d.V3d_ImageDumpOptions_swiginit(self, _V3d.new_V3d_ImageDumpOptions(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _V3d.delete_V3d_ImageDumpOptions

# Register V3d_ImageDumpOptions in _V3d:
_V3d.V3d_ImageDumpOptions_swigregister(V3d_ImageDumpOptions)

class V3d_Plane(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 clipping plane from plane coefficients.

        Parameters
        ----------
        theA: float,optional
        	default value is 0.0
        theB: float,optional
        	default value is 0.0
        theC: float,optional
        	default value is 1.0
        theD: float,optional
        	default value is 0.0

        Returns
        -------
        None

        """
        _V3d.V3d_Plane_swiginit(self, _V3d.new_V3d_Plane(*args))

    def ClipPlane(self, *args) -> "opencascade::handle< Graphic3d_ClipPlane > const &":
        r"""
        Use this method to pass clipping plane implementation for standard clipping workflow. returns clipping plane implementation handle.

        Returns
        -------
        opencascade::handle<Graphic3d_ClipPlane>

        """
        return _V3d.V3d_Plane_ClipPlane(self, *args)

    def Display(self, *args) -> "void":
        r"""
        Display the plane representation in the choosen view.

        Parameters
        ----------
        theView: V3d_View
        theColor: Quantity_Color,optional
        	default value is Quantity_NOC_GRAY

        Returns
        -------
        None

        """
        return _V3d.V3d_Plane_Display(self, *args)

    def Erase(self, *args) -> "void":
        r"""
        Erase the plane representation.

        Returns
        -------
        None

        """
        return _V3d.V3d_Plane_Erase(self, *args)

    def IsDisplayed(self, *args) -> "Standard_Boolean":
        r"""
        Returns true when the plane representation is displayed.

        Returns
        -------
        bool

        """
        return _V3d.V3d_Plane_IsDisplayed(self, *args)

    def Plane(self, *args) -> "void":
        r"""
        Returns the parameters of the plane.

        Parameters
        ----------

        Returns
        -------
        theA: float
        theB: float
        theC: float
        theD: float

        """
        return _V3d.V3d_Plane_Plane(self, *args)

    def SetPlane(self, *args) -> "void":
        r"""
        Change plane equation.

        Parameters
        ----------
        theA: float
        theB: float
        theC: float
        theD: float

        Returns
        -------
        None

        """
        return _V3d.V3d_Plane_SetPlane(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _V3d.delete_V3d_Plane

# Register V3d_Plane in _V3d:
_V3d.V3d_Plane_swigregister(V3d_Plane)

class V3d_PositionLight(OCC.Core.Graphic3d.Graphic3d_CLight):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

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


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


    __repr__ = _dumps_object

    __swig_destroy__ = _V3d.delete_V3d_PositionLight

# Register V3d_PositionLight in _V3d:
_V3d.V3d_PositionLight_swigregister(V3d_PositionLight)

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

        Parameters
        ----------
        aViewer: V3d_ViewerPointer
        aColor: Quantity_Color
        aTenthColor: Quantity_Color

        Returns
        -------
        None

        """
        _V3d.V3d_RectangularGrid_swiginit(self, _V3d.new_V3d_RectangularGrid(*args))

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

        Returns
        -------
        None

        """
        return _V3d.V3d_RectangularGrid_Display(self, *args)

    def DumpJsonToString(self, depth: "int"=-1) -> "std::string":
        r"""DumpJsonToString(V3d_RectangularGrid self, int depth=-1) -> std::string"""
        return _V3d.V3d_RectangularGrid_DumpJsonToString(self, depth)

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

        Returns
        -------
        None

        """
        return _V3d.V3d_RectangularGrid_Erase(self, *args)

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

        Parameters
        ----------

        Returns
        -------
        XSize: float
        YSize: float
        OffSet: float

        """
        return _V3d.V3d_RectangularGrid_GraphicValues(self, *args)

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

        Returns
        -------
        bool

        """
        return _V3d.V3d_RectangularGrid_IsDisplayed(self, *args)

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

        Parameters
        ----------
        aColor: Quantity_Color
        aTenthColor: Quantity_Color

        Returns
        -------
        None

        """
        return _V3d.V3d_RectangularGrid_SetColors(self, *args)

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

        Parameters
        ----------
        XSize: float
        YSize: float
        OffSet: float

        Returns
        -------
        None

        """
        return _V3d.V3d_RectangularGrid_SetGraphicValues(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _V3d.delete_V3d_RectangularGrid

# Register V3d_RectangularGrid in _V3d:
_V3d.V3d_RectangularGrid_swigregister(V3d_RectangularGrid)

class V3d_Trihedron(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 default trihedron.

        Returns
        -------
        None

        """
        _V3d.V3d_Trihedron_swiginit(self, _V3d.new_V3d_Trihedron(*args))

    def Display(self, *args) -> "void":
        r"""
        Display trihedron.

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

        Returns
        -------
        None

        """
        return _V3d.V3d_Trihedron_Display(self, *args)

    def DumpJsonToString(self, depth: "int"=-1) -> "std::string":
        r"""DumpJsonToString(V3d_Trihedron self, int depth=-1) -> std::string"""
        return _V3d.V3d_Trihedron_DumpJsonToString(self, depth)

    def Erase(self, *args) -> "void":
        r"""
        Erase trihedron.

        Returns
        -------
        None

        """
        return _V3d.V3d_Trihedron_Erase(self, *args)

    def SetArrowDiameter(self, *args) -> "void":
        r"""
        Setup the arrow diameter.

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

        Returns
        -------
        None

        """
        return _V3d.V3d_Trihedron_SetArrowDiameter(self, *args)

    def SetArrowsColor(self, *args) -> "void":
        r"""
        Setup colors of arrows.

        Parameters
        ----------
        theXColor: Quantity_Color
        theYColor: Quantity_Color
        theZColor: Quantity_Color

        Returns
        -------
        None

        """
        return _V3d.V3d_Trihedron_SetArrowsColor(self, *args)

    def SetLabelsColor(self, *args) -> "void":
        r"""
        Setup color of text labels.

        Parameters
        ----------
        theColor: Quantity_Color

        Returns
        -------
        None

        """
        return _V3d.V3d_Trihedron_SetLabelsColor(self, *args)

    def SetNbFacets(self, *args) -> "void":
        r"""
        Setup the number of facets for tessellation.

        Parameters
        ----------
        theNbFacets: int

        Returns
        -------
        None

        """
        return _V3d.V3d_Trihedron_SetNbFacets(self, *args)

    def SetPosition(self, *args) -> "void":
        r"""
        Setup the corner to draw the trihedron.

        Parameters
        ----------
        thePosition: Aspect_TypeOfTriedronPosition

        Returns
        -------
        None

        """
        return _V3d.V3d_Trihedron_SetPosition(self, *args)

    def SetScale(self, *args) -> "void":
        r"""
        Setup the scale factor.

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

        Returns
        -------
        None

        """
        return _V3d.V3d_Trihedron_SetScale(self, *args)

    def SetSizeRatio(self, *args) -> "void":
        r"""
        Setup the size ratio factor.

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

        Returns
        -------
        None

        """
        return _V3d.V3d_Trihedron_SetSizeRatio(self, *args)

    def SetWireframe(self, *args) -> "void":
        r"""
        Switch wireframe / shaded trihedron.

        Parameters
        ----------
        theAsWireframe: bool

        Returns
        -------
        None

        """
        return _V3d.V3d_Trihedron_SetWireframe(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _V3d.delete_V3d_Trihedron

# Register V3d_Trihedron in _V3d:
_V3d.V3d_Trihedron_swigregister(V3d_Trihedron)

class V3d_View(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"""
        Initializes the view.

        Parameters
        ----------
        theViewer: V3d_Viewer
        theType: V3d_TypeOfView,optional
        	default value is V3d_ORTHOGRAPHIC

        Returns
        -------
        None
        Initializes the view by copying.

        Parameters
        ----------
        theViewer: V3d_Viewer
        theView: V3d_View

        Returns
        -------
        None

        """
        _V3d.V3d_View_swiginit(self, _V3d.new_V3d_View(*args))

    def ActiveLight(self, *args) -> "opencascade::handle< V3d_Light > const &":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<V3d_Light>

        """
        return _V3d.V3d_View_ActiveLight(self, *args)

    def ActiveLightIterator(self, *args) -> "V3d_ListOfLightIterator":
        r"""
        Return iterator for defined lights.

        Returns
        -------
        V3d_ListOfLightIterator

        """
        return _V3d.V3d_View_ActiveLightIterator(self, *args)

    def ActiveLights(self, *args) -> "V3d_ListOfLight const &":
        r"""
        Returns a list of active lights.

        Returns
        -------
        V3d_ListOfLight

        """
        return _V3d.V3d_View_ActiveLights(self, *args)

    def AddClipPlane(self, *args) -> "void":
        r"""
        Adds clip plane to the view. the composition of clip planes truncates the rendering space to convex volume. number of supported clip planes can be consulted by planelimit method of associated graphic3d_graphicdriver. please be aware that the planes which exceed the limit are ignored during rendering. @param theplane [in] the clip plane to be added to view.

        Parameters
        ----------
        thePlane: Graphic3d_ClipPlane

        Returns
        -------
        None

        """
        return _V3d.V3d_View_AddClipPlane(self, *args)

    def At(self, *args) -> "void":
        r"""
        Returns the position of the view point.

        Parameters
        ----------

        Returns
        -------
        X: float
        Y: float
        Z: float

        """
        return _V3d.V3d_View_At(self, *args)

    def AutoZFit(self, *args) -> "void":
        r"""
        If automatic z-range fitting is turned on, adjusts z-min and z-max projection volume planes with call to zfitall.

        Returns
        -------
        None

        """
        return _V3d.V3d_View_AutoZFit(self, *args)

    def AutoZFitMode(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if automatic z-fit mode is turned on.

        Returns
        -------
        bool

        """
        return _V3d.V3d_View_AutoZFitMode(self, *args)

    def AutoZFitScaleFactor(self, *args) -> "Standard_Real":
        r"""
        Returns scale factor parameter of automatic z-fit mode.

        Returns
        -------
        float

        """
        return _V3d.V3d_View_AutoZFitScaleFactor(self, *args)

    def AxialScale(self, *args) -> "void":
        r"""
        Returns the current values of the anisotropic (axial) scale factors.

        Parameters
        ----------

        Returns
        -------
        Sx: float
        Sy: float
        Sz: float
        Performs anisotropic scaling of <self> view along the given <axis>. the scale factor is calculated on a basis of the mouse pointer displacement <dx,dy>. the calculated scale factor is then passed to setaxialscale(sx, sy, sz) method.

        Parameters
        ----------
        Dx: int
        Dy: int
        Axis: V3d_TypeOfAxe

        Returns
        -------
        None

        """
        return _V3d.V3d_View_AxialScale(self, *args)

    def BackFacingModel(self, *args) -> "V3d_TypeOfBackfacingModel":
        r"""
        Returns current state of the back faces display.

        Returns
        -------
        V3d_TypeOfBackfacingModel

        """
        return _V3d.V3d_View_BackFacingModel(self, *args)

    def BackgroundColor(self, *args) -> "Quantity_Color":
        r"""
        Returns the background color values of the view depending of the color type.

        Parameters
        ----------
        Type: Quantity_TypeOfColor

        Returns
        -------
        V1: float
        V2: float
        V3: float
        Returns the background color object of the view.

        Returns
        -------
        Quantity_Color

        """
        return _V3d.V3d_View_BackgroundColor(self, *args)

    def Camera(self, *args) -> "opencascade::handle< Graphic3d_Camera > const &":
        r"""
        Returns camera object of the view. returns: handle to camera object, or null if 3d view does not use the camera approach.

        Returns
        -------
        opencascade::handle<Graphic3d_Camera>

        """
        return _V3d.V3d_View_Camera(self, *args)

    def ChangeRenderingParams(self, *args) -> "Graphic3d_RenderingParams &":
        r"""
        Returns reference to current rendering parameters and effect settings.

        Returns
        -------
        Graphic3d_RenderingParams

        """
        return _V3d.V3d_View_ChangeRenderingParams(self, *args)

    def ClearPBREnvironment(self, *args) -> "void":
        r"""
        Fills pbr specular probe and irradiance map with white color. so that environment indirect illumination will be constant and will be fully controlled by ambient light sources. if pbr is unavailable it does nothing.

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

        Returns
        -------
        None

        """
        return _V3d.V3d_View_ClearPBREnvironment(self, *args)

    def ClipPlanes(self, *args) -> "opencascade::handle< Graphic3d_SequenceOfHClipPlane > const &":
        r"""
        Get clip planes. returns sequence clip planes that have been set for the view.

        Returns
        -------
        opencascade::handle<Graphic3d_SequenceOfHClipPlane>

        """
        return _V3d.V3d_View_ClipPlanes(self, *args)

    def ComputedMode(self, *args) -> "Standard_Boolean":
        r"""
        Returns the computed hlr mode state.

        Returns
        -------
        bool

        """
        return _V3d.V3d_View_ComputedMode(self, *args)

    def Convert(self, *args) -> "void":
        r"""
        Converts the pixel value to a value in the projection plane.

        Parameters
        ----------
        Vp: int

        Returns
        -------
        float
        Converts the point pixel into a point projected in the reference frame of the projection plane.

        Parameters
        ----------
        Xp: int
        Yp: int

        Returns
        -------
        Xv: float
        Yv: float
        Converts tha value of the projection plane into a pixel value.

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

        Returns
        -------
        int
        Converts the point defined in the reference frame of the projection plane into a point pixel.

        Parameters
        ----------
        Xv: float
        Yv: float

        Returns
        -------
        Xp: int
        Yp: int
        Converts the projected point into a point in the reference frame of the view corresponding to the intersection with the projection plane of the eye/view point vector.

        Parameters
        ----------
        Xp: int
        Yp: int

        Returns
        -------
        X: float
        Y: float
        Z: float
        Projects the point defined in the reference frame of the view into the projected point in the associated window.

        Parameters
        ----------
        X: float
        Y: float
        Z: float

        Returns
        -------
        Xp: int
        Yp: int

        """
        return _V3d.V3d_View_Convert(self, *args)

    def ConvertToGrid(self, *args) -> "void":
        r"""
        Converts the projected point into the nearest grid point in the reference frame of the view corresponding to the intersection with the projection plane of the eye/view point vector and display the grid marker. warning: when the grid is not active the result is identical to the above convert() method. how to use: 1) enable the grid echo display myviewer->setgridecho(standard_true); 2) when application receive a move event: 2.1) check if any object is detected if( myinteractivecontext->moveto(x,y) == ais_sod_nothing ) { 2.2) check if the grid is active if( myviewer->grid()->isactive() ) { 2.3) display the grid echo and gets the grid point myview->converttogrid(x,y,x,y,z); myview->viewer()->showgridecho (myview, graphic3d_vertex (x,y,z)); myview->redrawimmediate(); 2.4) else this is the standard case } else myview->convert(x,y,x,y,z);.

        Parameters
        ----------
        Xp: int
        Yp: int

        Returns
        -------
        Xg: float
        Yg: float
        Zg: float
        Converts the point into the nearest grid point and display the grid marker.

        Parameters
        ----------
        X: float
        Y: float
        Z: float

        Returns
        -------
        Xg: float
        Yg: float
        Zg: float

        """
        return _V3d.V3d_View_ConvertToGrid(self, *args)

    def ConvertWithProj(self, *args) -> "void":
        r"""
        Converts the projected point into a point in the reference frame of the view corresponding to the intersection with the projection plane of the eye/view point vector and returns the projection ray for further computations.

        Parameters
        ----------
        Xp: int
        Yp: int

        Returns
        -------
        X: float
        Y: float
        Z: float
        Vx: float
        Vy: float
        Vz: float

        """
        return _V3d.V3d_View_ConvertWithProj(self, *args)

    def DefaultCamera(self, *args) -> "opencascade::handle< Graphic3d_Camera > const &":
        r"""
        Return default camera.

        Returns
        -------
        opencascade::handle<Graphic3d_Camera>

        """
        return _V3d.V3d_View_DefaultCamera(self, *args)

    def Depth(self, *args) -> "Standard_Real":
        r"""
        Returns the distance between the eye and view point.

        Returns
        -------
        float

        """
        return _V3d.V3d_View_Depth(self, *args)

    def DepthFitAll(self, *args) -> "void":
        r"""
        Adjusts the viewing volume so as not to clip the displayed objects by front and back and back clipping planes. also sets depth value automatically depending on the calculated z size and aspect parameter. note than the original xy size of the view is not modified .

        Parameters
        ----------
        Aspect: float,optional
        	default value is 0.01
        Margin: float,optional
        	default value is 0.01

        Returns
        -------
        None

        """
        return _V3d.V3d_View_DepthFitAll(self, *args)

    def DiagnosticInformation(self, *args) -> "void":
        r"""
        Fill in the dictionary with diagnostic info. should be called within rendering thread. //! this api should be used only for user output or for creating automated reports. the format of returned information (e.g. key-value layout) is not part of this api and can be changed at any time. thus application should not parse returned information to weed out specific parameters. @param thedict destination map for information @param theflags defines the information to be retrieved.

        Parameters
        ----------
        theDict: TColStd_IndexedDataMapOfStringString
        theFlags: Graphic3d_DiagnosticInfo

        Returns
        -------
        None

        """
        return _V3d.V3d_View_DiagnosticInformation(self, *args)

    def DoMapping(self, *args) -> "void":
        r"""
        Must be called when the window supporting the view is mapped or unmapped.

        Returns
        -------
        None

        """
        return _V3d.V3d_View_DoMapping(self, *args)

    def Dump(self, *args) -> "Standard_Boolean":
        r"""
        Dumps the full contents of the view into the image file. this is an alias for topixmap() with image_alienpixmap. @param thefile destination image file (image format is determined by file extension like .png, .bmp, .jpg) @param thebuffertype buffer to dump returns false when the dump has failed.

        Parameters
        ----------
        theFile: char *
        theBufferType: Graphic3d_BufferType,optional
        	default value is Graphic3d_BT_RGB

        Returns
        -------
        bool

        """
        return _V3d.V3d_View_Dump(self, *args)

    def DumpJsonToString(self, depth: "int"=-1) -> "std::string":
        r"""DumpJsonToString(V3d_View self, int depth=-1) -> std::string"""
        return _V3d.V3d_View_DumpJsonToString(self, depth)

    def Eye(self, *args) -> "void":
        r"""
        Returns the position of the eye.

        Parameters
        ----------

        Returns
        -------
        X: float
        Y: float
        Z: float

        """
        return _V3d.V3d_View_Eye(self, *args)

    def FitAll(self, *args) -> "void":
        r"""
        Adjust view parameters to fit the displayed scene, respecting height / width ratio. the z clipping range (depth range) is fitted if autozfit flag is true. throws program error exception if margin coefficient is < 0 or >= 1. updates the view. @param themargin [in] the margin coefficient for view borders. @param thetoupdate [in] flag to perform view update.

        Parameters
        ----------
        theMargin: float,optional
        	default value is 0.01
        theToUpdate: bool,optional
        	default value is Standard_True

        Returns
        -------
        None
        Adjust view parameters to fit the displayed scene, respecting height / width ratio according to the custom bounding box given. throws program error exception if margin coefficient is < 0 or >= 1. updates the view. @param thebox [in] the custom bounding box to fit. @param themargin [in] the margin coefficient for view borders. @param thetoupdate [in] flag to perform view update.

        Parameters
        ----------
        theBox: Bnd_Box
        theMargin: float,optional
        	default value is 0.01
        theToUpdate: bool,optional
        	default value is Standard_True

        Returns
        -------
        None
        Centers the defined projection window so that it occupies the maximum space while respecting the initial height/width ratio. note than the original z size of the view is not modified .

        Parameters
        ----------
        theMinXv: float
        theMinYv: float
        theMaxXv: float
        theMaxYv: float

        Returns
        -------
        None

        """
        return _V3d.V3d_View_FitAll(self, *args)

    def FitMinMax(self, *args) -> "Standard_Boolean":
        r"""
        Transform camera eye, center and scale to fit in the passed bounding box specified in wcs. @param thecamera [in] the camera @param thebox [in] the bounding box @param themargin [in] the margin coefficient for view borders @param theresolution [in] the minimum size of projection of bounding box in xv or yv direction when it considered to be a thin plane or point (without a volume);  in this case only the center of camera is adjusted @param thetoenlargeifline [in] when true - in cases when the whole bounding box projected into thin line going along z-axis of screen,  the view plane is enlarged such thatwe see the whole line on rotation, otherwise only the center of camera is adjusted. returns true if the fit all operation can be done.

        Parameters
        ----------
        theCamera: Graphic3d_Camera
        theBox: Bnd_Box
        theMargin: float
        theResolution: float,optional
        	default value is 0.0
        theToEnlargeIfLine: bool,optional
        	default value is Standard_True

        Returns
        -------
        bool

        """
        return _V3d.V3d_View_FitMinMax(self, *args)

    def FocalReferencePoint(self, *args) -> "void":
        r"""
        Returns the position of point which emanating the projections.

        Parameters
        ----------

        Returns
        -------
        X: float
        Y: float
        Z: float

        """
        return _V3d.V3d_View_FocalReferencePoint(self, *args)

    def Focale(self, *args) -> "Standard_Real":
        r"""
        Returns the view plane distance for perspective views.

        Returns
        -------
        float

        """
        return _V3d.V3d_View_Focale(self, *args)

    def GeneratePBREnvironment(self, *args) -> "void":
        r"""
        Generates pbr specular probe and irradiance map in order to provide environment indirect illumination in pbr shading model (image based lighting). the source of environment data is background cubemap. if pbr is unavailable it does nothing. if pbr is available but there is no cubemap being set to background it clears all ibl maps (see 'clearpbrenvironment').

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

        Returns
        -------
        None

        """
        return _V3d.V3d_View_GeneratePBREnvironment(self, *args)

    def GetGraduatedTrihedron(self, *args) -> "Graphic3d_GraduatedTrihedron const &":
        r"""
        Returns data of a graduated trihedron.

        Returns
        -------
        Graphic3d_GraduatedTrihedron

        """
        return _V3d.V3d_View_GetGraduatedTrihedron(self, *args)

    def GradientBackground(self, *args) -> "Aspect_GradientBackground":
        r"""
        Returns the gradient background of the view.

        Returns
        -------
        Aspect_GradientBackground

        """
        return _V3d.V3d_View_GradientBackground(self, *args)

    def GradientBackgroundColors(self, *args) -> "void":
        r"""
        Returns the gradient background colors of the view.

        Parameters
        ----------
        theColor1: Quantity_Color
        theColor2: Quantity_Color

        Returns
        -------
        None

        """
        return _V3d.V3d_View_GradientBackgroundColors(self, *args)

    def GraduatedTrihedronDisplay(self, *args) -> "void":
        r"""
        Displays a graduated trihedron.

        Parameters
        ----------
        theTrihedronData: Graphic3d_GraduatedTrihedron

        Returns
        -------
        None

        """
        return _V3d.V3d_View_GraduatedTrihedronDisplay(self, *args)

    def GraduatedTrihedronErase(self, *args) -> "void":
        r"""
        Erases a graduated trihedron from the view.

        Returns
        -------
        None

        """
        return _V3d.V3d_View_GraduatedTrihedronErase(self, *args)

    def GravityPoint(self, *args) -> "gp_Pnt":
        r"""
        Returns the objects number and the gravity center of all viewable points in the view.

        Returns
        -------
        gp_Pnt

        """
        return _V3d.V3d_View_GravityPoint(self, *args)

    def IfMoreLights(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if one light more can be activated in this view.

        Returns
        -------
        bool

        """
        return _V3d.V3d_View_IfMoreLights(self, *args)

    def IfWindow(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if myview is associated with a window .

        Returns
        -------
        bool

        """
        return _V3d.V3d_View_IfWindow(self, *args)

    def InitActiveLights(self, *args) -> "void":
        r"""
        Initializes an iteration on the active lights.

        Returns
        -------
        None

        """
        return _V3d.V3d_View_InitActiveLights(self, *args)

    def Invalidate(self, *args) -> "void":
        r"""
        Invalidates view content but does not redraw it.

        Returns
        -------
        None

        """
        return _V3d.V3d_View_Invalidate(self, *args)

    def InvalidateImmediate(self, *args) -> "void":
        r"""
        Invalidates view content within immediate layer but does not redraw it.

        Returns
        -------
        None

        """
        return _V3d.V3d_View_InvalidateImmediate(self, *args)

    def IsActiveLight(self, *args) -> "Standard_Boolean":
        r"""
        Returns true when the light is active in this view.

        Parameters
        ----------
        theLight: V3d_Light

        Returns
        -------
        bool

        """
        return _V3d.V3d_View_IsActiveLight(self, *args)

    def IsCullingEnabled(self, *args) -> "Standard_Boolean":
        r"""
        Returns flag value of objects culling mechanism.

        Returns
        -------
        bool

        """
        return _V3d.V3d_View_IsCullingEnabled(self, *args)

    def IsEmpty(self, *args) -> "Standard_Boolean":
        r"""
        Returns the status of the view regarding the displayed structures inside returns true is the view is empty.

        Returns
        -------
        bool

        """
        return _V3d.V3d_View_IsEmpty(self, *args)

    def IsInvalidated(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if cached view content has been invalidated.

        Returns
        -------
        bool

        """
        return _V3d.V3d_View_IsInvalidated(self, *args)

    def IsInvalidatedImmediate(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if immediate layer content has been invalidated.

        Returns
        -------
        bool

        """
        return _V3d.V3d_View_IsInvalidatedImmediate(self, *args)

    def LightLimit(self, *args) -> "Standard_Integer":
        r"""
        Returns the max number of light associated to the view.

        Returns
        -------
        int

        """
        return _V3d.V3d_View_LightLimit(self, *args)

    def MoreActiveLights(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if there are more active light(s) to return.

        Returns
        -------
        bool

        """
        return _V3d.V3d_View_MoreActiveLights(self, *args)

    def Move(self, *args) -> "void":
        r"""
        Movement of the eye parallel to the coordinate system of reference of the screen a distance relative to the initial position expressed by start = standard_true.

        Parameters
        ----------
        Dx: float
        Dy: float
        Dz: float
        Start: bool,optional
        	default value is Standard_True

        Returns
        -------
        None
        Movement of the eye parallel to one of the axes of the coordinate system of reference of the view a distance relative to the initial position expressed by start = standard_true.

        Parameters
        ----------
        Axe: V3d_TypeOfAxe
        Length: float
        Start: bool,optional
        	default value is Standard_True

        Returns
        -------
        None
        Movement of the eye parllel to the current axis a distance relative to the initial position expressed by start = standard_true.

        Parameters
        ----------
        Length: float
        Start: bool,optional
        	default value is Standard_True

        Returns
        -------
        None

        """
        return _V3d.V3d_View_Move(self, *args)

    def MustBeResized(self, *args) -> "void":
        r"""
        Must be called when the window supporting the view changes size. if the view is not mapped on a window. warning: the view is centered and resized to preserve the height/width ratio of the window.

        Returns
        -------
        None

        """
        return _V3d.V3d_View_MustBeResized(self, *args)

    def NextActiveLights(self, *args) -> "void":
        r"""
        Go to the next active light (if there is not, activelight will raise an exception).

        Returns
        -------
        None

        """
        return _V3d.V3d_View_NextActiveLights(self, *args)

    def Pan(self, *args) -> "void":
        r"""
        Translates the center of the view along 'x' and 'y' axes of view projection. can be used to perform interactive panning operation. in that case the dxp, dxp parameters specify panning relative to the point where the operation is started. @param thedxp [in] the relative panning on 'x' axis of view projection, in pixels. @param thedyp [in] the relative panning on 'y' axis of view projection, in pixels. @param thezoomfactor [in] the zooming factor. @param thetostart [in] pass true when starting panning to remember view state prior to panning for relative arguments. passing 0 for relative panning parameter should return view panning to initial state. performs update of view.

        Parameters
        ----------
        theDXp: int
        theDYp: int
        theZoomFactor: float,optional
        	default value is 1
        theToStart: bool,optional
        	default value is Standard_True

        Returns
        -------
        None

        """
        return _V3d.V3d_View_Pan(self, *args)

    def Panning(self, *args) -> "void":
        r"""
        Translates the center of the view along 'x' and 'y' axes of view projection. can be used to perform interactive panning operation. in that case the dxv, dxy parameters specify panning relative to the point where the operation is started. @param thedxv [in] the relative panning on 'x' axis of view projection, in view space coordinates. @param thedyv [in] the relative panning on 'y' axis of view projection, in view space coordinates. @param thezoomfactor [in] the zooming factor. @param thetostart [in] pass true when starting panning to remember view state prior to panning for relative arguments. if panning is started, passing {0, 0} for {thedxv, thedyv} will return view to initial state. performs update of view.

        Parameters
        ----------
        theDXv: float
        theDYv: float
        theZoomFactor: float,optional
        	default value is 1
        theToStart: bool,optional
        	default value is Standard_True

        Returns
        -------
        None

        """
        return _V3d.V3d_View_Panning(self, *args)

    def Place(self, *args) -> "void":
        r"""
        Places the point of the view corresponding at the pixel position x,y at the center of the window and updates the view.

        Parameters
        ----------
        theXp: int
        theYp: int
        theZoomFactor: float,optional
        	default value is 1

        Returns
        -------
        None

        """
        return _V3d.V3d_View_Place(self, *args)

    def PlaneLimit(self, *args) -> "Standard_Integer":
        r"""
        Returns the max number of clipping planes associated to the view.

        Returns
        -------
        int

        """
        return _V3d.V3d_View_PlaneLimit(self, *args)

    def Proj(self, *args) -> "void":
        r"""
        Returns the projection vector.

        Parameters
        ----------

        Returns
        -------
        Vx: float
        Vy: float
        Vz: float

        """
        return _V3d.V3d_View_Proj(self, *args)

    def ProjReferenceAxe(self, *args) -> "void":
        r"""
        Returns the coordinate of the point (xpix,ypix) in the view (xp,yp,zp), and the projection vector of the view passing by the point (for perspectiveview).

        Parameters
        ----------
        Xpix: int
        Ypix: int

        Returns
        -------
        XP: float
        YP: float
        ZP: float
        VX: float
        VY: float
        VZ: float

        """
        return _V3d.V3d_View_ProjReferenceAxe(self, *args)

    def Project(self, *args) -> "void":
        r"""
        Converts the point defined in the user space of the view to the projection plane at the depth relative to thez.

        Parameters
        ----------
        theX: float
        theY: float
        theZ: float

        Returns
        -------
        theXp: float
        theYp: float
        Converts the point defined in the user space of the view to the projection plane at the depth relative to thez.

        Parameters
        ----------
        theX: float
        theY: float
        theZ: float

        Returns
        -------
        theXp: float
        theYp: float
        theZp: float

        """
        return _V3d.V3d_View_Project(self, *args)

    def Redraw(self, *args) -> "void":
        r"""
        Redisplays the view even if there has not been any modification. must be called if the view is shown. (ex: deiconification ) .

        Returns
        -------
        None

        """
        return _V3d.V3d_View_Redraw(self, *args)

    def RedrawImmediate(self, *args) -> "void":
        r"""
        Updates layer of immediate presentations.

        Returns
        -------
        None

        """
        return _V3d.V3d_View_RedrawImmediate(self, *args)

    def Remove(self, *args) -> "void":
        r"""
        Destroys the view.

        Returns
        -------
        None

        """
        return _V3d.V3d_View_Remove(self, *args)

    def RemoveClipPlane(self, *args) -> "void":
        r"""
        Removes clip plane from the view. @param theplane [in] the clip plane to be removed from view.

        Parameters
        ----------
        thePlane: Graphic3d_ClipPlane

        Returns
        -------
        None

        """
        return _V3d.V3d_View_RemoveClipPlane(self, *args)

    def RenderingParams(self, *args) -> "Graphic3d_RenderingParams const &":
        r"""
        Returns current rendering parameters and effect settings. by default it returns default parameters of current viewer. to define view-specific settings use method v3d_view::changerenderingparams(). @sa v3d_viewer::defaultrenderingparams().

        Returns
        -------
        Graphic3d_RenderingParams

        """
        return _V3d.V3d_View_RenderingParams(self, *args)

    def Reset(self, *args) -> "void":
        r"""
        Resets the centering and the orientation of the view.

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

        Returns
        -------
        None

        """
        return _V3d.V3d_View_Reset(self, *args)

    def ResetViewMapping(self, *args) -> "void":
        r"""
        Resets the centering of the view. updates the view.

        Returns
        -------
        None

        """
        return _V3d.V3d_View_ResetViewMapping(self, *args)

    def ResetViewOrientation(self, *args) -> "void":
        r"""
        Resets the orientation of the view. updates the view.

        Returns
        -------
        None

        """
        return _V3d.V3d_View_ResetViewOrientation(self, *args)

    def Rotate(self, *args) -> "void":
        r"""
        Rotates the eye about the coordinate system of reference of the screen for which the origin is the view point of the projection, with a relative angular value in radians with respect to the initial position expressed by start = standard_true warning! raises badvalue from v3d if the eye, the view point, or the high point are aligned or confused.

        Parameters
        ----------
        Ax: float
        Ay: float
        Az: float
        Start: bool,optional
        	default value is Standard_True

        Returns
        -------
        None
        Rotates the eye about the coordinate system of reference of the screen for which the origin is gravity point {x,y,z}, with a relative angular value in radians with respect to the initial position expressed by start = standard_true if the eye, the view point, or the high point are aligned or confused.

        Parameters
        ----------
        Ax: float
        Ay: float
        Az: float
        X: float
        Y: float
        Z: float
        Start: bool,optional
        	default value is Standard_True

        Returns
        -------
        None
        Rotates the eye about one of the coordinate axes of of the view for which the origin is the gravity point{x,y,z} with an relative angular value in radians with respect to the initial position expressed by start = standard_true.

        Parameters
        ----------
        Axe: V3d_TypeOfAxe
        Angle: float
        X: float
        Y: float
        Z: float
        Start: bool,optional
        	default value is Standard_True

        Returns
        -------
        None
        Rotates the eye about one of the coordinate axes of of the view for which the origin is the view point of the projection with an relative angular value in radians with respect to the initial position expressed by start = standard_true.

        Parameters
        ----------
        Axe: V3d_TypeOfAxe
        Angle: float
        Start: bool,optional
        	default value is Standard_True

        Returns
        -------
        None
        Rotates the eye around the current axis a relative angular value in radians with respect to the initial position expressed by start = standard_true.

        Parameters
        ----------
        Angle: float
        Start: bool,optional
        	default value is Standard_True

        Returns
        -------
        None

        """
        return _V3d.V3d_View_Rotate(self, *args)

    def Rotation(self, *args) -> "void":
        r"""
        Continues the rotation of the view with an angle computed from the last and new mouse position <x,y>.

        Parameters
        ----------
        X: int
        Y: int

        Returns
        -------
        None

        """
        return _V3d.V3d_View_Rotation(self, *args)

    def Scale(self, *args) -> "Standard_Real":
        r"""
        Returns the current value of the zoom expressed with respect to setviewmappingdefault().

        Returns
        -------
        float

        """
        return _V3d.V3d_View_Scale(self, *args)

    def SetAt(self, *args) -> "void":
        r"""
        Defines the position of the view point.

        Parameters
        ----------
        X: float
        Y: float
        Z: float

        Returns
        -------
        None

        """
        return _V3d.V3d_View_SetAt(self, *args)

    def SetAutoZFitMode(self, *args) -> "void":
        r"""
        Sets the automatic z-fit mode and its parameters. the auto z-fit has extra parameters which can controlled from application level to ensure that the size of viewing volume will be sufficiently large to cover the depth of unmanaged objects, for example, transformation persistent ones. @param thescalefactor [in] the scale factor for z-range. the range between z-min, z-max projection volume planes evaluated by z fitting method will be scaled using this coefficient. program error exception is thrown if negative or zero value is passed.

        Parameters
        ----------
        theIsOn: bool
        theScaleFactor: float,optional
        	default value is 1.0

        Returns
        -------
        None

        """
        return _V3d.V3d_View_SetAutoZFitMode(self, *args)

    def SetAxialScale(self, *args) -> "void":
        r"""
        Sets anisotropic (axial) scale factors <sx>, <sy>, <sz> for view <self>. anisotropic scaling operation is performed through multiplying the current view orientation matrix by a scaling matrix: || sx 0 0 0 || || 0 sy 0 0 || || 0 0 sz 0 || || 0 0 0 1 || updates the view.

        Parameters
        ----------
        Sx: float
        Sy: float
        Sz: float

        Returns
        -------
        None

        """
        return _V3d.V3d_View_SetAxialScale(self, *args)

    def SetAxis(self, *args) -> "void":
        r"""
        Definition of an axis from its origin and its orientation . this will be the current axis for rotations and movements. warning! raises badvalue from v3d if the vector normal is null. .

        Parameters
        ----------
        X: float
        Y: float
        Z: float
        Vx: float
        Vy: float
        Vz: float

        Returns
        -------
        None

        """
        return _V3d.V3d_View_SetAxis(self, *args)

    def SetBackFacingModel(self, *args) -> "void":
        r"""
        Manages display of the back faces when <amodel> is tobm_automatic the object backfaces are displayed only for surface objects and never displayed for solid objects. this was the previous mode. <amodel> is tobm_always_displayed the object backfaces are always displayed both for surfaces or solids. <amodel> is tobm_never_displayed the object backfaces are never displayed.

        Parameters
        ----------
        theModel: V3d_TypeOfBackfacingModel,optional
        	default value is V3d_TOBM_AUTOMATIC

        Returns
        -------
        None

        """
        return _V3d.V3d_View_SetBackFacingModel(self, *args)

    def SetBackgroundColor(self, *args) -> "void":
        r"""
        Defines the background color of the view by the color definition type and the three corresponding values.

        Parameters
        ----------
        theType: Quantity_TypeOfColor
        theV1: float
        theV2: float
        theV3: float

        Returns
        -------
        None
        Defines the background color of the view.

        Parameters
        ----------
        theColor: Quantity_Color

        Returns
        -------
        None

        """
        return _V3d.V3d_View_SetBackgroundColor(self, *args)

    def SetBackgroundCubeMap(self, *args) -> "void":
        r"""
        Sets environment cubemap as background. @param thecubemap cubemap source to be set as background @param thetoupdatepbrenv defines whether ibl maps will be generated or not (see 'generatepbrenvironment').

        Parameters
        ----------
        theCubeMap: Graphic3d_CubeMap
        theToUpdatePBREnv: bool,optional
        	default value is Standard_True
        theToUpdate: bool,optional
        	default value is Standard_False

        Returns
        -------
        None

        """
        return _V3d.V3d_View_SetBackgroundCubeMap(self, *args)

    def SetBackgroundImage(self, *args) -> "void":
        r"""
        Defines the background texture of the view by supplying the texture image file name and fill method (centered by default).

        Parameters
        ----------
        theFileName: char *
        theFillStyle: Aspect_FillMethod,optional
        	default value is Aspect_FM_CENTERED
        theToUpdate: bool,optional
        	default value is Standard_False

        Returns
        -------
        None
        Defines the background texture of the view by supplying the texture and fill method (centered by default).

        Parameters
        ----------
        theTexture: Graphic3d_Texture2D
        theFillStyle: Aspect_FillMethod,optional
        	default value is Aspect_FM_CENTERED
        theToUpdate: bool,optional
        	default value is Standard_False

        Returns
        -------
        None

        """
        return _V3d.V3d_View_SetBackgroundImage(self, *args)

    def SetBgGradientColors(self, *args) -> "void":
        r"""
        Defines the gradient background colors of the view by supplying the colors and the fill method (horizontal by default).

        Parameters
        ----------
        theColor1: Quantity_Color
        theColor2: Quantity_Color
        theFillStyle: Aspect_GradientFillMethod,optional
        	default value is Aspect_GFM_HOR
        theToUpdate: bool,optional
        	default value is Standard_False

        Returns
        -------
        None

        """
        return _V3d.V3d_View_SetBgGradientColors(self, *args)

    def SetBgGradientStyle(self, *args) -> "void":
        r"""
        Defines the gradient background fill method of the view.

        Parameters
        ----------
        theMethod: Aspect_GradientFillMethod,optional
        	default value is Aspect_GFM_HOR
        theToUpdate: bool,optional
        	default value is Standard_False

        Returns
        -------
        None

        """
        return _V3d.V3d_View_SetBgGradientStyle(self, *args)

    def SetBgImageStyle(self, *args) -> "void":
        r"""
        Defines the textured background fill method of the view.

        Parameters
        ----------
        theFillStyle: Aspect_FillMethod
        theToUpdate: bool,optional
        	default value is Standard_False

        Returns
        -------
        None

        """
        return _V3d.V3d_View_SetBgImageStyle(self, *args)

    def SetCamera(self, *args) -> "void":
        r"""
        Change camera used by view.

        Parameters
        ----------
        theCamera: Graphic3d_Camera

        Returns
        -------
        None

        """
        return _V3d.V3d_View_SetCamera(self, *args)

    def SetCenter(self, *args) -> "void":
        r"""
        Relocates center of screen to the point, determined by {xp, yp} pixel coordinates relative to the bottom-left corner of screen. to calculate pixel coordinates for any point from world coordinate space, it can be projected using 'project'. @param thexp [in] the x coordinate. @param theyp [in] the y coordinate.

        Parameters
        ----------
        theXp: int
        theYp: int

        Returns
        -------
        None

        """
        return _V3d.V3d_View_SetCenter(self, *args)

    def SetClipPlanes(self, *args) -> "void":
        r"""
        Sets sequence of clip planes to the view. the planes that have been set before are removed from the view. the composition of clip planes truncates the rendering space to convex volume. number of supported clip planes can be consulted by inquireplanelimit method of graphic3d_graphicdriver. please be aware that the planes that exceed the limit are ignored during rendering. @param theplanes [in] the clip planes to set.

        Parameters
        ----------
        thePlanes: Graphic3d_SequenceOfHClipPlane

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

        Parameters
        ----------
        thePlanes: Graphic3d_SequenceOfHClipPlane

        Returns
        -------
        None

        """
        return _V3d.V3d_View_SetClipPlanes(self, *args)

    def SetComputedMode(self, *args) -> "void":
        r"""
        Switches computed hlr mode in the view.

        Parameters
        ----------
        theMode: bool

        Returns
        -------
        None

        """
        return _V3d.V3d_View_SetComputedMode(self, *args)

    def SetDepth(self, *args) -> "void":
        r"""
        Defines the depth of the eye from the view point without update the projection .

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

        Returns
        -------
        None

        """
        return _V3d.V3d_View_SetDepth(self, *args)

    def SetEye(self, *args) -> "void":
        r"""
        Defines the position of the eye..

        Parameters
        ----------
        X: float
        Y: float
        Z: float

        Returns
        -------
        None

        """
        return _V3d.V3d_View_SetEye(self, *args)

    def SetFocale(self, *args) -> "void":
        r"""
        Change view plane distance for perspective views warning! raises typemismatch from standard if the view is not a perspective view.

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

        Returns
        -------
        None

        """
        return _V3d.V3d_View_SetFocale(self, *args)

    def SetFront(self, *args) -> "void":
        r"""
        Modify the projection of the view perpendicularly to the privileged plane of the viewer.

        Returns
        -------
        None

        """
        return _V3d.V3d_View_SetFront(self, *args)

    def SetFrustumCulling(self, *args) -> "void":
        r"""
        Turn on/off automatic culling of objects outside frustum (on by default).

        Parameters
        ----------
        theMode: bool

        Returns
        -------
        None

        """
        return _V3d.V3d_View_SetFrustumCulling(self, *args)

    def SetGrid(self, *args) -> "void":
        r"""
        Defines or updates the definition of the grid in <self>.

        Parameters
        ----------
        aPlane: gp_Ax3
        aGrid: Aspect_Grid

        Returns
        -------
        None

        """
        return _V3d.V3d_View_SetGrid(self, *args)

    def SetGridActivity(self, *args) -> "void":
        r"""
        Defines or updates the activity of the grid in <self>.

        Parameters
        ----------
        aFlag: bool

        Returns
        -------
        None

        """
        return _V3d.V3d_View_SetGridActivity(self, *args)

    def SetImmediateUpdate(self, *args) -> "Standard_Boolean":
        r"""
        Sets the immediate update mode and returns the previous one.

        Parameters
        ----------
        theImmediateUpdate: bool

        Returns
        -------
        bool

        """
        return _V3d.V3d_View_SetImmediateUpdate(self, *args)

    def SetLightOff(self, *args) -> "void":
        r"""
        Deactivate thelight in this view.

        Parameters
        ----------
        theLight: V3d_Light

        Returns
        -------
        None
        Deactivate all the lights defined in this view.

        Returns
        -------
        None

        """
        return _V3d.V3d_View_SetLightOff(self, *args)

    def SetLightOn(self, *args) -> "void":
        r"""
        Activates thelight in the view.

        Parameters
        ----------
        theLight: V3d_Light

        Returns
        -------
        None
        Activates all the lights defined in this view.

        Returns
        -------
        None

        """
        return _V3d.V3d_View_SetLightOn(self, *args)

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

        Parameters
        ----------
        theWindow: Aspect_Window
        thePreviousView: V3d_View
        theX1: int
        theY1: int
        theX2: int
        theY2: int

        Returns
        -------
        None

        """
        return _V3d.V3d_View_SetMagnify(self, *args)

    def SetProj(self, *args) -> "void":
        r"""
        Defines the orientation of the projection.

        Parameters
        ----------
        Vx: float
        Vy: float
        Vz: float

        Returns
        -------
        None
        Defines the orientation of the projection . @param theorientation camera direction @param theisyup flag indicating y-up (true) or z-up (false) convention.

        Parameters
        ----------
        theOrientation: V3d_TypeOfOrientation
        theIsYup: bool,optional
        	default value is Standard_False

        Returns
        -------
        None

        """
        return _V3d.V3d_View_SetProj(self, *args)

    def SetScale(self, *args) -> "void":
        r"""
        Zooms the view by a factor relative to the value initialised by setviewmappingdefault(). updates the view.

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

        Returns
        -------
        None

        """
        return _V3d.V3d_View_SetScale(self, *args)

    def SetShadingModel(self, *args) -> "void":
        r"""
        Defines the shading model for the visualization. various models are available.

        Parameters
        ----------
        theShadingModel: Graphic3d_TypeOfShadingModel

        Returns
        -------
        None

        """
        return _V3d.V3d_View_SetShadingModel(self, *args)

    def SetSize(self, *args) -> "void":
        r"""
        Defines the view projection size in its maximum dimension, keeping the inital height/width ratio unchanged.

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

        Returns
        -------
        None

        """
        return _V3d.V3d_View_SetSize(self, *args)

    def SetTextureEnv(self, *args) -> "void":
        r"""
        Sets the environment texture to use. no environment texture by default.

        Parameters
        ----------
        theTexture: Graphic3d_TextureEnv

        Returns
        -------
        None

        """
        return _V3d.V3d_View_SetTextureEnv(self, *args)

    def SetTwist(self, *args) -> "void":
        r"""
        Defines the angular position of the high point of the reference frame of the view with respect to the y screen axis with an absolute angular value in radians.

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

        Returns
        -------
        None

        """
        return _V3d.V3d_View_SetTwist(self, *args)

    def SetUp(self, *args) -> "void":
        r"""
        Defines the orientation of the high point.

        Parameters
        ----------
        Vx: float
        Vy: float
        Vz: float

        Returns
        -------
        None
        Defines the orientation(so) of the high point.

        Parameters
        ----------
        Orientation: V3d_TypeOfOrientation

        Returns
        -------
        None

        """
        return _V3d.V3d_View_SetUp(self, *args)

    def SetViewMappingDefault(self, *args) -> "void":
        r"""
        Saves the current view mapping. this will be the state returned from resetviewmapping.

        Returns
        -------
        None

        """
        return _V3d.V3d_View_SetViewMappingDefault(self, *args)

    def SetViewOrientationDefault(self, *args) -> "void":
        r"""
        Saves the current state of the orientation of the view which will be the return state at resetvieworientation.

        Returns
        -------
        None

        """
        return _V3d.V3d_View_SetViewOrientationDefault(self, *args)

    def SetVisualization(self, *args) -> "void":
        r"""
        Defines the visualization type in the view.

        Parameters
        ----------
        theType: V3d_TypeOfVisualization

        Returns
        -------
        None

        """
        return _V3d.V3d_View_SetVisualization(self, *args)

    def SetWindow(self, *args) -> "void":
        r"""
        Activates the view in the specified window if <acontext> is not null the graphic context is used to draw something in this view. otherwise an internal graphic context is created. warning: the view is centered and resized to preserve the height/width ratio of the window.

        Parameters
        ----------
        theWindow: Aspect_Window
        theContext: Aspect_RenderingContext,optional
        	default value is NULL

        Returns
        -------
        None

        """
        return _V3d.V3d_View_SetWindow(self, *args)

    def SetZSize(self, *args) -> "void":
        r"""
        Defines the depth size of the view front plane will be set to size/2. back plane will be set to -size/2. any object located above the front plane or behind the back plane will be clipped . note than the xy size of the view is not modified .

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

        Returns
        -------
        None

        """
        return _V3d.V3d_View_SetZSize(self, *args)

    def SetZoom(self, *args) -> "void":
        r"""
        Zooms the view by a factor relative to the initial value expressed by start = standard_true updates the view.

        Parameters
        ----------
        Coef: float
        Start: bool,optional
        	default value is Standard_True

        Returns
        -------
        None

        """
        return _V3d.V3d_View_SetZoom(self, *args)

    def ShadingModel(self, *args) -> "Graphic3d_TypeOfShadingModel":
        r"""
        Returns the current shading model.

        Returns
        -------
        Graphic3d_TypeOfShadingModel

        """
        return _V3d.V3d_View_ShadingModel(self, *args)

    def Size(self, *args) -> "void":
        r"""
        Returns the height and width of the view.

        Parameters
        ----------

        Returns
        -------
        Width: float
        Height: float

        """
        return _V3d.V3d_View_Size(self, *args)

    def StartRotation(self, *args) -> "void":
        r"""
        Begin the rotation of the view around the screen axis according to the mouse position <x,y>. warning: enable rotation around the z screen axis when <zrotationthreshold> factor is > 0 soon the distance from the start point and the center of the view is > (medium viewsize * <zrotationthreshold> ). generally a value of 0.4 is usable to rotate around xy screen axis inside the circular threshold area and to rotate around z screen axis outside this area.

        Parameters
        ----------
        X: int
        Y: int
        zRotationThreshold: float,optional
        	default value is 0.0

        Returns
        -------
        None

        """
        return _V3d.V3d_View_StartRotation(self, *args)

    def StartZoomAtPoint(self, *args) -> "void":
        r"""
        Defines starting point for zoomatpoint view operation. @param thexp [in] the x mouse coordinate, in pixels. @param theyp [in] the y mouse coordinate, in pixels.

        Parameters
        ----------
        theXp: int
        theYp: int

        Returns
        -------
        None

        """
        return _V3d.V3d_View_StartZoomAtPoint(self, *args)

    def StatisticInformation(self, *args) -> "void":
        r"""
        Returns string with statistic performance info.

        Returns
        -------
        TCollection_AsciiString
        Fills in the dictionary with statistic performance info.

        Parameters
        ----------
        theDict: TColStd_IndexedDataMapOfStringString

        Returns
        -------
        None

        """
        return _V3d.V3d_View_StatisticInformation(self, *args)

    def TextureEnv(self, *args) -> "opencascade::handle< Graphic3d_TextureEnv >":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<Graphic3d_TextureEnv>

        """
        return _V3d.V3d_View_TextureEnv(self, *args)

    def ToPixMap(self, *args) -> "Standard_Boolean":
        r"""
        Dumps the full contents of the view to a pixmap with specified parameters. internally this method calls redraw() with an offscreen render buffer of requested target size (thewidth x theheight), so that there is no need resizing a window control for making a dump of different size.

        Parameters
        ----------
        theImage: Image_PixMap
        theParams: V3d_ImageDumpOptions

        Returns
        -------
        bool
        Dumps the full contents of the view to a pixmap. internally this method calls redraw() with an offscreen render buffer of requested target size (thewidth x theheight), so that there is no need resizing a window control for making a dump of different size. @param theimage target image, will be re-allocated to match thewidth x theheight @param thewidth target image width @param theheight target image height @param thebuffertype type of the view buffer to dump (color / depth) @param thetoadjustaspect when true, active view aspect ratio will be overridden by (thewidth / theheight) @param thestereooptions how to dump stereographic camera.

        Parameters
        ----------
        theImage: Image_PixMap
        theWidth: int
        theHeight: int
        theBufferType: Graphic3d_BufferType,optional
        	default value is Graphic3d_BT_RGB
        theToAdjustAspect: bool,optional
        	default value is Standard_True
        theStereoOptions: V3d_StereoDumpOptions,optional
        	default value is V3d_SDO_MONO

        Returns
        -------
        bool

        """
        return _V3d.V3d_View_ToPixMap(self, *args)

    def Translate(self, *args) -> "void":
        r"""
        Movement of the ye and the view point parallel to the frame of reference of the screen a distance relative to the initial position expressed by start = standard_true.

        Parameters
        ----------
        Dx: float
        Dy: float
        Dz: float
        Start: bool,optional
        	default value is Standard_True

        Returns
        -------
        None
        Movement of the eye and the view point parallel to one of the axes of the fame of reference of the view a distance relative to the initial position expressed by start = standard_true.

        Parameters
        ----------
        Axe: V3d_TypeOfAxe
        Length: float
        Start: bool,optional
        	default value is Standard_True

        Returns
        -------
        None
        Movement of the eye and view point parallel to the current axis a distance relative to the initial position expressed by start = standard_true.

        Parameters
        ----------
        Length: float
        Start: bool,optional
        	default value is Standard_True

        Returns
        -------
        None

        """
        return _V3d.V3d_View_Translate(self, *args)

    def TriedronDisplay(self, *args) -> "void":
        r"""
        Display of the triedron. initialize position, color and length of triedron axes. the scale is a percent of the window width.

        Parameters
        ----------
        thePosition: Aspect_TypeOfTriedronPosition,optional
        	default value is Aspect_TOTP_CENTER
        theColor: Quantity_Color,optional
        	default value is Quantity_NOC_WHITE
        theScale: float,optional
        	default value is 0.02
        theMode: V3d_TypeOfVisualization,optional
        	default value is V3d_WIREFRAME

        Returns
        -------
        None

        """
        return _V3d.V3d_View_TriedronDisplay(self, *args)

    def TriedronErase(self, *args) -> "void":
        r"""
        Erases the triedron.

        Returns
        -------
        None

        """
        return _V3d.V3d_View_TriedronErase(self, *args)

    def Turn(self, *args) -> "void":
        r"""
        Rotation of the view point around the frame of reference of the screen for which the origin is the eye of the projection with a relative angular value in radians with respect to the initial position expressed by start = standard_true.

        Parameters
        ----------
        Ax: float
        Ay: float
        Az: float
        Start: bool,optional
        	default value is Standard_True

        Returns
        -------
        None
        Rotation of the view point around one of the axes of the frame of reference of the view for which the origin is the eye of the projection with an angular value in radians relative to the initial position expressed by start = standard_true.

        Parameters
        ----------
        Axe: V3d_TypeOfAxe
        Angle: float
        Start: bool,optional
        	default value is Standard_True

        Returns
        -------
        None
        Rotation of the view point around the current axis an angular value in radians relative to the initial position expressed by start = standard_true.

        Parameters
        ----------
        Angle: float
        Start: bool,optional
        	default value is Standard_True

        Returns
        -------
        None

        """
        return _V3d.V3d_View_Turn(self, *args)

    def Twist(self, *args) -> "Standard_Real":
        r"""
        Returns in radians the orientation of the view around the visual axis measured from the y axis of the screen.

        Returns
        -------
        float

        """
        return _V3d.V3d_View_Twist(self, *args)

    def Type(self, *args) -> "V3d_TypeOfView":
        r"""
        Returns the type of the view.

        Returns
        -------
        V3d_TypeOfView

        """
        return _V3d.V3d_View_Type(self, *args)

    def Up(self, *args) -> "void":
        r"""
        Returns the vector giving the position of the high point.

        Parameters
        ----------

        Returns
        -------
        Vx: float
        Vy: float
        Vz: float

        """
        return _V3d.V3d_View_Up(self, *args)

    def Update(self, *args) -> "void":
        r"""
        Deprecated, redraw() should be used instead.

        Returns
        -------
        None

        """
        return _V3d.V3d_View_Update(self, *args)

    def UpdateLights(self, *args) -> "void":
        r"""
        Updates the lights of the view.

        Returns
        -------
        None

        """
        return _V3d.V3d_View_UpdateLights(self, *args)

    def View(self, *args) -> "opencascade::handle< Graphic3d_CView > const &":
        r"""
        Returns the associated graphic3d view.

        Returns
        -------
        opencascade::handle<Graphic3d_CView>

        """
        return _V3d.V3d_View_View(self, *args)

    def Viewer(self, *args) -> "opencascade::handle< V3d_Viewer >":
        r"""
        Returns the viewer in which the view has been created.

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

        """
        return _V3d.V3d_View_Viewer(self, *args)

    def Visualization(self, *args) -> "V3d_TypeOfVisualization":
        r"""
        Returns the current visualisation mode.

        Returns
        -------
        V3d_TypeOfVisualization

        """
        return _V3d.V3d_View_Visualization(self, *args)

    def Window(self, *args) -> "opencascade::handle< Aspect_Window > const &":
        r"""
        Returns the aspect window associated with the view.

        Returns
        -------
        opencascade::handle<Aspect_Window>

        """
        return _V3d.V3d_View_Window(self, *args)

    def WindowFit(self, *args) -> "void":
        r"""
        Centers the defined pixel window so that it occupies the maximum space while respecting the initial height/width ratio. note than the original z size of the view is not modified. @param theminxp [in] pixel coordinates of minimal corner on x screen axis. @param theminyp [in] pixel coordinates of minimal corner on y screen axis. @param themaxxp [in] pixel coordinates of maximal corner on x screen axis. @param themaxyp [in] pixel coordinates of maximal corner on y screen axis.

        Parameters
        ----------
        theMinXp: int
        theMinYp: int
        theMaxXp: int
        theMaxYp: int

        Returns
        -------
        None

        """
        return _V3d.V3d_View_WindowFit(self, *args)

    def WindowFitAll(self, *args) -> "void":
        r"""
        Idem than windowfit.

        Parameters
        ----------
        Xmin: int
        Ymin: int
        Xmax: int
        Ymax: int

        Returns
        -------
        None

        """
        return _V3d.V3d_View_WindowFitAll(self, *args)

    def ZBufferTriedronSetup(self, *args) -> "void":
        r"""
        Customization of the zbuffer triedron. xcolor,ycolor,zcolor - colors of axis sizeratio - ratio of decreasing of the trihedron size when its physical position comes out of the view axisdiametr - diameter relatively to axis length nbfacettes - number of facets of cylinders and cones.

        Parameters
        ----------
        theXColor: Quantity_Color,optional
        	default value is Quantity_NOC_RED
        theYColor: Quantity_Color,optional
        	default value is Quantity_NOC_GREEN
        theZColor: Quantity_Color,optional
        	default value is Quantity_NOC_BLUE1
        theSizeRatio: float,optional
        	default value is 0.8
        theAxisDiametr: float,optional
        	default value is 0.05
        theNbFacettes: int,optional
        	default value is 12

        Returns
        -------
        None

        """
        return _V3d.V3d_View_ZBufferTriedronSetup(self, *args)

    def ZFitAll(self, *args) -> "void":
        r"""
        Change z-min and z-max planes of projection volume to match the displayed objects.

        Parameters
        ----------
        theScaleFactor: float,optional
        	default value is 1.0

        Returns
        -------
        None

        """
        return _V3d.V3d_View_ZFitAll(self, *args)

    def ZSize(self, *args) -> "Standard_Real":
        r"""
        Returns the depth of the view .

        Returns
        -------
        float

        """
        return _V3d.V3d_View_ZSize(self, *args)

    def Zoom(self, *args) -> "void":
        r"""
        Zoom the view according to a zoom factor computed from the distance between the 2 mouse position. @param thexp1 [in] the x coordinate of first mouse position, in pixels. @param theyp1 [in] the y coordinate of first mouse position, in pixels. @param thexp2 [in] the x coordinate of second mouse position, in pixels. @param theyp2 [in] the y coordinate of second mouse position, in pixels.

        Parameters
        ----------
        theXp1: int
        theYp1: int
        theXp2: int
        theYp2: int

        Returns
        -------
        None

        """
        return _V3d.V3d_View_Zoom(self, *args)

    def ZoomAtPoint(self, *args) -> "void":
        r"""
        Zooms the model at a pixel defined by the method startzoomatpoint().

        Parameters
        ----------
        theMouseStartX: int
        theMouseStartY: int
        theMouseEndX: int
        theMouseEndY: int

        Returns
        -------
        None

        """
        return _V3d.V3d_View_ZoomAtPoint(self, *args)


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


    __repr__ = _dumps_object

    @methodnotwrapped
    def Print(self):
    	pass

    __swig_destroy__ = _V3d.delete_V3d_View

# Register V3d_View in _V3d:
_V3d.V3d_View_swigregister(V3d_View)

class V3d_Viewer(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"""
        Create a viewer with the given graphic driver and with default parameters: - view orientation: v3d_xposynegzpos - view background: quantity_noc_gray30 - shading model: v3d_gouraud.

        Parameters
        ----------
        theDriver: Graphic3d_GraphicDriver

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

        Parameters
        ----------
        theDriver: Graphic3d_GraphicDriver
        theName: Standard_ExtString
        theDomain: char *,optional
        	default value is 
        theViewSize: float,optional
        	default value is 1000.0
        theViewProj: V3d_TypeOfOrientation,optional
        	default value is V3d_XposYnegZpos
        theViewBackground: Quantity_Color,optional
        	default value is Quantity_NOC_GRAY30
        theVisualization: V3d_TypeOfVisualization,optional
        	default value is V3d_ZBUFFER
        theShadingModel: Graphic3d_TypeOfShadingModel,optional
        	default value is Graphic3d_TOSM_VERTEX
        theComputedMode: bool,optional
        	default value is Standard_True
        theDefaultComputedMode: bool,optional
        	default value is Standard_True

        Returns
        -------
        None

        """
        _V3d.V3d_Viewer_swiginit(self, _V3d.new_V3d_Viewer(*args))

    def ActivateGrid(self, *args) -> "void":
        r"""
        Activates the grid in all views of <self>.

        Parameters
        ----------
        aGridType: Aspect_GridType
        aGridDrawMode: Aspect_GridDrawMode

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_ActivateGrid(self, *args)

    def ActiveLight(self, *args) -> "opencascade::handle< V3d_Light > const &":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<V3d_Light>

        """
        return _V3d.V3d_Viewer_ActiveLight(self, *args)

    def ActiveLightIterator(self, *args) -> "V3d_ListOfLightIterator":
        r"""
        Return an iterator for defined lights.

        Returns
        -------
        V3d_ListOfLightIterator

        """
        return _V3d.V3d_Viewer_ActiveLightIterator(self, *args)

    def ActiveLights(self, *args) -> "V3d_ListOfLight const &":
        r"""
        Return a list of active lights.

        Returns
        -------
        V3d_ListOfLight

        """
        return _V3d.V3d_Viewer_ActiveLights(self, *args)

    def ActiveView(self, *args) -> "opencascade::handle< V3d_View > const &":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<V3d_View>

        """
        return _V3d.V3d_Viewer_ActiveView(self, *args)

    def ActiveViewIterator(self, *args) -> "V3d_ListOfViewIterator":
        r"""
        Return an iterator for active views.

        Returns
        -------
        V3d_ListOfViewIterator

        """
        return _V3d.V3d_Viewer_ActiveViewIterator(self, *args)

    def ActiveViews(self, *args) -> "V3d_ListOfView const &":
        r"""
        Return a list of active views.

        Returns
        -------
        V3d_ListOfView

        """
        return _V3d.V3d_Viewer_ActiveViews(self, *args)

    def AddLight(self, *args) -> "void":
        r"""
        Adds light in sequence of lights.

        Parameters
        ----------
        theLight: V3d_Light

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_AddLight(self, *args)

    def AddZLayer(self, *args) -> "Standard_Boolean":
        r"""
        Add a new top-level z layer to all managed views and get its id as <thelayerid> value. the z layers are controlled entirely by viewer, it is not possible to add a layer to a particular view. custom layers will be inserted before graphic3d_zlayerid_top (e.g. between graphic3d_zlayerid_default and before graphic3d_zlayerid_top). @param thelayerid [out] id of created layer @param thesettings [in] new layer settings returns false if the layer can not be created.

        Parameters
        ----------
        theLayerId: int OutValue
        theSettings: Graphic3d_ZLayerSettings,optional
        	default value is Graphic3d_ZLayerSettings()

        Returns
        -------
        bool

        """
        return _V3d.V3d_Viewer_AddZLayer(self, *args)

    def CircularGridGraphicValues(self, *args) -> "void":
        r"""
        Returns the location and the size of the grid.

        Parameters
        ----------

        Returns
        -------
        Radius: float
        OffSet: float

        """
        return _V3d.V3d_Viewer_CircularGridGraphicValues(self, *args)

    def CircularGridValues(self, *args) -> "void":
        r"""
        Returns the definition of the circular grid.

        Parameters
        ----------

        Returns
        -------
        XOrigin: float
        YOrigin: float
        RadiusStep: float
        DivisionNumber: int
        RotationAngle: float

        """
        return _V3d.V3d_Viewer_CircularGridValues(self, *args)

    def ComputedMode(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if the computed mode can be used.

        Returns
        -------
        bool

        """
        return _V3d.V3d_Viewer_ComputedMode(self, *args)

    def CreateView(self, *args) -> "opencascade::handle< V3d_View >":
        r"""
        Creates a view in the viewer according to its default parameters.

        Returns
        -------
        opencascade::handle<V3d_View>

        """
        return _V3d.V3d_Viewer_CreateView(self, *args)

    def DeactivateGrid(self, *args) -> "void":
        r"""
        Deactivates the grid in all views of <self>.

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_DeactivateGrid(self, *args)

    def DefaultBackgroundColor(self, *args) -> "void":
        r"""
        Returns the default background colour object.

        Returns
        -------
        Quantity_Color
        No available documentation.

        Parameters
        ----------
        theType: Quantity_TypeOfColor

        Returns
        -------
        theV1: float
        theV2: float
        theV3: float

        """
        return _V3d.V3d_Viewer_DefaultBackgroundColor(self, *args)

    def DefaultBgGradientColors(self, *args) -> "void":
        r"""
        Returns the gradient background colour objects of the view.

        Parameters
        ----------
        theColor1: Quantity_Color
        theColor2: Quantity_Color

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_DefaultBgGradientColors(self, *args)

    def DefaultComputedMode(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if by default the computed mode must be used.

        Returns
        -------
        bool

        """
        return _V3d.V3d_Viewer_DefaultComputedMode(self, *args)

    def DefaultRenderingParams(self, *args) -> "Graphic3d_RenderingParams const &":
        r"""
        Return default rendering parameters. by default these parameters are set in a new v3d_view.

        Returns
        -------
        Graphic3d_RenderingParams

        """
        return _V3d.V3d_Viewer_DefaultRenderingParams(self, *args)

    def DefaultShadingModel(self, *args) -> "Graphic3d_TypeOfShadingModel":
        r"""
        Returns the default type of shading.

        Returns
        -------
        Graphic3d_TypeOfShadingModel

        """
        return _V3d.V3d_Viewer_DefaultShadingModel(self, *args)

    def DefaultTypeOfView(self, *args) -> "V3d_TypeOfView":
        r"""
        Returns the default type of view (orthographic or perspective projection) to be returned by createview() method.

        Returns
        -------
        V3d_TypeOfView

        """
        return _V3d.V3d_Viewer_DefaultTypeOfView(self, *args)

    def DefaultViewProj(self, *args) -> "V3d_TypeOfOrientation":
        r"""
        Returns the default projection.

        Returns
        -------
        V3d_TypeOfOrientation

        """
        return _V3d.V3d_Viewer_DefaultViewProj(self, *args)

    def DefaultViewSize(self, *args) -> "Standard_Real":
        r"""
        Returns the default size of the view.

        Returns
        -------
        float

        """
        return _V3d.V3d_Viewer_DefaultViewSize(self, *args)

    def DefaultVisualization(self, *args) -> "V3d_TypeOfVisualization":
        r"""
        Returns the default type of visualization.

        Returns
        -------
        V3d_TypeOfVisualization

        """
        return _V3d.V3d_Viewer_DefaultVisualization(self, *args)

    def DefinedLight(self, *args) -> "opencascade::handle< V3d_Light > const &":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<V3d_Light>

        """
        return _V3d.V3d_Viewer_DefinedLight(self, *args)

    def DefinedLightIterator(self, *args) -> "V3d_ListOfLightIterator":
        r"""
        Return an iterator for defined lights.

        Returns
        -------
        V3d_ListOfLightIterator

        """
        return _V3d.V3d_Viewer_DefinedLightIterator(self, *args)

    def DefinedLights(self, *args) -> "V3d_ListOfLight const &":
        r"""
        Return a list of defined lights.

        Returns
        -------
        V3d_ListOfLight

        """
        return _V3d.V3d_Viewer_DefinedLights(self, *args)

    def DefinedView(self, *args) -> "opencascade::handle< V3d_View > const &":
        r"""
        No available documentation.

        Returns
        -------
        opencascade::handle<V3d_View>

        """
        return _V3d.V3d_Viewer_DefinedView(self, *args)

    def DefinedViewIterator(self, *args) -> "V3d_ListOfViewIterator":
        r"""
        Return an iterator for defined views.

        Returns
        -------
        V3d_ListOfViewIterator

        """
        return _V3d.V3d_Viewer_DefinedViewIterator(self, *args)

    def DefinedViews(self, *args) -> "V3d_ListOfView const &":
        r"""
        Return a list of defined views.

        Returns
        -------
        V3d_ListOfView

        """
        return _V3d.V3d_Viewer_DefinedViews(self, *args)

    def DelLight(self, *args) -> "void":
        r"""
        Delete light in sequence of lights.

        Parameters
        ----------
        theLight: V3d_Light

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_DelLight(self, *args)

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

        Parameters
        ----------
        theOnOff: bool
        theSize: float,optional
        	default value is 1

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_DisplayPrivilegedPlane(self, *args)

    def Driver(self, *args) -> "opencascade::handle< Graphic3d_GraphicDriver > const &":
        r"""
        Return graphic driver instance.

        Returns
        -------
        opencascade::handle<Graphic3d_GraphicDriver>

        """
        return _V3d.V3d_Viewer_Driver(self, *args)

    def DumpJsonToString(self, depth: "int"=-1) -> "std::string":
        r"""DumpJsonToString(V3d_Viewer self, int depth=-1) -> std::string"""
        return _V3d.V3d_Viewer_DumpJsonToString(self, depth)

    def Erase(self, *args) -> "void":
        r"""
        Erase all objects in all the views.

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_Erase(self, *args)

    def GetAllZLayers(self, *args) -> "void":
        r"""
        Return all z layer ids in sequence ordered by overlay level from lowest layer to highest ( foreground ). the first layer id in sequence is the default layer that can't be removed.

        Parameters
        ----------
        theLayerSeq: TColStd_SequenceOfInteger

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_GetAllZLayers(self, *args)

    def GetGradientBackground(self, *args) -> "Aspect_GradientBackground const &":
        r"""
        Returns the gradient background of the view.

        Returns
        -------
        Aspect_GradientBackground

        """
        return _V3d.V3d_Viewer_GetGradientBackground(self, *args)

    def Grid(self, *args) -> "opencascade::handle< Aspect_Grid >":
        r"""
        Returns the defined grid in <self>.

        Returns
        -------
        opencascade::handle<Aspect_Grid>

        """
        return _V3d.V3d_Viewer_Grid(self, *args)

    def GridDrawMode(self, *args) -> "Aspect_GridDrawMode":
        r"""
        Returns the current grid draw mode defined in <self>.

        Returns
        -------
        Aspect_GridDrawMode

        """
        return _V3d.V3d_Viewer_GridDrawMode(self, *args)

    def GridEcho(self, *args) -> "Standard_Boolean":
        r"""
        Returns true when grid echo must be displayed at hit point.

        Returns
        -------
        bool

        """
        return _V3d.V3d_Viewer_GridEcho(self, *args)

    def GridType(self, *args) -> "Aspect_GridType":
        r"""
        Returns the current grid type defined in <self>.

        Returns
        -------
        Aspect_GridType

        """
        return _V3d.V3d_Viewer_GridType(self, *args)

    def HideGridEcho(self, *args) -> "void":
        r"""
        Temporarly hide grid echo.

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

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_HideGridEcho(self, *args)

    def IfMoreViews(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if one view more can be defined in this viewer.

        Returns
        -------
        bool

        """
        return _V3d.V3d_Viewer_IfMoreViews(self, *args)

    def InitActiveLights(self, *args) -> "void":
        r"""
        Initializes an internal iteratator on the active lights.

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_InitActiveLights(self, *args)

    def InitActiveViews(self, *args) -> "void":
        r"""
        Initializes an internal iterator on the active views.

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_InitActiveViews(self, *args)

    def InitDefinedLights(self, *args) -> "void":
        r"""
        Initializes an internal iterattor on the defined lights.

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_InitDefinedLights(self, *args)

    def InitDefinedViews(self, *args) -> "void":
        r"""
        Initializes an internal iterator on the defined views.

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_InitDefinedViews(self, *args)

    def InsertLayerAfter(self, *args) -> "Standard_Boolean":
        r"""
        Add a new top-level z layer to all managed views and get its id as <thelayerid> value. the z layers are controlled entirely by viewer, it is not possible to add a layer to a particular view. layer rendering order is defined by its position in list (altered by thelayerafter) and isimmediate() flag (all layers with isimmediate() flag are drawn afterwards); @param thenewlayerid [out] id of created layer; layer id is arbitrary and does not depend on layer position in the list @param thesettings [in] new layer settings @param thelayerbefore [in] id of layer to append new layer after returns false if the layer can not be created.

        Parameters
        ----------
        theNewLayerId: int OutValue
        theSettings: Graphic3d_ZLayerSettings
        theLayerBefore: int

        Returns
        -------
        bool

        """
        return _V3d.V3d_Viewer_InsertLayerAfter(self, *args)

    def InsertLayerBefore(self, *args) -> "Standard_Boolean":
        r"""
        Add a new top-level z layer to all managed views and get its id as <thelayerid> value. the z layers are controlled entirely by viewer, it is not possible to add a layer to a particular view. layer rendering order is defined by its position in list (altered by thelayerafter) and isimmediate() flag (all layers with isimmediate() flag are drawn afterwards); @param thenewlayerid [out] id of created layer; layer id is arbitrary and does not depend on layer position in the list @param thesettings [in] new layer settings @param thelayerafter [in] id of layer to append new layer before returns false if the layer can not be created.

        Parameters
        ----------
        theNewLayerId: int OutValue
        theSettings: Graphic3d_ZLayerSettings
        theLayerAfter: int

        Returns
        -------
        bool

        """
        return _V3d.V3d_Viewer_InsertLayerBefore(self, *args)

    def Invalidate(self, *args) -> "void":
        r"""
        Invalidates viewer content but does not redraw it.

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_Invalidate(self, *args)

    def IsActive(self, *args) -> "Standard_Boolean":
        r"""
        Returns standard_true if a grid is activated in <self>.

        Returns
        -------
        bool

        """
        return _V3d.V3d_Viewer_IsActive(self, *args)

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

        Parameters
        ----------
        TheLight: V3d_Light

        Returns
        -------
        bool

        """
        return _V3d.V3d_Viewer_IsGlobalLight(self, *args)

    def LastActiveView(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if there is only one active view.

        Returns
        -------
        bool

        """
        return _V3d.V3d_Viewer_LastActiveView(self, *args)

    def MoreActiveLights(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if there are more active light(s) to return.

        Returns
        -------
        bool

        """
        return _V3d.V3d_Viewer_MoreActiveLights(self, *args)

    def MoreActiveViews(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if there are more active view(s) to return.

        Returns
        -------
        bool

        """
        return _V3d.V3d_Viewer_MoreActiveViews(self, *args)

    def MoreDefinedLights(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if there are more defined light(s) to return.

        Returns
        -------
        bool

        """
        return _V3d.V3d_Viewer_MoreDefinedLights(self, *args)

    def MoreDefinedViews(self, *args) -> "Standard_Boolean":
        r"""
        Returns true if there are more defined view(s) to return.

        Returns
        -------
        bool

        """
        return _V3d.V3d_Viewer_MoreDefinedViews(self, *args)

    def NextActiveLights(self, *args) -> "void":
        r"""
        Go to the next active light (if there is not, activelight() will raise an exception).

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_NextActiveLights(self, *args)

    def NextActiveViews(self, *args) -> "void":
        r"""
        Go to the next active view (if there is not, activeview will raise an exception).

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_NextActiveViews(self, *args)

    def NextDefinedLights(self, *args) -> "void":
        r"""
        Go to the next defined light (if there is not, definedlight() will raise an exception).

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_NextDefinedLights(self, *args)

    def NextDefinedViews(self, *args) -> "void":
        r"""
        Go to the next defined view (if there is not, definedview will raise an exception).

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_NextDefinedViews(self, *args)

    def PrivilegedPlane(self, *args) -> "gp_Ax3 const":
        r"""
        No available documentation.

        Returns
        -------
        gp_Ax3

        """
        return _V3d.V3d_Viewer_PrivilegedPlane(self, *args)

    def RectangularGridGraphicValues(self, *args) -> "void":
        r"""
        Returns the location and the size of the grid.

        Parameters
        ----------

        Returns
        -------
        XSize: float
        YSize: float
        OffSet: float

        """
        return _V3d.V3d_Viewer_RectangularGridGraphicValues(self, *args)

    def RectangularGridValues(self, *args) -> "void":
        r"""
        Returns the definition of the rectangular grid.

        Parameters
        ----------

        Returns
        -------
        XOrigin: float
        YOrigin: float
        XStep: float
        YStep: float
        RotationAngle: float

        """
        return _V3d.V3d_Viewer_RectangularGridValues(self, *args)

    def Redraw(self, *args) -> "void":
        r"""
        Redraws all the views of the viewer even if no modification has taken place. must be called if all the views of the viewer are exposed, as for example in a global deiconification.

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_Redraw(self, *args)

    def RedrawImmediate(self, *args) -> "void":
        r"""
        Updates layer of immediate presentations.

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_RedrawImmediate(self, *args)

    def Remove(self, *args) -> "void":
        r"""
        Suppresses the viewer.

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_Remove(self, *args)

    def RemoveZLayer(self, *args) -> "Standard_Boolean":
        r"""
        Remove z layer with id <thelayerid>. method returns standard_false if the layer can not be removed or doesn't exists. by default, there are always default bottom-level layer that can't be removed.

        Parameters
        ----------
        theLayerId: int

        Returns
        -------
        bool

        """
        return _V3d.V3d_Viewer_RemoveZLayer(self, *args)

    def SetCircularGridGraphicValues(self, *args) -> "void":
        r"""
        Sets the location and the size of the grid. <xsize> defines the width of the grid. <ysize> defines the height of the grid. <offset> defines the displacement along the plane normal.

        Parameters
        ----------
        Radius: float
        OffSet: float

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_SetCircularGridGraphicValues(self, *args)

    def SetCircularGridValues(self, *args) -> "void":
        r"""
        Sets the definition of the circular grid. <xorigin>, <yorigin> defines the origin of the grid. <radiusstep> defines the interval between 2 circles. <divisionnumber> defines the section number of one half circle. <rotationangle> defines the rotation angle of the grid.

        Parameters
        ----------
        XOrigin: float
        YOrigin: float
        RadiusStep: float
        DivisionNumber: int
        RotationAngle: float

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_SetCircularGridValues(self, *args)

    def SetComputedMode(self, *args) -> "void":
        r"""
        Set if the computed mode can be used.

        Parameters
        ----------
        theMode: bool

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_SetComputedMode(self, *args)

    def SetDefaultBackgroundColor(self, *args) -> "void":
        r"""
        Defines the default background colour of views attached to the viewer by supplying the color object.

        Parameters
        ----------
        theColor: Quantity_Color

        Returns
        -------
        None
        Defines the default base colour of views attached to the viewer by supplying the type of colour definition and the three component values.

        Parameters
        ----------
        theType: Quantity_TypeOfColor
        theV1: float
        theV2: float
        theV3: float

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_SetDefaultBackgroundColor(self, *args)

    def SetDefaultBgGradientColors(self, *args) -> "void":
        r"""
        Defines the default gradient background colours of views attached to the viewer by supplying the colour objects.

        Parameters
        ----------
        theColor1: Quantity_Color
        theColor2: Quantity_Color
        theFillStyle: Aspect_GradientFillMethod,optional
        	default value is Aspect_GFM_HOR

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_SetDefaultBgGradientColors(self, *args)

    def SetDefaultComputedMode(self, *args) -> "void":
        r"""
        Set if by default the computed mode must be used.

        Parameters
        ----------
        theMode: bool

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_SetDefaultComputedMode(self, *args)

    def SetDefaultLights(self, *args) -> "void":
        r"""
        Defines default lights: positional-light 0.3 0. 0. directional-light v3d_xnegyposzpos directional-light v3d_xnegyneg ambient-light.

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_SetDefaultLights(self, *args)

    def SetDefaultRenderingParams(self, *args) -> "void":
        r"""
        Set default rendering parameters.

        Parameters
        ----------
        theParams: Graphic3d_RenderingParams

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_SetDefaultRenderingParams(self, *args)

    def SetDefaultShadingModel(self, *args) -> "void":
        r"""
        Gives the default type of shading.

        Parameters
        ----------
        theType: Graphic3d_TypeOfShadingModel

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_SetDefaultShadingModel(self, *args)

    def SetDefaultTypeOfView(self, *args) -> "void":
        r"""
        Set the default type of view (orthographic or perspective projection) to be returned by createview() method.

        Parameters
        ----------
        theType: V3d_TypeOfView

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_SetDefaultTypeOfView(self, *args)

    def SetDefaultViewProj(self, *args) -> "void":
        r"""
        Sets the default projection for creating views in the viewer.

        Parameters
        ----------
        theOrientation: V3d_TypeOfOrientation

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_SetDefaultViewProj(self, *args)

    def SetDefaultViewSize(self, *args) -> "void":
        r"""
        Gives a default size for the creation of views of the viewer.

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

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_SetDefaultViewSize(self, *args)

    def SetDefaultVisualization(self, *args) -> "void":
        r"""
        Gives the default visualization mode.

        Parameters
        ----------
        theType: V3d_TypeOfVisualization

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_SetDefaultVisualization(self, *args)

    def SetGridEcho(self, *args) -> "void":
        r"""
        Show/don't show grid echo to the hit point. if true,the grid echo will be shown at converttogrid() time.

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

        Returns
        -------
        None
        Show grid echo <amarker> to the hit point. warning: when the grid echo marker is not set, a default marker is build with the attributes: marker type : aspect_tom_star marker color : quantity_noc_gray90 marker size : 3.0.

        Parameters
        ----------
        aMarker: Graphic3d_AspectMarker3d

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_SetGridEcho(self, *args)

    def SetLightOff(self, *args) -> "void":
        r"""
        Deactivates mylight in this viewer.

        Parameters
        ----------
        theLight: V3d_Light

        Returns
        -------
        None
        Deactivate all the lights defined in this viewer.

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_SetLightOff(self, *args)

    def SetLightOn(self, *args) -> "void":
        r"""
        Activates mylight in the viewer.

        Parameters
        ----------
        theLight: V3d_Light

        Returns
        -------
        None
        Activates all the lights defined in this viewer.

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_SetLightOn(self, *args)

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

        Parameters
        ----------
        thePlane: gp_Ax3

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_SetPrivilegedPlane(self, *args)

    def SetRectangularGridGraphicValues(self, *args) -> "void":
        r"""
        Sets the location and the size of the grid. <xsize> defines the width of the grid. <ysize> defines the height of the grid. <offset> defines the displacement along the plane normal.

        Parameters
        ----------
        XSize: float
        YSize: float
        OffSet: float

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_SetRectangularGridGraphicValues(self, *args)

    def SetRectangularGridValues(self, *args) -> "void":
        r"""
        Sets the definition of the rectangular grid. <xorigin>, <yorigin> defines the origin of the grid. <xstep> defines the interval between 2 vertical lines. <ystep> defines the interval between 2 horizontal lines. <rotationangle> defines the rotation angle of the grid.

        Parameters
        ----------
        XOrigin: float
        YOrigin: float
        XStep: float
        YStep: float
        RotationAngle: float

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_SetRectangularGridValues(self, *args)

    def SetViewOff(self, *args) -> "void":
        r"""
        Deactivates all the views of a viewer attached to a window.

        Returns
        -------
        None
        Deactivates a particular view in the viewer. must be call if the window attached to the view has been iconified .

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

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_SetViewOff(self, *args)

    def SetViewOn(self, *args) -> "void":
        r"""
        Activates all of the views of a viewer attached to a window.

        Returns
        -------
        None
        Activates a particular view in the viewer. must be call if the window attached to the view has been deiconified.

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

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_SetViewOn(self, *args)

    def SetZLayerSettings(self, *args) -> "void":
        r"""
        Sets the settings for a single z layer.

        Parameters
        ----------
        theLayerId: int
        theSettings: Graphic3d_ZLayerSettings

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_SetZLayerSettings(self, *args)

    def ShowGridEcho(self, *args) -> "void":
        r"""
        Display grid echo at requested point in the view.

        Parameters
        ----------
        theView: V3d_View
        thePoint: Graphic3d_Vertex

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_ShowGridEcho(self, *args)

    def StructureManager(self, *args) -> "opencascade::handle< Graphic3d_StructureManager >":
        r"""
        Returns the structure manager associated to this viewer.

        Returns
        -------
        opencascade::handle<Graphic3d_StructureManager>

        """
        return _V3d.V3d_Viewer_StructureManager(self, *args)

    def UnHighlight(self, *args) -> "void":
        r"""
        Unhighlight all objects in all the views.

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_UnHighlight(self, *args)

    def Update(self, *args) -> "void":
        r"""
        Deprecated, redraw() should be used instead.

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_Update(self, *args)

    def UpdateLights(self, *args) -> "void":
        r"""
        Updates the lights of all the views of a viewer.

        Returns
        -------
        None

        """
        return _V3d.V3d_Viewer_UpdateLights(self, *args)

    def ZLayerSettings(self, *args) -> "Graphic3d_ZLayerSettings const &":
        r"""
        Returns the settings of a single z layer.

        Parameters
        ----------
        theLayerId: int

        Returns
        -------
        Graphic3d_ZLayerSettings

        """
        return _V3d.V3d_Viewer_ZLayerSettings(self, *args)


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


    __repr__ = _dumps_object

    @methodnotwrapped
    def Print(self):
    	pass

    __swig_destroy__ = _V3d.delete_V3d_Viewer

# Register V3d_Viewer in _V3d:
_V3d.V3d_Viewer_swigregister(V3d_Viewer)

class V3d_DirectionalLight(V3d_PositionLight):
    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 directional light source in the viewer.

        Parameters
        ----------
        theDirection: V3d_TypeOfOrientation,optional
        	default value is V3d_XposYposZpos
        theColor: Quantity_Color,optional
        	default value is Quantity_NOC_WHITE
        theIsHeadlight: bool,optional
        	default value is Standard_False

        Returns
        -------
        None
        Creates a directional light source in the viewer.

        Parameters
        ----------
        theDirection: gp_Dir
        theColor: Quantity_Color,optional
        	default value is Quantity_NOC_WHITE
        theIsHeadlight: bool,optional
        	default value is Standard_False

        Returns
        -------
        None

        """
        _V3d.V3d_DirectionalLight_swiginit(self, _V3d.new_V3d_DirectionalLight(*args))

    def SetDirection(self, *args) -> "void":
        r"""
        Defines the direction of the light source by a predefined orientation.

        Parameters
        ----------
        theDirection: V3d_TypeOfOrientation

        Returns
        -------
        None

        """
        return _V3d.V3d_DirectionalLight_SetDirection(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _V3d.delete_V3d_DirectionalLight

# Register V3d_DirectionalLight in _V3d:
_V3d.V3d_DirectionalLight_swigregister(V3d_DirectionalLight)

class V3d_PositionalLight(V3d_PositionLight):
    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 isolated light source in the viewer with default attenuation factors (1.0, 0.0).

        Parameters
        ----------
        thePos: gp_Pnt
        theColor: Quantity_Color,optional
        	default value is Quantity_NOC_WHITE

        Returns
        -------
        None

        """
        _V3d.V3d_PositionalLight_swiginit(self, _V3d.new_V3d_PositionalLight(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _V3d.delete_V3d_PositionalLight

# Register V3d_PositionalLight in _V3d:
_V3d.V3d_PositionalLight_swigregister(V3d_PositionalLight)

class V3d_SpotLight(V3d_PositionLight):
    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 light source of the spot type in the viewer with default attenuation factors (1.0, 0.0), concentration factor 1.0 and spot angle 30 degrees.

        Parameters
        ----------
        thePos: gp_Pnt
        theDirection: V3d_TypeOfOrientation,optional
        	default value is V3d_XnegYnegZpos
        theColor: Quantity_Color,optional
        	default value is Quantity_NOC_WHITE

        Returns
        -------
        None
        Creates a light source of the spot type in the viewer with default attenuation factors (1.0, 0.0), concentration factor 1.0 and spot angle 30 degrees.

        Parameters
        ----------
        thePos: gp_Pnt
        theDirection: gp_Dir
        theColor: Quantity_Color,optional
        	default value is Quantity_NOC_WHITE

        Returns
        -------
        None

        """
        _V3d.V3d_SpotLight_swiginit(self, _V3d.new_V3d_SpotLight(*args))

    def SetDirection(self, *args) -> "void":
        r"""
        Defines the direction of the light source according to a predefined directional vector.

        Parameters
        ----------
        theOrientation: V3d_TypeOfOrientation

        Returns
        -------
        None

        """
        return _V3d.V3d_SpotLight_SetDirection(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _V3d.delete_V3d_SpotLight

# Register V3d_SpotLight in _V3d:
_V3d.V3d_SpotLight_swigregister(V3d_SpotLight)


V3d_Light=OCC.Core.Graphic3d.Graphic3d_CLight
V3d_TypeOfLight=OCC.Core.Graphic3d.Graphic3d_TypeOfLightSource
V3d_TypeOfShadingModel=OCC.Core.Graphic3d.Graphic3d_TypeOfShadingModel



