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

"""
Graphic3d module, see official documentation at
https://dev.opencascade.org/doc/occt-7.9.0/refman/html/package_graphic3d.html
"""

from sys import version_info as _swig_python_version_info
# Import the low-level C/C++ module
if getattr(globals().get("__spec__"), "parent", None) or __package__ or "." in __name__:
    from . import _Graphic3d
else:
    import _Graphic3d

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 == "this":
            set(self, name, value)
        elif name == "thisown":
            self.this.own(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__ = _Graphic3d.delete_SwigPyIterator

    def value(self):
        return _Graphic3d.SwigPyIterator_value(self)

    def incr(self, n=1):
        return _Graphic3d.SwigPyIterator_incr(self, n)

    def decr(self, n=1):
        return _Graphic3d.SwigPyIterator_decr(self, n)

    def distance(self, x):
        return _Graphic3d.SwigPyIterator_distance(self, x)

    def equal(self, x):
        return _Graphic3d.SwigPyIterator_equal(self, x)

    def copy(self):
        return _Graphic3d.SwigPyIterator_copy(self)

    def next(self):
        return _Graphic3d.SwigPyIterator_next(self)

    def __next__(self):
        return _Graphic3d.SwigPyIterator___next__(self)

    def previous(self):
        return _Graphic3d.SwigPyIterator_previous(self)

    def advance(self, n):
        return _Graphic3d.SwigPyIterator_advance(self, n)

    def __eq__(self, x):
        return _Graphic3d.SwigPyIterator___eq__(self, x)

    def __ne__(self, x):
        return _Graphic3d.SwigPyIterator___ne__(self, x)

    def __iadd__(self, n):
        return _Graphic3d.SwigPyIterator___iadd__(self, n)

    def __isub__(self, n):
        return _Graphic3d.SwigPyIterator___isub__(self, n)

    def __add__(self, n):
        return _Graphic3d.SwigPyIterator___add__(self, n)

    def __sub__(self, *args):
        return _Graphic3d.SwigPyIterator___sub__(self, *args)
    def __iter__(self):
        return self

# Register SwigPyIterator in _Graphic3d:
_Graphic3d.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, method_name, class_name):
    return _Graphic3d.process_exception(error, method_name, class_name)

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

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

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr
    erase_event = _Graphic3d.ios_base_erase_event
    imbue_event = _Graphic3d.ios_base_imbue_event
    copyfmt_event = _Graphic3d.ios_base_copyfmt_event

    def register_callback(self, __fn, __index):
        return _Graphic3d.ios_base_register_callback(self, __fn, __index)

    def flags(self, *args):
        return _Graphic3d.ios_base_flags(self, *args)

    def setf(self, *args):
        return _Graphic3d.ios_base_setf(self, *args)

    def unsetf(self, __mask):
        return _Graphic3d.ios_base_unsetf(self, __mask)

    def precision(self, *args):
        return _Graphic3d.ios_base_precision(self, *args)

    def width(self, *args):
        return _Graphic3d.ios_base_width(self, *args)

    @staticmethod
    def sync_with_stdio(__sync=True):
        return _Graphic3d.ios_base_sync_with_stdio(__sync)

    def imbue(self, __loc):
        return _Graphic3d.ios_base_imbue(self, __loc)

    def getloc(self):
        return _Graphic3d.ios_base_getloc(self)

    @staticmethod
    def xalloc():
        return _Graphic3d.ios_base_xalloc()

    def iword(self, __ix):
        return _Graphic3d.ios_base_iword(self, __ix)

    def pword(self, __ix):
        return _Graphic3d.ios_base_pword(self, __ix)
    __swig_destroy__ = _Graphic3d.delete_ios_base

# Register ios_base in _Graphic3d:
_Graphic3d.ios_base_swigregister(ios_base)
cvar = _Graphic3d.cvar
ios_base.boolalpha = _Graphic3d.cvar.ios_base_boolalpha
ios_base.dec = _Graphic3d.cvar.ios_base_dec
ios_base.fixed = _Graphic3d.cvar.ios_base_fixed
ios_base.hex = _Graphic3d.cvar.ios_base_hex
ios_base.internal = _Graphic3d.cvar.ios_base_internal
ios_base.left = _Graphic3d.cvar.ios_base_left
ios_base.oct = _Graphic3d.cvar.ios_base_oct
ios_base.right = _Graphic3d.cvar.ios_base_right
ios_base.scientific = _Graphic3d.cvar.ios_base_scientific
ios_base.showbase = _Graphic3d.cvar.ios_base_showbase
ios_base.showpoint = _Graphic3d.cvar.ios_base_showpoint
ios_base.showpos = _Graphic3d.cvar.ios_base_showpos
ios_base.skipws = _Graphic3d.cvar.ios_base_skipws
ios_base.unitbuf = _Graphic3d.cvar.ios_base_unitbuf
ios_base.uppercase = _Graphic3d.cvar.ios_base_uppercase
ios_base.adjustfield = _Graphic3d.cvar.ios_base_adjustfield
ios_base.basefield = _Graphic3d.cvar.ios_base_basefield
ios_base.floatfield = _Graphic3d.cvar.ios_base_floatfield
ios_base.badbit = _Graphic3d.cvar.ios_base_badbit
ios_base.eofbit = _Graphic3d.cvar.ios_base_eofbit
ios_base.failbit = _Graphic3d.cvar.ios_base_failbit
ios_base.goodbit = _Graphic3d.cvar.ios_base_goodbit
ios_base.app = _Graphic3d.cvar.ios_base_app
ios_base.ate = _Graphic3d.cvar.ios_base_ate
ios_base.binary = _Graphic3d.cvar.ios_base_binary
ios_base.ios_base_in = _Graphic3d.cvar.ios_base_ios_base_in
ios_base.out = _Graphic3d.cvar.ios_base_out
ios_base.trunc = _Graphic3d.cvar.ios_base_trunc
ios_base.beg = _Graphic3d.cvar.ios_base_beg
ios_base.cur = _Graphic3d.cvar.ios_base_cur
ios_base.end = _Graphic3d.cvar.ios_base_end

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

    def rdstate(self):
        return _Graphic3d.ios_rdstate(self)

    def clear(self, *args):
        return _Graphic3d.ios_clear(self, *args)

    def setstate(self, __state):
        return _Graphic3d.ios_setstate(self, __state)

    def good(self):
        return _Graphic3d.ios_good(self)

    def eof(self):
        return _Graphic3d.ios_eof(self)

    def fail(self):
        return _Graphic3d.ios_fail(self)

    def bad(self):
        return _Graphic3d.ios_bad(self)

    def exceptions(self, *args):
        return _Graphic3d.ios_exceptions(self, *args)

    def __init__(self, __sb):
        _Graphic3d.ios_swiginit(self, _Graphic3d.new_ios(__sb))
    __swig_destroy__ = _Graphic3d.delete_ios

    def tie(self, *args):
        return _Graphic3d.ios_tie(self, *args)

    def rdbuf(self, *args):
        return _Graphic3d.ios_rdbuf(self, *args)

    def copyfmt(self, __rhs):
        return _Graphic3d.ios_copyfmt(self, __rhs)

    def fill(self, *args):
        return _Graphic3d.ios_fill(self, *args)

    def imbue(self, __loc):
        return _Graphic3d.ios_imbue(self, __loc)

    def narrow(self, __c, __dfault):
        return _Graphic3d.ios_narrow(self, __c, __dfault)

    def widen(self, __c):
        return _Graphic3d.ios_widen(self, __c)

# Register ios in _Graphic3d:
_Graphic3d.ios_swigregister(ios)
class ostream(ios):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, __sb):
        _Graphic3d.ostream_swiginit(self, _Graphic3d.new_ostream(__sb))
    __swig_destroy__ = _Graphic3d.delete_ostream

    def __lshift__(self, *args):
        return _Graphic3d.ostream___lshift__(self, *args)

    def put(self, __c):
        return _Graphic3d.ostream_put(self, __c)

    def write(self, __s, __n):
        return _Graphic3d.ostream_write(self, __s, __n)

    def flush(self):
        return _Graphic3d.ostream_flush(self)

    def tellp(self):
        return _Graphic3d.ostream_tellp(self)

    def seekp(self, *args):
        return _Graphic3d.ostream_seekp(self, *args)

# Register ostream in _Graphic3d:
_Graphic3d.ostream_swigregister(ostream)
class istream(ios):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, __sb):
        _Graphic3d.istream_swiginit(self, _Graphic3d.new_istream(__sb))
    __swig_destroy__ = _Graphic3d.delete_istream

    def __rshift__(self, *args):
        return _Graphic3d.istream___rshift__(self, *args)

    def gcount(self):
        return _Graphic3d.istream_gcount(self)

    def get(self, *args):
        return _Graphic3d.istream_get(self, *args)

    def getline(self, *args):
        return _Graphic3d.istream_getline(self, *args)

    def ignore(self, *args):
        return _Graphic3d.istream_ignore(self, *args)

    def peek(self):
        return _Graphic3d.istream_peek(self)

    def read(self, __s, __n):
        return _Graphic3d.istream_read(self, __s, __n)

    def readsome(self, __s, __n):
        return _Graphic3d.istream_readsome(self, __s, __n)

    def putback(self, __c):
        return _Graphic3d.istream_putback(self, __c)

    def unget(self):
        return _Graphic3d.istream_unget(self)

    def sync(self):
        return _Graphic3d.istream_sync(self)

    def tellg(self):
        return _Graphic3d.istream_tellg(self)

    def seekg(self, *args):
        return _Graphic3d.istream_seekg(self, *args)

# Register istream in _Graphic3d:
_Graphic3d.istream_swigregister(istream)
class iostream(istream, ostream):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def __init__(self, __sb):
        _Graphic3d.iostream_swiginit(self, _Graphic3d.new_iostream(__sb))
    __swig_destroy__ = _Graphic3d.delete_iostream

# Register iostream in _Graphic3d:
_Graphic3d.iostream_swigregister(iostream)
cin = cvar.cin
cout = cvar.cout
cerr = cvar.cerr
clog = cvar.clog

endl_cb_ptr = _Graphic3d.endl_cb_ptr
endl = _Graphic3d.endl
ends_cb_ptr = _Graphic3d.ends_cb_ptr
ends = _Graphic3d.ends
flush_cb_ptr = _Graphic3d.flush_cb_ptr
flush = _Graphic3d.flush
import OCC.Core.Standard
import OCC.Core.NCollection
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 *

Graphic3d_AlphaMode_Opaque = _Graphic3d.Graphic3d_AlphaMode_Opaque
Graphic3d_AlphaMode_Mask = _Graphic3d.Graphic3d_AlphaMode_Mask
Graphic3d_AlphaMode_Blend = _Graphic3d.Graphic3d_AlphaMode_Blend
Graphic3d_AlphaMode_MaskBlend = _Graphic3d.Graphic3d_AlphaMode_MaskBlend
Graphic3d_AlphaMode_BlendAuto = _Graphic3d.Graphic3d_AlphaMode_BlendAuto
Graphic3d_ArrayFlags_None = _Graphic3d.Graphic3d_ArrayFlags_None
Graphic3d_ArrayFlags_VertexNormal = _Graphic3d.Graphic3d_ArrayFlags_VertexNormal
Graphic3d_ArrayFlags_VertexColor = _Graphic3d.Graphic3d_ArrayFlags_VertexColor
Graphic3d_ArrayFlags_VertexTexel = _Graphic3d.Graphic3d_ArrayFlags_VertexTexel
Graphic3d_ArrayFlags_BoundColor = _Graphic3d.Graphic3d_ArrayFlags_BoundColor
Graphic3d_ArrayFlags_AttribsMutable = _Graphic3d.Graphic3d_ArrayFlags_AttribsMutable
Graphic3d_ArrayFlags_AttribsDeinterleaved = _Graphic3d.Graphic3d_ArrayFlags_AttribsDeinterleaved
Graphic3d_ArrayFlags_IndexesMutable = _Graphic3d.Graphic3d_ArrayFlags_IndexesMutable
Graphic3d_FM_SCHLICK = _Graphic3d.Graphic3d_FM_SCHLICK
Graphic3d_FM_CONSTANT = _Graphic3d.Graphic3d_FM_CONSTANT
Graphic3d_FM_CONDUCTOR = _Graphic3d.Graphic3d_FM_CONDUCTOR
Graphic3d_FM_DIELECTRIC = _Graphic3d.Graphic3d_FM_DIELECTRIC
Graphic3d_TOA_POS = _Graphic3d.Graphic3d_TOA_POS
Graphic3d_TOA_NORM = _Graphic3d.Graphic3d_TOA_NORM
Graphic3d_TOA_UV = _Graphic3d.Graphic3d_TOA_UV
Graphic3d_TOA_COLOR = _Graphic3d.Graphic3d_TOA_COLOR
Graphic3d_TOA_CUSTOM = _Graphic3d.Graphic3d_TOA_CUSTOM
Graphic3d_TOD_USHORT = _Graphic3d.Graphic3d_TOD_USHORT
Graphic3d_TOD_UINT = _Graphic3d.Graphic3d_TOD_UINT
Graphic3d_TOD_VEC2 = _Graphic3d.Graphic3d_TOD_VEC2
Graphic3d_TOD_VEC3 = _Graphic3d.Graphic3d_TOD_VEC3
Graphic3d_TOD_VEC4 = _Graphic3d.Graphic3d_TOD_VEC4
Graphic3d_TOD_VEC4UB = _Graphic3d.Graphic3d_TOD_VEC4UB
Graphic3d_TOD_FLOAT = _Graphic3d.Graphic3d_TOD_FLOAT
Graphic3d_BT_RGB = _Graphic3d.Graphic3d_BT_RGB
Graphic3d_BT_RGBA = _Graphic3d.Graphic3d_BT_RGBA
Graphic3d_BT_Depth = _Graphic3d.Graphic3d_BT_Depth
Graphic3d_BT_RGB_RayTraceHdrLeft = _Graphic3d.Graphic3d_BT_RGB_RayTraceHdrLeft
Graphic3d_BT_Red = _Graphic3d.Graphic3d_BT_Red
Graphic3d_BT_ShadowMap = _Graphic3d.Graphic3d_BT_ShadowMap
Graphic3d_CappingFlags_None = _Graphic3d.Graphic3d_CappingFlags_None
Graphic3d_CappingFlags_ObjectMaterial = _Graphic3d.Graphic3d_CappingFlags_ObjectMaterial
Graphic3d_CappingFlags_ObjectTexture = _Graphic3d.Graphic3d_CappingFlags_ObjectTexture
Graphic3d_CappingFlags_ObjectShader = _Graphic3d.Graphic3d_CappingFlags_ObjectShader
Graphic3d_CappingFlags_ObjectAspect = _Graphic3d.Graphic3d_CappingFlags_ObjectAspect
Graphic3d_ClipState_Out = _Graphic3d.Graphic3d_ClipState_Out
Graphic3d_ClipState_In = _Graphic3d.Graphic3d_ClipState_In
Graphic3d_ClipState_On = _Graphic3d.Graphic3d_ClipState_On
Graphic3d_CMS_POS_X = _Graphic3d.Graphic3d_CMS_POS_X
Graphic3d_CMS_NEG_X = _Graphic3d.Graphic3d_CMS_NEG_X
Graphic3d_CMS_POS_Y = _Graphic3d.Graphic3d_CMS_POS_Y
Graphic3d_CMS_NEG_Y = _Graphic3d.Graphic3d_CMS_NEG_Y
Graphic3d_CMS_POS_Z = _Graphic3d.Graphic3d_CMS_POS_Z
Graphic3d_CMS_NEG_Z = _Graphic3d.Graphic3d_CMS_NEG_Z
Graphic3d_DiagnosticInfo_Device = _Graphic3d.Graphic3d_DiagnosticInfo_Device
Graphic3d_DiagnosticInfo_FrameBuffer = _Graphic3d.Graphic3d_DiagnosticInfo_FrameBuffer
Graphic3d_DiagnosticInfo_Limits = _Graphic3d.Graphic3d_DiagnosticInfo_Limits
Graphic3d_DiagnosticInfo_Memory = _Graphic3d.Graphic3d_DiagnosticInfo_Memory
Graphic3d_DiagnosticInfo_NativePlatform = _Graphic3d.Graphic3d_DiagnosticInfo_NativePlatform
Graphic3d_DiagnosticInfo_Extensions = _Graphic3d.Graphic3d_DiagnosticInfo_Extensions
Graphic3d_DiagnosticInfo_Short = _Graphic3d.Graphic3d_DiagnosticInfo_Short
Graphic3d_DiagnosticInfo_Basic = _Graphic3d.Graphic3d_DiagnosticInfo_Basic
Graphic3d_DiagnosticInfo_Complete = _Graphic3d.Graphic3d_DiagnosticInfo_Complete
Graphic3d_DisplayPriority_INVALID = _Graphic3d.Graphic3d_DisplayPriority_INVALID
Graphic3d_DisplayPriority_Bottom = _Graphic3d.Graphic3d_DisplayPriority_Bottom
Graphic3d_DisplayPriority_AlmostBottom = _Graphic3d.Graphic3d_DisplayPriority_AlmostBottom
Graphic3d_DisplayPriority_Below2 = _Graphic3d.Graphic3d_DisplayPriority_Below2
Graphic3d_DisplayPriority_Below1 = _Graphic3d.Graphic3d_DisplayPriority_Below1
Graphic3d_DisplayPriority_Below = _Graphic3d.Graphic3d_DisplayPriority_Below
Graphic3d_DisplayPriority_Normal = _Graphic3d.Graphic3d_DisplayPriority_Normal
Graphic3d_DisplayPriority_Above = _Graphic3d.Graphic3d_DisplayPriority_Above
Graphic3d_DisplayPriority_Above1 = _Graphic3d.Graphic3d_DisplayPriority_Above1
Graphic3d_DisplayPriority_Above2 = _Graphic3d.Graphic3d_DisplayPriority_Above2
Graphic3d_DisplayPriority_Highlight = _Graphic3d.Graphic3d_DisplayPriority_Highlight
Graphic3d_DisplayPriority_Topmost = _Graphic3d.Graphic3d_DisplayPriority_Topmost
Graphic3d_DisplayPriority_NB = _Graphic3d.Graphic3d_DisplayPriority_NB
Graphic3d_FrameStatsCounter_NbLayers = _Graphic3d.Graphic3d_FrameStatsCounter_NbLayers
Graphic3d_FrameStatsCounter_NbStructs = _Graphic3d.Graphic3d_FrameStatsCounter_NbStructs
Graphic3d_FrameStatsCounter_EstimatedBytesGeom = _Graphic3d.Graphic3d_FrameStatsCounter_EstimatedBytesGeom
Graphic3d_FrameStatsCounter_EstimatedBytesFbos = _Graphic3d.Graphic3d_FrameStatsCounter_EstimatedBytesFbos
Graphic3d_FrameStatsCounter_EstimatedBytesTextures = _Graphic3d.Graphic3d_FrameStatsCounter_EstimatedBytesTextures
Graphic3d_FrameStatsCounter_NbLayersNotCulled = _Graphic3d.Graphic3d_FrameStatsCounter_NbLayersNotCulled
Graphic3d_FrameStatsCounter_NbStructsNotCulled = _Graphic3d.Graphic3d_FrameStatsCounter_NbStructsNotCulled
Graphic3d_FrameStatsCounter_NbGroupsNotCulled = _Graphic3d.Graphic3d_FrameStatsCounter_NbGroupsNotCulled
Graphic3d_FrameStatsCounter_NbElemsNotCulled = _Graphic3d.Graphic3d_FrameStatsCounter_NbElemsNotCulled
Graphic3d_FrameStatsCounter_NbElemsFillNotCulled = _Graphic3d.Graphic3d_FrameStatsCounter_NbElemsFillNotCulled
Graphic3d_FrameStatsCounter_NbElemsLineNotCulled = _Graphic3d.Graphic3d_FrameStatsCounter_NbElemsLineNotCulled
Graphic3d_FrameStatsCounter_NbElemsPointNotCulled = _Graphic3d.Graphic3d_FrameStatsCounter_NbElemsPointNotCulled
Graphic3d_FrameStatsCounter_NbElemsTextNotCulled = _Graphic3d.Graphic3d_FrameStatsCounter_NbElemsTextNotCulled
Graphic3d_FrameStatsCounter_NbTrianglesNotCulled = _Graphic3d.Graphic3d_FrameStatsCounter_NbTrianglesNotCulled
Graphic3d_FrameStatsCounter_NbLinesNotCulled = _Graphic3d.Graphic3d_FrameStatsCounter_NbLinesNotCulled
Graphic3d_FrameStatsCounter_NbPointsNotCulled = _Graphic3d.Graphic3d_FrameStatsCounter_NbPointsNotCulled
Graphic3d_FrameStatsCounter_NbLayersImmediate = _Graphic3d.Graphic3d_FrameStatsCounter_NbLayersImmediate
Graphic3d_FrameStatsCounter_NbStructsImmediate = _Graphic3d.Graphic3d_FrameStatsCounter_NbStructsImmediate
Graphic3d_FrameStatsCounter_NbGroupsImmediate = _Graphic3d.Graphic3d_FrameStatsCounter_NbGroupsImmediate
Graphic3d_FrameStatsCounter_NbElemsImmediate = _Graphic3d.Graphic3d_FrameStatsCounter_NbElemsImmediate
Graphic3d_FrameStatsCounter_NbElemsFillImmediate = _Graphic3d.Graphic3d_FrameStatsCounter_NbElemsFillImmediate
Graphic3d_FrameStatsCounter_NbElemsLineImmediate = _Graphic3d.Graphic3d_FrameStatsCounter_NbElemsLineImmediate
Graphic3d_FrameStatsCounter_NbElemsPointImmediate = _Graphic3d.Graphic3d_FrameStatsCounter_NbElemsPointImmediate
Graphic3d_FrameStatsCounter_NbElemsTextImmediate = _Graphic3d.Graphic3d_FrameStatsCounter_NbElemsTextImmediate
Graphic3d_FrameStatsCounter_NbTrianglesImmediate = _Graphic3d.Graphic3d_FrameStatsCounter_NbTrianglesImmediate
Graphic3d_FrameStatsCounter_NbLinesImmediate = _Graphic3d.Graphic3d_FrameStatsCounter_NbLinesImmediate
Graphic3d_FrameStatsCounter_NbPointsImmediate = _Graphic3d.Graphic3d_FrameStatsCounter_NbPointsImmediate
Graphic3d_FrameStatsCounter_NB = _Graphic3d.Graphic3d_FrameStatsCounter_NB
Graphic3d_FrameStatsCounter_SCENE_LOWER = _Graphic3d.Graphic3d_FrameStatsCounter_SCENE_LOWER
Graphic3d_FrameStatsCounter_SCENE_UPPER = _Graphic3d.Graphic3d_FrameStatsCounter_SCENE_UPPER
Graphic3d_FrameStatsCounter_RENDERED_LOWER = _Graphic3d.Graphic3d_FrameStatsCounter_RENDERED_LOWER
Graphic3d_FrameStatsCounter_RENDERED_UPPER = _Graphic3d.Graphic3d_FrameStatsCounter_RENDERED_UPPER
Graphic3d_FrameStatsCounter_IMMEDIATE_LOWER = _Graphic3d.Graphic3d_FrameStatsCounter_IMMEDIATE_LOWER
Graphic3d_FrameStatsCounter_IMMEDIATE_UPPER = _Graphic3d.Graphic3d_FrameStatsCounter_IMMEDIATE_UPPER
Graphic3d_FrameStatsTimer_ElapsedFrame = _Graphic3d.Graphic3d_FrameStatsTimer_ElapsedFrame
Graphic3d_FrameStatsTimer_CpuFrame = _Graphic3d.Graphic3d_FrameStatsTimer_CpuFrame
Graphic3d_FrameStatsTimer_CpuCulling = _Graphic3d.Graphic3d_FrameStatsTimer_CpuCulling
Graphic3d_FrameStatsTimer_CpuPicking = _Graphic3d.Graphic3d_FrameStatsTimer_CpuPicking
Graphic3d_FrameStatsTimer_CpuDynamics = _Graphic3d.Graphic3d_FrameStatsTimer_CpuDynamics
Graphic3d_FrameStatsTimer_NB = _Graphic3d.Graphic3d_FrameStatsTimer_NB
Graphic3d_ASPECT_LINE = _Graphic3d.Graphic3d_ASPECT_LINE
Graphic3d_ASPECT_TEXT = _Graphic3d.Graphic3d_ASPECT_TEXT
Graphic3d_ASPECT_MARKER = _Graphic3d.Graphic3d_ASPECT_MARKER
Graphic3d_ASPECT_FILL_AREA = _Graphic3d.Graphic3d_ASPECT_FILL_AREA
Graphic3d_HTA_LEFT = _Graphic3d.Graphic3d_HTA_LEFT
Graphic3d_HTA_CENTER = _Graphic3d.Graphic3d_HTA_CENTER
Graphic3d_HTA_RIGHT = _Graphic3d.Graphic3d_HTA_RIGHT
Graphic3d_LOTA_OFF = _Graphic3d.Graphic3d_LOTA_OFF
Graphic3d_LOTA_FAST = _Graphic3d.Graphic3d_LOTA_FAST
Graphic3d_LOTA_MIDDLE = _Graphic3d.Graphic3d_LOTA_MIDDLE
Graphic3d_LOTA_QUALITY = _Graphic3d.Graphic3d_LOTA_QUALITY
Graphic3d_NameOfMaterial_Brass = _Graphic3d.Graphic3d_NameOfMaterial_Brass
Graphic3d_NameOfMaterial_Bronze = _Graphic3d.Graphic3d_NameOfMaterial_Bronze
Graphic3d_NameOfMaterial_Copper = _Graphic3d.Graphic3d_NameOfMaterial_Copper
Graphic3d_NameOfMaterial_Gold = _Graphic3d.Graphic3d_NameOfMaterial_Gold
Graphic3d_NameOfMaterial_Pewter = _Graphic3d.Graphic3d_NameOfMaterial_Pewter
Graphic3d_NameOfMaterial_Plastered = _Graphic3d.Graphic3d_NameOfMaterial_Plastered
Graphic3d_NameOfMaterial_Plastified = _Graphic3d.Graphic3d_NameOfMaterial_Plastified
Graphic3d_NameOfMaterial_Silver = _Graphic3d.Graphic3d_NameOfMaterial_Silver
Graphic3d_NameOfMaterial_Steel = _Graphic3d.Graphic3d_NameOfMaterial_Steel
Graphic3d_NameOfMaterial_Stone = _Graphic3d.Graphic3d_NameOfMaterial_Stone
Graphic3d_NameOfMaterial_ShinyPlastified = _Graphic3d.Graphic3d_NameOfMaterial_ShinyPlastified
Graphic3d_NameOfMaterial_Satin = _Graphic3d.Graphic3d_NameOfMaterial_Satin
Graphic3d_NameOfMaterial_Metalized = _Graphic3d.Graphic3d_NameOfMaterial_Metalized
Graphic3d_NameOfMaterial_Ionized = _Graphic3d.Graphic3d_NameOfMaterial_Ionized
Graphic3d_NameOfMaterial_Chrome = _Graphic3d.Graphic3d_NameOfMaterial_Chrome
Graphic3d_NameOfMaterial_Aluminum = _Graphic3d.Graphic3d_NameOfMaterial_Aluminum
Graphic3d_NameOfMaterial_Obsidian = _Graphic3d.Graphic3d_NameOfMaterial_Obsidian
Graphic3d_NameOfMaterial_Neon = _Graphic3d.Graphic3d_NameOfMaterial_Neon
Graphic3d_NameOfMaterial_Jade = _Graphic3d.Graphic3d_NameOfMaterial_Jade
Graphic3d_NameOfMaterial_Charcoal = _Graphic3d.Graphic3d_NameOfMaterial_Charcoal
Graphic3d_NameOfMaterial_Water = _Graphic3d.Graphic3d_NameOfMaterial_Water
Graphic3d_NameOfMaterial_Glass = _Graphic3d.Graphic3d_NameOfMaterial_Glass
Graphic3d_NameOfMaterial_Diamond = _Graphic3d.Graphic3d_NameOfMaterial_Diamond
Graphic3d_NameOfMaterial_Transparent = _Graphic3d.Graphic3d_NameOfMaterial_Transparent
Graphic3d_NameOfMaterial_DEFAULT = _Graphic3d.Graphic3d_NameOfMaterial_DEFAULT
Graphic3d_NameOfMaterial_UserDefined = _Graphic3d.Graphic3d_NameOfMaterial_UserDefined
Graphic3d_NOM_BRASS = _Graphic3d.Graphic3d_NOM_BRASS
Graphic3d_NOM_BRONZE = _Graphic3d.Graphic3d_NOM_BRONZE
Graphic3d_NOM_COPPER = _Graphic3d.Graphic3d_NOM_COPPER
Graphic3d_NOM_GOLD = _Graphic3d.Graphic3d_NOM_GOLD
Graphic3d_NOM_PEWTER = _Graphic3d.Graphic3d_NOM_PEWTER
Graphic3d_NOM_PLASTER = _Graphic3d.Graphic3d_NOM_PLASTER
Graphic3d_NOM_PLASTIC = _Graphic3d.Graphic3d_NOM_PLASTIC
Graphic3d_NOM_SILVER = _Graphic3d.Graphic3d_NOM_SILVER
Graphic3d_NOM_STEEL = _Graphic3d.Graphic3d_NOM_STEEL
Graphic3d_NOM_STONE = _Graphic3d.Graphic3d_NOM_STONE
Graphic3d_NOM_SHINY_PLASTIC = _Graphic3d.Graphic3d_NOM_SHINY_PLASTIC
Graphic3d_NOM_SATIN = _Graphic3d.Graphic3d_NOM_SATIN
Graphic3d_NOM_METALIZED = _Graphic3d.Graphic3d_NOM_METALIZED
Graphic3d_NOM_NEON_GNC = _Graphic3d.Graphic3d_NOM_NEON_GNC
Graphic3d_NOM_CHROME = _Graphic3d.Graphic3d_NOM_CHROME
Graphic3d_NOM_ALUMINIUM = _Graphic3d.Graphic3d_NOM_ALUMINIUM
Graphic3d_NOM_OBSIDIAN = _Graphic3d.Graphic3d_NOM_OBSIDIAN
Graphic3d_NOM_NEON_PHC = _Graphic3d.Graphic3d_NOM_NEON_PHC
Graphic3d_NOM_JADE = _Graphic3d.Graphic3d_NOM_JADE
Graphic3d_NOM_CHARCOAL = _Graphic3d.Graphic3d_NOM_CHARCOAL
Graphic3d_NOM_WATER = _Graphic3d.Graphic3d_NOM_WATER
Graphic3d_NOM_GLASS = _Graphic3d.Graphic3d_NOM_GLASS
Graphic3d_NOM_DIAMOND = _Graphic3d.Graphic3d_NOM_DIAMOND
Graphic3d_NOM_TRANSPARENT = _Graphic3d.Graphic3d_NOM_TRANSPARENT
Graphic3d_NOM_DEFAULT = _Graphic3d.Graphic3d_NOM_DEFAULT
Graphic3d_NOM_UserDefined = _Graphic3d.Graphic3d_NOM_UserDefined
Graphic3d_NOT_1D_ELEVATION = _Graphic3d.Graphic3d_NOT_1D_ELEVATION
Graphic3d_NOT_1D_UNKNOWN = _Graphic3d.Graphic3d_NOT_1D_UNKNOWN
Graphic3d_NOT_2D_MATRA = _Graphic3d.Graphic3d_NOT_2D_MATRA
Graphic3d_NOT_2D_ALIENSKIN = _Graphic3d.Graphic3d_NOT_2D_ALIENSKIN
Graphic3d_NOT_2D_BLUE_ROCK = _Graphic3d.Graphic3d_NOT_2D_BLUE_ROCK
Graphic3d_NOT_2D_BLUEWHITE_PAPER = _Graphic3d.Graphic3d_NOT_2D_BLUEWHITE_PAPER
Graphic3d_NOT_2D_BRUSHED = _Graphic3d.Graphic3d_NOT_2D_BRUSHED
Graphic3d_NOT_2D_BUBBLES = _Graphic3d.Graphic3d_NOT_2D_BUBBLES
Graphic3d_NOT_2D_BUMP = _Graphic3d.Graphic3d_NOT_2D_BUMP
Graphic3d_NOT_2D_CAST = _Graphic3d.Graphic3d_NOT_2D_CAST
Graphic3d_NOT_2D_CHIPBD = _Graphic3d.Graphic3d_NOT_2D_CHIPBD
Graphic3d_NOT_2D_CLOUDS = _Graphic3d.Graphic3d_NOT_2D_CLOUDS
Graphic3d_NOT_2D_FLESH = _Graphic3d.Graphic3d_NOT_2D_FLESH
Graphic3d_NOT_2D_FLOOR = _Graphic3d.Graphic3d_NOT_2D_FLOOR
Graphic3d_NOT_2D_GALVNISD = _Graphic3d.Graphic3d_NOT_2D_GALVNISD
Graphic3d_NOT_2D_GRASS = _Graphic3d.Graphic3d_NOT_2D_GRASS
Graphic3d_NOT_2D_ALUMINUM = _Graphic3d.Graphic3d_NOT_2D_ALUMINUM
Graphic3d_NOT_2D_ROCK = _Graphic3d.Graphic3d_NOT_2D_ROCK
Graphic3d_NOT_2D_KNURL = _Graphic3d.Graphic3d_NOT_2D_KNURL
Graphic3d_NOT_2D_MAPLE = _Graphic3d.Graphic3d_NOT_2D_MAPLE
Graphic3d_NOT_2D_MARBLE = _Graphic3d.Graphic3d_NOT_2D_MARBLE
Graphic3d_NOT_2D_MOTTLED = _Graphic3d.Graphic3d_NOT_2D_MOTTLED
Graphic3d_NOT_2D_RAIN = _Graphic3d.Graphic3d_NOT_2D_RAIN
Graphic3d_NOT_2D_CHESS = _Graphic3d.Graphic3d_NOT_2D_CHESS
Graphic3d_NOT_2D_UNKNOWN = _Graphic3d.Graphic3d_NOT_2D_UNKNOWN
Graphic3d_NOT_ENV_CLOUDS = _Graphic3d.Graphic3d_NOT_ENV_CLOUDS
Graphic3d_NOT_ENV_CV = _Graphic3d.Graphic3d_NOT_ENV_CV
Graphic3d_NOT_ENV_MEDIT = _Graphic3d.Graphic3d_NOT_ENV_MEDIT
Graphic3d_NOT_ENV_PEARL = _Graphic3d.Graphic3d_NOT_ENV_PEARL
Graphic3d_NOT_ENV_SKY1 = _Graphic3d.Graphic3d_NOT_ENV_SKY1
Graphic3d_NOT_ENV_SKY2 = _Graphic3d.Graphic3d_NOT_ENV_SKY2
Graphic3d_NOT_ENV_LINES = _Graphic3d.Graphic3d_NOT_ENV_LINES
Graphic3d_NOT_ENV_ROAD = _Graphic3d.Graphic3d_NOT_ENV_ROAD
Graphic3d_NOT_ENV_UNKNOWN = _Graphic3d.Graphic3d_NOT_ENV_UNKNOWN
Graphic3d_NOTP_XY = _Graphic3d.Graphic3d_NOTP_XY
Graphic3d_NOTP_YZ = _Graphic3d.Graphic3d_NOTP_YZ
Graphic3d_NOTP_ZX = _Graphic3d.Graphic3d_NOTP_ZX
Graphic3d_NOTP_UNKNOWN = _Graphic3d.Graphic3d_NOTP_UNKNOWN
Graphic3d_RTM_BLEND_UNORDERED = _Graphic3d.Graphic3d_RTM_BLEND_UNORDERED
Graphic3d_RTM_BLEND_OIT = _Graphic3d.Graphic3d_RTM_BLEND_OIT
Graphic3d_RTM_DEPTH_PEELING_OIT = _Graphic3d.Graphic3d_RTM_DEPTH_PEELING_OIT
Graphic3d_RM_RASTERIZATION = _Graphic3d.Graphic3d_RM_RASTERIZATION
Graphic3d_RM_RAYTRACING = _Graphic3d.Graphic3d_RM_RAYTRACING
Graphic3d_ShaderFlags_VertColor = _Graphic3d.Graphic3d_ShaderFlags_VertColor
Graphic3d_ShaderFlags_TextureRGB = _Graphic3d.Graphic3d_ShaderFlags_TextureRGB
Graphic3d_ShaderFlags_TextureEnv = _Graphic3d.Graphic3d_ShaderFlags_TextureEnv
Graphic3d_ShaderFlags_TextureNormal = _Graphic3d.Graphic3d_ShaderFlags_TextureNormal
Graphic3d_ShaderFlags_PointSimple = _Graphic3d.Graphic3d_ShaderFlags_PointSimple
Graphic3d_ShaderFlags_PointSprite = _Graphic3d.Graphic3d_ShaderFlags_PointSprite
Graphic3d_ShaderFlags_PointSpriteA = _Graphic3d.Graphic3d_ShaderFlags_PointSpriteA
Graphic3d_ShaderFlags_StippleLine = _Graphic3d.Graphic3d_ShaderFlags_StippleLine
Graphic3d_ShaderFlags_ClipPlanes1 = _Graphic3d.Graphic3d_ShaderFlags_ClipPlanes1
Graphic3d_ShaderFlags_ClipPlanes2 = _Graphic3d.Graphic3d_ShaderFlags_ClipPlanes2
Graphic3d_ShaderFlags_ClipPlanesN = _Graphic3d.Graphic3d_ShaderFlags_ClipPlanesN
Graphic3d_ShaderFlags_ClipChains = _Graphic3d.Graphic3d_ShaderFlags_ClipChains
Graphic3d_ShaderFlags_MeshEdges = _Graphic3d.Graphic3d_ShaderFlags_MeshEdges
Graphic3d_ShaderFlags_AlphaTest = _Graphic3d.Graphic3d_ShaderFlags_AlphaTest
Graphic3d_ShaderFlags_WriteOit = _Graphic3d.Graphic3d_ShaderFlags_WriteOit
Graphic3d_ShaderFlags_OitDepthPeeling = _Graphic3d.Graphic3d_ShaderFlags_OitDepthPeeling
Graphic3d_ShaderFlags_NB = _Graphic3d.Graphic3d_ShaderFlags_NB
Graphic3d_ShaderFlags_IsPoint = _Graphic3d.Graphic3d_ShaderFlags_IsPoint
Graphic3d_ShaderFlags_HasTextures = _Graphic3d.Graphic3d_ShaderFlags_HasTextures
Graphic3d_ShaderFlags_NeedsGeomShader = _Graphic3d.Graphic3d_ShaderFlags_NeedsGeomShader
Graphic3d_GlslExtension_GL_OES_standard_derivatives = _Graphic3d.Graphic3d_GlslExtension_GL_OES_standard_derivatives
Graphic3d_GlslExtension_GL_EXT_shader_texture_lod = _Graphic3d.Graphic3d_GlslExtension_GL_EXT_shader_texture_lod
Graphic3d_GlslExtension_GL_EXT_frag_depth = _Graphic3d.Graphic3d_GlslExtension_GL_EXT_frag_depth
Graphic3d_GlslExtension_GL_EXT_gpu_shader4 = _Graphic3d.Graphic3d_GlslExtension_GL_EXT_gpu_shader4
Graphic3d_GlslExtension_NB = _Graphic3d.Graphic3d_GlslExtension_NB
Graphic3d_StereoMode_QuadBuffer = _Graphic3d.Graphic3d_StereoMode_QuadBuffer
Graphic3d_StereoMode_Anaglyph = _Graphic3d.Graphic3d_StereoMode_Anaglyph
Graphic3d_StereoMode_RowInterlaced = _Graphic3d.Graphic3d_StereoMode_RowInterlaced
Graphic3d_StereoMode_ColumnInterlaced = _Graphic3d.Graphic3d_StereoMode_ColumnInterlaced
Graphic3d_StereoMode_ChessBoard = _Graphic3d.Graphic3d_StereoMode_ChessBoard
Graphic3d_StereoMode_SideBySide = _Graphic3d.Graphic3d_StereoMode_SideBySide
Graphic3d_StereoMode_OverUnder = _Graphic3d.Graphic3d_StereoMode_OverUnder
Graphic3d_StereoMode_SoftPageFlip = _Graphic3d.Graphic3d_StereoMode_SoftPageFlip
Graphic3d_StereoMode_OpenVR = _Graphic3d.Graphic3d_StereoMode_OpenVR
Graphic3d_StereoMode_NB = _Graphic3d.Graphic3d_StereoMode_NB
Graphic3d_TP_UP = _Graphic3d.Graphic3d_TP_UP
Graphic3d_TP_DOWN = _Graphic3d.Graphic3d_TP_DOWN
Graphic3d_TP_LEFT = _Graphic3d.Graphic3d_TP_LEFT
Graphic3d_TP_RIGHT = _Graphic3d.Graphic3d_TP_RIGHT
Graphic3d_TextureSetBits_NONE = _Graphic3d.Graphic3d_TextureSetBits_NONE
Graphic3d_TextureSetBits_BaseColor = _Graphic3d.Graphic3d_TextureSetBits_BaseColor
Graphic3d_TextureSetBits_Emissive = _Graphic3d.Graphic3d_TextureSetBits_Emissive
Graphic3d_TextureSetBits_Occlusion = _Graphic3d.Graphic3d_TextureSetBits_Occlusion
Graphic3d_TextureSetBits_Normal = _Graphic3d.Graphic3d_TextureSetBits_Normal
Graphic3d_TextureSetBits_MetallicRoughness = _Graphic3d.Graphic3d_TextureSetBits_MetallicRoughness
Graphic3d_TextureUnit_0 = _Graphic3d.Graphic3d_TextureUnit_0
Graphic3d_TextureUnit_1 = _Graphic3d.Graphic3d_TextureUnit_1
Graphic3d_TextureUnit_2 = _Graphic3d.Graphic3d_TextureUnit_2
Graphic3d_TextureUnit_3 = _Graphic3d.Graphic3d_TextureUnit_3
Graphic3d_TextureUnit_4 = _Graphic3d.Graphic3d_TextureUnit_4
Graphic3d_TextureUnit_5 = _Graphic3d.Graphic3d_TextureUnit_5
Graphic3d_TextureUnit_6 = _Graphic3d.Graphic3d_TextureUnit_6
Graphic3d_TextureUnit_7 = _Graphic3d.Graphic3d_TextureUnit_7
Graphic3d_TextureUnit_8 = _Graphic3d.Graphic3d_TextureUnit_8
Graphic3d_TextureUnit_9 = _Graphic3d.Graphic3d_TextureUnit_9
Graphic3d_TextureUnit_10 = _Graphic3d.Graphic3d_TextureUnit_10
Graphic3d_TextureUnit_11 = _Graphic3d.Graphic3d_TextureUnit_11
Graphic3d_TextureUnit_12 = _Graphic3d.Graphic3d_TextureUnit_12
Graphic3d_TextureUnit_13 = _Graphic3d.Graphic3d_TextureUnit_13
Graphic3d_TextureUnit_14 = _Graphic3d.Graphic3d_TextureUnit_14
Graphic3d_TextureUnit_15 = _Graphic3d.Graphic3d_TextureUnit_15
Graphic3d_TextureUnit_BaseColor = _Graphic3d.Graphic3d_TextureUnit_BaseColor
Graphic3d_TextureUnit_Emissive = _Graphic3d.Graphic3d_TextureUnit_Emissive
Graphic3d_TextureUnit_Occlusion = _Graphic3d.Graphic3d_TextureUnit_Occlusion
Graphic3d_TextureUnit_Normal = _Graphic3d.Graphic3d_TextureUnit_Normal
Graphic3d_TextureUnit_MetallicRoughness = _Graphic3d.Graphic3d_TextureUnit_MetallicRoughness
Graphic3d_TextureUnit_EnvMap = _Graphic3d.Graphic3d_TextureUnit_EnvMap
Graphic3d_TextureUnit_PointSprite = _Graphic3d.Graphic3d_TextureUnit_PointSprite
Graphic3d_TextureUnit_DepthPeelingDepth = _Graphic3d.Graphic3d_TextureUnit_DepthPeelingDepth
Graphic3d_TextureUnit_DepthPeelingFrontColor = _Graphic3d.Graphic3d_TextureUnit_DepthPeelingFrontColor
Graphic3d_TextureUnit_ShadowMap = _Graphic3d.Graphic3d_TextureUnit_ShadowMap
Graphic3d_TextureUnit_PbrEnvironmentLUT = _Graphic3d.Graphic3d_TextureUnit_PbrEnvironmentLUT
Graphic3d_TextureUnit_PbrIblDiffuseSH = _Graphic3d.Graphic3d_TextureUnit_PbrIblDiffuseSH
Graphic3d_TextureUnit_PbrIblSpecular = _Graphic3d.Graphic3d_TextureUnit_PbrIblSpecular
Graphic3d_TextureUnit_NB = _Graphic3d.Graphic3d_TextureUnit_NB
Graphic3d_ToneMappingMethod_Disabled = _Graphic3d.Graphic3d_ToneMappingMethod_Disabled
Graphic3d_ToneMappingMethod_Filmic = _Graphic3d.Graphic3d_ToneMappingMethod_Filmic
Graphic3d_TMF_None = _Graphic3d.Graphic3d_TMF_None
Graphic3d_TMF_ZoomPers = _Graphic3d.Graphic3d_TMF_ZoomPers
Graphic3d_TMF_RotatePers = _Graphic3d.Graphic3d_TMF_RotatePers
Graphic3d_TMF_TriedronPers = _Graphic3d.Graphic3d_TMF_TriedronPers
Graphic3d_TMF_2d = _Graphic3d.Graphic3d_TMF_2d
Graphic3d_TMF_CameraPers = _Graphic3d.Graphic3d_TMF_CameraPers
Graphic3d_TMF_OrthoPers = _Graphic3d.Graphic3d_TMF_OrthoPers
Graphic3d_TMF_AxialScalePers = _Graphic3d.Graphic3d_TMF_AxialScalePers
Graphic3d_TMF_ZoomRotatePers = _Graphic3d.Graphic3d_TMF_ZoomRotatePers
Graphic3d_TMF_AxialZoomPers = _Graphic3d.Graphic3d_TMF_AxialZoomPers
Graphic3d_TOA_YES = _Graphic3d.Graphic3d_TOA_YES
Graphic3d_TOA_NO = _Graphic3d.Graphic3d_TOA_NO
Graphic3d_TOA_COMPUTE = _Graphic3d.Graphic3d_TOA_COMPUTE
Graphic3d_TypeOfBackfacingModel_Auto = _Graphic3d.Graphic3d_TypeOfBackfacingModel_Auto
Graphic3d_TypeOfBackfacingModel_DoubleSided = _Graphic3d.Graphic3d_TypeOfBackfacingModel_DoubleSided
Graphic3d_TypeOfBackfacingModel_BackCulled = _Graphic3d.Graphic3d_TypeOfBackfacingModel_BackCulled
Graphic3d_TypeOfBackfacingModel_FrontCulled = _Graphic3d.Graphic3d_TypeOfBackfacingModel_FrontCulled
Graphic3d_TOBM_AUTOMATIC = _Graphic3d.Graphic3d_TOBM_AUTOMATIC
Graphic3d_TOBM_FORCE = _Graphic3d.Graphic3d_TOBM_FORCE
Graphic3d_TOBM_DISABLE = _Graphic3d.Graphic3d_TOBM_DISABLE
V3d_TOBM_AUTOMATIC = _Graphic3d.V3d_TOBM_AUTOMATIC
V3d_TOBM_ALWAYS_DISPLAYED = _Graphic3d.V3d_TOBM_ALWAYS_DISPLAYED
V3d_TOBM_NEVER_DISPLAYED = _Graphic3d.V3d_TOBM_NEVER_DISPLAYED
Graphic3d_TOB_NONE = _Graphic3d.Graphic3d_TOB_NONE
Graphic3d_TOB_GRADIENT = _Graphic3d.Graphic3d_TOB_GRADIENT
Graphic3d_TOB_TEXTURE = _Graphic3d.Graphic3d_TOB_TEXTURE
Graphic3d_TOB_CUBEMAP = _Graphic3d.Graphic3d_TOB_CUBEMAP
Graphic3d_TypeOfBackground_NB = _Graphic3d.Graphic3d_TypeOfBackground_NB
Graphic3d_TOC_ANCESTOR = _Graphic3d.Graphic3d_TOC_ANCESTOR
Graphic3d_TOC_DESCENDANT = _Graphic3d.Graphic3d_TOC_DESCENDANT
Graphic3d_TypeOfLightSource_Ambient = _Graphic3d.Graphic3d_TypeOfLightSource_Ambient
Graphic3d_TypeOfLightSource_Directional = _Graphic3d.Graphic3d_TypeOfLightSource_Directional
Graphic3d_TypeOfLightSource_Positional = _Graphic3d.Graphic3d_TypeOfLightSource_Positional
Graphic3d_TypeOfLightSource_Spot = _Graphic3d.Graphic3d_TypeOfLightSource_Spot
Graphic3d_TOLS_AMBIENT = _Graphic3d.Graphic3d_TOLS_AMBIENT
Graphic3d_TOLS_DIRECTIONAL = _Graphic3d.Graphic3d_TOLS_DIRECTIONAL
Graphic3d_TOLS_POSITIONAL = _Graphic3d.Graphic3d_TOLS_POSITIONAL
Graphic3d_TOLS_SPOT = _Graphic3d.Graphic3d_TOLS_SPOT
V3d_AMBIENT = _Graphic3d.V3d_AMBIENT
V3d_DIRECTIONAL = _Graphic3d.V3d_DIRECTIONAL
V3d_POSITIONAL = _Graphic3d.V3d_POSITIONAL
V3d_SPOT = _Graphic3d.V3d_SPOT
Graphic3d_TypeOfLightSource_NB = _Graphic3d.Graphic3d_TypeOfLightSource_NB
Graphic3d_TypeOfLimit_MaxNbLights = _Graphic3d.Graphic3d_TypeOfLimit_MaxNbLights
Graphic3d_TypeOfLimit_MaxNbClipPlanes = _Graphic3d.Graphic3d_TypeOfLimit_MaxNbClipPlanes
Graphic3d_TypeOfLimit_MaxNbViews = _Graphic3d.Graphic3d_TypeOfLimit_MaxNbViews
Graphic3d_TypeOfLimit_MaxTextureSize = _Graphic3d.Graphic3d_TypeOfLimit_MaxTextureSize
Graphic3d_TypeOfLimit_MaxViewDumpSizeX = _Graphic3d.Graphic3d_TypeOfLimit_MaxViewDumpSizeX
Graphic3d_TypeOfLimit_MaxViewDumpSizeY = _Graphic3d.Graphic3d_TypeOfLimit_MaxViewDumpSizeY
Graphic3d_TypeOfLimit_MaxCombinedTextureUnits = _Graphic3d.Graphic3d_TypeOfLimit_MaxCombinedTextureUnits
Graphic3d_TypeOfLimit_MaxMsaa = _Graphic3d.Graphic3d_TypeOfLimit_MaxMsaa
Graphic3d_TypeOfLimit_HasPBR = _Graphic3d.Graphic3d_TypeOfLimit_HasPBR
Graphic3d_TypeOfLimit_HasRayTracing = _Graphic3d.Graphic3d_TypeOfLimit_HasRayTracing
Graphic3d_TypeOfLimit_HasRayTracingTextures = _Graphic3d.Graphic3d_TypeOfLimit_HasRayTracingTextures
Graphic3d_TypeOfLimit_HasRayTracingAdaptiveSampling = _Graphic3d.Graphic3d_TypeOfLimit_HasRayTracingAdaptiveSampling
Graphic3d_TypeOfLimit_HasRayTracingAdaptiveSamplingAtomic = _Graphic3d.Graphic3d_TypeOfLimit_HasRayTracingAdaptiveSamplingAtomic
Graphic3d_TypeOfLimit_HasSRGB = _Graphic3d.Graphic3d_TypeOfLimit_HasSRGB
Graphic3d_TypeOfLimit_HasBlendedOit = _Graphic3d.Graphic3d_TypeOfLimit_HasBlendedOit
Graphic3d_TypeOfLimit_HasBlendedOitMsaa = _Graphic3d.Graphic3d_TypeOfLimit_HasBlendedOitMsaa
Graphic3d_TypeOfLimit_HasFlatShading = _Graphic3d.Graphic3d_TypeOfLimit_HasFlatShading
Graphic3d_TypeOfLimit_HasMeshEdges = _Graphic3d.Graphic3d_TypeOfLimit_HasMeshEdges
Graphic3d_TypeOfLimit_IsWorkaroundFBO = _Graphic3d.Graphic3d_TypeOfLimit_IsWorkaroundFBO
Graphic3d_TypeOfLimit_NB = _Graphic3d.Graphic3d_TypeOfLimit_NB
Graphic3d_MATERIAL_ASPECT = _Graphic3d.Graphic3d_MATERIAL_ASPECT
Graphic3d_MATERIAL_PHYSIC = _Graphic3d.Graphic3d_MATERIAL_PHYSIC
Graphic3d_TOPA_UNDEFINED = _Graphic3d.Graphic3d_TOPA_UNDEFINED
Graphic3d_TOPA_POINTS = _Graphic3d.Graphic3d_TOPA_POINTS
Graphic3d_TOPA_SEGMENTS = _Graphic3d.Graphic3d_TOPA_SEGMENTS
Graphic3d_TOPA_POLYLINES = _Graphic3d.Graphic3d_TOPA_POLYLINES
Graphic3d_TOPA_TRIANGLES = _Graphic3d.Graphic3d_TOPA_TRIANGLES
Graphic3d_TOPA_TRIANGLESTRIPS = _Graphic3d.Graphic3d_TOPA_TRIANGLESTRIPS
Graphic3d_TOPA_TRIANGLEFANS = _Graphic3d.Graphic3d_TOPA_TRIANGLEFANS
Graphic3d_TOPA_LINES_ADJACENCY = _Graphic3d.Graphic3d_TOPA_LINES_ADJACENCY
Graphic3d_TOPA_LINE_STRIP_ADJACENCY = _Graphic3d.Graphic3d_TOPA_LINE_STRIP_ADJACENCY
Graphic3d_TOPA_TRIANGLES_ADJACENCY = _Graphic3d.Graphic3d_TOPA_TRIANGLES_ADJACENCY
Graphic3d_TOPA_TRIANGLE_STRIP_ADJACENCY = _Graphic3d.Graphic3d_TOPA_TRIANGLE_STRIP_ADJACENCY
Graphic3d_TOPA_QUADRANGLES = _Graphic3d.Graphic3d_TOPA_QUADRANGLES
Graphic3d_TOPA_QUADRANGLESTRIPS = _Graphic3d.Graphic3d_TOPA_QUADRANGLESTRIPS
Graphic3d_TOPA_POLYGONS = _Graphic3d.Graphic3d_TOPA_POLYGONS
Graphic3d_TOR_AMBIENT = _Graphic3d.Graphic3d_TOR_AMBIENT
Graphic3d_TOR_DIFFUSE = _Graphic3d.Graphic3d_TOR_DIFFUSE
Graphic3d_TOR_SPECULAR = _Graphic3d.Graphic3d_TOR_SPECULAR
Graphic3d_TOR_EMISSION = _Graphic3d.Graphic3d_TOR_EMISSION
Graphic3d_TypeOfReflection_NB = _Graphic3d.Graphic3d_TypeOfReflection_NB
Graphic3d_TOS_VERTEX = _Graphic3d.Graphic3d_TOS_VERTEX
Graphic3d_TOS_TESS_CONTROL = _Graphic3d.Graphic3d_TOS_TESS_CONTROL
Graphic3d_TOS_TESS_EVALUATION = _Graphic3d.Graphic3d_TOS_TESS_EVALUATION
Graphic3d_TOS_GEOMETRY = _Graphic3d.Graphic3d_TOS_GEOMETRY
Graphic3d_TOS_FRAGMENT = _Graphic3d.Graphic3d_TOS_FRAGMENT
Graphic3d_TOS_COMPUTE = _Graphic3d.Graphic3d_TOS_COMPUTE
Graphic3d_TypeOfShadingModel_DEFAULT = _Graphic3d.Graphic3d_TypeOfShadingModel_DEFAULT
Graphic3d_TypeOfShadingModel_Unlit = _Graphic3d.Graphic3d_TypeOfShadingModel_Unlit
Graphic3d_TypeOfShadingModel_PhongFacet = _Graphic3d.Graphic3d_TypeOfShadingModel_PhongFacet
Graphic3d_TypeOfShadingModel_Gouraud = _Graphic3d.Graphic3d_TypeOfShadingModel_Gouraud
Graphic3d_TypeOfShadingModel_Phong = _Graphic3d.Graphic3d_TypeOfShadingModel_Phong
Graphic3d_TypeOfShadingModel_Pbr = _Graphic3d.Graphic3d_TypeOfShadingModel_Pbr
Graphic3d_TypeOfShadingModel_PbrFacet = _Graphic3d.Graphic3d_TypeOfShadingModel_PbrFacet
Graphic3d_TOSM_DEFAULT = _Graphic3d.Graphic3d_TOSM_DEFAULT
Graphic3d_TOSM_UNLIT = _Graphic3d.Graphic3d_TOSM_UNLIT
Graphic3d_TOSM_FACET = _Graphic3d.Graphic3d_TOSM_FACET
Graphic3d_TOSM_VERTEX = _Graphic3d.Graphic3d_TOSM_VERTEX
Graphic3d_TOSM_FRAGMENT = _Graphic3d.Graphic3d_TOSM_FRAGMENT
Graphic3d_TOSM_PBR = _Graphic3d.Graphic3d_TOSM_PBR
Graphic3d_TOSM_PBR_FACET = _Graphic3d.Graphic3d_TOSM_PBR_FACET
Graphic3d_TOSM_NONE = _Graphic3d.Graphic3d_TOSM_NONE
V3d_COLOR = _Graphic3d.V3d_COLOR
V3d_FLAT = _Graphic3d.V3d_FLAT
V3d_GOURAUD = _Graphic3d.V3d_GOURAUD
V3d_PHONG = _Graphic3d.V3d_PHONG
Graphic3d_TypeOfShadingModel_NB = _Graphic3d.Graphic3d_TypeOfShadingModel_NB
Graphic3d_TOS_WIREFRAME = _Graphic3d.Graphic3d_TOS_WIREFRAME
Graphic3d_TOS_SHADING = _Graphic3d.Graphic3d_TOS_SHADING
Graphic3d_TOS_COMPUTED = _Graphic3d.Graphic3d_TOS_COMPUTED
Graphic3d_TOS_ALL = _Graphic3d.Graphic3d_TOS_ALL
Graphic3d_TypeOfTexture_1D = _Graphic3d.Graphic3d_TypeOfTexture_1D
Graphic3d_TypeOfTexture_2D = _Graphic3d.Graphic3d_TypeOfTexture_2D
Graphic3d_TypeOfTexture_3D = _Graphic3d.Graphic3d_TypeOfTexture_3D
Graphic3d_TypeOfTexture_CUBEMAP = _Graphic3d.Graphic3d_TypeOfTexture_CUBEMAP
Graphic3d_TOT_2D_MIPMAP = _Graphic3d.Graphic3d_TOT_2D_MIPMAP
Graphic3d_TOT_1D = _Graphic3d.Graphic3d_TOT_1D
Graphic3d_TOT_2D = _Graphic3d.Graphic3d_TOT_2D
Graphic3d_TOT_CUBEMAP = _Graphic3d.Graphic3d_TOT_CUBEMAP
Graphic3d_TOTF_NEAREST = _Graphic3d.Graphic3d_TOTF_NEAREST
Graphic3d_TOTF_BILINEAR = _Graphic3d.Graphic3d_TOTF_BILINEAR
Graphic3d_TOTF_TRILINEAR = _Graphic3d.Graphic3d_TOTF_TRILINEAR
Graphic3d_TOTM_OBJECT = _Graphic3d.Graphic3d_TOTM_OBJECT
Graphic3d_TOTM_SPHERE = _Graphic3d.Graphic3d_TOTM_SPHERE
Graphic3d_TOTM_EYE = _Graphic3d.Graphic3d_TOTM_EYE
Graphic3d_TOTM_MANUAL = _Graphic3d.Graphic3d_TOTM_MANUAL
Graphic3d_TOTM_SPRITE = _Graphic3d.Graphic3d_TOTM_SPRITE
Graphic3d_TOV_WIREFRAME = _Graphic3d.Graphic3d_TOV_WIREFRAME
Graphic3d_TOV_SHADING = _Graphic3d.Graphic3d_TOV_SHADING
Graphic3d_VTA_BOTTOM = _Graphic3d.Graphic3d_VTA_BOTTOM
Graphic3d_VTA_CENTER = _Graphic3d.Graphic3d_VTA_CENTER
Graphic3d_VTA_TOP = _Graphic3d.Graphic3d_VTA_TOP
Graphic3d_VTA_TOPFIRSTLINE = _Graphic3d.Graphic3d_VTA_TOPFIRSTLINE
Graphic3d_ZLayerId_UNKNOWN = _Graphic3d.Graphic3d_ZLayerId_UNKNOWN
Graphic3d_ZLayerId_Default = _Graphic3d.Graphic3d_ZLayerId_Default
Graphic3d_ZLayerId_Top = _Graphic3d.Graphic3d_ZLayerId_Top
Graphic3d_ZLayerId_Topmost = _Graphic3d.Graphic3d_ZLayerId_Topmost
Graphic3d_ZLayerId_TopOSD = _Graphic3d.Graphic3d_ZLayerId_TopOSD
Graphic3d_ZLayerId_BotOSD = _Graphic3d.Graphic3d_ZLayerId_BotOSD


class Graphic3d_AlphaMode(IntEnum):
	Graphic3d_AlphaMode_Opaque = 0
	Graphic3d_AlphaMode_Mask = 1
	Graphic3d_AlphaMode_Blend = 2
	Graphic3d_AlphaMode_MaskBlend = 3
	Graphic3d_AlphaMode_BlendAuto = - 1
Graphic3d_AlphaMode_Opaque = Graphic3d_AlphaMode.Graphic3d_AlphaMode_Opaque
Graphic3d_AlphaMode_Mask = Graphic3d_AlphaMode.Graphic3d_AlphaMode_Mask
Graphic3d_AlphaMode_Blend = Graphic3d_AlphaMode.Graphic3d_AlphaMode_Blend
Graphic3d_AlphaMode_MaskBlend = Graphic3d_AlphaMode.Graphic3d_AlphaMode_MaskBlend
Graphic3d_AlphaMode_BlendAuto = Graphic3d_AlphaMode.Graphic3d_AlphaMode_BlendAuto

class Graphic3d_FresnelModel(IntEnum):
	Graphic3d_FM_SCHLICK = 0
	Graphic3d_FM_CONSTANT = 1
	Graphic3d_FM_CONDUCTOR = 2
	Graphic3d_FM_DIELECTRIC = 3
Graphic3d_FM_SCHLICK = Graphic3d_FresnelModel.Graphic3d_FM_SCHLICK
Graphic3d_FM_CONSTANT = Graphic3d_FresnelModel.Graphic3d_FM_CONSTANT
Graphic3d_FM_CONDUCTOR = Graphic3d_FresnelModel.Graphic3d_FM_CONDUCTOR
Graphic3d_FM_DIELECTRIC = Graphic3d_FresnelModel.Graphic3d_FM_DIELECTRIC

class Graphic3d_TypeOfAttribute(IntEnum):
	Graphic3d_TOA_POS = 0
	Graphic3d_TOA_NORM = 1
	Graphic3d_TOA_UV = 2
	Graphic3d_TOA_COLOR = 3
	Graphic3d_TOA_CUSTOM = 4
Graphic3d_TOA_POS = Graphic3d_TypeOfAttribute.Graphic3d_TOA_POS
Graphic3d_TOA_NORM = Graphic3d_TypeOfAttribute.Graphic3d_TOA_NORM
Graphic3d_TOA_UV = Graphic3d_TypeOfAttribute.Graphic3d_TOA_UV
Graphic3d_TOA_COLOR = Graphic3d_TypeOfAttribute.Graphic3d_TOA_COLOR
Graphic3d_TOA_CUSTOM = Graphic3d_TypeOfAttribute.Graphic3d_TOA_CUSTOM

class Graphic3d_TypeOfData(IntEnum):
	Graphic3d_TOD_USHORT = 0
	Graphic3d_TOD_UINT = 1
	Graphic3d_TOD_VEC2 = 2
	Graphic3d_TOD_VEC3 = 3
	Graphic3d_TOD_VEC4 = 4
	Graphic3d_TOD_VEC4UB = 5
	Graphic3d_TOD_FLOAT = 6
Graphic3d_TOD_USHORT = Graphic3d_TypeOfData.Graphic3d_TOD_USHORT
Graphic3d_TOD_UINT = Graphic3d_TypeOfData.Graphic3d_TOD_UINT
Graphic3d_TOD_VEC2 = Graphic3d_TypeOfData.Graphic3d_TOD_VEC2
Graphic3d_TOD_VEC3 = Graphic3d_TypeOfData.Graphic3d_TOD_VEC3
Graphic3d_TOD_VEC4 = Graphic3d_TypeOfData.Graphic3d_TOD_VEC4
Graphic3d_TOD_VEC4UB = Graphic3d_TypeOfData.Graphic3d_TOD_VEC4UB
Graphic3d_TOD_FLOAT = Graphic3d_TypeOfData.Graphic3d_TOD_FLOAT

class Graphic3d_BufferType(IntEnum):
	Graphic3d_BT_RGB = 0
	Graphic3d_BT_RGBA = 1
	Graphic3d_BT_Depth = 2
	Graphic3d_BT_RGB_RayTraceHdrLeft = 3
	Graphic3d_BT_Red = 4
	Graphic3d_BT_ShadowMap = 5
Graphic3d_BT_RGB = Graphic3d_BufferType.Graphic3d_BT_RGB
Graphic3d_BT_RGBA = Graphic3d_BufferType.Graphic3d_BT_RGBA
Graphic3d_BT_Depth = Graphic3d_BufferType.Graphic3d_BT_Depth
Graphic3d_BT_RGB_RayTraceHdrLeft = Graphic3d_BufferType.Graphic3d_BT_RGB_RayTraceHdrLeft
Graphic3d_BT_Red = Graphic3d_BufferType.Graphic3d_BT_Red
Graphic3d_BT_ShadowMap = Graphic3d_BufferType.Graphic3d_BT_ShadowMap

class Graphic3d_CappingFlags(IntEnum):
	Graphic3d_CappingFlags_None = 0
	Graphic3d_CappingFlags_ObjectMaterial = 1
	Graphic3d_CappingFlags_ObjectTexture = 2
	Graphic3d_CappingFlags_ObjectShader = 8
	Graphic3d_CappingFlags_ObjectAspect = Graphic3d_CappingFlags_ObjectMaterial | Graphic3d_CappingFlags_ObjectTexture | Graphic3d_CappingFlags_ObjectShader
Graphic3d_CappingFlags_None = Graphic3d_CappingFlags.Graphic3d_CappingFlags_None
Graphic3d_CappingFlags_ObjectMaterial = Graphic3d_CappingFlags.Graphic3d_CappingFlags_ObjectMaterial
Graphic3d_CappingFlags_ObjectTexture = Graphic3d_CappingFlags.Graphic3d_CappingFlags_ObjectTexture
Graphic3d_CappingFlags_ObjectShader = Graphic3d_CappingFlags.Graphic3d_CappingFlags_ObjectShader
Graphic3d_CappingFlags_ObjectAspect = Graphic3d_CappingFlags.Graphic3d_CappingFlags_ObjectAspect

class Graphic3d_ClipState(IntEnum):
	Graphic3d_ClipState_Out = 0
	Graphic3d_ClipState_In = 1
	Graphic3d_ClipState_On = 2
Graphic3d_ClipState_Out = Graphic3d_ClipState.Graphic3d_ClipState_Out
Graphic3d_ClipState_In = Graphic3d_ClipState.Graphic3d_ClipState_In
Graphic3d_ClipState_On = Graphic3d_ClipState.Graphic3d_ClipState_On

class Graphic3d_CubeMapSide(IntEnum):
	Graphic3d_CMS_POS_X = 0
	Graphic3d_CMS_NEG_X = 1
	Graphic3d_CMS_POS_Y = 2
	Graphic3d_CMS_NEG_Y = 3
	Graphic3d_CMS_POS_Z = 4
	Graphic3d_CMS_NEG_Z = 5
Graphic3d_CMS_POS_X = Graphic3d_CubeMapSide.Graphic3d_CMS_POS_X
Graphic3d_CMS_NEG_X = Graphic3d_CubeMapSide.Graphic3d_CMS_NEG_X
Graphic3d_CMS_POS_Y = Graphic3d_CubeMapSide.Graphic3d_CMS_POS_Y
Graphic3d_CMS_NEG_Y = Graphic3d_CubeMapSide.Graphic3d_CMS_NEG_Y
Graphic3d_CMS_POS_Z = Graphic3d_CubeMapSide.Graphic3d_CMS_POS_Z
Graphic3d_CMS_NEG_Z = Graphic3d_CubeMapSide.Graphic3d_CMS_NEG_Z

class Graphic3d_DiagnosticInfo(IntEnum):
	Graphic3d_DiagnosticInfo_Device = 1
	Graphic3d_DiagnosticInfo_FrameBuffer = 2
	Graphic3d_DiagnosticInfo_Limits = 4
	Graphic3d_DiagnosticInfo_Memory = 8
	Graphic3d_DiagnosticInfo_NativePlatform = 16
	Graphic3d_DiagnosticInfo_Extensions = 32
	Graphic3d_DiagnosticInfo_Short = Graphic3d_DiagnosticInfo_Device | Graphic3d_DiagnosticInfo_FrameBuffer | Graphic3d_DiagnosticInfo_Limits
	Graphic3d_DiagnosticInfo_Basic = Graphic3d_DiagnosticInfo_Short | Graphic3d_DiagnosticInfo_NativePlatform | Graphic3d_DiagnosticInfo_Memory
	Graphic3d_DiagnosticInfo_Complete = Graphic3d_DiagnosticInfo_Basic | Graphic3d_DiagnosticInfo_Extensions
Graphic3d_DiagnosticInfo_Device = Graphic3d_DiagnosticInfo.Graphic3d_DiagnosticInfo_Device
Graphic3d_DiagnosticInfo_FrameBuffer = Graphic3d_DiagnosticInfo.Graphic3d_DiagnosticInfo_FrameBuffer
Graphic3d_DiagnosticInfo_Limits = Graphic3d_DiagnosticInfo.Graphic3d_DiagnosticInfo_Limits
Graphic3d_DiagnosticInfo_Memory = Graphic3d_DiagnosticInfo.Graphic3d_DiagnosticInfo_Memory
Graphic3d_DiagnosticInfo_NativePlatform = Graphic3d_DiagnosticInfo.Graphic3d_DiagnosticInfo_NativePlatform
Graphic3d_DiagnosticInfo_Extensions = Graphic3d_DiagnosticInfo.Graphic3d_DiagnosticInfo_Extensions
Graphic3d_DiagnosticInfo_Short = Graphic3d_DiagnosticInfo.Graphic3d_DiagnosticInfo_Short
Graphic3d_DiagnosticInfo_Basic = Graphic3d_DiagnosticInfo.Graphic3d_DiagnosticInfo_Basic
Graphic3d_DiagnosticInfo_Complete = Graphic3d_DiagnosticInfo.Graphic3d_DiagnosticInfo_Complete

class Graphic3d_DisplayPriority(IntEnum):
	Graphic3d_DisplayPriority_INVALID = - 1
	Graphic3d_DisplayPriority_Bottom = 0
	Graphic3d_DisplayPriority_AlmostBottom = 1
	Graphic3d_DisplayPriority_Below2 = 2
	Graphic3d_DisplayPriority_Below1 = 3
	Graphic3d_DisplayPriority_Below = 4
	Graphic3d_DisplayPriority_Normal = 5
	Graphic3d_DisplayPriority_Above = 6
	Graphic3d_DisplayPriority_Above1 = 7
	Graphic3d_DisplayPriority_Above2 = 8
	Graphic3d_DisplayPriority_Highlight = 9
	Graphic3d_DisplayPriority_Topmost = 10
Graphic3d_DisplayPriority_INVALID = Graphic3d_DisplayPriority.Graphic3d_DisplayPriority_INVALID
Graphic3d_DisplayPriority_Bottom = Graphic3d_DisplayPriority.Graphic3d_DisplayPriority_Bottom
Graphic3d_DisplayPriority_AlmostBottom = Graphic3d_DisplayPriority.Graphic3d_DisplayPriority_AlmostBottom
Graphic3d_DisplayPriority_Below2 = Graphic3d_DisplayPriority.Graphic3d_DisplayPriority_Below2
Graphic3d_DisplayPriority_Below1 = Graphic3d_DisplayPriority.Graphic3d_DisplayPriority_Below1
Graphic3d_DisplayPriority_Below = Graphic3d_DisplayPriority.Graphic3d_DisplayPriority_Below
Graphic3d_DisplayPriority_Normal = Graphic3d_DisplayPriority.Graphic3d_DisplayPriority_Normal
Graphic3d_DisplayPriority_Above = Graphic3d_DisplayPriority.Graphic3d_DisplayPriority_Above
Graphic3d_DisplayPriority_Above1 = Graphic3d_DisplayPriority.Graphic3d_DisplayPriority_Above1
Graphic3d_DisplayPriority_Above2 = Graphic3d_DisplayPriority.Graphic3d_DisplayPriority_Above2
Graphic3d_DisplayPriority_Highlight = Graphic3d_DisplayPriority.Graphic3d_DisplayPriority_Highlight
Graphic3d_DisplayPriority_Topmost = Graphic3d_DisplayPriority.Graphic3d_DisplayPriority_Topmost

class Graphic3d_FrameStatsCounter(IntEnum):
	Graphic3d_FrameStatsCounter_NbLayers = 0
	Graphic3d_FrameStatsCounter_NbStructs = 1
	Graphic3d_FrameStatsCounter_EstimatedBytesGeom = 2
	Graphic3d_FrameStatsCounter_EstimatedBytesFbos = 3
	Graphic3d_FrameStatsCounter_EstimatedBytesTextures = 4
	Graphic3d_FrameStatsCounter_NbLayersNotCulled = 5
	Graphic3d_FrameStatsCounter_NbStructsNotCulled = 6
	Graphic3d_FrameStatsCounter_NbGroupsNotCulled = 7
	Graphic3d_FrameStatsCounter_NbElemsNotCulled = 8
	Graphic3d_FrameStatsCounter_NbElemsFillNotCulled = 9
	Graphic3d_FrameStatsCounter_NbElemsLineNotCulled = 10
	Graphic3d_FrameStatsCounter_NbElemsPointNotCulled = 11
	Graphic3d_FrameStatsCounter_NbElemsTextNotCulled = 12
	Graphic3d_FrameStatsCounter_NbTrianglesNotCulled = 13
	Graphic3d_FrameStatsCounter_NbLinesNotCulled = 14
	Graphic3d_FrameStatsCounter_NbPointsNotCulled = 15
	Graphic3d_FrameStatsCounter_NbLayersImmediate = 16
	Graphic3d_FrameStatsCounter_NbStructsImmediate = 17
	Graphic3d_FrameStatsCounter_NbGroupsImmediate = 18
	Graphic3d_FrameStatsCounter_NbElemsImmediate = 19
	Graphic3d_FrameStatsCounter_NbElemsFillImmediate = 20
	Graphic3d_FrameStatsCounter_NbElemsLineImmediate = 21
	Graphic3d_FrameStatsCounter_NbElemsPointImmediate = 22
	Graphic3d_FrameStatsCounter_NbElemsTextImmediate = 23
	Graphic3d_FrameStatsCounter_NbTrianglesImmediate = 24
	Graphic3d_FrameStatsCounter_NbLinesImmediate = 25
	Graphic3d_FrameStatsCounter_NbPointsImmediate = 26
Graphic3d_FrameStatsCounter_NbLayers = Graphic3d_FrameStatsCounter.Graphic3d_FrameStatsCounter_NbLayers
Graphic3d_FrameStatsCounter_NbStructs = Graphic3d_FrameStatsCounter.Graphic3d_FrameStatsCounter_NbStructs
Graphic3d_FrameStatsCounter_EstimatedBytesGeom = Graphic3d_FrameStatsCounter.Graphic3d_FrameStatsCounter_EstimatedBytesGeom
Graphic3d_FrameStatsCounter_EstimatedBytesFbos = Graphic3d_FrameStatsCounter.Graphic3d_FrameStatsCounter_EstimatedBytesFbos
Graphic3d_FrameStatsCounter_EstimatedBytesTextures = Graphic3d_FrameStatsCounter.Graphic3d_FrameStatsCounter_EstimatedBytesTextures
Graphic3d_FrameStatsCounter_NbLayersNotCulled = Graphic3d_FrameStatsCounter.Graphic3d_FrameStatsCounter_NbLayersNotCulled
Graphic3d_FrameStatsCounter_NbStructsNotCulled = Graphic3d_FrameStatsCounter.Graphic3d_FrameStatsCounter_NbStructsNotCulled
Graphic3d_FrameStatsCounter_NbGroupsNotCulled = Graphic3d_FrameStatsCounter.Graphic3d_FrameStatsCounter_NbGroupsNotCulled
Graphic3d_FrameStatsCounter_NbElemsNotCulled = Graphic3d_FrameStatsCounter.Graphic3d_FrameStatsCounter_NbElemsNotCulled
Graphic3d_FrameStatsCounter_NbElemsFillNotCulled = Graphic3d_FrameStatsCounter.Graphic3d_FrameStatsCounter_NbElemsFillNotCulled
Graphic3d_FrameStatsCounter_NbElemsLineNotCulled = Graphic3d_FrameStatsCounter.Graphic3d_FrameStatsCounter_NbElemsLineNotCulled
Graphic3d_FrameStatsCounter_NbElemsPointNotCulled = Graphic3d_FrameStatsCounter.Graphic3d_FrameStatsCounter_NbElemsPointNotCulled
Graphic3d_FrameStatsCounter_NbElemsTextNotCulled = Graphic3d_FrameStatsCounter.Graphic3d_FrameStatsCounter_NbElemsTextNotCulled
Graphic3d_FrameStatsCounter_NbTrianglesNotCulled = Graphic3d_FrameStatsCounter.Graphic3d_FrameStatsCounter_NbTrianglesNotCulled
Graphic3d_FrameStatsCounter_NbLinesNotCulled = Graphic3d_FrameStatsCounter.Graphic3d_FrameStatsCounter_NbLinesNotCulled
Graphic3d_FrameStatsCounter_NbPointsNotCulled = Graphic3d_FrameStatsCounter.Graphic3d_FrameStatsCounter_NbPointsNotCulled
Graphic3d_FrameStatsCounter_NbLayersImmediate = Graphic3d_FrameStatsCounter.Graphic3d_FrameStatsCounter_NbLayersImmediate
Graphic3d_FrameStatsCounter_NbStructsImmediate = Graphic3d_FrameStatsCounter.Graphic3d_FrameStatsCounter_NbStructsImmediate
Graphic3d_FrameStatsCounter_NbGroupsImmediate = Graphic3d_FrameStatsCounter.Graphic3d_FrameStatsCounter_NbGroupsImmediate
Graphic3d_FrameStatsCounter_NbElemsImmediate = Graphic3d_FrameStatsCounter.Graphic3d_FrameStatsCounter_NbElemsImmediate
Graphic3d_FrameStatsCounter_NbElemsFillImmediate = Graphic3d_FrameStatsCounter.Graphic3d_FrameStatsCounter_NbElemsFillImmediate
Graphic3d_FrameStatsCounter_NbElemsLineImmediate = Graphic3d_FrameStatsCounter.Graphic3d_FrameStatsCounter_NbElemsLineImmediate
Graphic3d_FrameStatsCounter_NbElemsPointImmediate = Graphic3d_FrameStatsCounter.Graphic3d_FrameStatsCounter_NbElemsPointImmediate
Graphic3d_FrameStatsCounter_NbElemsTextImmediate = Graphic3d_FrameStatsCounter.Graphic3d_FrameStatsCounter_NbElemsTextImmediate
Graphic3d_FrameStatsCounter_NbTrianglesImmediate = Graphic3d_FrameStatsCounter.Graphic3d_FrameStatsCounter_NbTrianglesImmediate
Graphic3d_FrameStatsCounter_NbLinesImmediate = Graphic3d_FrameStatsCounter.Graphic3d_FrameStatsCounter_NbLinesImmediate
Graphic3d_FrameStatsCounter_NbPointsImmediate = Graphic3d_FrameStatsCounter.Graphic3d_FrameStatsCounter_NbPointsImmediate

class Graphic3d_FrameStatsTimer(IntEnum):
	Graphic3d_FrameStatsTimer_ElapsedFrame = 0
	Graphic3d_FrameStatsTimer_CpuFrame = 1
	Graphic3d_FrameStatsTimer_CpuCulling = 2
	Graphic3d_FrameStatsTimer_CpuPicking = 3
	Graphic3d_FrameStatsTimer_CpuDynamics = 4
Graphic3d_FrameStatsTimer_ElapsedFrame = Graphic3d_FrameStatsTimer.Graphic3d_FrameStatsTimer_ElapsedFrame
Graphic3d_FrameStatsTimer_CpuFrame = Graphic3d_FrameStatsTimer.Graphic3d_FrameStatsTimer_CpuFrame
Graphic3d_FrameStatsTimer_CpuCulling = Graphic3d_FrameStatsTimer.Graphic3d_FrameStatsTimer_CpuCulling
Graphic3d_FrameStatsTimer_CpuPicking = Graphic3d_FrameStatsTimer.Graphic3d_FrameStatsTimer_CpuPicking
Graphic3d_FrameStatsTimer_CpuDynamics = Graphic3d_FrameStatsTimer.Graphic3d_FrameStatsTimer_CpuDynamics

class Graphic3d_GroupAspect(IntEnum):
	Graphic3d_ASPECT_LINE = 0
	Graphic3d_ASPECT_TEXT = 1
	Graphic3d_ASPECT_MARKER = 2
	Graphic3d_ASPECT_FILL_AREA = 3
Graphic3d_ASPECT_LINE = Graphic3d_GroupAspect.Graphic3d_ASPECT_LINE
Graphic3d_ASPECT_TEXT = Graphic3d_GroupAspect.Graphic3d_ASPECT_TEXT
Graphic3d_ASPECT_MARKER = Graphic3d_GroupAspect.Graphic3d_ASPECT_MARKER
Graphic3d_ASPECT_FILL_AREA = Graphic3d_GroupAspect.Graphic3d_ASPECT_FILL_AREA

class Graphic3d_HorizontalTextAlignment(IntEnum):
	Graphic3d_HTA_LEFT = 0
	Graphic3d_HTA_CENTER = 1
	Graphic3d_HTA_RIGHT = 2
Graphic3d_HTA_LEFT = Graphic3d_HorizontalTextAlignment.Graphic3d_HTA_LEFT
Graphic3d_HTA_CENTER = Graphic3d_HorizontalTextAlignment.Graphic3d_HTA_CENTER
Graphic3d_HTA_RIGHT = Graphic3d_HorizontalTextAlignment.Graphic3d_HTA_RIGHT

class Graphic3d_LevelOfTextureAnisotropy(IntEnum):
	Graphic3d_LOTA_OFF = 0
	Graphic3d_LOTA_FAST = 1
	Graphic3d_LOTA_MIDDLE = 2
	Graphic3d_LOTA_QUALITY = 3
Graphic3d_LOTA_OFF = Graphic3d_LevelOfTextureAnisotropy.Graphic3d_LOTA_OFF
Graphic3d_LOTA_FAST = Graphic3d_LevelOfTextureAnisotropy.Graphic3d_LOTA_FAST
Graphic3d_LOTA_MIDDLE = Graphic3d_LevelOfTextureAnisotropy.Graphic3d_LOTA_MIDDLE
Graphic3d_LOTA_QUALITY = Graphic3d_LevelOfTextureAnisotropy.Graphic3d_LOTA_QUALITY

class Graphic3d_NameOfMaterial(IntEnum):
	Graphic3d_NameOfMaterial_Brass = 0
	Graphic3d_NameOfMaterial_Bronze = 1
	Graphic3d_NameOfMaterial_Copper = 2
	Graphic3d_NameOfMaterial_Gold = 3
	Graphic3d_NameOfMaterial_Pewter = 4
	Graphic3d_NameOfMaterial_Plastered = 5
	Graphic3d_NameOfMaterial_Plastified = 6
	Graphic3d_NameOfMaterial_Silver = 7
	Graphic3d_NameOfMaterial_Steel = 8
	Graphic3d_NameOfMaterial_Stone = 9
	Graphic3d_NameOfMaterial_ShinyPlastified = 10
	Graphic3d_NameOfMaterial_Satin = 11
	Graphic3d_NameOfMaterial_Metalized = 12
	Graphic3d_NameOfMaterial_Ionized = 13
	Graphic3d_NameOfMaterial_Chrome = 14
	Graphic3d_NameOfMaterial_Aluminum = 15
	Graphic3d_NameOfMaterial_Obsidian = 16
	Graphic3d_NameOfMaterial_Neon = 17
	Graphic3d_NameOfMaterial_Jade = 18
	Graphic3d_NameOfMaterial_Charcoal = 19
	Graphic3d_NameOfMaterial_Water = 20
	Graphic3d_NameOfMaterial_Glass = 21
	Graphic3d_NameOfMaterial_Diamond = 22
	Graphic3d_NameOfMaterial_Transparent = 23
	Graphic3d_NameOfMaterial_DEFAULT = 24
	Graphic3d_NameOfMaterial_UserDefined = 25
	Graphic3d_NOM_BRASS = Graphic3d_NameOfMaterial_Brass
	Graphic3d_NOM_BRONZE = Graphic3d_NameOfMaterial_Bronze
	Graphic3d_NOM_COPPER = Graphic3d_NameOfMaterial_Copper
	Graphic3d_NOM_GOLD = Graphic3d_NameOfMaterial_Gold
	Graphic3d_NOM_PEWTER = Graphic3d_NameOfMaterial_Pewter
	Graphic3d_NOM_PLASTER = Graphic3d_NameOfMaterial_Plastered
	Graphic3d_NOM_PLASTIC = Graphic3d_NameOfMaterial_Plastified
	Graphic3d_NOM_SILVER = Graphic3d_NameOfMaterial_Silver
	Graphic3d_NOM_STEEL = Graphic3d_NameOfMaterial_Steel
	Graphic3d_NOM_STONE = Graphic3d_NameOfMaterial_Stone
	Graphic3d_NOM_SHINY_PLASTIC = Graphic3d_NameOfMaterial_ShinyPlastified
	Graphic3d_NOM_SATIN = Graphic3d_NameOfMaterial_Satin
	Graphic3d_NOM_METALIZED = Graphic3d_NameOfMaterial_Metalized
	Graphic3d_NOM_NEON_GNC = Graphic3d_NameOfMaterial_Ionized
	Graphic3d_NOM_CHROME = Graphic3d_NameOfMaterial_Chrome
	Graphic3d_NOM_ALUMINIUM = Graphic3d_NameOfMaterial_Aluminum
	Graphic3d_NOM_OBSIDIAN = Graphic3d_NameOfMaterial_Obsidian
	Graphic3d_NOM_NEON_PHC = Graphic3d_NameOfMaterial_Neon
	Graphic3d_NOM_JADE = Graphic3d_NameOfMaterial_Jade
	Graphic3d_NOM_CHARCOAL = Graphic3d_NameOfMaterial_Charcoal
	Graphic3d_NOM_WATER = Graphic3d_NameOfMaterial_Water
	Graphic3d_NOM_GLASS = Graphic3d_NameOfMaterial_Glass
	Graphic3d_NOM_DIAMOND = Graphic3d_NameOfMaterial_Diamond
	Graphic3d_NOM_TRANSPARENT = Graphic3d_NameOfMaterial_Transparent
	Graphic3d_NOM_DEFAULT = Graphic3d_NameOfMaterial_DEFAULT
	Graphic3d_NOM_UserDefined = Graphic3d_NameOfMaterial_UserDefined
Graphic3d_NameOfMaterial_Brass = Graphic3d_NameOfMaterial.Graphic3d_NameOfMaterial_Brass
Graphic3d_NameOfMaterial_Bronze = Graphic3d_NameOfMaterial.Graphic3d_NameOfMaterial_Bronze
Graphic3d_NameOfMaterial_Copper = Graphic3d_NameOfMaterial.Graphic3d_NameOfMaterial_Copper
Graphic3d_NameOfMaterial_Gold = Graphic3d_NameOfMaterial.Graphic3d_NameOfMaterial_Gold
Graphic3d_NameOfMaterial_Pewter = Graphic3d_NameOfMaterial.Graphic3d_NameOfMaterial_Pewter
Graphic3d_NameOfMaterial_Plastered = Graphic3d_NameOfMaterial.Graphic3d_NameOfMaterial_Plastered
Graphic3d_NameOfMaterial_Plastified = Graphic3d_NameOfMaterial.Graphic3d_NameOfMaterial_Plastified
Graphic3d_NameOfMaterial_Silver = Graphic3d_NameOfMaterial.Graphic3d_NameOfMaterial_Silver
Graphic3d_NameOfMaterial_Steel = Graphic3d_NameOfMaterial.Graphic3d_NameOfMaterial_Steel
Graphic3d_NameOfMaterial_Stone = Graphic3d_NameOfMaterial.Graphic3d_NameOfMaterial_Stone
Graphic3d_NameOfMaterial_ShinyPlastified = Graphic3d_NameOfMaterial.Graphic3d_NameOfMaterial_ShinyPlastified
Graphic3d_NameOfMaterial_Satin = Graphic3d_NameOfMaterial.Graphic3d_NameOfMaterial_Satin
Graphic3d_NameOfMaterial_Metalized = Graphic3d_NameOfMaterial.Graphic3d_NameOfMaterial_Metalized
Graphic3d_NameOfMaterial_Ionized = Graphic3d_NameOfMaterial.Graphic3d_NameOfMaterial_Ionized
Graphic3d_NameOfMaterial_Chrome = Graphic3d_NameOfMaterial.Graphic3d_NameOfMaterial_Chrome
Graphic3d_NameOfMaterial_Aluminum = Graphic3d_NameOfMaterial.Graphic3d_NameOfMaterial_Aluminum
Graphic3d_NameOfMaterial_Obsidian = Graphic3d_NameOfMaterial.Graphic3d_NameOfMaterial_Obsidian
Graphic3d_NameOfMaterial_Neon = Graphic3d_NameOfMaterial.Graphic3d_NameOfMaterial_Neon
Graphic3d_NameOfMaterial_Jade = Graphic3d_NameOfMaterial.Graphic3d_NameOfMaterial_Jade
Graphic3d_NameOfMaterial_Charcoal = Graphic3d_NameOfMaterial.Graphic3d_NameOfMaterial_Charcoal
Graphic3d_NameOfMaterial_Water = Graphic3d_NameOfMaterial.Graphic3d_NameOfMaterial_Water
Graphic3d_NameOfMaterial_Glass = Graphic3d_NameOfMaterial.Graphic3d_NameOfMaterial_Glass
Graphic3d_NameOfMaterial_Diamond = Graphic3d_NameOfMaterial.Graphic3d_NameOfMaterial_Diamond
Graphic3d_NameOfMaterial_Transparent = Graphic3d_NameOfMaterial.Graphic3d_NameOfMaterial_Transparent
Graphic3d_NameOfMaterial_DEFAULT = Graphic3d_NameOfMaterial.Graphic3d_NameOfMaterial_DEFAULT
Graphic3d_NameOfMaterial_UserDefined = Graphic3d_NameOfMaterial.Graphic3d_NameOfMaterial_UserDefined
Graphic3d_NOM_BRASS = Graphic3d_NameOfMaterial.Graphic3d_NOM_BRASS
Graphic3d_NOM_BRONZE = Graphic3d_NameOfMaterial.Graphic3d_NOM_BRONZE
Graphic3d_NOM_COPPER = Graphic3d_NameOfMaterial.Graphic3d_NOM_COPPER
Graphic3d_NOM_GOLD = Graphic3d_NameOfMaterial.Graphic3d_NOM_GOLD
Graphic3d_NOM_PEWTER = Graphic3d_NameOfMaterial.Graphic3d_NOM_PEWTER
Graphic3d_NOM_PLASTER = Graphic3d_NameOfMaterial.Graphic3d_NOM_PLASTER
Graphic3d_NOM_PLASTIC = Graphic3d_NameOfMaterial.Graphic3d_NOM_PLASTIC
Graphic3d_NOM_SILVER = Graphic3d_NameOfMaterial.Graphic3d_NOM_SILVER
Graphic3d_NOM_STEEL = Graphic3d_NameOfMaterial.Graphic3d_NOM_STEEL
Graphic3d_NOM_STONE = Graphic3d_NameOfMaterial.Graphic3d_NOM_STONE
Graphic3d_NOM_SHINY_PLASTIC = Graphic3d_NameOfMaterial.Graphic3d_NOM_SHINY_PLASTIC
Graphic3d_NOM_SATIN = Graphic3d_NameOfMaterial.Graphic3d_NOM_SATIN
Graphic3d_NOM_METALIZED = Graphic3d_NameOfMaterial.Graphic3d_NOM_METALIZED
Graphic3d_NOM_NEON_GNC = Graphic3d_NameOfMaterial.Graphic3d_NOM_NEON_GNC
Graphic3d_NOM_CHROME = Graphic3d_NameOfMaterial.Graphic3d_NOM_CHROME
Graphic3d_NOM_ALUMINIUM = Graphic3d_NameOfMaterial.Graphic3d_NOM_ALUMINIUM
Graphic3d_NOM_OBSIDIAN = Graphic3d_NameOfMaterial.Graphic3d_NOM_OBSIDIAN
Graphic3d_NOM_NEON_PHC = Graphic3d_NameOfMaterial.Graphic3d_NOM_NEON_PHC
Graphic3d_NOM_JADE = Graphic3d_NameOfMaterial.Graphic3d_NOM_JADE
Graphic3d_NOM_CHARCOAL = Graphic3d_NameOfMaterial.Graphic3d_NOM_CHARCOAL
Graphic3d_NOM_WATER = Graphic3d_NameOfMaterial.Graphic3d_NOM_WATER
Graphic3d_NOM_GLASS = Graphic3d_NameOfMaterial.Graphic3d_NOM_GLASS
Graphic3d_NOM_DIAMOND = Graphic3d_NameOfMaterial.Graphic3d_NOM_DIAMOND
Graphic3d_NOM_TRANSPARENT = Graphic3d_NameOfMaterial.Graphic3d_NOM_TRANSPARENT
Graphic3d_NOM_DEFAULT = Graphic3d_NameOfMaterial.Graphic3d_NOM_DEFAULT
Graphic3d_NOM_UserDefined = Graphic3d_NameOfMaterial.Graphic3d_NOM_UserDefined

class Graphic3d_NameOfTexture1D(IntEnum):
	Graphic3d_NOT_1D_ELEVATION = 0
	Graphic3d_NOT_1D_UNKNOWN = 1
Graphic3d_NOT_1D_ELEVATION = Graphic3d_NameOfTexture1D.Graphic3d_NOT_1D_ELEVATION
Graphic3d_NOT_1D_UNKNOWN = Graphic3d_NameOfTexture1D.Graphic3d_NOT_1D_UNKNOWN

class Graphic3d_NameOfTexture2D(IntEnum):
	Graphic3d_NOT_2D_MATRA = 0
	Graphic3d_NOT_2D_ALIENSKIN = 1
	Graphic3d_NOT_2D_BLUE_ROCK = 2
	Graphic3d_NOT_2D_BLUEWHITE_PAPER = 3
	Graphic3d_NOT_2D_BRUSHED = 4
	Graphic3d_NOT_2D_BUBBLES = 5
	Graphic3d_NOT_2D_BUMP = 6
	Graphic3d_NOT_2D_CAST = 7
	Graphic3d_NOT_2D_CHIPBD = 8
	Graphic3d_NOT_2D_CLOUDS = 9
	Graphic3d_NOT_2D_FLESH = 10
	Graphic3d_NOT_2D_FLOOR = 11
	Graphic3d_NOT_2D_GALVNISD = 12
	Graphic3d_NOT_2D_GRASS = 13
	Graphic3d_NOT_2D_ALUMINUM = 14
	Graphic3d_NOT_2D_ROCK = 15
	Graphic3d_NOT_2D_KNURL = 16
	Graphic3d_NOT_2D_MAPLE = 17
	Graphic3d_NOT_2D_MARBLE = 18
	Graphic3d_NOT_2D_MOTTLED = 19
	Graphic3d_NOT_2D_RAIN = 20
	Graphic3d_NOT_2D_CHESS = 21
	Graphic3d_NOT_2D_UNKNOWN = 22
Graphic3d_NOT_2D_MATRA = Graphic3d_NameOfTexture2D.Graphic3d_NOT_2D_MATRA
Graphic3d_NOT_2D_ALIENSKIN = Graphic3d_NameOfTexture2D.Graphic3d_NOT_2D_ALIENSKIN
Graphic3d_NOT_2D_BLUE_ROCK = Graphic3d_NameOfTexture2D.Graphic3d_NOT_2D_BLUE_ROCK
Graphic3d_NOT_2D_BLUEWHITE_PAPER = Graphic3d_NameOfTexture2D.Graphic3d_NOT_2D_BLUEWHITE_PAPER
Graphic3d_NOT_2D_BRUSHED = Graphic3d_NameOfTexture2D.Graphic3d_NOT_2D_BRUSHED
Graphic3d_NOT_2D_BUBBLES = Graphic3d_NameOfTexture2D.Graphic3d_NOT_2D_BUBBLES
Graphic3d_NOT_2D_BUMP = Graphic3d_NameOfTexture2D.Graphic3d_NOT_2D_BUMP
Graphic3d_NOT_2D_CAST = Graphic3d_NameOfTexture2D.Graphic3d_NOT_2D_CAST
Graphic3d_NOT_2D_CHIPBD = Graphic3d_NameOfTexture2D.Graphic3d_NOT_2D_CHIPBD
Graphic3d_NOT_2D_CLOUDS = Graphic3d_NameOfTexture2D.Graphic3d_NOT_2D_CLOUDS
Graphic3d_NOT_2D_FLESH = Graphic3d_NameOfTexture2D.Graphic3d_NOT_2D_FLESH
Graphic3d_NOT_2D_FLOOR = Graphic3d_NameOfTexture2D.Graphic3d_NOT_2D_FLOOR
Graphic3d_NOT_2D_GALVNISD = Graphic3d_NameOfTexture2D.Graphic3d_NOT_2D_GALVNISD
Graphic3d_NOT_2D_GRASS = Graphic3d_NameOfTexture2D.Graphic3d_NOT_2D_GRASS
Graphic3d_NOT_2D_ALUMINUM = Graphic3d_NameOfTexture2D.Graphic3d_NOT_2D_ALUMINUM
Graphic3d_NOT_2D_ROCK = Graphic3d_NameOfTexture2D.Graphic3d_NOT_2D_ROCK
Graphic3d_NOT_2D_KNURL = Graphic3d_NameOfTexture2D.Graphic3d_NOT_2D_KNURL
Graphic3d_NOT_2D_MAPLE = Graphic3d_NameOfTexture2D.Graphic3d_NOT_2D_MAPLE
Graphic3d_NOT_2D_MARBLE = Graphic3d_NameOfTexture2D.Graphic3d_NOT_2D_MARBLE
Graphic3d_NOT_2D_MOTTLED = Graphic3d_NameOfTexture2D.Graphic3d_NOT_2D_MOTTLED
Graphic3d_NOT_2D_RAIN = Graphic3d_NameOfTexture2D.Graphic3d_NOT_2D_RAIN
Graphic3d_NOT_2D_CHESS = Graphic3d_NameOfTexture2D.Graphic3d_NOT_2D_CHESS
Graphic3d_NOT_2D_UNKNOWN = Graphic3d_NameOfTexture2D.Graphic3d_NOT_2D_UNKNOWN

class Graphic3d_NameOfTextureEnv(IntEnum):
	Graphic3d_NOT_ENV_CLOUDS = 0
	Graphic3d_NOT_ENV_CV = 1
	Graphic3d_NOT_ENV_MEDIT = 2
	Graphic3d_NOT_ENV_PEARL = 3
	Graphic3d_NOT_ENV_SKY1 = 4
	Graphic3d_NOT_ENV_SKY2 = 5
	Graphic3d_NOT_ENV_LINES = 6
	Graphic3d_NOT_ENV_ROAD = 7
	Graphic3d_NOT_ENV_UNKNOWN = 8
Graphic3d_NOT_ENV_CLOUDS = Graphic3d_NameOfTextureEnv.Graphic3d_NOT_ENV_CLOUDS
Graphic3d_NOT_ENV_CV = Graphic3d_NameOfTextureEnv.Graphic3d_NOT_ENV_CV
Graphic3d_NOT_ENV_MEDIT = Graphic3d_NameOfTextureEnv.Graphic3d_NOT_ENV_MEDIT
Graphic3d_NOT_ENV_PEARL = Graphic3d_NameOfTextureEnv.Graphic3d_NOT_ENV_PEARL
Graphic3d_NOT_ENV_SKY1 = Graphic3d_NameOfTextureEnv.Graphic3d_NOT_ENV_SKY1
Graphic3d_NOT_ENV_SKY2 = Graphic3d_NameOfTextureEnv.Graphic3d_NOT_ENV_SKY2
Graphic3d_NOT_ENV_LINES = Graphic3d_NameOfTextureEnv.Graphic3d_NOT_ENV_LINES
Graphic3d_NOT_ENV_ROAD = Graphic3d_NameOfTextureEnv.Graphic3d_NOT_ENV_ROAD
Graphic3d_NOT_ENV_UNKNOWN = Graphic3d_NameOfTextureEnv.Graphic3d_NOT_ENV_UNKNOWN

class Graphic3d_NameOfTexturePlane(IntEnum):
	Graphic3d_NOTP_XY = 0
	Graphic3d_NOTP_YZ = 1
	Graphic3d_NOTP_ZX = 2
	Graphic3d_NOTP_UNKNOWN = 3
Graphic3d_NOTP_XY = Graphic3d_NameOfTexturePlane.Graphic3d_NOTP_XY
Graphic3d_NOTP_YZ = Graphic3d_NameOfTexturePlane.Graphic3d_NOTP_YZ
Graphic3d_NOTP_ZX = Graphic3d_NameOfTexturePlane.Graphic3d_NOTP_ZX
Graphic3d_NOTP_UNKNOWN = Graphic3d_NameOfTexturePlane.Graphic3d_NOTP_UNKNOWN

class Graphic3d_RenderTransparentMethod(IntEnum):
	Graphic3d_RTM_BLEND_UNORDERED = 0
	Graphic3d_RTM_BLEND_OIT = 1
	Graphic3d_RTM_DEPTH_PEELING_OIT = 2
Graphic3d_RTM_BLEND_UNORDERED = Graphic3d_RenderTransparentMethod.Graphic3d_RTM_BLEND_UNORDERED
Graphic3d_RTM_BLEND_OIT = Graphic3d_RenderTransparentMethod.Graphic3d_RTM_BLEND_OIT
Graphic3d_RTM_DEPTH_PEELING_OIT = Graphic3d_RenderTransparentMethod.Graphic3d_RTM_DEPTH_PEELING_OIT

class Graphic3d_RenderingMode(IntEnum):
	Graphic3d_RM_RASTERIZATION = 0
	Graphic3d_RM_RAYTRACING = 1
Graphic3d_RM_RASTERIZATION = Graphic3d_RenderingMode.Graphic3d_RM_RASTERIZATION
Graphic3d_RM_RAYTRACING = Graphic3d_RenderingMode.Graphic3d_RM_RAYTRACING

class Graphic3d_ShaderFlags(IntEnum):
	Graphic3d_ShaderFlags_VertColor = 1
	Graphic3d_ShaderFlags_TextureRGB = 2
	Graphic3d_ShaderFlags_TextureEnv = 4
	Graphic3d_ShaderFlags_TextureNormal = Graphic3d_ShaderFlags_TextureRGB | Graphic3d_ShaderFlags_TextureEnv
	Graphic3d_ShaderFlags_PointSimple = 8
	Graphic3d_ShaderFlags_PointSprite = 16
	Graphic3d_ShaderFlags_PointSpriteA = Graphic3d_ShaderFlags_PointSimple | Graphic3d_ShaderFlags_PointSprite
	Graphic3d_ShaderFlags_StippleLine = 32
	Graphic3d_ShaderFlags_ClipPlanes1 = 64
	Graphic3d_ShaderFlags_ClipPlanes2 = 128
	Graphic3d_ShaderFlags_ClipPlanesN = Graphic3d_ShaderFlags_ClipPlanes1 | Graphic3d_ShaderFlags_ClipPlanes2
	Graphic3d_ShaderFlags_ClipChains = 256
	Graphic3d_ShaderFlags_MeshEdges = 512
	Graphic3d_ShaderFlags_AlphaTest = 1024
	Graphic3d_ShaderFlags_WriteOit = 2048
	Graphic3d_ShaderFlags_OitDepthPeeling = 4096
	Graphic3d_ShaderFlags_NB = 8192
	Graphic3d_ShaderFlags_IsPoint = Graphic3d_ShaderFlags_PointSimple | Graphic3d_ShaderFlags_PointSprite | Graphic3d_ShaderFlags_PointSpriteA
	Graphic3d_ShaderFlags_HasTextures = Graphic3d_ShaderFlags_TextureRGB | Graphic3d_ShaderFlags_TextureEnv
	Graphic3d_ShaderFlags_NeedsGeomShader = Graphic3d_ShaderFlags_MeshEdges
Graphic3d_ShaderFlags_VertColor = Graphic3d_ShaderFlags.Graphic3d_ShaderFlags_VertColor
Graphic3d_ShaderFlags_TextureRGB = Graphic3d_ShaderFlags.Graphic3d_ShaderFlags_TextureRGB
Graphic3d_ShaderFlags_TextureEnv = Graphic3d_ShaderFlags.Graphic3d_ShaderFlags_TextureEnv
Graphic3d_ShaderFlags_TextureNormal = Graphic3d_ShaderFlags.Graphic3d_ShaderFlags_TextureNormal
Graphic3d_ShaderFlags_PointSimple = Graphic3d_ShaderFlags.Graphic3d_ShaderFlags_PointSimple
Graphic3d_ShaderFlags_PointSprite = Graphic3d_ShaderFlags.Graphic3d_ShaderFlags_PointSprite
Graphic3d_ShaderFlags_PointSpriteA = Graphic3d_ShaderFlags.Graphic3d_ShaderFlags_PointSpriteA
Graphic3d_ShaderFlags_StippleLine = Graphic3d_ShaderFlags.Graphic3d_ShaderFlags_StippleLine
Graphic3d_ShaderFlags_ClipPlanes1 = Graphic3d_ShaderFlags.Graphic3d_ShaderFlags_ClipPlanes1
Graphic3d_ShaderFlags_ClipPlanes2 = Graphic3d_ShaderFlags.Graphic3d_ShaderFlags_ClipPlanes2
Graphic3d_ShaderFlags_ClipPlanesN = Graphic3d_ShaderFlags.Graphic3d_ShaderFlags_ClipPlanesN
Graphic3d_ShaderFlags_ClipChains = Graphic3d_ShaderFlags.Graphic3d_ShaderFlags_ClipChains
Graphic3d_ShaderFlags_MeshEdges = Graphic3d_ShaderFlags.Graphic3d_ShaderFlags_MeshEdges
Graphic3d_ShaderFlags_AlphaTest = Graphic3d_ShaderFlags.Graphic3d_ShaderFlags_AlphaTest
Graphic3d_ShaderFlags_WriteOit = Graphic3d_ShaderFlags.Graphic3d_ShaderFlags_WriteOit
Graphic3d_ShaderFlags_OitDepthPeeling = Graphic3d_ShaderFlags.Graphic3d_ShaderFlags_OitDepthPeeling
Graphic3d_ShaderFlags_NB = Graphic3d_ShaderFlags.Graphic3d_ShaderFlags_NB
Graphic3d_ShaderFlags_IsPoint = Graphic3d_ShaderFlags.Graphic3d_ShaderFlags_IsPoint
Graphic3d_ShaderFlags_HasTextures = Graphic3d_ShaderFlags.Graphic3d_ShaderFlags_HasTextures
Graphic3d_ShaderFlags_NeedsGeomShader = Graphic3d_ShaderFlags.Graphic3d_ShaderFlags_NeedsGeomShader

class Graphic3d_GlslExtension(IntEnum):
	Graphic3d_GlslExtension_GL_OES_standard_derivatives = 0
	Graphic3d_GlslExtension_GL_EXT_shader_texture_lod = 1
	Graphic3d_GlslExtension_GL_EXT_frag_depth = 2
	Graphic3d_GlslExtension_GL_EXT_gpu_shader4 = 3
Graphic3d_GlslExtension_GL_OES_standard_derivatives = Graphic3d_GlslExtension.Graphic3d_GlslExtension_GL_OES_standard_derivatives
Graphic3d_GlslExtension_GL_EXT_shader_texture_lod = Graphic3d_GlslExtension.Graphic3d_GlslExtension_GL_EXT_shader_texture_lod
Graphic3d_GlslExtension_GL_EXT_frag_depth = Graphic3d_GlslExtension.Graphic3d_GlslExtension_GL_EXT_frag_depth
Graphic3d_GlslExtension_GL_EXT_gpu_shader4 = Graphic3d_GlslExtension.Graphic3d_GlslExtension_GL_EXT_gpu_shader4

class Graphic3d_StereoMode(IntEnum):
	Graphic3d_StereoMode_QuadBuffer = 0
	Graphic3d_StereoMode_Anaglyph = 1
	Graphic3d_StereoMode_RowInterlaced = 2
	Graphic3d_StereoMode_ColumnInterlaced = 3
	Graphic3d_StereoMode_ChessBoard = 4
	Graphic3d_StereoMode_SideBySide = 5
	Graphic3d_StereoMode_OverUnder = 6
	Graphic3d_StereoMode_SoftPageFlip = 7
	Graphic3d_StereoMode_OpenVR = 8
Graphic3d_StereoMode_QuadBuffer = Graphic3d_StereoMode.Graphic3d_StereoMode_QuadBuffer
Graphic3d_StereoMode_Anaglyph = Graphic3d_StereoMode.Graphic3d_StereoMode_Anaglyph
Graphic3d_StereoMode_RowInterlaced = Graphic3d_StereoMode.Graphic3d_StereoMode_RowInterlaced
Graphic3d_StereoMode_ColumnInterlaced = Graphic3d_StereoMode.Graphic3d_StereoMode_ColumnInterlaced
Graphic3d_StereoMode_ChessBoard = Graphic3d_StereoMode.Graphic3d_StereoMode_ChessBoard
Graphic3d_StereoMode_SideBySide = Graphic3d_StereoMode.Graphic3d_StereoMode_SideBySide
Graphic3d_StereoMode_OverUnder = Graphic3d_StereoMode.Graphic3d_StereoMode_OverUnder
Graphic3d_StereoMode_SoftPageFlip = Graphic3d_StereoMode.Graphic3d_StereoMode_SoftPageFlip
Graphic3d_StereoMode_OpenVR = Graphic3d_StereoMode.Graphic3d_StereoMode_OpenVR

class Graphic3d_TextPath(IntEnum):
	Graphic3d_TP_UP = 0
	Graphic3d_TP_DOWN = 1
	Graphic3d_TP_LEFT = 2
	Graphic3d_TP_RIGHT = 3
Graphic3d_TP_UP = Graphic3d_TextPath.Graphic3d_TP_UP
Graphic3d_TP_DOWN = Graphic3d_TextPath.Graphic3d_TP_DOWN
Graphic3d_TP_LEFT = Graphic3d_TextPath.Graphic3d_TP_LEFT
Graphic3d_TP_RIGHT = Graphic3d_TextPath.Graphic3d_TP_RIGHT

class Graphic3d_TextureSetBits(IntEnum):
	Graphic3d_TextureSetBits_NONE = 0
	Graphic3d_TextureSetBits_BaseColor = Graphic3d_TextureUnit_BaseColor
	Graphic3d_TextureSetBits_Emissive = Graphic3d_TextureUnit_Emissive
	Graphic3d_TextureSetBits_Occlusion = Graphic3d_TextureUnit_Occlusion
	Graphic3d_TextureSetBits_Normal = Graphic3d_TextureUnit_Normal
	Graphic3d_TextureSetBits_MetallicRoughness = Graphic3d_TextureUnit_MetallicRoughness
Graphic3d_TextureSetBits_NONE = Graphic3d_TextureSetBits.Graphic3d_TextureSetBits_NONE
Graphic3d_TextureSetBits_BaseColor = Graphic3d_TextureSetBits.Graphic3d_TextureSetBits_BaseColor
Graphic3d_TextureSetBits_Emissive = Graphic3d_TextureSetBits.Graphic3d_TextureSetBits_Emissive
Graphic3d_TextureSetBits_Occlusion = Graphic3d_TextureSetBits.Graphic3d_TextureSetBits_Occlusion
Graphic3d_TextureSetBits_Normal = Graphic3d_TextureSetBits.Graphic3d_TextureSetBits_Normal
Graphic3d_TextureSetBits_MetallicRoughness = Graphic3d_TextureSetBits.Graphic3d_TextureSetBits_MetallicRoughness

class Graphic3d_TextureUnit(IntEnum):
	Graphic3d_TextureUnit_0 = 0
	Graphic3d_TextureUnit_1 = 1
	Graphic3d_TextureUnit_2 = 2
	Graphic3d_TextureUnit_3 = 3
	Graphic3d_TextureUnit_4 = 4
	Graphic3d_TextureUnit_5 = 5
	Graphic3d_TextureUnit_6 = 6
	Graphic3d_TextureUnit_7 = 7
	Graphic3d_TextureUnit_8 = 8
	Graphic3d_TextureUnit_9 = 9
	Graphic3d_TextureUnit_10 = 10
	Graphic3d_TextureUnit_11 = 11
	Graphic3d_TextureUnit_12 = 12
	Graphic3d_TextureUnit_13 = 13
	Graphic3d_TextureUnit_14 = 14
	Graphic3d_TextureUnit_15 = 15
	Graphic3d_TextureUnit_BaseColor = Graphic3d_TextureUnit_0
	Graphic3d_TextureUnit_Emissive = Graphic3d_TextureUnit_1
	Graphic3d_TextureUnit_Occlusion = Graphic3d_TextureUnit_2
	Graphic3d_TextureUnit_Normal = Graphic3d_TextureUnit_3
	Graphic3d_TextureUnit_MetallicRoughness = Graphic3d_TextureUnit_4
	Graphic3d_TextureUnit_EnvMap = Graphic3d_TextureUnit_0
	Graphic3d_TextureUnit_PointSprite = Graphic3d_TextureUnit_1
	Graphic3d_TextureUnit_DepthPeelingDepth = - 6
	Graphic3d_TextureUnit_DepthPeelingFrontColor = - 5
	Graphic3d_TextureUnit_ShadowMap = - 4
	Graphic3d_TextureUnit_PbrEnvironmentLUT = - 3
	Graphic3d_TextureUnit_PbrIblDiffuseSH = - 2
	Graphic3d_TextureUnit_PbrIblSpecular = - 1
Graphic3d_TextureUnit_0 = Graphic3d_TextureUnit.Graphic3d_TextureUnit_0
Graphic3d_TextureUnit_1 = Graphic3d_TextureUnit.Graphic3d_TextureUnit_1
Graphic3d_TextureUnit_2 = Graphic3d_TextureUnit.Graphic3d_TextureUnit_2
Graphic3d_TextureUnit_3 = Graphic3d_TextureUnit.Graphic3d_TextureUnit_3
Graphic3d_TextureUnit_4 = Graphic3d_TextureUnit.Graphic3d_TextureUnit_4
Graphic3d_TextureUnit_5 = Graphic3d_TextureUnit.Graphic3d_TextureUnit_5
Graphic3d_TextureUnit_6 = Graphic3d_TextureUnit.Graphic3d_TextureUnit_6
Graphic3d_TextureUnit_7 = Graphic3d_TextureUnit.Graphic3d_TextureUnit_7
Graphic3d_TextureUnit_8 = Graphic3d_TextureUnit.Graphic3d_TextureUnit_8
Graphic3d_TextureUnit_9 = Graphic3d_TextureUnit.Graphic3d_TextureUnit_9
Graphic3d_TextureUnit_10 = Graphic3d_TextureUnit.Graphic3d_TextureUnit_10
Graphic3d_TextureUnit_11 = Graphic3d_TextureUnit.Graphic3d_TextureUnit_11
Graphic3d_TextureUnit_12 = Graphic3d_TextureUnit.Graphic3d_TextureUnit_12
Graphic3d_TextureUnit_13 = Graphic3d_TextureUnit.Graphic3d_TextureUnit_13
Graphic3d_TextureUnit_14 = Graphic3d_TextureUnit.Graphic3d_TextureUnit_14
Graphic3d_TextureUnit_15 = Graphic3d_TextureUnit.Graphic3d_TextureUnit_15
Graphic3d_TextureUnit_BaseColor = Graphic3d_TextureUnit.Graphic3d_TextureUnit_BaseColor
Graphic3d_TextureUnit_Emissive = Graphic3d_TextureUnit.Graphic3d_TextureUnit_Emissive
Graphic3d_TextureUnit_Occlusion = Graphic3d_TextureUnit.Graphic3d_TextureUnit_Occlusion
Graphic3d_TextureUnit_Normal = Graphic3d_TextureUnit.Graphic3d_TextureUnit_Normal
Graphic3d_TextureUnit_MetallicRoughness = Graphic3d_TextureUnit.Graphic3d_TextureUnit_MetallicRoughness
Graphic3d_TextureUnit_EnvMap = Graphic3d_TextureUnit.Graphic3d_TextureUnit_EnvMap
Graphic3d_TextureUnit_PointSprite = Graphic3d_TextureUnit.Graphic3d_TextureUnit_PointSprite
Graphic3d_TextureUnit_DepthPeelingDepth = Graphic3d_TextureUnit.Graphic3d_TextureUnit_DepthPeelingDepth
Graphic3d_TextureUnit_DepthPeelingFrontColor = Graphic3d_TextureUnit.Graphic3d_TextureUnit_DepthPeelingFrontColor
Graphic3d_TextureUnit_ShadowMap = Graphic3d_TextureUnit.Graphic3d_TextureUnit_ShadowMap
Graphic3d_TextureUnit_PbrEnvironmentLUT = Graphic3d_TextureUnit.Graphic3d_TextureUnit_PbrEnvironmentLUT
Graphic3d_TextureUnit_PbrIblDiffuseSH = Graphic3d_TextureUnit.Graphic3d_TextureUnit_PbrIblDiffuseSH
Graphic3d_TextureUnit_PbrIblSpecular = Graphic3d_TextureUnit.Graphic3d_TextureUnit_PbrIblSpecular

class Graphic3d_ToneMappingMethod(IntEnum):
	Graphic3d_ToneMappingMethod_Disabled = 0
	Graphic3d_ToneMappingMethod_Filmic = 1
Graphic3d_ToneMappingMethod_Disabled = Graphic3d_ToneMappingMethod.Graphic3d_ToneMappingMethod_Disabled
Graphic3d_ToneMappingMethod_Filmic = Graphic3d_ToneMappingMethod.Graphic3d_ToneMappingMethod_Filmic

class Graphic3d_TransModeFlags(IntEnum):
	Graphic3d_TMF_None = 0
	Graphic3d_TMF_ZoomPers = 2
	Graphic3d_TMF_RotatePers = 8
	Graphic3d_TMF_TriedronPers = 32
	Graphic3d_TMF_2d = 64
	Graphic3d_TMF_CameraPers = 128
	Graphic3d_TMF_OrthoPers = 256
	Graphic3d_TMF_AxialScalePers = 512
	Graphic3d_TMF_ZoomRotatePers = Graphic3d_TMF_ZoomPers | Graphic3d_TMF_RotatePers
	Graphic3d_TMF_AxialZoomPers = Graphic3d_TMF_ZoomPers | Graphic3d_TMF_AxialScalePers
Graphic3d_TMF_None = Graphic3d_TransModeFlags.Graphic3d_TMF_None
Graphic3d_TMF_ZoomPers = Graphic3d_TransModeFlags.Graphic3d_TMF_ZoomPers
Graphic3d_TMF_RotatePers = Graphic3d_TransModeFlags.Graphic3d_TMF_RotatePers
Graphic3d_TMF_TriedronPers = Graphic3d_TransModeFlags.Graphic3d_TMF_TriedronPers
Graphic3d_TMF_2d = Graphic3d_TransModeFlags.Graphic3d_TMF_2d
Graphic3d_TMF_CameraPers = Graphic3d_TransModeFlags.Graphic3d_TMF_CameraPers
Graphic3d_TMF_OrthoPers = Graphic3d_TransModeFlags.Graphic3d_TMF_OrthoPers
Graphic3d_TMF_AxialScalePers = Graphic3d_TransModeFlags.Graphic3d_TMF_AxialScalePers
Graphic3d_TMF_ZoomRotatePers = Graphic3d_TransModeFlags.Graphic3d_TMF_ZoomRotatePers
Graphic3d_TMF_AxialZoomPers = Graphic3d_TransModeFlags.Graphic3d_TMF_AxialZoomPers

class Graphic3d_TypeOfAnswer(IntEnum):
	Graphic3d_TOA_YES = 0
	Graphic3d_TOA_NO = 1
	Graphic3d_TOA_COMPUTE = 2
Graphic3d_TOA_YES = Graphic3d_TypeOfAnswer.Graphic3d_TOA_YES
Graphic3d_TOA_NO = Graphic3d_TypeOfAnswer.Graphic3d_TOA_NO
Graphic3d_TOA_COMPUTE = Graphic3d_TypeOfAnswer.Graphic3d_TOA_COMPUTE

class Graphic3d_TypeOfBackfacingModel(IntEnum):
	Graphic3d_TypeOfBackfacingModel_Auto = 0
	Graphic3d_TypeOfBackfacingModel_DoubleSided = 1
	Graphic3d_TypeOfBackfacingModel_BackCulled = 2
	Graphic3d_TypeOfBackfacingModel_FrontCulled = 3
	Graphic3d_TOBM_AUTOMATIC = Graphic3d_TypeOfBackfacingModel_Auto
	Graphic3d_TOBM_FORCE = Graphic3d_TypeOfBackfacingModel_DoubleSided
	Graphic3d_TOBM_DISABLE = Graphic3d_TypeOfBackfacingModel_BackCulled
	V3d_TOBM_AUTOMATIC = Graphic3d_TypeOfBackfacingModel_Auto
	V3d_TOBM_ALWAYS_DISPLAYED = Graphic3d_TypeOfBackfacingModel_DoubleSided
	V3d_TOBM_NEVER_DISPLAYED = Graphic3d_TypeOfBackfacingModel_BackCulled
Graphic3d_TypeOfBackfacingModel_Auto = Graphic3d_TypeOfBackfacingModel.Graphic3d_TypeOfBackfacingModel_Auto
Graphic3d_TypeOfBackfacingModel_DoubleSided = Graphic3d_TypeOfBackfacingModel.Graphic3d_TypeOfBackfacingModel_DoubleSided
Graphic3d_TypeOfBackfacingModel_BackCulled = Graphic3d_TypeOfBackfacingModel.Graphic3d_TypeOfBackfacingModel_BackCulled
Graphic3d_TypeOfBackfacingModel_FrontCulled = Graphic3d_TypeOfBackfacingModel.Graphic3d_TypeOfBackfacingModel_FrontCulled
Graphic3d_TOBM_AUTOMATIC = Graphic3d_TypeOfBackfacingModel.Graphic3d_TOBM_AUTOMATIC
Graphic3d_TOBM_FORCE = Graphic3d_TypeOfBackfacingModel.Graphic3d_TOBM_FORCE
Graphic3d_TOBM_DISABLE = Graphic3d_TypeOfBackfacingModel.Graphic3d_TOBM_DISABLE
V3d_TOBM_AUTOMATIC = Graphic3d_TypeOfBackfacingModel.V3d_TOBM_AUTOMATIC
V3d_TOBM_ALWAYS_DISPLAYED = Graphic3d_TypeOfBackfacingModel.V3d_TOBM_ALWAYS_DISPLAYED
V3d_TOBM_NEVER_DISPLAYED = Graphic3d_TypeOfBackfacingModel.V3d_TOBM_NEVER_DISPLAYED

class Graphic3d_TypeOfBackground(IntEnum):
	Graphic3d_TOB_NONE = - 1
	Graphic3d_TOB_GRADIENT = 1
	Graphic3d_TOB_TEXTURE = 2
	Graphic3d_TOB_CUBEMAP = 3
Graphic3d_TOB_NONE = Graphic3d_TypeOfBackground.Graphic3d_TOB_NONE
Graphic3d_TOB_GRADIENT = Graphic3d_TypeOfBackground.Graphic3d_TOB_GRADIENT
Graphic3d_TOB_TEXTURE = Graphic3d_TypeOfBackground.Graphic3d_TOB_TEXTURE
Graphic3d_TOB_CUBEMAP = Graphic3d_TypeOfBackground.Graphic3d_TOB_CUBEMAP

class Graphic3d_TypeOfConnection(IntEnum):
	Graphic3d_TOC_ANCESTOR = 0
	Graphic3d_TOC_DESCENDANT = 1
Graphic3d_TOC_ANCESTOR = Graphic3d_TypeOfConnection.Graphic3d_TOC_ANCESTOR
Graphic3d_TOC_DESCENDANT = Graphic3d_TypeOfConnection.Graphic3d_TOC_DESCENDANT

class Graphic3d_TypeOfLightSource(IntEnum):
	Graphic3d_TypeOfLightSource_Ambient = 0
	Graphic3d_TypeOfLightSource_Directional = 1
	Graphic3d_TypeOfLightSource_Positional = 2
	Graphic3d_TypeOfLightSource_Spot = 3
	Graphic3d_TOLS_AMBIENT = Graphic3d_TypeOfLightSource_Ambient
	Graphic3d_TOLS_DIRECTIONAL = Graphic3d_TypeOfLightSource_Directional
	Graphic3d_TOLS_POSITIONAL = Graphic3d_TypeOfLightSource_Positional
	Graphic3d_TOLS_SPOT = Graphic3d_TypeOfLightSource_Spot
	V3d_AMBIENT = Graphic3d_TypeOfLightSource_Ambient
	V3d_DIRECTIONAL = Graphic3d_TypeOfLightSource_Directional
	V3d_POSITIONAL = Graphic3d_TypeOfLightSource_Positional
	V3d_SPOT = Graphic3d_TypeOfLightSource_Spot
Graphic3d_TypeOfLightSource_Ambient = Graphic3d_TypeOfLightSource.Graphic3d_TypeOfLightSource_Ambient
Graphic3d_TypeOfLightSource_Directional = Graphic3d_TypeOfLightSource.Graphic3d_TypeOfLightSource_Directional
Graphic3d_TypeOfLightSource_Positional = Graphic3d_TypeOfLightSource.Graphic3d_TypeOfLightSource_Positional
Graphic3d_TypeOfLightSource_Spot = Graphic3d_TypeOfLightSource.Graphic3d_TypeOfLightSource_Spot
Graphic3d_TOLS_AMBIENT = Graphic3d_TypeOfLightSource.Graphic3d_TOLS_AMBIENT
Graphic3d_TOLS_DIRECTIONAL = Graphic3d_TypeOfLightSource.Graphic3d_TOLS_DIRECTIONAL
Graphic3d_TOLS_POSITIONAL = Graphic3d_TypeOfLightSource.Graphic3d_TOLS_POSITIONAL
Graphic3d_TOLS_SPOT = Graphic3d_TypeOfLightSource.Graphic3d_TOLS_SPOT
V3d_AMBIENT = Graphic3d_TypeOfLightSource.V3d_AMBIENT
V3d_DIRECTIONAL = Graphic3d_TypeOfLightSource.V3d_DIRECTIONAL
V3d_POSITIONAL = Graphic3d_TypeOfLightSource.V3d_POSITIONAL
V3d_SPOT = Graphic3d_TypeOfLightSource.V3d_SPOT

class Graphic3d_TypeOfLimit(IntEnum):
	Graphic3d_TypeOfLimit_MaxNbLights = 0
	Graphic3d_TypeOfLimit_MaxNbClipPlanes = 1
	Graphic3d_TypeOfLimit_MaxNbViews = 2
	Graphic3d_TypeOfLimit_MaxTextureSize = 3
	Graphic3d_TypeOfLimit_MaxViewDumpSizeX = 4
	Graphic3d_TypeOfLimit_MaxViewDumpSizeY = 5
	Graphic3d_TypeOfLimit_MaxCombinedTextureUnits = 6
	Graphic3d_TypeOfLimit_MaxMsaa = 7
	Graphic3d_TypeOfLimit_HasPBR = 8
	Graphic3d_TypeOfLimit_HasRayTracing = 9
	Graphic3d_TypeOfLimit_HasRayTracingTextures = 10
	Graphic3d_TypeOfLimit_HasRayTracingAdaptiveSampling = 11
	Graphic3d_TypeOfLimit_HasRayTracingAdaptiveSamplingAtomic = 12
	Graphic3d_TypeOfLimit_HasSRGB = 13
	Graphic3d_TypeOfLimit_HasBlendedOit = 14
	Graphic3d_TypeOfLimit_HasBlendedOitMsaa = 15
	Graphic3d_TypeOfLimit_HasFlatShading = 16
	Graphic3d_TypeOfLimit_HasMeshEdges = 17
	Graphic3d_TypeOfLimit_IsWorkaroundFBO = 18
	Graphic3d_TypeOfLimit_NB = 19
Graphic3d_TypeOfLimit_MaxNbLights = Graphic3d_TypeOfLimit.Graphic3d_TypeOfLimit_MaxNbLights
Graphic3d_TypeOfLimit_MaxNbClipPlanes = Graphic3d_TypeOfLimit.Graphic3d_TypeOfLimit_MaxNbClipPlanes
Graphic3d_TypeOfLimit_MaxNbViews = Graphic3d_TypeOfLimit.Graphic3d_TypeOfLimit_MaxNbViews
Graphic3d_TypeOfLimit_MaxTextureSize = Graphic3d_TypeOfLimit.Graphic3d_TypeOfLimit_MaxTextureSize
Graphic3d_TypeOfLimit_MaxViewDumpSizeX = Graphic3d_TypeOfLimit.Graphic3d_TypeOfLimit_MaxViewDumpSizeX
Graphic3d_TypeOfLimit_MaxViewDumpSizeY = Graphic3d_TypeOfLimit.Graphic3d_TypeOfLimit_MaxViewDumpSizeY
Graphic3d_TypeOfLimit_MaxCombinedTextureUnits = Graphic3d_TypeOfLimit.Graphic3d_TypeOfLimit_MaxCombinedTextureUnits
Graphic3d_TypeOfLimit_MaxMsaa = Graphic3d_TypeOfLimit.Graphic3d_TypeOfLimit_MaxMsaa
Graphic3d_TypeOfLimit_HasPBR = Graphic3d_TypeOfLimit.Graphic3d_TypeOfLimit_HasPBR
Graphic3d_TypeOfLimit_HasRayTracing = Graphic3d_TypeOfLimit.Graphic3d_TypeOfLimit_HasRayTracing
Graphic3d_TypeOfLimit_HasRayTracingTextures = Graphic3d_TypeOfLimit.Graphic3d_TypeOfLimit_HasRayTracingTextures
Graphic3d_TypeOfLimit_HasRayTracingAdaptiveSampling = Graphic3d_TypeOfLimit.Graphic3d_TypeOfLimit_HasRayTracingAdaptiveSampling
Graphic3d_TypeOfLimit_HasRayTracingAdaptiveSamplingAtomic = Graphic3d_TypeOfLimit.Graphic3d_TypeOfLimit_HasRayTracingAdaptiveSamplingAtomic
Graphic3d_TypeOfLimit_HasSRGB = Graphic3d_TypeOfLimit.Graphic3d_TypeOfLimit_HasSRGB
Graphic3d_TypeOfLimit_HasBlendedOit = Graphic3d_TypeOfLimit.Graphic3d_TypeOfLimit_HasBlendedOit
Graphic3d_TypeOfLimit_HasBlendedOitMsaa = Graphic3d_TypeOfLimit.Graphic3d_TypeOfLimit_HasBlendedOitMsaa
Graphic3d_TypeOfLimit_HasFlatShading = Graphic3d_TypeOfLimit.Graphic3d_TypeOfLimit_HasFlatShading
Graphic3d_TypeOfLimit_HasMeshEdges = Graphic3d_TypeOfLimit.Graphic3d_TypeOfLimit_HasMeshEdges
Graphic3d_TypeOfLimit_IsWorkaroundFBO = Graphic3d_TypeOfLimit.Graphic3d_TypeOfLimit_IsWorkaroundFBO
Graphic3d_TypeOfLimit_NB = Graphic3d_TypeOfLimit.Graphic3d_TypeOfLimit_NB

class Graphic3d_TypeOfMaterial(IntEnum):
	Graphic3d_MATERIAL_ASPECT = 0
	Graphic3d_MATERIAL_PHYSIC = 1
Graphic3d_MATERIAL_ASPECT = Graphic3d_TypeOfMaterial.Graphic3d_MATERIAL_ASPECT
Graphic3d_MATERIAL_PHYSIC = Graphic3d_TypeOfMaterial.Graphic3d_MATERIAL_PHYSIC

class Graphic3d_TypeOfPrimitiveArray(IntEnum):
	Graphic3d_TOPA_UNDEFINED = 0
	Graphic3d_TOPA_POINTS = 1
	Graphic3d_TOPA_SEGMENTS = 2
	Graphic3d_TOPA_POLYLINES = 3
	Graphic3d_TOPA_TRIANGLES = 4
	Graphic3d_TOPA_TRIANGLESTRIPS = 5
	Graphic3d_TOPA_TRIANGLEFANS = 6
	Graphic3d_TOPA_LINES_ADJACENCY = 7
	Graphic3d_TOPA_LINE_STRIP_ADJACENCY = 8
	Graphic3d_TOPA_TRIANGLES_ADJACENCY = 9
	Graphic3d_TOPA_TRIANGLE_STRIP_ADJACENCY = 10
	Graphic3d_TOPA_QUADRANGLES = 11
	Graphic3d_TOPA_QUADRANGLESTRIPS = 12
	Graphic3d_TOPA_POLYGONS = 13
Graphic3d_TOPA_UNDEFINED = Graphic3d_TypeOfPrimitiveArray.Graphic3d_TOPA_UNDEFINED
Graphic3d_TOPA_POINTS = Graphic3d_TypeOfPrimitiveArray.Graphic3d_TOPA_POINTS
Graphic3d_TOPA_SEGMENTS = Graphic3d_TypeOfPrimitiveArray.Graphic3d_TOPA_SEGMENTS
Graphic3d_TOPA_POLYLINES = Graphic3d_TypeOfPrimitiveArray.Graphic3d_TOPA_POLYLINES
Graphic3d_TOPA_TRIANGLES = Graphic3d_TypeOfPrimitiveArray.Graphic3d_TOPA_TRIANGLES
Graphic3d_TOPA_TRIANGLESTRIPS = Graphic3d_TypeOfPrimitiveArray.Graphic3d_TOPA_TRIANGLESTRIPS
Graphic3d_TOPA_TRIANGLEFANS = Graphic3d_TypeOfPrimitiveArray.Graphic3d_TOPA_TRIANGLEFANS
Graphic3d_TOPA_LINES_ADJACENCY = Graphic3d_TypeOfPrimitiveArray.Graphic3d_TOPA_LINES_ADJACENCY
Graphic3d_TOPA_LINE_STRIP_ADJACENCY = Graphic3d_TypeOfPrimitiveArray.Graphic3d_TOPA_LINE_STRIP_ADJACENCY
Graphic3d_TOPA_TRIANGLES_ADJACENCY = Graphic3d_TypeOfPrimitiveArray.Graphic3d_TOPA_TRIANGLES_ADJACENCY
Graphic3d_TOPA_TRIANGLE_STRIP_ADJACENCY = Graphic3d_TypeOfPrimitiveArray.Graphic3d_TOPA_TRIANGLE_STRIP_ADJACENCY
Graphic3d_TOPA_QUADRANGLES = Graphic3d_TypeOfPrimitiveArray.Graphic3d_TOPA_QUADRANGLES
Graphic3d_TOPA_QUADRANGLESTRIPS = Graphic3d_TypeOfPrimitiveArray.Graphic3d_TOPA_QUADRANGLESTRIPS
Graphic3d_TOPA_POLYGONS = Graphic3d_TypeOfPrimitiveArray.Graphic3d_TOPA_POLYGONS

class Graphic3d_TypeOfReflection(IntEnum):
	Graphic3d_TOR_AMBIENT = 0
	Graphic3d_TOR_DIFFUSE = 1
	Graphic3d_TOR_SPECULAR = 2
	Graphic3d_TOR_EMISSION = 3
Graphic3d_TOR_AMBIENT = Graphic3d_TypeOfReflection.Graphic3d_TOR_AMBIENT
Graphic3d_TOR_DIFFUSE = Graphic3d_TypeOfReflection.Graphic3d_TOR_DIFFUSE
Graphic3d_TOR_SPECULAR = Graphic3d_TypeOfReflection.Graphic3d_TOR_SPECULAR
Graphic3d_TOR_EMISSION = Graphic3d_TypeOfReflection.Graphic3d_TOR_EMISSION

class Graphic3d_TypeOfShaderObject(IntEnum):
	Graphic3d_TOS_VERTEX = 1
	Graphic3d_TOS_TESS_CONTROL = 2
	Graphic3d_TOS_TESS_EVALUATION = 4
	Graphic3d_TOS_GEOMETRY = 8
	Graphic3d_TOS_FRAGMENT = 16
	Graphic3d_TOS_COMPUTE = 32
Graphic3d_TOS_VERTEX = Graphic3d_TypeOfShaderObject.Graphic3d_TOS_VERTEX
Graphic3d_TOS_TESS_CONTROL = Graphic3d_TypeOfShaderObject.Graphic3d_TOS_TESS_CONTROL
Graphic3d_TOS_TESS_EVALUATION = Graphic3d_TypeOfShaderObject.Graphic3d_TOS_TESS_EVALUATION
Graphic3d_TOS_GEOMETRY = Graphic3d_TypeOfShaderObject.Graphic3d_TOS_GEOMETRY
Graphic3d_TOS_FRAGMENT = Graphic3d_TypeOfShaderObject.Graphic3d_TOS_FRAGMENT
Graphic3d_TOS_COMPUTE = Graphic3d_TypeOfShaderObject.Graphic3d_TOS_COMPUTE

class Graphic3d_TypeOfShadingModel(IntEnum):
	Graphic3d_TypeOfShadingModel_DEFAULT = - 1
	Graphic3d_TypeOfShadingModel_Unlit = 0
	Graphic3d_TypeOfShadingModel_PhongFacet = 1
	Graphic3d_TypeOfShadingModel_Gouraud = 2
	Graphic3d_TypeOfShadingModel_Phong = 3
	Graphic3d_TypeOfShadingModel_Pbr = 4
	Graphic3d_TypeOfShadingModel_PbrFacet = 5
	Graphic3d_TOSM_DEFAULT = Graphic3d_TypeOfShadingModel_DEFAULT
	Graphic3d_TOSM_UNLIT = Graphic3d_TypeOfShadingModel_Unlit
	Graphic3d_TOSM_FACET = Graphic3d_TypeOfShadingModel_PhongFacet
	Graphic3d_TOSM_VERTEX = Graphic3d_TypeOfShadingModel_Gouraud
	Graphic3d_TOSM_FRAGMENT = Graphic3d_TypeOfShadingModel_Phong
	Graphic3d_TOSM_PBR = Graphic3d_TypeOfShadingModel_Pbr
	Graphic3d_TOSM_PBR_FACET = Graphic3d_TypeOfShadingModel_PbrFacet
	Graphic3d_TOSM_NONE = Graphic3d_TOSM_UNLIT
	V3d_COLOR = Graphic3d_TOSM_NONE
	V3d_FLAT = Graphic3d_TOSM_FACET
	V3d_GOURAUD = Graphic3d_TOSM_VERTEX
	V3d_PHONG = Graphic3d_TOSM_FRAGMENT
Graphic3d_TypeOfShadingModel_DEFAULT = Graphic3d_TypeOfShadingModel.Graphic3d_TypeOfShadingModel_DEFAULT
Graphic3d_TypeOfShadingModel_Unlit = Graphic3d_TypeOfShadingModel.Graphic3d_TypeOfShadingModel_Unlit
Graphic3d_TypeOfShadingModel_PhongFacet = Graphic3d_TypeOfShadingModel.Graphic3d_TypeOfShadingModel_PhongFacet
Graphic3d_TypeOfShadingModel_Gouraud = Graphic3d_TypeOfShadingModel.Graphic3d_TypeOfShadingModel_Gouraud
Graphic3d_TypeOfShadingModel_Phong = Graphic3d_TypeOfShadingModel.Graphic3d_TypeOfShadingModel_Phong
Graphic3d_TypeOfShadingModel_Pbr = Graphic3d_TypeOfShadingModel.Graphic3d_TypeOfShadingModel_Pbr
Graphic3d_TypeOfShadingModel_PbrFacet = Graphic3d_TypeOfShadingModel.Graphic3d_TypeOfShadingModel_PbrFacet
Graphic3d_TOSM_DEFAULT = Graphic3d_TypeOfShadingModel.Graphic3d_TOSM_DEFAULT
Graphic3d_TOSM_UNLIT = Graphic3d_TypeOfShadingModel.Graphic3d_TOSM_UNLIT
Graphic3d_TOSM_FACET = Graphic3d_TypeOfShadingModel.Graphic3d_TOSM_FACET
Graphic3d_TOSM_VERTEX = Graphic3d_TypeOfShadingModel.Graphic3d_TOSM_VERTEX
Graphic3d_TOSM_FRAGMENT = Graphic3d_TypeOfShadingModel.Graphic3d_TOSM_FRAGMENT
Graphic3d_TOSM_PBR = Graphic3d_TypeOfShadingModel.Graphic3d_TOSM_PBR
Graphic3d_TOSM_PBR_FACET = Graphic3d_TypeOfShadingModel.Graphic3d_TOSM_PBR_FACET
Graphic3d_TOSM_NONE = Graphic3d_TypeOfShadingModel.Graphic3d_TOSM_NONE
V3d_COLOR = Graphic3d_TypeOfShadingModel.V3d_COLOR
V3d_FLAT = Graphic3d_TypeOfShadingModel.V3d_FLAT
V3d_GOURAUD = Graphic3d_TypeOfShadingModel.V3d_GOURAUD
V3d_PHONG = Graphic3d_TypeOfShadingModel.V3d_PHONG

class Graphic3d_TypeOfStructure(IntEnum):
	Graphic3d_TOS_WIREFRAME = 0
	Graphic3d_TOS_SHADING = 1
	Graphic3d_TOS_COMPUTED = 2
	Graphic3d_TOS_ALL = 3
Graphic3d_TOS_WIREFRAME = Graphic3d_TypeOfStructure.Graphic3d_TOS_WIREFRAME
Graphic3d_TOS_SHADING = Graphic3d_TypeOfStructure.Graphic3d_TOS_SHADING
Graphic3d_TOS_COMPUTED = Graphic3d_TypeOfStructure.Graphic3d_TOS_COMPUTED
Graphic3d_TOS_ALL = Graphic3d_TypeOfStructure.Graphic3d_TOS_ALL

class Graphic3d_TypeOfTexture(IntEnum):
	Graphic3d_TypeOfTexture_1D = 0
	Graphic3d_TypeOfTexture_2D = 1
	Graphic3d_TypeOfTexture_3D = 2
	Graphic3d_TypeOfTexture_CUBEMAP = 3
	Graphic3d_TOT_2D_MIPMAP = 4
	Graphic3d_TOT_1D = Graphic3d_TypeOfTexture_1D
	Graphic3d_TOT_2D = Graphic3d_TypeOfTexture_2D
	Graphic3d_TOT_CUBEMAP = Graphic3d_TypeOfTexture_CUBEMAP
Graphic3d_TypeOfTexture_1D = Graphic3d_TypeOfTexture.Graphic3d_TypeOfTexture_1D
Graphic3d_TypeOfTexture_2D = Graphic3d_TypeOfTexture.Graphic3d_TypeOfTexture_2D
Graphic3d_TypeOfTexture_3D = Graphic3d_TypeOfTexture.Graphic3d_TypeOfTexture_3D
Graphic3d_TypeOfTexture_CUBEMAP = Graphic3d_TypeOfTexture.Graphic3d_TypeOfTexture_CUBEMAP
Graphic3d_TOT_2D_MIPMAP = Graphic3d_TypeOfTexture.Graphic3d_TOT_2D_MIPMAP
Graphic3d_TOT_1D = Graphic3d_TypeOfTexture.Graphic3d_TOT_1D
Graphic3d_TOT_2D = Graphic3d_TypeOfTexture.Graphic3d_TOT_2D
Graphic3d_TOT_CUBEMAP = Graphic3d_TypeOfTexture.Graphic3d_TOT_CUBEMAP

class Graphic3d_TypeOfTextureFilter(IntEnum):
	Graphic3d_TOTF_NEAREST = 0
	Graphic3d_TOTF_BILINEAR = 1
	Graphic3d_TOTF_TRILINEAR = 2
Graphic3d_TOTF_NEAREST = Graphic3d_TypeOfTextureFilter.Graphic3d_TOTF_NEAREST
Graphic3d_TOTF_BILINEAR = Graphic3d_TypeOfTextureFilter.Graphic3d_TOTF_BILINEAR
Graphic3d_TOTF_TRILINEAR = Graphic3d_TypeOfTextureFilter.Graphic3d_TOTF_TRILINEAR

class Graphic3d_TypeOfTextureMode(IntEnum):
	Graphic3d_TOTM_OBJECT = 0
	Graphic3d_TOTM_SPHERE = 1
	Graphic3d_TOTM_EYE = 2
	Graphic3d_TOTM_MANUAL = 3
	Graphic3d_TOTM_SPRITE = 4
Graphic3d_TOTM_OBJECT = Graphic3d_TypeOfTextureMode.Graphic3d_TOTM_OBJECT
Graphic3d_TOTM_SPHERE = Graphic3d_TypeOfTextureMode.Graphic3d_TOTM_SPHERE
Graphic3d_TOTM_EYE = Graphic3d_TypeOfTextureMode.Graphic3d_TOTM_EYE
Graphic3d_TOTM_MANUAL = Graphic3d_TypeOfTextureMode.Graphic3d_TOTM_MANUAL
Graphic3d_TOTM_SPRITE = Graphic3d_TypeOfTextureMode.Graphic3d_TOTM_SPRITE

class Graphic3d_TypeOfVisualization(IntEnum):
	Graphic3d_TOV_WIREFRAME = 0
	Graphic3d_TOV_SHADING = 1
Graphic3d_TOV_WIREFRAME = Graphic3d_TypeOfVisualization.Graphic3d_TOV_WIREFRAME
Graphic3d_TOV_SHADING = Graphic3d_TypeOfVisualization.Graphic3d_TOV_SHADING

class Graphic3d_VerticalTextAlignment(IntEnum):
	Graphic3d_VTA_BOTTOM = 0
	Graphic3d_VTA_CENTER = 1
	Graphic3d_VTA_TOP = 2
	Graphic3d_VTA_TOPFIRSTLINE = 3
Graphic3d_VTA_BOTTOM = Graphic3d_VerticalTextAlignment.Graphic3d_VTA_BOTTOM
Graphic3d_VTA_CENTER = Graphic3d_VerticalTextAlignment.Graphic3d_VTA_CENTER
Graphic3d_VTA_TOP = Graphic3d_VerticalTextAlignment.Graphic3d_VTA_TOP
Graphic3d_VTA_TOPFIRSTLINE = Graphic3d_VerticalTextAlignment.Graphic3d_VTA_TOPFIRSTLINE


def Handle_Graphic3d_ArrayOfPrimitives_Create():
    return _Graphic3d.Handle_Graphic3d_ArrayOfPrimitives_Create()

def Handle_Graphic3d_ArrayOfPrimitives_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_ArrayOfPrimitives_DownCast(t)

def Handle_Graphic3d_ArrayOfPrimitives_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_ArrayOfPrimitives_IsNull(t)

def Handle_Graphic3d_Aspects_Create():
    return _Graphic3d.Handle_Graphic3d_Aspects_Create()

def Handle_Graphic3d_Aspects_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_Aspects_DownCast(t)

def Handle_Graphic3d_Aspects_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_Aspects_IsNull(t)

def Handle_Graphic3d_BoundBuffer_Create():
    return _Graphic3d.Handle_Graphic3d_BoundBuffer_Create()

def Handle_Graphic3d_BoundBuffer_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_BoundBuffer_DownCast(t)

def Handle_Graphic3d_BoundBuffer_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_BoundBuffer_IsNull(t)

def Handle_Graphic3d_CLight_Create():
    return _Graphic3d.Handle_Graphic3d_CLight_Create()

def Handle_Graphic3d_CLight_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_CLight_DownCast(t)

def Handle_Graphic3d_CLight_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_CLight_IsNull(t)

def Handle_Graphic3d_CStructure_Create():
    return _Graphic3d.Handle_Graphic3d_CStructure_Create()

def Handle_Graphic3d_CStructure_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_CStructure_DownCast(t)

def Handle_Graphic3d_CStructure_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_CStructure_IsNull(t)

def Handle_Graphic3d_Camera_Create():
    return _Graphic3d.Handle_Graphic3d_Camera_Create()

def Handle_Graphic3d_Camera_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_Camera_DownCast(t)

def Handle_Graphic3d_Camera_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_Camera_IsNull(t)

def Handle_Graphic3d_ClipPlane_Create():
    return _Graphic3d.Handle_Graphic3d_ClipPlane_Create()

def Handle_Graphic3d_ClipPlane_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_ClipPlane_DownCast(t)

def Handle_Graphic3d_ClipPlane_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_ClipPlane_IsNull(t)

def Handle_Graphic3d_DataStructureManager_Create():
    return _Graphic3d.Handle_Graphic3d_DataStructureManager_Create()

def Handle_Graphic3d_DataStructureManager_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_DataStructureManager_DownCast(t)

def Handle_Graphic3d_DataStructureManager_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_DataStructureManager_IsNull(t)

def Handle_Graphic3d_FrameStats_Create():
    return _Graphic3d.Handle_Graphic3d_FrameStats_Create()

def Handle_Graphic3d_FrameStats_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_FrameStats_DownCast(t)

def Handle_Graphic3d_FrameStats_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_FrameStats_IsNull(t)

def Handle_Graphic3d_GraphicDriver_Create():
    return _Graphic3d.Handle_Graphic3d_GraphicDriver_Create()

def Handle_Graphic3d_GraphicDriver_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_GraphicDriver_DownCast(t)

def Handle_Graphic3d_GraphicDriver_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_GraphicDriver_IsNull(t)

def Handle_Graphic3d_GraphicDriverFactory_Create():
    return _Graphic3d.Handle_Graphic3d_GraphicDriverFactory_Create()

def Handle_Graphic3d_GraphicDriverFactory_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_GraphicDriverFactory_DownCast(t)

def Handle_Graphic3d_GraphicDriverFactory_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_GraphicDriverFactory_IsNull(t)

def Handle_Graphic3d_Group_Create():
    return _Graphic3d.Handle_Graphic3d_Group_Create()

def Handle_Graphic3d_Group_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_Group_DownCast(t)

def Handle_Graphic3d_Group_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_Group_IsNull(t)

def Handle_Graphic3d_HatchStyle_Create():
    return _Graphic3d.Handle_Graphic3d_HatchStyle_Create()

def Handle_Graphic3d_HatchStyle_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_HatchStyle_DownCast(t)

def Handle_Graphic3d_HatchStyle_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_HatchStyle_IsNull(t)

def Handle_Graphic3d_Layer_Create():
    return _Graphic3d.Handle_Graphic3d_Layer_Create()

def Handle_Graphic3d_Layer_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_Layer_DownCast(t)

def Handle_Graphic3d_Layer_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_Layer_IsNull(t)

def Handle_Graphic3d_LightSet_Create():
    return _Graphic3d.Handle_Graphic3d_LightSet_Create()

def Handle_Graphic3d_LightSet_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_LightSet_DownCast(t)

def Handle_Graphic3d_LightSet_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_LightSet_IsNull(t)

def Handle_Graphic3d_MarkerImage_Create():
    return _Graphic3d.Handle_Graphic3d_MarkerImage_Create()

def Handle_Graphic3d_MarkerImage_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_MarkerImage_DownCast(t)

def Handle_Graphic3d_MarkerImage_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_MarkerImage_IsNull(t)

def Handle_Graphic3d_PresentationAttributes_Create():
    return _Graphic3d.Handle_Graphic3d_PresentationAttributes_Create()

def Handle_Graphic3d_PresentationAttributes_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_PresentationAttributes_DownCast(t)

def Handle_Graphic3d_PresentationAttributes_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_PresentationAttributes_IsNull(t)

def Handle_Graphic3d_SequenceOfHClipPlane_Create():
    return _Graphic3d.Handle_Graphic3d_SequenceOfHClipPlane_Create()

def Handle_Graphic3d_SequenceOfHClipPlane_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_SequenceOfHClipPlane_DownCast(t)

def Handle_Graphic3d_SequenceOfHClipPlane_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_SequenceOfHClipPlane_IsNull(t)

def Handle_Graphic3d_ShaderAttribute_Create():
    return _Graphic3d.Handle_Graphic3d_ShaderAttribute_Create()

def Handle_Graphic3d_ShaderAttribute_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_ShaderAttribute_DownCast(t)

def Handle_Graphic3d_ShaderAttribute_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_ShaderAttribute_IsNull(t)

def Handle_Graphic3d_ShaderManager_Create():
    return _Graphic3d.Handle_Graphic3d_ShaderManager_Create()

def Handle_Graphic3d_ShaderManager_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_ShaderManager_DownCast(t)

def Handle_Graphic3d_ShaderManager_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_ShaderManager_IsNull(t)

def Handle_Graphic3d_ShaderObject_Create():
    return _Graphic3d.Handle_Graphic3d_ShaderObject_Create()

def Handle_Graphic3d_ShaderObject_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_ShaderObject_DownCast(t)

def Handle_Graphic3d_ShaderObject_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_ShaderObject_IsNull(t)

def Handle_Graphic3d_ShaderProgram_Create():
    return _Graphic3d.Handle_Graphic3d_ShaderProgram_Create()

def Handle_Graphic3d_ShaderProgram_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_ShaderProgram_DownCast(t)

def Handle_Graphic3d_ShaderProgram_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_ShaderProgram_IsNull(t)

def Handle_Graphic3d_ShaderVariable_Create():
    return _Graphic3d.Handle_Graphic3d_ShaderVariable_Create()

def Handle_Graphic3d_ShaderVariable_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_ShaderVariable_DownCast(t)

def Handle_Graphic3d_ShaderVariable_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_ShaderVariable_IsNull(t)

def Handle_Graphic3d_Structure_Create():
    return _Graphic3d.Handle_Graphic3d_Structure_Create()

def Handle_Graphic3d_Structure_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_Structure_DownCast(t)

def Handle_Graphic3d_Structure_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_Structure_IsNull(t)

def Handle_Graphic3d_StructureManager_Create():
    return _Graphic3d.Handle_Graphic3d_StructureManager_Create()

def Handle_Graphic3d_StructureManager_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_StructureManager_DownCast(t)

def Handle_Graphic3d_StructureManager_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_StructureManager_IsNull(t)

def Handle_Graphic3d_Text_Create():
    return _Graphic3d.Handle_Graphic3d_Text_Create()

def Handle_Graphic3d_Text_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_Text_DownCast(t)

def Handle_Graphic3d_Text_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_Text_IsNull(t)

def Handle_Graphic3d_TextureParams_Create():
    return _Graphic3d.Handle_Graphic3d_TextureParams_Create()

def Handle_Graphic3d_TextureParams_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_TextureParams_DownCast(t)

def Handle_Graphic3d_TextureParams_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_TextureParams_IsNull(t)

def Handle_Graphic3d_TextureRoot_Create():
    return _Graphic3d.Handle_Graphic3d_TextureRoot_Create()

def Handle_Graphic3d_TextureRoot_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_TextureRoot_DownCast(t)

def Handle_Graphic3d_TextureRoot_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_TextureRoot_IsNull(t)

def Handle_Graphic3d_TransformPers_Create():
    return _Graphic3d.Handle_Graphic3d_TransformPers_Create()

def Handle_Graphic3d_TransformPers_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_TransformPers_DownCast(t)

def Handle_Graphic3d_TransformPers_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_TransformPers_IsNull(t)

def Handle_Graphic3d_ViewAffinity_Create():
    return _Graphic3d.Handle_Graphic3d_ViewAffinity_Create()

def Handle_Graphic3d_ViewAffinity_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_ViewAffinity_DownCast(t)

def Handle_Graphic3d_ViewAffinity_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_ViewAffinity_IsNull(t)

def Handle_Graphic3d_ArrayOfPoints_Create():
    return _Graphic3d.Handle_Graphic3d_ArrayOfPoints_Create()

def Handle_Graphic3d_ArrayOfPoints_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_ArrayOfPoints_DownCast(t)

def Handle_Graphic3d_ArrayOfPoints_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_ArrayOfPoints_IsNull(t)

def Handle_Graphic3d_ArrayOfPolygons_Create():
    return _Graphic3d.Handle_Graphic3d_ArrayOfPolygons_Create()

def Handle_Graphic3d_ArrayOfPolygons_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_ArrayOfPolygons_DownCast(t)

def Handle_Graphic3d_ArrayOfPolygons_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_ArrayOfPolygons_IsNull(t)

def Handle_Graphic3d_ArrayOfPolylines_Create():
    return _Graphic3d.Handle_Graphic3d_ArrayOfPolylines_Create()

def Handle_Graphic3d_ArrayOfPolylines_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_ArrayOfPolylines_DownCast(t)

def Handle_Graphic3d_ArrayOfPolylines_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_ArrayOfPolylines_IsNull(t)

def Handle_Graphic3d_ArrayOfQuadrangleStrips_Create():
    return _Graphic3d.Handle_Graphic3d_ArrayOfQuadrangleStrips_Create()

def Handle_Graphic3d_ArrayOfQuadrangleStrips_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_ArrayOfQuadrangleStrips_DownCast(t)

def Handle_Graphic3d_ArrayOfQuadrangleStrips_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_ArrayOfQuadrangleStrips_IsNull(t)

def Handle_Graphic3d_ArrayOfQuadrangles_Create():
    return _Graphic3d.Handle_Graphic3d_ArrayOfQuadrangles_Create()

def Handle_Graphic3d_ArrayOfQuadrangles_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_ArrayOfQuadrangles_DownCast(t)

def Handle_Graphic3d_ArrayOfQuadrangles_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_ArrayOfQuadrangles_IsNull(t)

def Handle_Graphic3d_ArrayOfSegments_Create():
    return _Graphic3d.Handle_Graphic3d_ArrayOfSegments_Create()

def Handle_Graphic3d_ArrayOfSegments_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_ArrayOfSegments_DownCast(t)

def Handle_Graphic3d_ArrayOfSegments_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_ArrayOfSegments_IsNull(t)

def Handle_Graphic3d_ArrayOfTriangleFans_Create():
    return _Graphic3d.Handle_Graphic3d_ArrayOfTriangleFans_Create()

def Handle_Graphic3d_ArrayOfTriangleFans_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_ArrayOfTriangleFans_DownCast(t)

def Handle_Graphic3d_ArrayOfTriangleFans_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_ArrayOfTriangleFans_IsNull(t)

def Handle_Graphic3d_ArrayOfTriangleStrips_Create():
    return _Graphic3d.Handle_Graphic3d_ArrayOfTriangleStrips_Create()

def Handle_Graphic3d_ArrayOfTriangleStrips_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_ArrayOfTriangleStrips_DownCast(t)

def Handle_Graphic3d_ArrayOfTriangleStrips_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_ArrayOfTriangleStrips_IsNull(t)

def Handle_Graphic3d_ArrayOfTriangles_Create():
    return _Graphic3d.Handle_Graphic3d_ArrayOfTriangles_Create()

def Handle_Graphic3d_ArrayOfTriangles_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_ArrayOfTriangles_DownCast(t)

def Handle_Graphic3d_ArrayOfTriangles_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_ArrayOfTriangles_IsNull(t)

def Handle_Graphic3d_AspectFillArea3d_Create():
    return _Graphic3d.Handle_Graphic3d_AspectFillArea3d_Create()

def Handle_Graphic3d_AspectFillArea3d_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_AspectFillArea3d_DownCast(t)

def Handle_Graphic3d_AspectFillArea3d_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_AspectFillArea3d_IsNull(t)

def Handle_Graphic3d_AspectLine3d_Create():
    return _Graphic3d.Handle_Graphic3d_AspectLine3d_Create()

def Handle_Graphic3d_AspectLine3d_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_AspectLine3d_DownCast(t)

def Handle_Graphic3d_AspectLine3d_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_AspectLine3d_IsNull(t)

def Handle_Graphic3d_AspectMarker3d_Create():
    return _Graphic3d.Handle_Graphic3d_AspectMarker3d_Create()

def Handle_Graphic3d_AspectMarker3d_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_AspectMarker3d_DownCast(t)

def Handle_Graphic3d_AspectMarker3d_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_AspectMarker3d_IsNull(t)

def Handle_Graphic3d_AspectText3d_Create():
    return _Graphic3d.Handle_Graphic3d_AspectText3d_Create()

def Handle_Graphic3d_AspectText3d_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_AspectText3d_DownCast(t)

def Handle_Graphic3d_AspectText3d_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_AspectText3d_IsNull(t)

def Handle_Graphic3d_AttribBuffer_Create():
    return _Graphic3d.Handle_Graphic3d_AttribBuffer_Create()

def Handle_Graphic3d_AttribBuffer_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_AttribBuffer_DownCast(t)

def Handle_Graphic3d_AttribBuffer_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_AttribBuffer_IsNull(t)

def Handle_Graphic3d_CView_Create():
    return _Graphic3d.Handle_Graphic3d_CView_Create()

def Handle_Graphic3d_CView_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_CView_DownCast(t)

def Handle_Graphic3d_CView_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_CView_IsNull(t)

def Handle_Graphic3d_MediaTextureSet_Create():
    return _Graphic3d.Handle_Graphic3d_MediaTextureSet_Create()

def Handle_Graphic3d_MediaTextureSet_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_MediaTextureSet_DownCast(t)

def Handle_Graphic3d_MediaTextureSet_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_MediaTextureSet_IsNull(t)

def Handle_Graphic3d_TextureEnv_Create():
    return _Graphic3d.Handle_Graphic3d_TextureEnv_Create()

def Handle_Graphic3d_TextureEnv_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_TextureEnv_DownCast(t)

def Handle_Graphic3d_TextureEnv_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_TextureEnv_IsNull(t)

def Handle_Graphic3d_TextureMap_Create():
    return _Graphic3d.Handle_Graphic3d_TextureMap_Create()

def Handle_Graphic3d_TextureMap_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_TextureMap_DownCast(t)

def Handle_Graphic3d_TextureMap_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_TextureMap_IsNull(t)

def Handle_Graphic3d_TransformPersScaledAbove_Create():
    return _Graphic3d.Handle_Graphic3d_TransformPersScaledAbove_Create()

def Handle_Graphic3d_TransformPersScaledAbove_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_TransformPersScaledAbove_DownCast(t)

def Handle_Graphic3d_TransformPersScaledAbove_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_TransformPersScaledAbove_IsNull(t)

def Handle_Graphic3d_CubeMap_Create():
    return _Graphic3d.Handle_Graphic3d_CubeMap_Create()

def Handle_Graphic3d_CubeMap_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_CubeMap_DownCast(t)

def Handle_Graphic3d_CubeMap_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_CubeMap_IsNull(t)

def Handle_Graphic3d_MutableIndexBuffer_Create():
    return _Graphic3d.Handle_Graphic3d_MutableIndexBuffer_Create()

def Handle_Graphic3d_MutableIndexBuffer_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_MutableIndexBuffer_DownCast(t)

def Handle_Graphic3d_MutableIndexBuffer_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_MutableIndexBuffer_IsNull(t)

def Handle_Graphic3d_Texture1D_Create():
    return _Graphic3d.Handle_Graphic3d_Texture1D_Create()

def Handle_Graphic3d_Texture1D_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_Texture1D_DownCast(t)

def Handle_Graphic3d_Texture1D_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_Texture1D_IsNull(t)

def Handle_Graphic3d_Texture2D_Create():
    return _Graphic3d.Handle_Graphic3d_Texture2D_Create()

def Handle_Graphic3d_Texture2D_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_Texture2D_DownCast(t)

def Handle_Graphic3d_Texture2D_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_Texture2D_IsNull(t)

def Handle_Graphic3d_Texture3D_Create():
    return _Graphic3d.Handle_Graphic3d_Texture3D_Create()

def Handle_Graphic3d_Texture3D_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_Texture3D_DownCast(t)

def Handle_Graphic3d_Texture3D_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_Texture3D_IsNull(t)

def Handle_Graphic3d_CubeMapSeparate_Create():
    return _Graphic3d.Handle_Graphic3d_CubeMapSeparate_Create()

def Handle_Graphic3d_CubeMapSeparate_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_CubeMapSeparate_DownCast(t)

def Handle_Graphic3d_CubeMapSeparate_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_CubeMapSeparate_IsNull(t)

def Handle_Graphic3d_MediaTexture_Create():
    return _Graphic3d.Handle_Graphic3d_MediaTexture_Create()

def Handle_Graphic3d_MediaTexture_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_MediaTexture_DownCast(t)

def Handle_Graphic3d_MediaTexture_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_MediaTexture_IsNull(t)

def Handle_Graphic3d_Texture1Dmanual_Create():
    return _Graphic3d.Handle_Graphic3d_Texture1Dmanual_Create()

def Handle_Graphic3d_Texture1Dmanual_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_Texture1Dmanual_DownCast(t)

def Handle_Graphic3d_Texture1Dmanual_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_Texture1Dmanual_IsNull(t)

def Handle_Graphic3d_Texture1Dsegment_Create():
    return _Graphic3d.Handle_Graphic3d_Texture1Dsegment_Create()

def Handle_Graphic3d_Texture1Dsegment_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_Texture1Dsegment_DownCast(t)

def Handle_Graphic3d_Texture1Dsegment_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_Texture1Dsegment_IsNull(t)

def Handle_Graphic3d_Texture2Dplane_Create():
    return _Graphic3d.Handle_Graphic3d_Texture2Dplane_Create()

def Handle_Graphic3d_Texture2Dplane_DownCast(t):
    return _Graphic3d.Handle_Graphic3d_Texture2Dplane_DownCast(t)

def Handle_Graphic3d_Texture2Dplane_IsNull(t):
    return _Graphic3d.Handle_Graphic3d_Texture2Dplane_IsNull(t)
class Graphic3d_Array1OfAttribute(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, *args):
        return _Graphic3d.Graphic3d_Array1OfAttribute_begin(self, *args)

    def cbegin(self):
        return _Graphic3d.Graphic3d_Array1OfAttribute_cbegin(self)

    def end(self, *args):
        return _Graphic3d.Graphic3d_Array1OfAttribute_end(self, *args)

    def cend(self):
        return _Graphic3d.Graphic3d_Array1OfAttribute_cend(self)

    def __init__(self, *args):
        _Graphic3d.Graphic3d_Array1OfAttribute_swiginit(self, _Graphic3d.new_Graphic3d_Array1OfAttribute(*args))
    __swig_destroy__ = _Graphic3d.delete_Graphic3d_Array1OfAttribute

    def Init(self, theValue):
        return _Graphic3d.Graphic3d_Array1OfAttribute_Init(self, theValue)

    def Size(self):
        return _Graphic3d.Graphic3d_Array1OfAttribute_Size(self)

    def Length(self):
        return _Graphic3d.Graphic3d_Array1OfAttribute_Length(self)

    def IsEmpty(self):
        return _Graphic3d.Graphic3d_Array1OfAttribute_IsEmpty(self)

    def Lower(self):
        return _Graphic3d.Graphic3d_Array1OfAttribute_Lower(self)

    def Upper(self):
        return _Graphic3d.Graphic3d_Array1OfAttribute_Upper(self)

    def Assign(self, theOther):
        return _Graphic3d.Graphic3d_Array1OfAttribute_Assign(self, theOther)

    def Move(self, *args):
        return _Graphic3d.Graphic3d_Array1OfAttribute_Move(self, *args)

    def Set(self, *args):
        return _Graphic3d.Graphic3d_Array1OfAttribute_Set(self, *args)

    def First(self):
        return _Graphic3d.Graphic3d_Array1OfAttribute_First(self)

    def ChangeFirst(self):
        return _Graphic3d.Graphic3d_Array1OfAttribute_ChangeFirst(self)

    def Last(self):
        return _Graphic3d.Graphic3d_Array1OfAttribute_Last(self)

    def ChangeLast(self):
        return _Graphic3d.Graphic3d_Array1OfAttribute_ChangeLast(self)

    def Value(self, theIndex):
        return _Graphic3d.Graphic3d_Array1OfAttribute_Value(self, theIndex)

    def ChangeValue(self, theIndex):
        return _Graphic3d.Graphic3d_Array1OfAttribute_ChangeValue(self, theIndex)

    def __call__(self, *args):
        return _Graphic3d.Graphic3d_Array1OfAttribute___call__(self, *args)

    def SetValue(self, *args):
        return _Graphic3d.Graphic3d_Array1OfAttribute_SetValue(self, *args)

    def UpdateLowerBound(self, theLower):
        return _Graphic3d.Graphic3d_Array1OfAttribute_UpdateLowerBound(self, theLower)

    def UpdateUpperBound(self, theUpper):
        return _Graphic3d.Graphic3d_Array1OfAttribute_UpdateUpperBound(self, theUpper)

    def Resize(self, theLower, theUpper, theToCopyData):
        return _Graphic3d.Graphic3d_Array1OfAttribute_Resize(self, theLower, theUpper, theToCopyData)

    def IsDeletable(self):
        return _Graphic3d.Graphic3d_Array1OfAttribute_IsDeletable(self)

    def __getitem__(self, index):
        if index + self.Lower() > self.Upper():
            raise IndexError("index out of range")
        else:
            return self.Value(index + self.Lower())

    def __setitem__(self, index, value):
        if index + self.Lower() > self.Upper():
            raise IndexError("index out of range")
        else:
            self.SetValue(index + self.Lower(), value)

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

    def __iter__(self):
        self.low = self.Lower()
        self.up = self.Upper()
        self.current = self.Lower() - 1
        return self

    def next(self):
        if self.current >= self.Upper():
            raise StopIteration
        else:
            self.current += 1
        return self.Value(self.current)

    __next__ = next


# Register Graphic3d_Array1OfAttribute in _Graphic3d:
_Graphic3d.Graphic3d_Array1OfAttribute_swigregister(Graphic3d_Array1OfAttribute)
class Graphic3d_ArrayOfIndexedMapOfStructure(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def iterator(self):
        return _Graphic3d.Graphic3d_ArrayOfIndexedMapOfStructure_iterator(self)
    def __iter__(self):
        return self.iterator()

    def __nonzero__(self):
        return _Graphic3d.Graphic3d_ArrayOfIndexedMapOfStructure___nonzero__(self)

    def __bool__(self):
        return _Graphic3d.Graphic3d_ArrayOfIndexedMapOfStructure___bool__(self)

    def __len__(self):
        return _Graphic3d.Graphic3d_ArrayOfIndexedMapOfStructure___len__(self)

    def __getslice__(self, i, j):
        return _Graphic3d.Graphic3d_ArrayOfIndexedMapOfStructure___getslice__(self, i, j)

    def __setslice__(self, *args):
        return _Graphic3d.Graphic3d_ArrayOfIndexedMapOfStructure___setslice__(self, *args)

    def __delslice__(self, i, j):
        return _Graphic3d.Graphic3d_ArrayOfIndexedMapOfStructure___delslice__(self, i, j)

    def __delitem__(self, *args):
        return _Graphic3d.Graphic3d_ArrayOfIndexedMapOfStructure___delitem__(self, *args)

    def __getitem__(self, *args):
        return _Graphic3d.Graphic3d_ArrayOfIndexedMapOfStructure___getitem__(self, *args)

    def __setitem__(self, *args):
        return _Graphic3d.Graphic3d_ArrayOfIndexedMapOfStructure___setitem__(self, *args)

    def __init__(self, *args):
        _Graphic3d.Graphic3d_ArrayOfIndexedMapOfStructure_swiginit(self, _Graphic3d.new_Graphic3d_ArrayOfIndexedMapOfStructure(*args))

    def empty(self):
        return _Graphic3d.Graphic3d_ArrayOfIndexedMapOfStructure_empty(self)

    def size(self):
        return _Graphic3d.Graphic3d_ArrayOfIndexedMapOfStructure_size(self)

    def swap(self, v):
        return _Graphic3d.Graphic3d_ArrayOfIndexedMapOfStructure_swap(self, v)

    def begin(self):
        return _Graphic3d.Graphic3d_ArrayOfIndexedMapOfStructure_begin(self)

    def end(self):
        return _Graphic3d.Graphic3d_ArrayOfIndexedMapOfStructure_end(self)

    def rbegin(self):
        return _Graphic3d.Graphic3d_ArrayOfIndexedMapOfStructure_rbegin(self)

    def rend(self):
        return _Graphic3d.Graphic3d_ArrayOfIndexedMapOfStructure_rend(self)

    def front(self):
        return _Graphic3d.Graphic3d_ArrayOfIndexedMapOfStructure_front(self)

    def back(self):
        return _Graphic3d.Graphic3d_ArrayOfIndexedMapOfStructure_back(self)

    def fill(self, u):
        return _Graphic3d.Graphic3d_ArrayOfIndexedMapOfStructure_fill(self, u)
    __swig_destroy__ = _Graphic3d.delete_Graphic3d_ArrayOfIndexedMapOfStructure

# Register Graphic3d_ArrayOfIndexedMapOfStructure in _Graphic3d:
_Graphic3d.Graphic3d_ArrayOfIndexedMapOfStructure_swigregister(Graphic3d_ArrayOfIndexedMapOfStructure)
class Graphic3d_CameraLerp(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):
        _Graphic3d.Graphic3d_CameraLerp_swiginit(self, _Graphic3d.new_Graphic3d_CameraLerp(*args))

    def Init(self, theStart, theEnd):
        return _Graphic3d.Graphic3d_CameraLerp_Init(self, theStart, theEnd)

    def Interpolate(self, *args):
        return _Graphic3d.Graphic3d_CameraLerp_Interpolate(self, *args)
    __swig_destroy__ = _Graphic3d.delete_Graphic3d_CameraLerp

# Register Graphic3d_CameraLerp in _Graphic3d:
_Graphic3d.Graphic3d_CameraLerp_swigregister(Graphic3d_CameraLerp)
class Graphic3d_GraphicDriverFactoryList(OCC.Core.NCollection.NCollection_BaseList):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def begin(self):
        return _Graphic3d.Graphic3d_GraphicDriverFactoryList_begin(self)

    def end(self):
        return _Graphic3d.Graphic3d_GraphicDriverFactoryList_end(self)

    def cbegin(self):
        return _Graphic3d.Graphic3d_GraphicDriverFactoryList_cbegin(self)

    def cend(self):
        return _Graphic3d.Graphic3d_GraphicDriverFactoryList_cend(self)

    def __init__(self, *args):
        _Graphic3d.Graphic3d_GraphicDriverFactoryList_swiginit(self, _Graphic3d.new_Graphic3d_GraphicDriverFactoryList(*args))

    def Size(self):
        return _Graphic3d.Graphic3d_GraphicDriverFactoryList_Size(self)

    def Assign(self, theOther):
        return _Graphic3d.Graphic3d_GraphicDriverFactoryList_Assign(self, theOther)

    def Set(self, *args):
        return _Graphic3d.Graphic3d_GraphicDriverFactoryList_Set(self, *args)

    def Clear(self, theAllocator=0):
        return _Graphic3d.Graphic3d_GraphicDriverFactoryList_Clear(self, theAllocator)

    def First(self):
        return _Graphic3d.Graphic3d_GraphicDriverFactoryList_First(self)

    def Last(self):
        return _Graphic3d.Graphic3d_GraphicDriverFactoryList_Last(self)

    def Append(self, *args):
        return _Graphic3d.Graphic3d_GraphicDriverFactoryList_Append(self, *args)

    def Prepend(self, *args):
        return _Graphic3d.Graphic3d_GraphicDriverFactoryList_Prepend(self, *args)

    def RemoveFirst(self):
        return _Graphic3d.Graphic3d_GraphicDriverFactoryList_RemoveFirst(self)

    def Remove(self, theIter):
        return _Graphic3d.Graphic3d_GraphicDriverFactoryList_Remove(self, theIter)

    def InsertBefore(self, *args):
        return _Graphic3d.Graphic3d_GraphicDriverFactoryList_InsertBefore(self, *args)

    def InsertAfter(self, *args):
        return _Graphic3d.Graphic3d_GraphicDriverFactoryList_InsertAfter(self, *args)

    def Reverse(self):
        return _Graphic3d.Graphic3d_GraphicDriverFactoryList_Reverse(self)
    __swig_destroy__ = _Graphic3d.delete_Graphic3d_GraphicDriverFactoryList

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


# Register Graphic3d_GraphicDriverFactoryList in _Graphic3d:
_Graphic3d.Graphic3d_GraphicDriverFactoryList_swigregister(Graphic3d_GraphicDriverFactoryList)
class Graphic3d_IndexedMapOfStructure(OCC.Core.NCollection.NCollection_BaseMap):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def cbegin(self):
        return _Graphic3d.Graphic3d_IndexedMapOfStructure_cbegin(self)

    def cend(self):
        return _Graphic3d.Graphic3d_IndexedMapOfStructure_cend(self)

    def __init__(self, *args):
        _Graphic3d.Graphic3d_IndexedMapOfStructure_swiginit(self, _Graphic3d.new_Graphic3d_IndexedMapOfStructure(*args))

    def Exchange(self, theOther):
        return _Graphic3d.Graphic3d_IndexedMapOfStructure_Exchange(self, theOther)

    def Assign(self, theOther):
        return _Graphic3d.Graphic3d_IndexedMapOfStructure_Assign(self, theOther)

    def Set(self, *args):
        return _Graphic3d.Graphic3d_IndexedMapOfStructure_Set(self, *args)

    def ReSize(self, theExtent):
        return _Graphic3d.Graphic3d_IndexedMapOfStructure_ReSize(self, theExtent)

    def Add(self, *args):
        return _Graphic3d.Graphic3d_IndexedMapOfStructure_Add(self, *args)

    def Contains(self, theKey1):
        return _Graphic3d.Graphic3d_IndexedMapOfStructure_Contains(self, theKey1)

    def Substitute(self, theIndex, theKey1):
        return _Graphic3d.Graphic3d_IndexedMapOfStructure_Substitute(self, theIndex, theKey1)

    def Swap(self, theIndex1, theIndex2):
        return _Graphic3d.Graphic3d_IndexedMapOfStructure_Swap(self, theIndex1, theIndex2)

    def RemoveLast(self):
        return _Graphic3d.Graphic3d_IndexedMapOfStructure_RemoveLast(self)

    def RemoveFromIndex(self, theIndex):
        return _Graphic3d.Graphic3d_IndexedMapOfStructure_RemoveFromIndex(self, theIndex)

    def RemoveKey(self, theKey1):
        return _Graphic3d.Graphic3d_IndexedMapOfStructure_RemoveKey(self, theKey1)

    def FindKey(self, theIndex):
        return _Graphic3d.Graphic3d_IndexedMapOfStructure_FindKey(self, theIndex)

    def __call__(self, theIndex):
        return _Graphic3d.Graphic3d_IndexedMapOfStructure___call__(self, theIndex)

    def FindIndex(self, theKey1):
        return _Graphic3d.Graphic3d_IndexedMapOfStructure_FindIndex(self, theKey1)

    def Clear(self, *args):
        return _Graphic3d.Graphic3d_IndexedMapOfStructure_Clear(self, *args)
    __swig_destroy__ = _Graphic3d.delete_Graphic3d_IndexedMapOfStructure

    def Size(self):
        return _Graphic3d.Graphic3d_IndexedMapOfStructure_Size(self)

# Register Graphic3d_IndexedMapOfStructure in _Graphic3d:
_Graphic3d.Graphic3d_IndexedMapOfStructure_swigregister(Graphic3d_IndexedMapOfStructure)
class Graphic3d_IndexedMapOfView(OCC.Core.NCollection.NCollection_BaseMap):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def cbegin(self):
        return _Graphic3d.Graphic3d_IndexedMapOfView_cbegin(self)

    def cend(self):
        return _Graphic3d.Graphic3d_IndexedMapOfView_cend(self)

    def __init__(self, *args):
        _Graphic3d.Graphic3d_IndexedMapOfView_swiginit(self, _Graphic3d.new_Graphic3d_IndexedMapOfView(*args))

    def Exchange(self, theOther):
        return _Graphic3d.Graphic3d_IndexedMapOfView_Exchange(self, theOther)

    def Assign(self, theOther):
        return _Graphic3d.Graphic3d_IndexedMapOfView_Assign(self, theOther)

    def Set(self, *args):
        return _Graphic3d.Graphic3d_IndexedMapOfView_Set(self, *args)

    def ReSize(self, theExtent):
        return _Graphic3d.Graphic3d_IndexedMapOfView_ReSize(self, theExtent)

    def Add(self, *args):
        return _Graphic3d.Graphic3d_IndexedMapOfView_Add(self, *args)

    def Contains(self, theKey1):
        return _Graphic3d.Graphic3d_IndexedMapOfView_Contains(self, theKey1)

    def Substitute(self, theIndex, theKey1):
        return _Graphic3d.Graphic3d_IndexedMapOfView_Substitute(self, theIndex, theKey1)

    def Swap(self, theIndex1, theIndex2):
        return _Graphic3d.Graphic3d_IndexedMapOfView_Swap(self, theIndex1, theIndex2)

    def RemoveLast(self):
        return _Graphic3d.Graphic3d_IndexedMapOfView_RemoveLast(self)

    def RemoveFromIndex(self, theIndex):
        return _Graphic3d.Graphic3d_IndexedMapOfView_RemoveFromIndex(self, theIndex)

    def RemoveKey(self, theKey1):
        return _Graphic3d.Graphic3d_IndexedMapOfView_RemoveKey(self, theKey1)

    def FindKey(self, theIndex):
        return _Graphic3d.Graphic3d_IndexedMapOfView_FindKey(self, theIndex)

    def __call__(self, theIndex):
        return _Graphic3d.Graphic3d_IndexedMapOfView___call__(self, theIndex)

    def FindIndex(self, theKey1):
        return _Graphic3d.Graphic3d_IndexedMapOfView_FindIndex(self, theKey1)

    def Clear(self, *args):
        return _Graphic3d.Graphic3d_IndexedMapOfView_Clear(self, *args)
    __swig_destroy__ = _Graphic3d.delete_Graphic3d_IndexedMapOfView

    def Size(self):
        return _Graphic3d.Graphic3d_IndexedMapOfView_Size(self)

# Register Graphic3d_IndexedMapOfView in _Graphic3d:
_Graphic3d.Graphic3d_IndexedMapOfView_swigregister(Graphic3d_IndexedMapOfView)
class Graphic3d_MapOfAspectsToAspects(OCC.Core.NCollection.NCollection_BaseMap):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def begin(self):
        return _Graphic3d.Graphic3d_MapOfAspectsToAspects_begin(self)

    def end(self):
        return _Graphic3d.Graphic3d_MapOfAspectsToAspects_end(self)

    def cbegin(self):
        return _Graphic3d.Graphic3d_MapOfAspectsToAspects_cbegin(self)

    def cend(self):
        return _Graphic3d.Graphic3d_MapOfAspectsToAspects_cend(self)

    def __init__(self, *args):
        _Graphic3d.Graphic3d_MapOfAspectsToAspects_swiginit(self, _Graphic3d.new_Graphic3d_MapOfAspectsToAspects(*args))

    def Exchange(self, theOther):
        return _Graphic3d.Graphic3d_MapOfAspectsToAspects_Exchange(self, theOther)

    def Assign(self, theOther):
        return _Graphic3d.Graphic3d_MapOfAspectsToAspects_Assign(self, theOther)

    def Set(self, *args):
        return _Graphic3d.Graphic3d_MapOfAspectsToAspects_Set(self, *args)

    def ReSize(self, N):
        return _Graphic3d.Graphic3d_MapOfAspectsToAspects_ReSize(self, N)

    def Bind(self, *args):
        return _Graphic3d.Graphic3d_MapOfAspectsToAspects_Bind(self, *args)

    def Bound(self, *args):
        return _Graphic3d.Graphic3d_MapOfAspectsToAspects_Bound(self, *args)

    def IsBound(self, theKey):
        return _Graphic3d.Graphic3d_MapOfAspectsToAspects_IsBound(self, theKey)

    def UnBind(self, theKey):
        return _Graphic3d.Graphic3d_MapOfAspectsToAspects_UnBind(self, theKey)

    def Seek(self, theKey):
        return _Graphic3d.Graphic3d_MapOfAspectsToAspects_Seek(self, theKey)

    def Find(self, *args):
        return _Graphic3d.Graphic3d_MapOfAspectsToAspects_Find(self, *args)

    def ChangeSeek(self, theKey):
        return _Graphic3d.Graphic3d_MapOfAspectsToAspects_ChangeSeek(self, theKey)

    def ChangeFind(self, theKey):
        return _Graphic3d.Graphic3d_MapOfAspectsToAspects_ChangeFind(self, theKey)

    def __call__(self, *args):
        return _Graphic3d.Graphic3d_MapOfAspectsToAspects___call__(self, *args)

    def Clear(self, *args):
        return _Graphic3d.Graphic3d_MapOfAspectsToAspects_Clear(self, *args)
    __swig_destroy__ = _Graphic3d.delete_Graphic3d_MapOfAspectsToAspects

    def Size(self):
        return _Graphic3d.Graphic3d_MapOfAspectsToAspects_Size(self)

# Register Graphic3d_MapOfAspectsToAspects in _Graphic3d:
_Graphic3d.Graphic3d_MapOfAspectsToAspects_swigregister(Graphic3d_MapOfAspectsToAspects)
class Graphic3d_MapOfStructure(OCC.Core.NCollection.NCollection_BaseMap):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    def cbegin(self):
        return _Graphic3d.Graphic3d_MapOfStructure_cbegin(self)

    def cend(self):
        return _Graphic3d.Graphic3d_MapOfStructure_cend(self)

    def __init__(self, *args):
        _Graphic3d.Graphic3d_MapOfStructure_swiginit(self, _Graphic3d.new_Graphic3d_MapOfStructure(*args))

    def Exchange(self, theOther):
        return _Graphic3d.Graphic3d_MapOfStructure_Exchange(self, theOther)

    def Assign(self, theOther):
        return _Graphic3d.Graphic3d_MapOfStructure_Assign(self, theOther)

    def Set(self, *args):
        return _Graphic3d.Graphic3d_MapOfStructure_Set(self, *args)

    def ReSize(self, N):
        return _Graphic3d.Graphic3d_MapOfStructure_ReSize(self, N)

    def Add(self, *args):
        return _Graphic3d.Graphic3d_MapOfStructure_Add(self, *args)

    def Added(self, *args):
        return _Graphic3d.Graphic3d_MapOfStructure_Added(self, *args)

    def Remove(self, K):
        return _Graphic3d.Graphic3d_MapOfStructure_Remove(self, K)

    def Clear(self, *args):
        return _Graphic3d.Graphic3d_MapOfStructure_Clear(self, *args)
    __swig_destroy__ = _Graphic3d.delete_Graphic3d_MapOfStructure

    def Size(self):
        return _Graphic3d.Graphic3d_MapOfStructure_Size(self)

    def IsEqual(self, theOther):
        return _Graphic3d.Graphic3d_MapOfStructure_IsEqual(self, theOther)

    def Contains(self, *args):
        return _Graphic3d.Graphic3d_MapOfStructure_Contains(self, *args)

    def Union(self, theLeft, theRight):
        return _Graphic3d.Graphic3d_MapOfStructure_Union(self, theLeft, theRight)

    def Unite(self, theOther):
        return _Graphic3d.Graphic3d_MapOfStructure_Unite(self, theOther)

    def HasIntersection(self, theMap):
        return _Graphic3d.Graphic3d_MapOfStructure_HasIntersection(self, theMap)

    def Intersection(self, theLeft, theRight):
        return _Graphic3d.Graphic3d_MapOfStructure_Intersection(self, theLeft, theRight)

    def Intersect(self, theOther):
        return _Graphic3d.Graphic3d_MapOfStructure_Intersect(self, theOther)

    def Subtraction(self, theLeft, theRight):
        return _Graphic3d.Graphic3d_MapOfStructure_Subtraction(self, theLeft, theRight)

    def Subtract(self, theOther):
        return _Graphic3d.Graphic3d_MapOfStructure_Subtract(self, theOther)

    def Difference(self, theLeft, theRight):
        return _Graphic3d.Graphic3d_MapOfStructure_Difference(self, theLeft, theRight)

    def Differ(self, theOther):
        return _Graphic3d.Graphic3d_MapOfStructure_Differ(self, theOther)

# Register Graphic3d_MapOfStructure in _Graphic3d:
_Graphic3d.Graphic3d_MapOfStructure_swigregister(Graphic3d_MapOfStructure)
class Graphic3d_Mat4(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    @staticmethod
    def Rows():
        return _Graphic3d.Graphic3d_Mat4_Rows()

    @staticmethod
    def Cols():
        return _Graphic3d.Graphic3d_Mat4_Cols()

    @staticmethod
    def Identity():
        return _Graphic3d.Graphic3d_Mat4_Identity()

    @staticmethod
    def Zero():
        return _Graphic3d.Graphic3d_Mat4_Zero()

    def __init__(self):
        _Graphic3d.Graphic3d_Mat4_swiginit(self, _Graphic3d.new_Graphic3d_Mat4())

    def GetValue(self, theRow, theCol):
        return _Graphic3d.Graphic3d_Mat4_GetValue(self, theRow, theCol)

    def ChangeValue(self, theRow, theCol):
        return _Graphic3d.Graphic3d_Mat4_ChangeValue(self, theRow, theCol)

    def SetValue(self, theRow, theCol, theValue):
        return _Graphic3d.Graphic3d_Mat4_SetValue(self, theRow, theCol, theValue)

    def __call__(self, *args):
        return _Graphic3d.Graphic3d_Mat4___call__(self, *args)

    def GetRow(self, theRow):
        return _Graphic3d.Graphic3d_Mat4_GetRow(self, theRow)

    def SetRow(self, *args):
        return _Graphic3d.Graphic3d_Mat4_SetRow(self, *args)

    def GetColumn(self, theCol):
        return _Graphic3d.Graphic3d_Mat4_GetColumn(self, theCol)

    def SetColumn(self, *args):
        return _Graphic3d.Graphic3d_Mat4_SetColumn(self, *args)

    def GetDiagonal(self):
        return _Graphic3d.Graphic3d_Mat4_GetDiagonal(self)

    def SetDiagonal(self, *args):
        return _Graphic3d.Graphic3d_Mat4_SetDiagonal(self, *args)

    def GetMat3(self):
        return _Graphic3d.Graphic3d_Mat4_GetMat3(self)

    def InitZero(self):
        return _Graphic3d.Graphic3d_Mat4_InitZero(self)

    def IsZero(self):
        return _Graphic3d.Graphic3d_Mat4_IsZero(self)

    def InitIdentity(self):
        return _Graphic3d.Graphic3d_Mat4_InitIdentity(self)

    def IsIdentity(self):
        return _Graphic3d.Graphic3d_Mat4_IsIdentity(self)

    def IsEqual(self, theOther):
        return _Graphic3d.Graphic3d_Mat4_IsEqual(self, theOther)

    def __eq__(self, theOther):
        return _Graphic3d.Graphic3d_Mat4___eq__(self, theOther)

    def __ne__(self, theOther):
        return _Graphic3d.Graphic3d_Mat4___ne__(self, theOther)

    def GetData(self):
        return _Graphic3d.Graphic3d_Mat4_GetData(self)

    def ChangeData(self):
        return _Graphic3d.Graphic3d_Mat4_ChangeData(self)

    def Multiply(self, *args):
        return _Graphic3d.Graphic3d_Mat4_Multiply(self, *args)

    def __imul__(self, *args):
        return _Graphic3d.Graphic3d_Mat4___imul__(self, *args)

    def __mul__(self, *args):
        return _Graphic3d.Graphic3d_Mat4___mul__(self, *args)

    def Multiplied(self, *args):
        return _Graphic3d.Graphic3d_Mat4_Multiplied(self, *args)

    def Divide(self, theFactor):
        return _Graphic3d.Graphic3d_Mat4_Divide(self, theFactor)

    def __itruediv__(self, *args):
        return _Graphic3d.Graphic3d_Mat4___itruediv__(self, *args)
    __idiv__ = __itruediv__



    def Divided(self, theScalar):
        return _Graphic3d.Graphic3d_Mat4_Divided(self, theScalar)

    def __truediv__(self, *args):
        return _Graphic3d.Graphic3d_Mat4___truediv__(self, *args)
    __div__ = __truediv__



    def Add(self, theMat):
        return _Graphic3d.Graphic3d_Mat4_Add(self, theMat)

    def __iadd__(self, theMat):
        return _Graphic3d.Graphic3d_Mat4___iadd__(self, theMat)

    def Subtract(self, theMat):
        return _Graphic3d.Graphic3d_Mat4_Subtract(self, theMat)

    def __isub__(self, theMat):
        return _Graphic3d.Graphic3d_Mat4___isub__(self, theMat)

    def Added(self, theMat):
        return _Graphic3d.Graphic3d_Mat4_Added(self, theMat)

    def __add__(self, theMat):
        return _Graphic3d.Graphic3d_Mat4___add__(self, theMat)

    def Subtracted(self, theMat):
        return _Graphic3d.Graphic3d_Mat4_Subtracted(self, theMat)

    def __sub__(self, theMat):
        return _Graphic3d.Graphic3d_Mat4___sub__(self, theMat)

    def Negated(self):
        return _Graphic3d.Graphic3d_Mat4_Negated(self)

    def __neg__(self):
        return _Graphic3d.Graphic3d_Mat4___neg__(self)

    def Translate(self, theVec):
        return _Graphic3d.Graphic3d_Mat4_Translate(self, theVec)

    def Transposed(self):
        return _Graphic3d.Graphic3d_Mat4_Transposed(self)

    def Transpose(self):
        return _Graphic3d.Graphic3d_Mat4_Transpose(self)

    def Inverted(self, *args):
        return _Graphic3d.Graphic3d_Mat4_Inverted(self, *args)

    def DeterminantMat3(self):
        return _Graphic3d.Graphic3d_Mat4_DeterminantMat3(self)

    def Adjoint(self):
        return _Graphic3d.Graphic3d_Mat4_Adjoint(self)

    @staticmethod
    def Map(*args):
        return _Graphic3d.Graphic3d_Mat4_Map(*args)

    def DumpJson(self, theOStream, arg3):
        return _Graphic3d.Graphic3d_Mat4_DumpJson(self, theOStream, arg3)
    __swig_destroy__ = _Graphic3d.delete_Graphic3d_Mat4

# Register Graphic3d_Mat4 in _Graphic3d:
_Graphic3d.Graphic3d_Mat4_swigregister(Graphic3d_Mat4)
class Graphic3d_Mat4d(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    @staticmethod
    def Rows():
        return _Graphic3d.Graphic3d_Mat4d_Rows()

    @staticmethod
    def Cols():
        return _Graphic3d.Graphic3d_Mat4d_Cols()

    @staticmethod
    def Identity():
        return _Graphic3d.Graphic3d_Mat4d_Identity()

    @staticmethod
    def Zero():
        return _Graphic3d.Graphic3d_Mat4d_Zero()

    def __init__(self):
        _Graphic3d.Graphic3d_Mat4d_swiginit(self, _Graphic3d.new_Graphic3d_Mat4d())

    def GetValue(self, theRow, theCol):
        return _Graphic3d.Graphic3d_Mat4d_GetValue(self, theRow, theCol)

    def ChangeValue(self, theRow, theCol):
        return _Graphic3d.Graphic3d_Mat4d_ChangeValue(self, theRow, theCol)

    def SetValue(self, theRow, theCol, theValue):
        return _Graphic3d.Graphic3d_Mat4d_SetValue(self, theRow, theCol, theValue)

    def __call__(self, *args):
        return _Graphic3d.Graphic3d_Mat4d___call__(self, *args)

    def GetRow(self, theRow):
        return _Graphic3d.Graphic3d_Mat4d_GetRow(self, theRow)

    def SetRow(self, *args):
        return _Graphic3d.Graphic3d_Mat4d_SetRow(self, *args)

    def GetColumn(self, theCol):
        return _Graphic3d.Graphic3d_Mat4d_GetColumn(self, theCol)

    def SetColumn(self, *args):
        return _Graphic3d.Graphic3d_Mat4d_SetColumn(self, *args)

    def GetDiagonal(self):
        return _Graphic3d.Graphic3d_Mat4d_GetDiagonal(self)

    def SetDiagonal(self, *args):
        return _Graphic3d.Graphic3d_Mat4d_SetDiagonal(self, *args)

    def GetMat3(self):
        return _Graphic3d.Graphic3d_Mat4d_GetMat3(self)

    def InitZero(self):
        return _Graphic3d.Graphic3d_Mat4d_InitZero(self)

    def IsZero(self):
        return _Graphic3d.Graphic3d_Mat4d_IsZero(self)

    def InitIdentity(self):
        return _Graphic3d.Graphic3d_Mat4d_InitIdentity(self)

    def IsIdentity(self):
        return _Graphic3d.Graphic3d_Mat4d_IsIdentity(self)

    def IsEqual(self, theOther):
        return _Graphic3d.Graphic3d_Mat4d_IsEqual(self, theOther)

    def __eq__(self, theOther):
        return _Graphic3d.Graphic3d_Mat4d___eq__(self, theOther)

    def __ne__(self, theOther):
        return _Graphic3d.Graphic3d_Mat4d___ne__(self, theOther)

    def GetData(self):
        return _Graphic3d.Graphic3d_Mat4d_GetData(self)

    def ChangeData(self):
        return _Graphic3d.Graphic3d_Mat4d_ChangeData(self)

    def Multiply(self, *args):
        return _Graphic3d.Graphic3d_Mat4d_Multiply(self, *args)

    def __imul__(self, *args):
        return _Graphic3d.Graphic3d_Mat4d___imul__(self, *args)

    def __mul__(self, *args):
        return _Graphic3d.Graphic3d_Mat4d___mul__(self, *args)

    def Multiplied(self, *args):
        return _Graphic3d.Graphic3d_Mat4d_Multiplied(self, *args)

    def Divide(self, theFactor):
        return _Graphic3d.Graphic3d_Mat4d_Divide(self, theFactor)

    def __itruediv__(self, *args):
        return _Graphic3d.Graphic3d_Mat4d___itruediv__(self, *args)
    __idiv__ = __itruediv__



    def Divided(self, theScalar):
        return _Graphic3d.Graphic3d_Mat4d_Divided(self, theScalar)

    def __truediv__(self, *args):
        return _Graphic3d.Graphic3d_Mat4d___truediv__(self, *args)
    __div__ = __truediv__



    def Add(self, theMat):
        return _Graphic3d.Graphic3d_Mat4d_Add(self, theMat)

    def __iadd__(self, theMat):
        return _Graphic3d.Graphic3d_Mat4d___iadd__(self, theMat)

    def Subtract(self, theMat):
        return _Graphic3d.Graphic3d_Mat4d_Subtract(self, theMat)

    def __isub__(self, theMat):
        return _Graphic3d.Graphic3d_Mat4d___isub__(self, theMat)

    def Added(self, theMat):
        return _Graphic3d.Graphic3d_Mat4d_Added(self, theMat)

    def __add__(self, theMat):
        return _Graphic3d.Graphic3d_Mat4d___add__(self, theMat)

    def Subtracted(self, theMat):
        return _Graphic3d.Graphic3d_Mat4d_Subtracted(self, theMat)

    def __sub__(self, theMat):
        return _Graphic3d.Graphic3d_Mat4d___sub__(self, theMat)

    def Negated(self):
        return _Graphic3d.Graphic3d_Mat4d_Negated(self)

    def __neg__(self):
        return _Graphic3d.Graphic3d_Mat4d___neg__(self)

    def Translate(self, theVec):
        return _Graphic3d.Graphic3d_Mat4d_Translate(self, theVec)

    def Transposed(self):
        return _Graphic3d.Graphic3d_Mat4d_Transposed(self)

    def Transpose(self):
        return _Graphic3d.Graphic3d_Mat4d_Transpose(self)

    def Inverted(self, *args):
        return _Graphic3d.Graphic3d_Mat4d_Inverted(self, *args)

    def DeterminantMat3(self):
        return _Graphic3d.Graphic3d_Mat4d_DeterminantMat3(self)

    def Adjoint(self):
        return _Graphic3d.Graphic3d_Mat4d_Adjoint(self)

    @staticmethod
    def Map(*args):
        return _Graphic3d.Graphic3d_Mat4d_Map(*args)

    def DumpJson(self, theOStream, arg3):
        return _Graphic3d.Graphic3d_Mat4d_DumpJson(self, theOStream, arg3)
    __swig_destroy__ = _Graphic3d.delete_Graphic3d_Mat4d

# Register Graphic3d_Mat4d in _Graphic3d:
_Graphic3d.Graphic3d_Mat4d_swigregister(Graphic3d_Mat4d)
class Graphic3d_SequenceOfGroup(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):
        return _Graphic3d.Graphic3d_SequenceOfGroup_begin(self)

    def end(self):
        return _Graphic3d.Graphic3d_SequenceOfGroup_end(self)

    def cbegin(self):
        return _Graphic3d.Graphic3d_SequenceOfGroup_cbegin(self)

    def cend(self):
        return _Graphic3d.Graphic3d_SequenceOfGroup_cend(self)

    def __init__(self, *args):
        _Graphic3d.Graphic3d_SequenceOfGroup_swiginit(self, _Graphic3d.new_Graphic3d_SequenceOfGroup(*args))

    def Size(self):
        return _Graphic3d.Graphic3d_SequenceOfGroup_Size(self)

    def Length(self):
        return _Graphic3d.Graphic3d_SequenceOfGroup_Length(self)

    def Lower(self):
        return _Graphic3d.Graphic3d_SequenceOfGroup_Lower(self)

    def Upper(self):
        return _Graphic3d.Graphic3d_SequenceOfGroup_Upper(self)

    def IsEmpty(self):
        return _Graphic3d.Graphic3d_SequenceOfGroup_IsEmpty(self)

    def Reverse(self):
        return _Graphic3d.Graphic3d_SequenceOfGroup_Reverse(self)

    def Exchange(self, I, J):
        return _Graphic3d.Graphic3d_SequenceOfGroup_Exchange(self, I, J)

    @staticmethod
    def delNode(theNode, theAl):
        return _Graphic3d.Graphic3d_SequenceOfGroup_delNode(theNode, theAl)

    def Clear(self, theAllocator=0):
        return _Graphic3d.Graphic3d_SequenceOfGroup_Clear(self, theAllocator)

    def Assign(self, theOther):
        return _Graphic3d.Graphic3d_SequenceOfGroup_Assign(self, theOther)

    def Set(self, *args):
        return _Graphic3d.Graphic3d_SequenceOfGroup_Set(self, *args)

    def Remove(self, *args):
        return _Graphic3d.Graphic3d_SequenceOfGroup_Remove(self, *args)

    def Append(self, *args):
        return _Graphic3d.Graphic3d_SequenceOfGroup_Append(self, *args)

    def Prepend(self, *args):
        return _Graphic3d.Graphic3d_SequenceOfGroup_Prepend(self, *args)

    def InsertBefore(self, *args):
        return _Graphic3d.Graphic3d_SequenceOfGroup_InsertBefore(self, *args)

    def InsertAfter(self, *args):
        return _Graphic3d.Graphic3d_SequenceOfGroup_InsertAfter(self, *args)

    def Split(self, theIndex, theSeq):
        return _Graphic3d.Graphic3d_SequenceOfGroup_Split(self, theIndex, theSeq)

    def First(self):
        return _Graphic3d.Graphic3d_SequenceOfGroup_First(self)

    def ChangeFirst(self):
        return _Graphic3d.Graphic3d_SequenceOfGroup_ChangeFirst(self)

    def Last(self):
        return _Graphic3d.Graphic3d_SequenceOfGroup_Last(self)

    def ChangeLast(self):
        return _Graphic3d.Graphic3d_SequenceOfGroup_ChangeLast(self)

    def Value(self, theIndex):
        return _Graphic3d.Graphic3d_SequenceOfGroup_Value(self, theIndex)

    def ChangeValue(self, theIndex):
        return _Graphic3d.Graphic3d_SequenceOfGroup_ChangeValue(self, theIndex)

    def __call__(self, *args):
        return _Graphic3d.Graphic3d_SequenceOfGroup___call__(self, *args)

    def SetValue(self, theIndex, theItem):
        return _Graphic3d.Graphic3d_SequenceOfGroup_SetValue(self, theIndex, theItem)
    __swig_destroy__ = _Graphic3d.delete_Graphic3d_SequenceOfGroup

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


# Register Graphic3d_SequenceOfGroup in _Graphic3d:
_Graphic3d.Graphic3d_SequenceOfGroup_swigregister(Graphic3d_SequenceOfGroup)
class Graphic3d_SequenceOfStructure(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):
        return _Graphic3d.Graphic3d_SequenceOfStructure_begin(self)

    def end(self):
        return _Graphic3d.Graphic3d_SequenceOfStructure_end(self)

    def cbegin(self):
        return _Graphic3d.Graphic3d_SequenceOfStructure_cbegin(self)

    def cend(self):
        return _Graphic3d.Graphic3d_SequenceOfStructure_cend(self)

    def __init__(self, *args):
        _Graphic3d.Graphic3d_SequenceOfStructure_swiginit(self, _Graphic3d.new_Graphic3d_SequenceOfStructure(*args))

    def Size(self):
        return _Graphic3d.Graphic3d_SequenceOfStructure_Size(self)

    def Length(self):
        return _Graphic3d.Graphic3d_SequenceOfStructure_Length(self)

    def Lower(self):
        return _Graphic3d.Graphic3d_SequenceOfStructure_Lower(self)

    def Upper(self):
        return _Graphic3d.Graphic3d_SequenceOfStructure_Upper(self)

    def IsEmpty(self):
        return _Graphic3d.Graphic3d_SequenceOfStructure_IsEmpty(self)

    def Reverse(self):
        return _Graphic3d.Graphic3d_SequenceOfStructure_Reverse(self)

    def Exchange(self, I, J):
        return _Graphic3d.Graphic3d_SequenceOfStructure_Exchange(self, I, J)

    @staticmethod
    def delNode(theNode, theAl):
        return _Graphic3d.Graphic3d_SequenceOfStructure_delNode(theNode, theAl)

    def Clear(self, theAllocator=0):
        return _Graphic3d.Graphic3d_SequenceOfStructure_Clear(self, theAllocator)

    def Assign(self, theOther):
        return _Graphic3d.Graphic3d_SequenceOfStructure_Assign(self, theOther)

    def Set(self, *args):
        return _Graphic3d.Graphic3d_SequenceOfStructure_Set(self, *args)

    def Remove(self, *args):
        return _Graphic3d.Graphic3d_SequenceOfStructure_Remove(self, *args)

    def Append(self, *args):
        return _Graphic3d.Graphic3d_SequenceOfStructure_Append(self, *args)

    def Prepend(self, *args):
        return _Graphic3d.Graphic3d_SequenceOfStructure_Prepend(self, *args)

    def InsertBefore(self, *args):
        return _Graphic3d.Graphic3d_SequenceOfStructure_InsertBefore(self, *args)

    def InsertAfter(self, *args):
        return _Graphic3d.Graphic3d_SequenceOfStructure_InsertAfter(self, *args)

    def Split(self, theIndex, theSeq):
        return _Graphic3d.Graphic3d_SequenceOfStructure_Split(self, theIndex, theSeq)

    def First(self):
        return _Graphic3d.Graphic3d_SequenceOfStructure_First(self)

    def ChangeFirst(self):
        return _Graphic3d.Graphic3d_SequenceOfStructure_ChangeFirst(self)

    def Last(self):
        return _Graphic3d.Graphic3d_SequenceOfStructure_Last(self)

    def ChangeLast(self):
        return _Graphic3d.Graphic3d_SequenceOfStructure_ChangeLast(self)

    def Value(self, theIndex):
        return _Graphic3d.Graphic3d_SequenceOfStructure_Value(self, theIndex)

    def ChangeValue(self, theIndex):
        return _Graphic3d.Graphic3d_SequenceOfStructure_ChangeValue(self, theIndex)

    def __call__(self, *args):
        return _Graphic3d.Graphic3d_SequenceOfStructure___call__(self, *args)

    def SetValue(self, theIndex, theItem):
        return _Graphic3d.Graphic3d_SequenceOfStructure_SetValue(self, theIndex, theItem)
    __swig_destroy__ = _Graphic3d.delete_Graphic3d_SequenceOfStructure

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


# Register Graphic3d_SequenceOfStructure in _Graphic3d:
_Graphic3d.Graphic3d_SequenceOfStructure_swigregister(Graphic3d_SequenceOfStructure)
class Graphic3d_ShaderAttributeList(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):
        return _Graphic3d.Graphic3d_ShaderAttributeList_begin(self)

    def end(self):
        return _Graphic3d.Graphic3d_ShaderAttributeList_end(self)

    def cbegin(self):
        return _Graphic3d.Graphic3d_ShaderAttributeList_cbegin(self)

    def cend(self):
        return _Graphic3d.Graphic3d_ShaderAttributeList_cend(self)

    def __init__(self, *args):
        _Graphic3d.Graphic3d_ShaderAttributeList_swiginit(self, _Graphic3d.new_Graphic3d_ShaderAttributeList(*args))

    def Size(self):
        return _Graphic3d.Graphic3d_ShaderAttributeList_Size(self)

    def Length(self):
        return _Graphic3d.Graphic3d_ShaderAttributeList_Length(self)

    def Lower(self):
        return _Graphic3d.Graphic3d_ShaderAttributeList_Lower(self)

    def Upper(self):
        return _Graphic3d.Graphic3d_ShaderAttributeList_Upper(self)

    def IsEmpty(self):
        return _Graphic3d.Graphic3d_ShaderAttributeList_IsEmpty(self)

    def Reverse(self):
        return _Graphic3d.Graphic3d_ShaderAttributeList_Reverse(self)

    def Exchange(self, I, J):
        return _Graphic3d.Graphic3d_ShaderAttributeList_Exchange(self, I, J)

    @staticmethod
    def delNode(theNode, theAl):
        return _Graphic3d.Graphic3d_ShaderAttributeList_delNode(theNode, theAl)

    def Clear(self, theAllocator=0):
        return _Graphic3d.Graphic3d_ShaderAttributeList_Clear(self, theAllocator)

    def Assign(self, theOther):
        return _Graphic3d.Graphic3d_ShaderAttributeList_Assign(self, theOther)

    def Set(self, *args):
        return _Graphic3d.Graphic3d_ShaderAttributeList_Set(self, *args)

    def Remove(self, *args):
        return _Graphic3d.Graphic3d_ShaderAttributeList_Remove(self, *args)

    def Append(self, *args):
        return _Graphic3d.Graphic3d_ShaderAttributeList_Append(self, *args)

    def Prepend(self, *args):
        return _Graphic3d.Graphic3d_ShaderAttributeList_Prepend(self, *args)

    def InsertBefore(self, *args):
        return _Graphic3d.Graphic3d_ShaderAttributeList_InsertBefore(self, *args)

    def InsertAfter(self, *args):
        return _Graphic3d.Graphic3d_ShaderAttributeList_InsertAfter(self, *args)

    def Split(self, theIndex, theSeq):
        return _Graphic3d.Graphic3d_ShaderAttributeList_Split(self, theIndex, theSeq)

    def First(self):
        return _Graphic3d.Graphic3d_ShaderAttributeList_First(self)

    def ChangeFirst(self):
        return _Graphic3d.Graphic3d_ShaderAttributeList_ChangeFirst(self)

    def Last(self):
        return _Graphic3d.Graphic3d_ShaderAttributeList_Last(self)

    def ChangeLast(self):
        return _Graphic3d.Graphic3d_ShaderAttributeList_ChangeLast(self)

    def Value(self, theIndex):
        return _Graphic3d.Graphic3d_ShaderAttributeList_Value(self, theIndex)

    def ChangeValue(self, theIndex):
        return _Graphic3d.Graphic3d_ShaderAttributeList_ChangeValue(self, theIndex)

    def __call__(self, *args):
        return _Graphic3d.Graphic3d_ShaderAttributeList___call__(self, *args)

    def SetValue(self, theIndex, theItem):
        return _Graphic3d.Graphic3d_ShaderAttributeList_SetValue(self, theIndex, theItem)
    __swig_destroy__ = _Graphic3d.delete_Graphic3d_ShaderAttributeList

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


# Register Graphic3d_ShaderAttributeList in _Graphic3d:
_Graphic3d.Graphic3d_ShaderAttributeList_swigregister(Graphic3d_ShaderAttributeList)
class Graphic3d_ShaderObjectList(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):
        return _Graphic3d.Graphic3d_ShaderObjectList_begin(self)

    def end(self):
        return _Graphic3d.Graphic3d_ShaderObjectList_end(self)

    def cbegin(self):
        return _Graphic3d.Graphic3d_ShaderObjectList_cbegin(self)

    def cend(self):
        return _Graphic3d.Graphic3d_ShaderObjectList_cend(self)

    def __init__(self, *args):
        _Graphic3d.Graphic3d_ShaderObjectList_swiginit(self, _Graphic3d.new_Graphic3d_ShaderObjectList(*args))

    def Size(self):
        return _Graphic3d.Graphic3d_ShaderObjectList_Size(self)

    def Length(self):
        return _Graphic3d.Graphic3d_ShaderObjectList_Length(self)

    def Lower(self):
        return _Graphic3d.Graphic3d_ShaderObjectList_Lower(self)

    def Upper(self):
        return _Graphic3d.Graphic3d_ShaderObjectList_Upper(self)

    def IsEmpty(self):
        return _Graphic3d.Graphic3d_ShaderObjectList_IsEmpty(self)

    def Reverse(self):
        return _Graphic3d.Graphic3d_ShaderObjectList_Reverse(self)

    def Exchange(self, I, J):
        return _Graphic3d.Graphic3d_ShaderObjectList_Exchange(self, I, J)

    @staticmethod
    def delNode(theNode, theAl):
        return _Graphic3d.Graphic3d_ShaderObjectList_delNode(theNode, theAl)

    def Clear(self, theAllocator=0):
        return _Graphic3d.Graphic3d_ShaderObjectList_Clear(self, theAllocator)

    def Assign(self, theOther):
        return _Graphic3d.Graphic3d_ShaderObjectList_Assign(self, theOther)

    def Set(self, *args):
        return _Graphic3d.Graphic3d_ShaderObjectList_Set(self, *args)

    def Remove(self, *args):
        return _Graphic3d.Graphic3d_ShaderObjectList_Remove(self, *args)

    def Append(self, *args):
        return _Graphic3d.Graphic3d_ShaderObjectList_Append(self, *args)

    def Prepend(self, *args):
        return _Graphic3d.Graphic3d_ShaderObjectList_Prepend(self, *args)

    def InsertBefore(self, *args):
        return _Graphic3d.Graphic3d_ShaderObjectList_InsertBefore(self, *args)

    def InsertAfter(self, *args):
        return _Graphic3d.Graphic3d_ShaderObjectList_InsertAfter(self, *args)

    def Split(self, theIndex, theSeq):
        return _Graphic3d.Graphic3d_ShaderObjectList_Split(self, theIndex, theSeq)

    def First(self):
        return _Graphic3d.Graphic3d_ShaderObjectList_First(self)

    def ChangeFirst(self):
        return _Graphic3d.Graphic3d_ShaderObjectList_ChangeFirst(self)

    def Last(self):
        return _Graphic3d.Graphic3d_ShaderObjectList_Last(self)

    def ChangeLast(self):
        return _Graphic3d.Graphic3d_ShaderObjectList_ChangeLast(self)

    def Value(self, theIndex):
        return _Graphic3d.Graphic3d_ShaderObjectList_Value(self, theIndex)

    def ChangeValue(self, theIndex):
        return _Graphic3d.Graphic3d_ShaderObjectList_ChangeValue(self, theIndex)

    def __call__(self, *args):
        return _Graphic3d.Graphic3d_ShaderObjectList___call__(self, *args)

    def SetValue(self, theIndex, theItem):
        return _Graphic3d.Graphic3d_ShaderObjectList_SetValue(self, theIndex, theItem)
    __swig_destroy__ = _Graphic3d.delete_Graphic3d_ShaderObjectList

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


# Register Graphic3d_ShaderObjectList in _Graphic3d:
_Graphic3d.Graphic3d_ShaderObjectList_swigregister(Graphic3d_ShaderObjectList)
class Graphic3d_ShaderVariableList(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):
        return _Graphic3d.Graphic3d_ShaderVariableList_begin(self)

    def end(self):
        return _Graphic3d.Graphic3d_ShaderVariableList_end(self)

    def cbegin(self):
        return _Graphic3d.Graphic3d_ShaderVariableList_cbegin(self)

    def cend(self):
        return _Graphic3d.Graphic3d_ShaderVariableList_cend(self)

    def __init__(self, *args):
        _Graphic3d.Graphic3d_ShaderVariableList_swiginit(self, _Graphic3d.new_Graphic3d_ShaderVariableList(*args))

    def Size(self):
        return _Graphic3d.Graphic3d_ShaderVariableList_Size(self)

    def Length(self):
        return _Graphic3d.Graphic3d_ShaderVariableList_Length(self)

    def Lower(self):
        return _Graphic3d.Graphic3d_ShaderVariableList_Lower(self)

    def Upper(self):
        return _Graphic3d.Graphic3d_ShaderVariableList_Upper(self)

    def IsEmpty(self):
        return _Graphic3d.Graphic3d_ShaderVariableList_IsEmpty(self)

    def Reverse(self):
        return _Graphic3d.Graphic3d_ShaderVariableList_Reverse(self)

    def Exchange(self, I, J):
        return _Graphic3d.Graphic3d_ShaderVariableList_Exchange(self, I, J)

    @staticmethod
    def delNode(theNode, theAl):
        return _Graphic3d.Graphic3d_ShaderVariableList_delNode(theNode, theAl)

    def Clear(self, theAllocator=0):
        return _Graphic3d.Graphic3d_ShaderVariableList_Clear(self, theAllocator)

    def Assign(self, theOther):
        return _Graphic3d.Graphic3d_ShaderVariableList_Assign(self, theOther)

    def Set(self, *args):
        return _Graphic3d.Graphic3d_ShaderVariableList_Set(self, *args)

    def Remove(self, *args):
        return _Graphic3d.Graphic3d_ShaderVariableList_Remove(self, *args)

    def Append(self, *args):
        return _Graphic3d.Graphic3d_ShaderVariableList_Append(self, *args)

    def Prepend(self, *args):
        return _Graphic3d.Graphic3d_ShaderVariableList_Prepend(self, *args)

    def InsertBefore(self, *args):
        return _Graphic3d.Graphic3d_ShaderVariableList_InsertBefore(self, *args)

    def InsertAfter(self, *args):
        return _Graphic3d.Graphic3d_ShaderVariableList_InsertAfter(self, *args)

    def Split(self, theIndex, theSeq):
        return _Graphic3d.Graphic3d_ShaderVariableList_Split(self, theIndex, theSeq)

    def First(self):
        return _Graphic3d.Graphic3d_ShaderVariableList_First(self)

    def ChangeFirst(self):
        return _Graphic3d.Graphic3d_ShaderVariableList_ChangeFirst(self)

    def Last(self):
        return _Graphic3d.Graphic3d_ShaderVariableList_Last(self)

    def ChangeLast(self):
        return _Graphic3d.Graphic3d_ShaderVariableList_ChangeLast(self)

    def Value(self, theIndex):
        return _Graphic3d.Graphic3d_ShaderVariableList_Value(self, theIndex)

    def ChangeValue(self, theIndex):
        return _Graphic3d.Graphic3d_ShaderVariableList_ChangeValue(self, theIndex)

    def __call__(self, *args):
        return _Graphic3d.Graphic3d_ShaderVariableList___call__(self, *args)

    def SetValue(self, theIndex, theItem):
        return _Graphic3d.Graphic3d_ShaderVariableList_SetValue(self, theIndex, theItem)
    __swig_destroy__ = _Graphic3d.delete_Graphic3d_ShaderVariableList

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


# Register Graphic3d_ShaderVariableList in _Graphic3d:
_Graphic3d.Graphic3d_ShaderVariableList_swigregister(Graphic3d_ShaderVariableList)
class Graphic3d_Vec2b(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    @staticmethod
    def Length():
        return _Graphic3d.Graphic3d_Vec2b_Length()

    def __init__(self, *args):
        _Graphic3d.Graphic3d_Vec2b_swiginit(self, _Graphic3d.new_Graphic3d_Vec2b(*args))

    def SetValues(self, theX, theY):
        return _Graphic3d.Graphic3d_Vec2b_SetValues(self, theX, theY)

    def xy(self):
        return _Graphic3d.Graphic3d_Vec2b_xy(self)

    def yx(self):
        return _Graphic3d.Graphic3d_Vec2b_yx(self)

    def x(self, *args):
        return _Graphic3d.Graphic3d_Vec2b_x(self, *args)

    def y(self, *args):
        return _Graphic3d.Graphic3d_Vec2b_y(self, *args)

    def IsEqual(self, theOther):
        return _Graphic3d.Graphic3d_Vec2b_IsEqual(self, theOther)

    def __eq__(self, theOther):
        return _Graphic3d.Graphic3d_Vec2b___eq__(self, theOther)

    def __ne__(self, theOther):
        return _Graphic3d.Graphic3d_Vec2b___ne__(self, theOther)

    def GetData(self):
        return _Graphic3d.Graphic3d_Vec2b_GetData(self)

    def ChangeData(self):
        return _Graphic3d.Graphic3d_Vec2b_ChangeData(self)

    def __iadd__(self, theAdd):
        return _Graphic3d.Graphic3d_Vec2b___iadd__(self, theAdd)

    def __isub__(self, theDec):
        return _Graphic3d.Graphic3d_Vec2b___isub__(self, theDec)

    def __neg__(self):
        return _Graphic3d.Graphic3d_Vec2b___neg__(self)

    def Multiply(self, theFactor):
        return _Graphic3d.Graphic3d_Vec2b_Multiply(self, theFactor)

    def Multiplied(self, theFactor):
        return _Graphic3d.Graphic3d_Vec2b_Multiplied(self, theFactor)

    def cwiseMin(self, theVec):
        return _Graphic3d.Graphic3d_Vec2b_cwiseMin(self, theVec)

    def cwiseMax(self, theVec):
        return _Graphic3d.Graphic3d_Vec2b_cwiseMax(self, theVec)

    def cwiseAbs(self):
        return _Graphic3d.Graphic3d_Vec2b_cwiseAbs(self)

    def maxComp(self):
        return _Graphic3d.Graphic3d_Vec2b_maxComp(self)

    def minComp(self):
        return _Graphic3d.Graphic3d_Vec2b_minComp(self)

    def __imul__(self, *args):
        return _Graphic3d.Graphic3d_Vec2b___imul__(self, *args)

    def __itruediv__(self, *args):
        return _Graphic3d.Graphic3d_Vec2b___itruediv__(self, *args)
    __idiv__ = __itruediv__



    def __mul__(self, theFactor):
        return _Graphic3d.Graphic3d_Vec2b___mul__(self, theFactor)

    def __truediv__(self, *args):
        return _Graphic3d.Graphic3d_Vec2b___truediv__(self, *args)
    __div__ = __truediv__



    def Dot(self, theOther):
        return _Graphic3d.Graphic3d_Vec2b_Dot(self, theOther)

    def Modulus(self):
        return _Graphic3d.Graphic3d_Vec2b_Modulus(self)

    def SquareModulus(self):
        return _Graphic3d.Graphic3d_Vec2b_SquareModulus(self)

    @staticmethod
    def DX():
        return _Graphic3d.Graphic3d_Vec2b_DX()

    @staticmethod
    def DY():
        return _Graphic3d.Graphic3d_Vec2b_DY()

    def DumpJson(self, theOStream, theDepth=-1):
        return _Graphic3d.Graphic3d_Vec2b_DumpJson(self, theOStream, theDepth)
    __swig_destroy__ = _Graphic3d.delete_Graphic3d_Vec2b

# Register Graphic3d_Vec2b in _Graphic3d:
_Graphic3d.Graphic3d_Vec2b_swigregister(Graphic3d_Vec2b)
class Graphic3d_Vec2d(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    @staticmethod
    def Length():
        return _Graphic3d.Graphic3d_Vec2d_Length()

    def __init__(self, *args):
        _Graphic3d.Graphic3d_Vec2d_swiginit(self, _Graphic3d.new_Graphic3d_Vec2d(*args))

    def SetValues(self, theX, theY):
        return _Graphic3d.Graphic3d_Vec2d_SetValues(self, theX, theY)

    def xy(self):
        return _Graphic3d.Graphic3d_Vec2d_xy(self)

    def yx(self):
        return _Graphic3d.Graphic3d_Vec2d_yx(self)

    def x(self, *args):
        return _Graphic3d.Graphic3d_Vec2d_x(self, *args)

    def y(self, *args):
        return _Graphic3d.Graphic3d_Vec2d_y(self, *args)

    def IsEqual(self, theOther):
        return _Graphic3d.Graphic3d_Vec2d_IsEqual(self, theOther)

    def __eq__(self, theOther):
        return _Graphic3d.Graphic3d_Vec2d___eq__(self, theOther)

    def __ne__(self, theOther):
        return _Graphic3d.Graphic3d_Vec2d___ne__(self, theOther)

    def GetData(self):
        return _Graphic3d.Graphic3d_Vec2d_GetData(self)

    def ChangeData(self):
        return _Graphic3d.Graphic3d_Vec2d_ChangeData(self)

    def __iadd__(self, theAdd):
        return _Graphic3d.Graphic3d_Vec2d___iadd__(self, theAdd)

    def __isub__(self, theDec):
        return _Graphic3d.Graphic3d_Vec2d___isub__(self, theDec)

    def __neg__(self):
        return _Graphic3d.Graphic3d_Vec2d___neg__(self)

    def Multiply(self, theFactor):
        return _Graphic3d.Graphic3d_Vec2d_Multiply(self, theFactor)

    def Multiplied(self, theFactor):
        return _Graphic3d.Graphic3d_Vec2d_Multiplied(self, theFactor)

    def cwiseMin(self, theVec):
        return _Graphic3d.Graphic3d_Vec2d_cwiseMin(self, theVec)

    def cwiseMax(self, theVec):
        return _Graphic3d.Graphic3d_Vec2d_cwiseMax(self, theVec)

    def cwiseAbs(self):
        return _Graphic3d.Graphic3d_Vec2d_cwiseAbs(self)

    def maxComp(self):
        return _Graphic3d.Graphic3d_Vec2d_maxComp(self)

    def minComp(self):
        return _Graphic3d.Graphic3d_Vec2d_minComp(self)

    def __imul__(self, *args):
        return _Graphic3d.Graphic3d_Vec2d___imul__(self, *args)

    def __itruediv__(self, *args):
        return _Graphic3d.Graphic3d_Vec2d___itruediv__(self, *args)
    __idiv__ = __itruediv__



    def __mul__(self, theFactor):
        return _Graphic3d.Graphic3d_Vec2d___mul__(self, theFactor)

    def __truediv__(self, *args):
        return _Graphic3d.Graphic3d_Vec2d___truediv__(self, *args)
    __div__ = __truediv__



    def Dot(self, theOther):
        return _Graphic3d.Graphic3d_Vec2d_Dot(self, theOther)

    def Modulus(self):
        return _Graphic3d.Graphic3d_Vec2d_Modulus(self)

    def SquareModulus(self):
        return _Graphic3d.Graphic3d_Vec2d_SquareModulus(self)

    @staticmethod
    def DX():
        return _Graphic3d.Graphic3d_Vec2d_DX()

    @staticmethod
    def DY():
        return _Graphic3d.Graphic3d_Vec2d_DY()

    def DumpJson(self, theOStream, theDepth=-1):
        return _Graphic3d.Graphic3d_Vec2d_DumpJson(self, theOStream, theDepth)
    __swig_destroy__ = _Graphic3d.delete_Graphic3d_Vec2d

# Register Graphic3d_Vec2d in _Graphic3d:
_Graphic3d.Graphic3d_Vec2d_swigregister(Graphic3d_Vec2d)
class Graphic3d_Vec2i(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    @staticmethod
    def Length():
        return _Graphic3d.Graphic3d_Vec2i_Length()

    def __init__(self, *args):
        _Graphic3d.Graphic3d_Vec2i_swiginit(self, _Graphic3d.new_Graphic3d_Vec2i(*args))

    def SetValues(self, theX, theY):
        return _Graphic3d.Graphic3d_Vec2i_SetValues(self, theX, theY)

    def xy(self):
        return _Graphic3d.Graphic3d_Vec2i_xy(self)

    def yx(self):
        return _Graphic3d.Graphic3d_Vec2i_yx(self)

    def x(self, *args):
        return _Graphic3d.Graphic3d_Vec2i_x(self, *args)

    def y(self, *args):
        return _Graphic3d.Graphic3d_Vec2i_y(self, *args)

    def IsEqual(self, theOther):
        return _Graphic3d.Graphic3d_Vec2i_IsEqual(self, theOther)

    def __eq__(self, theOther):
        return _Graphic3d.Graphic3d_Vec2i___eq__(self, theOther)

    def __ne__(self, theOther):
        return _Graphic3d.Graphic3d_Vec2i___ne__(self, theOther)

    def GetData(self):
        return _Graphic3d.Graphic3d_Vec2i_GetData(self)

    def ChangeData(self):
        return _Graphic3d.Graphic3d_Vec2i_ChangeData(self)

    def __iadd__(self, theAdd):
        return _Graphic3d.Graphic3d_Vec2i___iadd__(self, theAdd)

    def __isub__(self, theDec):
        return _Graphic3d.Graphic3d_Vec2i___isub__(self, theDec)

    def __neg__(self):
        return _Graphic3d.Graphic3d_Vec2i___neg__(self)

    def Multiply(self, theFactor):
        return _Graphic3d.Graphic3d_Vec2i_Multiply(self, theFactor)

    def Multiplied(self, theFactor):
        return _Graphic3d.Graphic3d_Vec2i_Multiplied(self, theFactor)

    def cwiseMin(self, theVec):
        return _Graphic3d.Graphic3d_Vec2i_cwiseMin(self, theVec)

    def cwiseMax(self, theVec):
        return _Graphic3d.Graphic3d_Vec2i_cwiseMax(self, theVec)

    def cwiseAbs(self):
        return _Graphic3d.Graphic3d_Vec2i_cwiseAbs(self)

    def maxComp(self):
        return _Graphic3d.Graphic3d_Vec2i_maxComp(self)

    def minComp(self):
        return _Graphic3d.Graphic3d_Vec2i_minComp(self)

    def __imul__(self, *args):
        return _Graphic3d.Graphic3d_Vec2i___imul__(self, *args)

    def __itruediv__(self, *args):
        return _Graphic3d.Graphic3d_Vec2i___itruediv__(self, *args)
    __idiv__ = __itruediv__



    def __mul__(self, theFactor):
        return _Graphic3d.Graphic3d_Vec2i___mul__(self, theFactor)

    def __truediv__(self, *args):
        return _Graphic3d.Graphic3d_Vec2i___truediv__(self, *args)
    __div__ = __truediv__



    def Dot(self, theOther):
        return _Graphic3d.Graphic3d_Vec2i_Dot(self, theOther)

    def Modulus(self):
        return _Graphic3d.Graphic3d_Vec2i_Modulus(self)

    def SquareModulus(self):
        return _Graphic3d.Graphic3d_Vec2i_SquareModulus(self)

    @staticmethod
    def DX():
        return _Graphic3d.Graphic3d_Vec2i_DX()

    @staticmethod
    def DY():
        return _Graphic3d.Graphic3d_Vec2i_DY()

    def DumpJson(self, theOStream, theDepth=-1):
        return _Graphic3d.Graphic3d_Vec2i_DumpJson(self, theOStream, theDepth)
    __swig_destroy__ = _Graphic3d.delete_Graphic3d_Vec2i

# Register Graphic3d_Vec2i in _Graphic3d:
_Graphic3d.Graphic3d_Vec2i_swigregister(Graphic3d_Vec2i)
class Graphic3d_Vec2ub(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    @staticmethod
    def Length():
        return _Graphic3d.Graphic3d_Vec2ub_Length()

    def __init__(self, *args):
        _Graphic3d.Graphic3d_Vec2ub_swiginit(self, _Graphic3d.new_Graphic3d_Vec2ub(*args))

    def SetValues(self, theX, theY):
        return _Graphic3d.Graphic3d_Vec2ub_SetValues(self, theX, theY)

    def xy(self):
        return _Graphic3d.Graphic3d_Vec2ub_xy(self)

    def yx(self):
        return _Graphic3d.Graphic3d_Vec2ub_yx(self)

    def x(self, *args):
        return _Graphic3d.Graphic3d_Vec2ub_x(self, *args)

    def y(self, *args):
        return _Graphic3d.Graphic3d_Vec2ub_y(self, *args)

    def IsEqual(self, theOther):
        return _Graphic3d.Graphic3d_Vec2ub_IsEqual(self, theOther)

    def __eq__(self, theOther):
        return _Graphic3d.Graphic3d_Vec2ub___eq__(self, theOther)

    def __ne__(self, theOther):
        return _Graphic3d.Graphic3d_Vec2ub___ne__(self, theOther)

    def GetData(self):
        return _Graphic3d.Graphic3d_Vec2ub_GetData(self)

    def ChangeData(self):
        return _Graphic3d.Graphic3d_Vec2ub_ChangeData(self)

    def __iadd__(self, theAdd):
        return _Graphic3d.Graphic3d_Vec2ub___iadd__(self, theAdd)

    def __isub__(self, theDec):
        return _Graphic3d.Graphic3d_Vec2ub___isub__(self, theDec)

    def __neg__(self):
        return _Graphic3d.Graphic3d_Vec2ub___neg__(self)

    def Multiply(self, theFactor):
        return _Graphic3d.Graphic3d_Vec2ub_Multiply(self, theFactor)

    def Multiplied(self, theFactor):
        return _Graphic3d.Graphic3d_Vec2ub_Multiplied(self, theFactor)

    def cwiseMin(self, theVec):
        return _Graphic3d.Graphic3d_Vec2ub_cwiseMin(self, theVec)

    def cwiseMax(self, theVec):
        return _Graphic3d.Graphic3d_Vec2ub_cwiseMax(self, theVec)

    def cwiseAbs(self):
        return _Graphic3d.Graphic3d_Vec2ub_cwiseAbs(self)

    def maxComp(self):
        return _Graphic3d.Graphic3d_Vec2ub_maxComp(self)

    def minComp(self):
        return _Graphic3d.Graphic3d_Vec2ub_minComp(self)

    def __imul__(self, *args):
        return _Graphic3d.Graphic3d_Vec2ub___imul__(self, *args)

    def __itruediv__(self, *args):
        return _Graphic3d.Graphic3d_Vec2ub___itruediv__(self, *args)
    __idiv__ = __itruediv__



    def __mul__(self, theFactor):
        return _Graphic3d.Graphic3d_Vec2ub___mul__(self, theFactor)

    def __truediv__(self, *args):
        return _Graphic3d.Graphic3d_Vec2ub___truediv__(self, *args)
    __div__ = __truediv__



    def Dot(self, theOther):
        return _Graphic3d.Graphic3d_Vec2ub_Dot(self, theOther)

    def Modulus(self):
        return _Graphic3d.Graphic3d_Vec2ub_Modulus(self)

    def SquareModulus(self):
        return _Graphic3d.Graphic3d_Vec2ub_SquareModulus(self)

    @staticmethod
    def DX():
        return _Graphic3d.Graphic3d_Vec2ub_DX()

    @staticmethod
    def DY():
        return _Graphic3d.Graphic3d_Vec2ub_DY()

    def DumpJson(self, theOStream, theDepth=-1):
        return _Graphic3d.Graphic3d_Vec2ub_DumpJson(self, theOStream, theDepth)
    __swig_destroy__ = _Graphic3d.delete_Graphic3d_Vec2ub

# Register Graphic3d_Vec2ub in _Graphic3d:
_Graphic3d.Graphic3d_Vec2ub_swigregister(Graphic3d_Vec2ub)
class Graphic3d_Vec3b(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    @staticmethod
    def Length():
        return _Graphic3d.Graphic3d_Vec3b_Length()

    def __init__(self, *args):
        _Graphic3d.Graphic3d_Vec3b_swiginit(self, _Graphic3d.new_Graphic3d_Vec3b(*args))

    def SetValues(self, *args):
        return _Graphic3d.Graphic3d_Vec3b_SetValues(self, *args)

    def xy(self):
        return _Graphic3d.Graphic3d_Vec3b_xy(self)

    def yx(self):
        return _Graphic3d.Graphic3d_Vec3b_yx(self)

    def xz(self):
        return _Graphic3d.Graphic3d_Vec3b_xz(self)

    def zx(self):
        return _Graphic3d.Graphic3d_Vec3b_zx(self)

    def yz(self):
        return _Graphic3d.Graphic3d_Vec3b_yz(self)

    def zy(self):
        return _Graphic3d.Graphic3d_Vec3b_zy(self)

    def xyz(self):
        return _Graphic3d.Graphic3d_Vec3b_xyz(self)

    def xzy(self):
        return _Graphic3d.Graphic3d_Vec3b_xzy(self)

    def yxz(self):
        return _Graphic3d.Graphic3d_Vec3b_yxz(self)

    def yzx(self):
        return _Graphic3d.Graphic3d_Vec3b_yzx(self)

    def zyx(self):
        return _Graphic3d.Graphic3d_Vec3b_zyx(self)

    def zxy(self):
        return _Graphic3d.Graphic3d_Vec3b_zxy(self)

    def x(self, *args):
        return _Graphic3d.Graphic3d_Vec3b_x(self, *args)

    def r(self, *args):
        return _Graphic3d.Graphic3d_Vec3b_r(self, *args)

    def y(self, *args):
        return _Graphic3d.Graphic3d_Vec3b_y(self, *args)

    def g(self, *args):
        return _Graphic3d.Graphic3d_Vec3b_g(self, *args)

    def z(self, *args):
        return _Graphic3d.Graphic3d_Vec3b_z(self, *args)

    def b(self, *args):
        return _Graphic3d.Graphic3d_Vec3b_b(self, *args)

    def IsEqual(self, theOther):
        return _Graphic3d.Graphic3d_Vec3b_IsEqual(self, theOther)

    def __eq__(self, theOther):
        return _Graphic3d.Graphic3d_Vec3b___eq__(self, theOther)

    def __ne__(self, theOther):
        return _Graphic3d.Graphic3d_Vec3b___ne__(self, theOther)

    def GetData(self):
        return _Graphic3d.Graphic3d_Vec3b_GetData(self)

    def ChangeData(self):
        return _Graphic3d.Graphic3d_Vec3b_ChangeData(self)

    def __iadd__(self, theAdd):
        return _Graphic3d.Graphic3d_Vec3b___iadd__(self, theAdd)

    def __neg__(self):
        return _Graphic3d.Graphic3d_Vec3b___neg__(self)

    def __isub__(self, theDec):
        return _Graphic3d.Graphic3d_Vec3b___isub__(self, theDec)

    def Multiply(self, theFactor):
        return _Graphic3d.Graphic3d_Vec3b_Multiply(self, theFactor)

    def __imul__(self, *args):
        return _Graphic3d.Graphic3d_Vec3b___imul__(self, *args)

    def __mul__(self, theFactor):
        return _Graphic3d.Graphic3d_Vec3b___mul__(self, theFactor)

    def Multiplied(self, theFactor):
        return _Graphic3d.Graphic3d_Vec3b_Multiplied(self, theFactor)

    def cwiseMin(self, theVec):
        return _Graphic3d.Graphic3d_Vec3b_cwiseMin(self, theVec)

    def cwiseMax(self, theVec):
        return _Graphic3d.Graphic3d_Vec3b_cwiseMax(self, theVec)

    def cwiseAbs(self):
        return _Graphic3d.Graphic3d_Vec3b_cwiseAbs(self)

    def maxComp(self):
        return _Graphic3d.Graphic3d_Vec3b_maxComp(self)

    def minComp(self):
        return _Graphic3d.Graphic3d_Vec3b_minComp(self)

    def __itruediv__(self, *args):
        return _Graphic3d.Graphic3d_Vec3b___itruediv__(self, *args)
    __idiv__ = __itruediv__



    def __truediv__(self, *args):
        return _Graphic3d.Graphic3d_Vec3b___truediv__(self, *args)
    __div__ = __truediv__



    def Dot(self, theOther):
        return _Graphic3d.Graphic3d_Vec3b_Dot(self, theOther)

    def Modulus(self):
        return _Graphic3d.Graphic3d_Vec3b_Modulus(self)

    def SquareModulus(self):
        return _Graphic3d.Graphic3d_Vec3b_SquareModulus(self)

    def Normalize(self):
        return _Graphic3d.Graphic3d_Vec3b_Normalize(self)

    def Normalized(self):
        return _Graphic3d.Graphic3d_Vec3b_Normalized(self)

    @staticmethod
    def Cross(theVec1, theVec2):
        return _Graphic3d.Graphic3d_Vec3b_Cross(theVec1, theVec2)

    @staticmethod
    def GetLERP(theFrom, theTo, theT):
        return _Graphic3d.Graphic3d_Vec3b_GetLERP(theFrom, theTo, theT)

    @staticmethod
    def DX():
        return _Graphic3d.Graphic3d_Vec3b_DX()

    @staticmethod
    def DY():
        return _Graphic3d.Graphic3d_Vec3b_DY()

    @staticmethod
    def DZ():
        return _Graphic3d.Graphic3d_Vec3b_DZ()

    def DumpJson(self, theOStream, theDepth=-1):
        return _Graphic3d.Graphic3d_Vec3b_DumpJson(self, theOStream, theDepth)
    __swig_destroy__ = _Graphic3d.delete_Graphic3d_Vec3b

# Register Graphic3d_Vec3b in _Graphic3d:
_Graphic3d.Graphic3d_Vec3b_swigregister(Graphic3d_Vec3b)
class Graphic3d_Vec3d(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    @staticmethod
    def Length():
        return _Graphic3d.Graphic3d_Vec3d_Length()

    def __init__(self, *args):
        _Graphic3d.Graphic3d_Vec3d_swiginit(self, _Graphic3d.new_Graphic3d_Vec3d(*args))

    def SetValues(self, *args):
        return _Graphic3d.Graphic3d_Vec3d_SetValues(self, *args)

    def xy(self):
        return _Graphic3d.Graphic3d_Vec3d_xy(self)

    def yx(self):
        return _Graphic3d.Graphic3d_Vec3d_yx(self)

    def xz(self):
        return _Graphic3d.Graphic3d_Vec3d_xz(self)

    def zx(self):
        return _Graphic3d.Graphic3d_Vec3d_zx(self)

    def yz(self):
        return _Graphic3d.Graphic3d_Vec3d_yz(self)

    def zy(self):
        return _Graphic3d.Graphic3d_Vec3d_zy(self)

    def xyz(self):
        return _Graphic3d.Graphic3d_Vec3d_xyz(self)

    def xzy(self):
        return _Graphic3d.Graphic3d_Vec3d_xzy(self)

    def yxz(self):
        return _Graphic3d.Graphic3d_Vec3d_yxz(self)

    def yzx(self):
        return _Graphic3d.Graphic3d_Vec3d_yzx(self)

    def zyx(self):
        return _Graphic3d.Graphic3d_Vec3d_zyx(self)

    def zxy(self):
        return _Graphic3d.Graphic3d_Vec3d_zxy(self)

    def x(self, *args):
        return _Graphic3d.Graphic3d_Vec3d_x(self, *args)

    def r(self, *args):
        return _Graphic3d.Graphic3d_Vec3d_r(self, *args)

    def y(self, *args):
        return _Graphic3d.Graphic3d_Vec3d_y(self, *args)

    def g(self, *args):
        return _Graphic3d.Graphic3d_Vec3d_g(self, *args)

    def z(self, *args):
        return _Graphic3d.Graphic3d_Vec3d_z(self, *args)

    def b(self, *args):
        return _Graphic3d.Graphic3d_Vec3d_b(self, *args)

    def IsEqual(self, theOther):
        return _Graphic3d.Graphic3d_Vec3d_IsEqual(self, theOther)

    def __eq__(self, theOther):
        return _Graphic3d.Graphic3d_Vec3d___eq__(self, theOther)

    def __ne__(self, theOther):
        return _Graphic3d.Graphic3d_Vec3d___ne__(self, theOther)

    def GetData(self):
        return _Graphic3d.Graphic3d_Vec3d_GetData(self)

    def ChangeData(self):
        return _Graphic3d.Graphic3d_Vec3d_ChangeData(self)

    def __iadd__(self, theAdd):
        return _Graphic3d.Graphic3d_Vec3d___iadd__(self, theAdd)

    def __neg__(self):
        return _Graphic3d.Graphic3d_Vec3d___neg__(self)

    def __isub__(self, theDec):
        return _Graphic3d.Graphic3d_Vec3d___isub__(self, theDec)

    def Multiply(self, theFactor):
        return _Graphic3d.Graphic3d_Vec3d_Multiply(self, theFactor)

    def __imul__(self, *args):
        return _Graphic3d.Graphic3d_Vec3d___imul__(self, *args)

    def __mul__(self, theFactor):
        return _Graphic3d.Graphic3d_Vec3d___mul__(self, theFactor)

    def Multiplied(self, theFactor):
        return _Graphic3d.Graphic3d_Vec3d_Multiplied(self, theFactor)

    def cwiseMin(self, theVec):
        return _Graphic3d.Graphic3d_Vec3d_cwiseMin(self, theVec)

    def cwiseMax(self, theVec):
        return _Graphic3d.Graphic3d_Vec3d_cwiseMax(self, theVec)

    def cwiseAbs(self):
        return _Graphic3d.Graphic3d_Vec3d_cwiseAbs(self)

    def maxComp(self):
        return _Graphic3d.Graphic3d_Vec3d_maxComp(self)

    def minComp(self):
        return _Graphic3d.Graphic3d_Vec3d_minComp(self)

    def __itruediv__(self, *args):
        return _Graphic3d.Graphic3d_Vec3d___itruediv__(self, *args)
    __idiv__ = __itruediv__



    def __truediv__(self, *args):
        return _Graphic3d.Graphic3d_Vec3d___truediv__(self, *args)
    __div__ = __truediv__



    def Dot(self, theOther):
        return _Graphic3d.Graphic3d_Vec3d_Dot(self, theOther)

    def Modulus(self):
        return _Graphic3d.Graphic3d_Vec3d_Modulus(self)

    def SquareModulus(self):
        return _Graphic3d.Graphic3d_Vec3d_SquareModulus(self)

    def Normalize(self):
        return _Graphic3d.Graphic3d_Vec3d_Normalize(self)

    def Normalized(self):
        return _Graphic3d.Graphic3d_Vec3d_Normalized(self)

    @staticmethod
    def Cross(theVec1, theVec2):
        return _Graphic3d.Graphic3d_Vec3d_Cross(theVec1, theVec2)

    @staticmethod
    def GetLERP(theFrom, theTo, theT):
        return _Graphic3d.Graphic3d_Vec3d_GetLERP(theFrom, theTo, theT)

    @staticmethod
    def DX():
        return _Graphic3d.Graphic3d_Vec3d_DX()

    @staticmethod
    def DY():
        return _Graphic3d.Graphic3d_Vec3d_DY()

    @staticmethod
    def DZ():
        return _Graphic3d.Graphic3d_Vec3d_DZ()

    def DumpJson(self, theOStream, theDepth=-1):
        return _Graphic3d.Graphic3d_Vec3d_DumpJson(self, theOStream, theDepth)
    __swig_destroy__ = _Graphic3d.delete_Graphic3d_Vec3d

# Register Graphic3d_Vec3d in _Graphic3d:
_Graphic3d.Graphic3d_Vec3d_swigregister(Graphic3d_Vec3d)
class Graphic3d_Vec3i(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    @staticmethod
    def Length():
        return _Graphic3d.Graphic3d_Vec3i_Length()

    def __init__(self, *args):
        _Graphic3d.Graphic3d_Vec3i_swiginit(self, _Graphic3d.new_Graphic3d_Vec3i(*args))

    def SetValues(self, *args):
        return _Graphic3d.Graphic3d_Vec3i_SetValues(self, *args)

    def xy(self):
        return _Graphic3d.Graphic3d_Vec3i_xy(self)

    def yx(self):
        return _Graphic3d.Graphic3d_Vec3i_yx(self)

    def xz(self):
        return _Graphic3d.Graphic3d_Vec3i_xz(self)

    def zx(self):
        return _Graphic3d.Graphic3d_Vec3i_zx(self)

    def yz(self):
        return _Graphic3d.Graphic3d_Vec3i_yz(self)

    def zy(self):
        return _Graphic3d.Graphic3d_Vec3i_zy(self)

    def xyz(self):
        return _Graphic3d.Graphic3d_Vec3i_xyz(self)

    def xzy(self):
        return _Graphic3d.Graphic3d_Vec3i_xzy(self)

    def yxz(self):
        return _Graphic3d.Graphic3d_Vec3i_yxz(self)

    def yzx(self):
        return _Graphic3d.Graphic3d_Vec3i_yzx(self)

    def zyx(self):
        return _Graphic3d.Graphic3d_Vec3i_zyx(self)

    def zxy(self):
        return _Graphic3d.Graphic3d_Vec3i_zxy(self)

    def x(self, *args):
        return _Graphic3d.Graphic3d_Vec3i_x(self, *args)

    def r(self, *args):
        return _Graphic3d.Graphic3d_Vec3i_r(self, *args)

    def y(self, *args):
        return _Graphic3d.Graphic3d_Vec3i_y(self, *args)

    def g(self, *args):
        return _Graphic3d.Graphic3d_Vec3i_g(self, *args)

    def z(self, *args):
        return _Graphic3d.Graphic3d_Vec3i_z(self, *args)

    def b(self, *args):
        return _Graphic3d.Graphic3d_Vec3i_b(self, *args)

    def IsEqual(self, theOther):
        return _Graphic3d.Graphic3d_Vec3i_IsEqual(self, theOther)

    def __eq__(self, theOther):
        return _Graphic3d.Graphic3d_Vec3i___eq__(self, theOther)

    def __ne__(self, theOther):
        return _Graphic3d.Graphic3d_Vec3i___ne__(self, theOther)

    def GetData(self):
        return _Graphic3d.Graphic3d_Vec3i_GetData(self)

    def ChangeData(self):
        return _Graphic3d.Graphic3d_Vec3i_ChangeData(self)

    def __iadd__(self, theAdd):
        return _Graphic3d.Graphic3d_Vec3i___iadd__(self, theAdd)

    def __neg__(self):
        return _Graphic3d.Graphic3d_Vec3i___neg__(self)

    def __isub__(self, theDec):
        return _Graphic3d.Graphic3d_Vec3i___isub__(self, theDec)

    def Multiply(self, theFactor):
        return _Graphic3d.Graphic3d_Vec3i_Multiply(self, theFactor)

    def __imul__(self, *args):
        return _Graphic3d.Graphic3d_Vec3i___imul__(self, *args)

    def __mul__(self, theFactor):
        return _Graphic3d.Graphic3d_Vec3i___mul__(self, theFactor)

    def Multiplied(self, theFactor):
        return _Graphic3d.Graphic3d_Vec3i_Multiplied(self, theFactor)

    def cwiseMin(self, theVec):
        return _Graphic3d.Graphic3d_Vec3i_cwiseMin(self, theVec)

    def cwiseMax(self, theVec):
        return _Graphic3d.Graphic3d_Vec3i_cwiseMax(self, theVec)

    def cwiseAbs(self):
        return _Graphic3d.Graphic3d_Vec3i_cwiseAbs(self)

    def maxComp(self):
        return _Graphic3d.Graphic3d_Vec3i_maxComp(self)

    def minComp(self):
        return _Graphic3d.Graphic3d_Vec3i_minComp(self)

    def __itruediv__(self, *args):
        return _Graphic3d.Graphic3d_Vec3i___itruediv__(self, *args)
    __idiv__ = __itruediv__



    def __truediv__(self, *args):
        return _Graphic3d.Graphic3d_Vec3i___truediv__(self, *args)
    __div__ = __truediv__



    def Dot(self, theOther):
        return _Graphic3d.Graphic3d_Vec3i_Dot(self, theOther)

    def Modulus(self):
        return _Graphic3d.Graphic3d_Vec3i_Modulus(self)

    def SquareModulus(self):
        return _Graphic3d.Graphic3d_Vec3i_SquareModulus(self)

    def Normalize(self):
        return _Graphic3d.Graphic3d_Vec3i_Normalize(self)

    def Normalized(self):
        return _Graphic3d.Graphic3d_Vec3i_Normalized(self)

    @staticmethod
    def Cross(theVec1, theVec2):
        return _Graphic3d.Graphic3d_Vec3i_Cross(theVec1, theVec2)

    @staticmethod
    def GetLERP(theFrom, theTo, theT):
        return _Graphic3d.Graphic3d_Vec3i_GetLERP(theFrom, theTo, theT)

    @staticmethod
    def DX():
        return _Graphic3d.Graphic3d_Vec3i_DX()

    @staticmethod
    def DY():
        return _Graphic3d.Graphic3d_Vec3i_DY()

    @staticmethod
    def DZ():
        return _Graphic3d.Graphic3d_Vec3i_DZ()

    def DumpJson(self, theOStream, theDepth=-1):
        return _Graphic3d.Graphic3d_Vec3i_DumpJson(self, theOStream, theDepth)
    __swig_destroy__ = _Graphic3d.delete_Graphic3d_Vec3i

# Register Graphic3d_Vec3i in _Graphic3d:
_Graphic3d.Graphic3d_Vec3i_swigregister(Graphic3d_Vec3i)
class Graphic3d_Vec3ub(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    @staticmethod
    def Length():
        return _Graphic3d.Graphic3d_Vec3ub_Length()

    def __init__(self, *args):
        _Graphic3d.Graphic3d_Vec3ub_swiginit(self, _Graphic3d.new_Graphic3d_Vec3ub(*args))

    def SetValues(self, *args):
        return _Graphic3d.Graphic3d_Vec3ub_SetValues(self, *args)

    def xy(self):
        return _Graphic3d.Graphic3d_Vec3ub_xy(self)

    def yx(self):
        return _Graphic3d.Graphic3d_Vec3ub_yx(self)

    def xz(self):
        return _Graphic3d.Graphic3d_Vec3ub_xz(self)

    def zx(self):
        return _Graphic3d.Graphic3d_Vec3ub_zx(self)

    def yz(self):
        return _Graphic3d.Graphic3d_Vec3ub_yz(self)

    def zy(self):
        return _Graphic3d.Graphic3d_Vec3ub_zy(self)

    def xyz(self):
        return _Graphic3d.Graphic3d_Vec3ub_xyz(self)

    def xzy(self):
        return _Graphic3d.Graphic3d_Vec3ub_xzy(self)

    def yxz(self):
        return _Graphic3d.Graphic3d_Vec3ub_yxz(self)

    def yzx(self):
        return _Graphic3d.Graphic3d_Vec3ub_yzx(self)

    def zyx(self):
        return _Graphic3d.Graphic3d_Vec3ub_zyx(self)

    def zxy(self):
        return _Graphic3d.Graphic3d_Vec3ub_zxy(self)

    def x(self, *args):
        return _Graphic3d.Graphic3d_Vec3ub_x(self, *args)

    def r(self, *args):
        return _Graphic3d.Graphic3d_Vec3ub_r(self, *args)

    def y(self, *args):
        return _Graphic3d.Graphic3d_Vec3ub_y(self, *args)

    def g(self, *args):
        return _Graphic3d.Graphic3d_Vec3ub_g(self, *args)

    def z(self, *args):
        return _Graphic3d.Graphic3d_Vec3ub_z(self, *args)

    def b(self, *args):
        return _Graphic3d.Graphic3d_Vec3ub_b(self, *args)

    def IsEqual(self, theOther):
        return _Graphic3d.Graphic3d_Vec3ub_IsEqual(self, theOther)

    def __eq__(self, theOther):
        return _Graphic3d.Graphic3d_Vec3ub___eq__(self, theOther)

    def __ne__(self, theOther):
        return _Graphic3d.Graphic3d_Vec3ub___ne__(self, theOther)

    def GetData(self):
        return _Graphic3d.Graphic3d_Vec3ub_GetData(self)

    def ChangeData(self):
        return _Graphic3d.Graphic3d_Vec3ub_ChangeData(self)

    def __iadd__(self, theAdd):
        return _Graphic3d.Graphic3d_Vec3ub___iadd__(self, theAdd)

    def __neg__(self):
        return _Graphic3d.Graphic3d_Vec3ub___neg__(self)

    def __isub__(self, theDec):
        return _Graphic3d.Graphic3d_Vec3ub___isub__(self, theDec)

    def Multiply(self, theFactor):
        return _Graphic3d.Graphic3d_Vec3ub_Multiply(self, theFactor)

    def __imul__(self, *args):
        return _Graphic3d.Graphic3d_Vec3ub___imul__(self, *args)

    def __mul__(self, theFactor):
        return _Graphic3d.Graphic3d_Vec3ub___mul__(self, theFactor)

    def Multiplied(self, theFactor):
        return _Graphic3d.Graphic3d_Vec3ub_Multiplied(self, theFactor)

    def cwiseMin(self, theVec):
        return _Graphic3d.Graphic3d_Vec3ub_cwiseMin(self, theVec)

    def cwiseMax(self, theVec):
        return _Graphic3d.Graphic3d_Vec3ub_cwiseMax(self, theVec)

    def cwiseAbs(self):
        return _Graphic3d.Graphic3d_Vec3ub_cwiseAbs(self)

    def maxComp(self):
        return _Graphic3d.Graphic3d_Vec3ub_maxComp(self)

    def minComp(self):
        return _Graphic3d.Graphic3d_Vec3ub_minComp(self)

    def __itruediv__(self, *args):
        return _Graphic3d.Graphic3d_Vec3ub___itruediv__(self, *args)
    __idiv__ = __itruediv__



    def __truediv__(self, *args):
        return _Graphic3d.Graphic3d_Vec3ub___truediv__(self, *args)
    __div__ = __truediv__



    def Dot(self, theOther):
        return _Graphic3d.Graphic3d_Vec3ub_Dot(self, theOther)

    def Modulus(self):
        return _Graphic3d.Graphic3d_Vec3ub_Modulus(self)

    def SquareModulus(self):
        return _Graphic3d.Graphic3d_Vec3ub_SquareModulus(self)

    def Normalize(self):
        return _Graphic3d.Graphic3d_Vec3ub_Normalize(self)

    def Normalized(self):
        return _Graphic3d.Graphic3d_Vec3ub_Normalized(self)

    @staticmethod
    def Cross(theVec1, theVec2):
        return _Graphic3d.Graphic3d_Vec3ub_Cross(theVec1, theVec2)

    @staticmethod
    def GetLERP(theFrom, theTo, theT):
        return _Graphic3d.Graphic3d_Vec3ub_GetLERP(theFrom, theTo, theT)

    @staticmethod
    def DX():
        return _Graphic3d.Graphic3d_Vec3ub_DX()

    @staticmethod
    def DY():
        return _Graphic3d.Graphic3d_Vec3ub_DY()

    @staticmethod
    def DZ():
        return _Graphic3d.Graphic3d_Vec3ub_DZ()

    def DumpJson(self, theOStream, theDepth=-1):
        return _Graphic3d.Graphic3d_Vec3ub_DumpJson(self, theOStream, theDepth)
    __swig_destroy__ = _Graphic3d.delete_Graphic3d_Vec3ub

# Register Graphic3d_Vec3ub in _Graphic3d:
_Graphic3d.Graphic3d_Vec3ub_swigregister(Graphic3d_Vec3ub)
class Graphic3d_Vec4(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    @staticmethod
    def Length():
        return _Graphic3d.Graphic3d_Vec4_Length()

    def __init__(self, *args):
        _Graphic3d.Graphic3d_Vec4_swiginit(self, _Graphic3d.new_Graphic3d_Vec4(*args))

    def SetValues(self, *args):
        return _Graphic3d.Graphic3d_Vec4_SetValues(self, *args)

    def xy(self):
        return _Graphic3d.Graphic3d_Vec4_xy(self)

    def yx(self):
        return _Graphic3d.Graphic3d_Vec4_yx(self)

    def xz(self):
        return _Graphic3d.Graphic3d_Vec4_xz(self)

    def zx(self):
        return _Graphic3d.Graphic3d_Vec4_zx(self)

    def xw(self):
        return _Graphic3d.Graphic3d_Vec4_xw(self)

    def wx(self):
        return _Graphic3d.Graphic3d_Vec4_wx(self)

    def yz(self):
        return _Graphic3d.Graphic3d_Vec4_yz(self)

    def zy(self):
        return _Graphic3d.Graphic3d_Vec4_zy(self)

    def yw(self):
        return _Graphic3d.Graphic3d_Vec4_yw(self)

    def wy(self):
        return _Graphic3d.Graphic3d_Vec4_wy(self)

    def zw(self):
        return _Graphic3d.Graphic3d_Vec4_zw(self)

    def wz(self):
        return _Graphic3d.Graphic3d_Vec4_wz(self)

    def xyz(self):
        return _Graphic3d.Graphic3d_Vec4_xyz(self)

    def xzy(self):
        return _Graphic3d.Graphic3d_Vec4_xzy(self)

    def yxz(self):
        return _Graphic3d.Graphic3d_Vec4_yxz(self)

    def yzx(self):
        return _Graphic3d.Graphic3d_Vec4_yzx(self)

    def zyx(self):
        return _Graphic3d.Graphic3d_Vec4_zyx(self)

    def zxy(self):
        return _Graphic3d.Graphic3d_Vec4_zxy(self)

    def xyw(self):
        return _Graphic3d.Graphic3d_Vec4_xyw(self)

    def xwy(self):
        return _Graphic3d.Graphic3d_Vec4_xwy(self)

    def yxw(self):
        return _Graphic3d.Graphic3d_Vec4_yxw(self)

    def ywx(self):
        return _Graphic3d.Graphic3d_Vec4_ywx(self)

    def wyx(self):
        return _Graphic3d.Graphic3d_Vec4_wyx(self)

    def wxy(self):
        return _Graphic3d.Graphic3d_Vec4_wxy(self)

    def xzw(self):
        return _Graphic3d.Graphic3d_Vec4_xzw(self)

    def xwz(self):
        return _Graphic3d.Graphic3d_Vec4_xwz(self)

    def zxw(self):
        return _Graphic3d.Graphic3d_Vec4_zxw(self)

    def zwx(self):
        return _Graphic3d.Graphic3d_Vec4_zwx(self)

    def wzx(self):
        return _Graphic3d.Graphic3d_Vec4_wzx(self)

    def wxz(self):
        return _Graphic3d.Graphic3d_Vec4_wxz(self)

    def yzw(self):
        return _Graphic3d.Graphic3d_Vec4_yzw(self)

    def ywz(self):
        return _Graphic3d.Graphic3d_Vec4_ywz(self)

    def zyw(self):
        return _Graphic3d.Graphic3d_Vec4_zyw(self)

    def zwy(self):
        return _Graphic3d.Graphic3d_Vec4_zwy(self)

    def wzy(self):
        return _Graphic3d.Graphic3d_Vec4_wzy(self)

    def wyz(self):
        return _Graphic3d.Graphic3d_Vec4_wyz(self)

    def rgb(self):
        return _Graphic3d.Graphic3d_Vec4_rgb(self)

    def rbg(self):
        return _Graphic3d.Graphic3d_Vec4_rbg(self)

    def grb(self):
        return _Graphic3d.Graphic3d_Vec4_grb(self)

    def gbr(self):
        return _Graphic3d.Graphic3d_Vec4_gbr(self)

    def bgr(self):
        return _Graphic3d.Graphic3d_Vec4_bgr(self)

    def brg(self):
        return _Graphic3d.Graphic3d_Vec4_brg(self)

    def x(self, *args):
        return _Graphic3d.Graphic3d_Vec4_x(self, *args)

    def r(self, *args):
        return _Graphic3d.Graphic3d_Vec4_r(self, *args)

    def y(self, *args):
        return _Graphic3d.Graphic3d_Vec4_y(self, *args)

    def g(self, *args):
        return _Graphic3d.Graphic3d_Vec4_g(self, *args)

    def z(self, *args):
        return _Graphic3d.Graphic3d_Vec4_z(self, *args)

    def b(self, *args):
        return _Graphic3d.Graphic3d_Vec4_b(self, *args)

    def w(self, *args):
        return _Graphic3d.Graphic3d_Vec4_w(self, *args)

    def a(self, *args):
        return _Graphic3d.Graphic3d_Vec4_a(self, *args)

    def IsEqual(self, theOther):
        return _Graphic3d.Graphic3d_Vec4_IsEqual(self, theOther)

    def __eq__(self, theOther):
        return _Graphic3d.Graphic3d_Vec4___eq__(self, theOther)

    def __ne__(self, theOther):
        return _Graphic3d.Graphic3d_Vec4___ne__(self, theOther)

    def GetData(self):
        return _Graphic3d.Graphic3d_Vec4_GetData(self)

    def ChangeData(self):
        return _Graphic3d.Graphic3d_Vec4_ChangeData(self)

    def __iadd__(self, theAdd):
        return _Graphic3d.Graphic3d_Vec4___iadd__(self, theAdd)

    def __neg__(self):
        return _Graphic3d.Graphic3d_Vec4___neg__(self)

    def __isub__(self, theDec):
        return _Graphic3d.Graphic3d_Vec4___isub__(self, theDec)

    def Multiply(self, theFactor):
        return _Graphic3d.Graphic3d_Vec4_Multiply(self, theFactor)

    def __imul__(self, *args):
        return _Graphic3d.Graphic3d_Vec4___imul__(self, *args)

    def __mul__(self, theFactor):
        return _Graphic3d.Graphic3d_Vec4___mul__(self, theFactor)

    def Multiplied(self, theFactor):
        return _Graphic3d.Graphic3d_Vec4_Multiplied(self, theFactor)

    def cwiseMin(self, theVec):
        return _Graphic3d.Graphic3d_Vec4_cwiseMin(self, theVec)

    def cwiseMax(self, theVec):
        return _Graphic3d.Graphic3d_Vec4_cwiseMax(self, theVec)

    def cwiseAbs(self):
        return _Graphic3d.Graphic3d_Vec4_cwiseAbs(self)

    def maxComp(self):
        return _Graphic3d.Graphic3d_Vec4_maxComp(self)

    def minComp(self):
        return _Graphic3d.Graphic3d_Vec4_minComp(self)

    def Dot(self, theOther):
        return _Graphic3d.Graphic3d_Vec4_Dot(self, theOther)

    def __itruediv__(self, *args):
        return _Graphic3d.Graphic3d_Vec4___itruediv__(self, *args)
    __idiv__ = __itruediv__



    def __truediv__(self, *args):
        return _Graphic3d.Graphic3d_Vec4___truediv__(self, *args)
    __div__ = __truediv__



    def DumpJson(self, theOStream, theDepth=-1):
        return _Graphic3d.Graphic3d_Vec4_DumpJson(self, theOStream, theDepth)
    __swig_destroy__ = _Graphic3d.delete_Graphic3d_Vec4

# Register Graphic3d_Vec4 in _Graphic3d:
_Graphic3d.Graphic3d_Vec4_swigregister(Graphic3d_Vec4)
class Graphic3d_Vec4b(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    @staticmethod
    def Length():
        return _Graphic3d.Graphic3d_Vec4b_Length()

    def __init__(self, *args):
        _Graphic3d.Graphic3d_Vec4b_swiginit(self, _Graphic3d.new_Graphic3d_Vec4b(*args))

    def SetValues(self, *args):
        return _Graphic3d.Graphic3d_Vec4b_SetValues(self, *args)

    def xy(self):
        return _Graphic3d.Graphic3d_Vec4b_xy(self)

    def yx(self):
        return _Graphic3d.Graphic3d_Vec4b_yx(self)

    def xz(self):
        return _Graphic3d.Graphic3d_Vec4b_xz(self)

    def zx(self):
        return _Graphic3d.Graphic3d_Vec4b_zx(self)

    def xw(self):
        return _Graphic3d.Graphic3d_Vec4b_xw(self)

    def wx(self):
        return _Graphic3d.Graphic3d_Vec4b_wx(self)

    def yz(self):
        return _Graphic3d.Graphic3d_Vec4b_yz(self)

    def zy(self):
        return _Graphic3d.Graphic3d_Vec4b_zy(self)

    def yw(self):
        return _Graphic3d.Graphic3d_Vec4b_yw(self)

    def wy(self):
        return _Graphic3d.Graphic3d_Vec4b_wy(self)

    def zw(self):
        return _Graphic3d.Graphic3d_Vec4b_zw(self)

    def wz(self):
        return _Graphic3d.Graphic3d_Vec4b_wz(self)

    def xyz(self):
        return _Graphic3d.Graphic3d_Vec4b_xyz(self)

    def xzy(self):
        return _Graphic3d.Graphic3d_Vec4b_xzy(self)

    def yxz(self):
        return _Graphic3d.Graphic3d_Vec4b_yxz(self)

    def yzx(self):
        return _Graphic3d.Graphic3d_Vec4b_yzx(self)

    def zyx(self):
        return _Graphic3d.Graphic3d_Vec4b_zyx(self)

    def zxy(self):
        return _Graphic3d.Graphic3d_Vec4b_zxy(self)

    def xyw(self):
        return _Graphic3d.Graphic3d_Vec4b_xyw(self)

    def xwy(self):
        return _Graphic3d.Graphic3d_Vec4b_xwy(self)

    def yxw(self):
        return _Graphic3d.Graphic3d_Vec4b_yxw(self)

    def ywx(self):
        return _Graphic3d.Graphic3d_Vec4b_ywx(self)

    def wyx(self):
        return _Graphic3d.Graphic3d_Vec4b_wyx(self)

    def wxy(self):
        return _Graphic3d.Graphic3d_Vec4b_wxy(self)

    def xzw(self):
        return _Graphic3d.Graphic3d_Vec4b_xzw(self)

    def xwz(self):
        return _Graphic3d.Graphic3d_Vec4b_xwz(self)

    def zxw(self):
        return _Graphic3d.Graphic3d_Vec4b_zxw(self)

    def zwx(self):
        return _Graphic3d.Graphic3d_Vec4b_zwx(self)

    def wzx(self):
        return _Graphic3d.Graphic3d_Vec4b_wzx(self)

    def wxz(self):
        return _Graphic3d.Graphic3d_Vec4b_wxz(self)

    def yzw(self):
        return _Graphic3d.Graphic3d_Vec4b_yzw(self)

    def ywz(self):
        return _Graphic3d.Graphic3d_Vec4b_ywz(self)

    def zyw(self):
        return _Graphic3d.Graphic3d_Vec4b_zyw(self)

    def zwy(self):
        return _Graphic3d.Graphic3d_Vec4b_zwy(self)

    def wzy(self):
        return _Graphic3d.Graphic3d_Vec4b_wzy(self)

    def wyz(self):
        return _Graphic3d.Graphic3d_Vec4b_wyz(self)

    def rgb(self):
        return _Graphic3d.Graphic3d_Vec4b_rgb(self)

    def rbg(self):
        return _Graphic3d.Graphic3d_Vec4b_rbg(self)

    def grb(self):
        return _Graphic3d.Graphic3d_Vec4b_grb(self)

    def gbr(self):
        return _Graphic3d.Graphic3d_Vec4b_gbr(self)

    def bgr(self):
        return _Graphic3d.Graphic3d_Vec4b_bgr(self)

    def brg(self):
        return _Graphic3d.Graphic3d_Vec4b_brg(self)

    def x(self, *args):
        return _Graphic3d.Graphic3d_Vec4b_x(self, *args)

    def r(self, *args):
        return _Graphic3d.Graphic3d_Vec4b_r(self, *args)

    def y(self, *args):
        return _Graphic3d.Graphic3d_Vec4b_y(self, *args)

    def g(self, *args):
        return _Graphic3d.Graphic3d_Vec4b_g(self, *args)

    def z(self, *args):
        return _Graphic3d.Graphic3d_Vec4b_z(self, *args)

    def b(self, *args):
        return _Graphic3d.Graphic3d_Vec4b_b(self, *args)

    def w(self, *args):
        return _Graphic3d.Graphic3d_Vec4b_w(self, *args)

    def a(self, *args):
        return _Graphic3d.Graphic3d_Vec4b_a(self, *args)

    def IsEqual(self, theOther):
        return _Graphic3d.Graphic3d_Vec4b_IsEqual(self, theOther)

    def __eq__(self, theOther):
        return _Graphic3d.Graphic3d_Vec4b___eq__(self, theOther)

    def __ne__(self, theOther):
        return _Graphic3d.Graphic3d_Vec4b___ne__(self, theOther)

    def GetData(self):
        return _Graphic3d.Graphic3d_Vec4b_GetData(self)

    def ChangeData(self):
        return _Graphic3d.Graphic3d_Vec4b_ChangeData(self)

    def __iadd__(self, theAdd):
        return _Graphic3d.Graphic3d_Vec4b___iadd__(self, theAdd)

    def __neg__(self):
        return _Graphic3d.Graphic3d_Vec4b___neg__(self)

    def __isub__(self, theDec):
        return _Graphic3d.Graphic3d_Vec4b___isub__(self, theDec)

    def Multiply(self, theFactor):
        return _Graphic3d.Graphic3d_Vec4b_Multiply(self, theFactor)

    def __imul__(self, *args):
        return _Graphic3d.Graphic3d_Vec4b___imul__(self, *args)

    def __mul__(self, theFactor):
        return _Graphic3d.Graphic3d_Vec4b___mul__(self, theFactor)

    def Multiplied(self, theFactor):
        return _Graphic3d.Graphic3d_Vec4b_Multiplied(self, theFactor)

    def cwiseMin(self, theVec):
        return _Graphic3d.Graphic3d_Vec4b_cwiseMin(self, theVec)

    def cwiseMax(self, theVec):
        return _Graphic3d.Graphic3d_Vec4b_cwiseMax(self, theVec)

    def cwiseAbs(self):
        return _Graphic3d.Graphic3d_Vec4b_cwiseAbs(self)

    def maxComp(self):
        return _Graphic3d.Graphic3d_Vec4b_maxComp(self)

    def minComp(self):
        return _Graphic3d.Graphic3d_Vec4b_minComp(self)

    def Dot(self, theOther):
        return _Graphic3d.Graphic3d_Vec4b_Dot(self, theOther)

    def __itruediv__(self, *args):
        return _Graphic3d.Graphic3d_Vec4b___itruediv__(self, *args)
    __idiv__ = __itruediv__



    def __truediv__(self, *args):
        return _Graphic3d.Graphic3d_Vec4b___truediv__(self, *args)
    __div__ = __truediv__



    def DumpJson(self, theOStream, theDepth=-1):
        return _Graphic3d.Graphic3d_Vec4b_DumpJson(self, theOStream, theDepth)
    __swig_destroy__ = _Graphic3d.delete_Graphic3d_Vec4b

# Register Graphic3d_Vec4b in _Graphic3d:
_Graphic3d.Graphic3d_Vec4b_swigregister(Graphic3d_Vec4b)
class Graphic3d_Vec4d(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    @staticmethod
    def Length():
        return _Graphic3d.Graphic3d_Vec4d_Length()

    def __init__(self, *args):
        _Graphic3d.Graphic3d_Vec4d_swiginit(self, _Graphic3d.new_Graphic3d_Vec4d(*args))

    def SetValues(self, *args):
        return _Graphic3d.Graphic3d_Vec4d_SetValues(self, *args)

    def xy(self):
        return _Graphic3d.Graphic3d_Vec4d_xy(self)

    def yx(self):
        return _Graphic3d.Graphic3d_Vec4d_yx(self)

    def xz(self):
        return _Graphic3d.Graphic3d_Vec4d_xz(self)

    def zx(self):
        return _Graphic3d.Graphic3d_Vec4d_zx(self)

    def xw(self):
        return _Graphic3d.Graphic3d_Vec4d_xw(self)

    def wx(self):
        return _Graphic3d.Graphic3d_Vec4d_wx(self)

    def yz(self):
        return _Graphic3d.Graphic3d_Vec4d_yz(self)

    def zy(self):
        return _Graphic3d.Graphic3d_Vec4d_zy(self)

    def yw(self):
        return _Graphic3d.Graphic3d_Vec4d_yw(self)

    def wy(self):
        return _Graphic3d.Graphic3d_Vec4d_wy(self)

    def zw(self):
        return _Graphic3d.Graphic3d_Vec4d_zw(self)

    def wz(self):
        return _Graphic3d.Graphic3d_Vec4d_wz(self)

    def xyz(self):
        return _Graphic3d.Graphic3d_Vec4d_xyz(self)

    def xzy(self):
        return _Graphic3d.Graphic3d_Vec4d_xzy(self)

    def yxz(self):
        return _Graphic3d.Graphic3d_Vec4d_yxz(self)

    def yzx(self):
        return _Graphic3d.Graphic3d_Vec4d_yzx(self)

    def zyx(self):
        return _Graphic3d.Graphic3d_Vec4d_zyx(self)

    def zxy(self):
        return _Graphic3d.Graphic3d_Vec4d_zxy(self)

    def xyw(self):
        return _Graphic3d.Graphic3d_Vec4d_xyw(self)

    def xwy(self):
        return _Graphic3d.Graphic3d_Vec4d_xwy(self)

    def yxw(self):
        return _Graphic3d.Graphic3d_Vec4d_yxw(self)

    def ywx(self):
        return _Graphic3d.Graphic3d_Vec4d_ywx(self)

    def wyx(self):
        return _Graphic3d.Graphic3d_Vec4d_wyx(self)

    def wxy(self):
        return _Graphic3d.Graphic3d_Vec4d_wxy(self)

    def xzw(self):
        return _Graphic3d.Graphic3d_Vec4d_xzw(self)

    def xwz(self):
        return _Graphic3d.Graphic3d_Vec4d_xwz(self)

    def zxw(self):
        return _Graphic3d.Graphic3d_Vec4d_zxw(self)

    def zwx(self):
        return _Graphic3d.Graphic3d_Vec4d_zwx(self)

    def wzx(self):
        return _Graphic3d.Graphic3d_Vec4d_wzx(self)

    def wxz(self):
        return _Graphic3d.Graphic3d_Vec4d_wxz(self)

    def yzw(self):
        return _Graphic3d.Graphic3d_Vec4d_yzw(self)

    def ywz(self):
        return _Graphic3d.Graphic3d_Vec4d_ywz(self)

    def zyw(self):
        return _Graphic3d.Graphic3d_Vec4d_zyw(self)

    def zwy(self):
        return _Graphic3d.Graphic3d_Vec4d_zwy(self)

    def wzy(self):
        return _Graphic3d.Graphic3d_Vec4d_wzy(self)

    def wyz(self):
        return _Graphic3d.Graphic3d_Vec4d_wyz(self)

    def rgb(self):
        return _Graphic3d.Graphic3d_Vec4d_rgb(self)

    def rbg(self):
        return _Graphic3d.Graphic3d_Vec4d_rbg(self)

    def grb(self):
        return _Graphic3d.Graphic3d_Vec4d_grb(self)

    def gbr(self):
        return _Graphic3d.Graphic3d_Vec4d_gbr(self)

    def bgr(self):
        return _Graphic3d.Graphic3d_Vec4d_bgr(self)

    def brg(self):
        return _Graphic3d.Graphic3d_Vec4d_brg(self)

    def x(self, *args):
        return _Graphic3d.Graphic3d_Vec4d_x(self, *args)

    def r(self, *args):
        return _Graphic3d.Graphic3d_Vec4d_r(self, *args)

    def y(self, *args):
        return _Graphic3d.Graphic3d_Vec4d_y(self, *args)

    def g(self, *args):
        return _Graphic3d.Graphic3d_Vec4d_g(self, *args)

    def z(self, *args):
        return _Graphic3d.Graphic3d_Vec4d_z(self, *args)

    def b(self, *args):
        return _Graphic3d.Graphic3d_Vec4d_b(self, *args)

    def w(self, *args):
        return _Graphic3d.Graphic3d_Vec4d_w(self, *args)

    def a(self, *args):
        return _Graphic3d.Graphic3d_Vec4d_a(self, *args)

    def IsEqual(self, theOther):
        return _Graphic3d.Graphic3d_Vec4d_IsEqual(self, theOther)

    def __eq__(self, theOther):
        return _Graphic3d.Graphic3d_Vec4d___eq__(self, theOther)

    def __ne__(self, theOther):
        return _Graphic3d.Graphic3d_Vec4d___ne__(self, theOther)

    def GetData(self):
        return _Graphic3d.Graphic3d_Vec4d_GetData(self)

    def ChangeData(self):
        return _Graphic3d.Graphic3d_Vec4d_ChangeData(self)

    def __iadd__(self, theAdd):
        return _Graphic3d.Graphic3d_Vec4d___iadd__(self, theAdd)

    def __neg__(self):
        return _Graphic3d.Graphic3d_Vec4d___neg__(self)

    def __isub__(self, theDec):
        return _Graphic3d.Graphic3d_Vec4d___isub__(self, theDec)

    def Multiply(self, theFactor):
        return _Graphic3d.Graphic3d_Vec4d_Multiply(self, theFactor)

    def __imul__(self, *args):
        return _Graphic3d.Graphic3d_Vec4d___imul__(self, *args)

    def __mul__(self, theFactor):
        return _Graphic3d.Graphic3d_Vec4d___mul__(self, theFactor)

    def Multiplied(self, theFactor):
        return _Graphic3d.Graphic3d_Vec4d_Multiplied(self, theFactor)

    def cwiseMin(self, theVec):
        return _Graphic3d.Graphic3d_Vec4d_cwiseMin(self, theVec)

    def cwiseMax(self, theVec):
        return _Graphic3d.Graphic3d_Vec4d_cwiseMax(self, theVec)

    def cwiseAbs(self):
        return _Graphic3d.Graphic3d_Vec4d_cwiseAbs(self)

    def maxComp(self):
        return _Graphic3d.Graphic3d_Vec4d_maxComp(self)

    def minComp(self):
        return _Graphic3d.Graphic3d_Vec4d_minComp(self)

    def Dot(self, theOther):
        return _Graphic3d.Graphic3d_Vec4d_Dot(self, theOther)

    def __itruediv__(self, *args):
        return _Graphic3d.Graphic3d_Vec4d___itruediv__(self, *args)
    __idiv__ = __itruediv__



    def __truediv__(self, *args):
        return _Graphic3d.Graphic3d_Vec4d___truediv__(self, *args)
    __div__ = __truediv__



    def DumpJson(self, theOStream, theDepth=-1):
        return _Graphic3d.Graphic3d_Vec4d_DumpJson(self, theOStream, theDepth)
    __swig_destroy__ = _Graphic3d.delete_Graphic3d_Vec4d

# Register Graphic3d_Vec4d in _Graphic3d:
_Graphic3d.Graphic3d_Vec4d_swigregister(Graphic3d_Vec4d)
class Graphic3d_Vec4i(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    @staticmethod
    def Length():
        return _Graphic3d.Graphic3d_Vec4i_Length()

    def __init__(self, *args):
        _Graphic3d.Graphic3d_Vec4i_swiginit(self, _Graphic3d.new_Graphic3d_Vec4i(*args))

    def SetValues(self, *args):
        return _Graphic3d.Graphic3d_Vec4i_SetValues(self, *args)

    def xy(self):
        return _Graphic3d.Graphic3d_Vec4i_xy(self)

    def yx(self):
        return _Graphic3d.Graphic3d_Vec4i_yx(self)

    def xz(self):
        return _Graphic3d.Graphic3d_Vec4i_xz(self)

    def zx(self):
        return _Graphic3d.Graphic3d_Vec4i_zx(self)

    def xw(self):
        return _Graphic3d.Graphic3d_Vec4i_xw(self)

    def wx(self):
        return _Graphic3d.Graphic3d_Vec4i_wx(self)

    def yz(self):
        return _Graphic3d.Graphic3d_Vec4i_yz(self)

    def zy(self):
        return _Graphic3d.Graphic3d_Vec4i_zy(self)

    def yw(self):
        return _Graphic3d.Graphic3d_Vec4i_yw(self)

    def wy(self):
        return _Graphic3d.Graphic3d_Vec4i_wy(self)

    def zw(self):
        return _Graphic3d.Graphic3d_Vec4i_zw(self)

    def wz(self):
        return _Graphic3d.Graphic3d_Vec4i_wz(self)

    def xyz(self):
        return _Graphic3d.Graphic3d_Vec4i_xyz(self)

    def xzy(self):
        return _Graphic3d.Graphic3d_Vec4i_xzy(self)

    def yxz(self):
        return _Graphic3d.Graphic3d_Vec4i_yxz(self)

    def yzx(self):
        return _Graphic3d.Graphic3d_Vec4i_yzx(self)

    def zyx(self):
        return _Graphic3d.Graphic3d_Vec4i_zyx(self)

    def zxy(self):
        return _Graphic3d.Graphic3d_Vec4i_zxy(self)

    def xyw(self):
        return _Graphic3d.Graphic3d_Vec4i_xyw(self)

    def xwy(self):
        return _Graphic3d.Graphic3d_Vec4i_xwy(self)

    def yxw(self):
        return _Graphic3d.Graphic3d_Vec4i_yxw(self)

    def ywx(self):
        return _Graphic3d.Graphic3d_Vec4i_ywx(self)

    def wyx(self):
        return _Graphic3d.Graphic3d_Vec4i_wyx(self)

    def wxy(self):
        return _Graphic3d.Graphic3d_Vec4i_wxy(self)

    def xzw(self):
        return _Graphic3d.Graphic3d_Vec4i_xzw(self)

    def xwz(self):
        return _Graphic3d.Graphic3d_Vec4i_xwz(self)

    def zxw(self):
        return _Graphic3d.Graphic3d_Vec4i_zxw(self)

    def zwx(self):
        return _Graphic3d.Graphic3d_Vec4i_zwx(self)

    def wzx(self):
        return _Graphic3d.Graphic3d_Vec4i_wzx(self)

    def wxz(self):
        return _Graphic3d.Graphic3d_Vec4i_wxz(self)

    def yzw(self):
        return _Graphic3d.Graphic3d_Vec4i_yzw(self)

    def ywz(self):
        return _Graphic3d.Graphic3d_Vec4i_ywz(self)

    def zyw(self):
        return _Graphic3d.Graphic3d_Vec4i_zyw(self)

    def zwy(self):
        return _Graphic3d.Graphic3d_Vec4i_zwy(self)

    def wzy(self):
        return _Graphic3d.Graphic3d_Vec4i_wzy(self)

    def wyz(self):
        return _Graphic3d.Graphic3d_Vec4i_wyz(self)

    def rgb(self):
        return _Graphic3d.Graphic3d_Vec4i_rgb(self)

    def rbg(self):
        return _Graphic3d.Graphic3d_Vec4i_rbg(self)

    def grb(self):
        return _Graphic3d.Graphic3d_Vec4i_grb(self)

    def gbr(self):
        return _Graphic3d.Graphic3d_Vec4i_gbr(self)

    def bgr(self):
        return _Graphic3d.Graphic3d_Vec4i_bgr(self)

    def brg(self):
        return _Graphic3d.Graphic3d_Vec4i_brg(self)

    def x(self, *args):
        return _Graphic3d.Graphic3d_Vec4i_x(self, *args)

    def r(self, *args):
        return _Graphic3d.Graphic3d_Vec4i_r(self, *args)

    def y(self, *args):
        return _Graphic3d.Graphic3d_Vec4i_y(self, *args)

    def g(self, *args):
        return _Graphic3d.Graphic3d_Vec4i_g(self, *args)

    def z(self, *args):
        return _Graphic3d.Graphic3d_Vec4i_z(self, *args)

    def b(self, *args):
        return _Graphic3d.Graphic3d_Vec4i_b(self, *args)

    def w(self, *args):
        return _Graphic3d.Graphic3d_Vec4i_w(self, *args)

    def a(self, *args):
        return _Graphic3d.Graphic3d_Vec4i_a(self, *args)

    def IsEqual(self, theOther):
        return _Graphic3d.Graphic3d_Vec4i_IsEqual(self, theOther)

    def __eq__(self, theOther):
        return _Graphic3d.Graphic3d_Vec4i___eq__(self, theOther)

    def __ne__(self, theOther):
        return _Graphic3d.Graphic3d_Vec4i___ne__(self, theOther)

    def GetData(self):
        return _Graphic3d.Graphic3d_Vec4i_GetData(self)

    def ChangeData(self):
        return _Graphic3d.Graphic3d_Vec4i_ChangeData(self)

    def __iadd__(self, theAdd):
        return _Graphic3d.Graphic3d_Vec4i___iadd__(self, theAdd)

    def __neg__(self):
        return _Graphic3d.Graphic3d_Vec4i___neg__(self)

    def __isub__(self, theDec):
        return _Graphic3d.Graphic3d_Vec4i___isub__(self, theDec)

    def Multiply(self, theFactor):
        return _Graphic3d.Graphic3d_Vec4i_Multiply(self, theFactor)

    def __imul__(self, *args):
        return _Graphic3d.Graphic3d_Vec4i___imul__(self, *args)

    def __mul__(self, theFactor):
        return _Graphic3d.Graphic3d_Vec4i___mul__(self, theFactor)

    def Multiplied(self, theFactor):
        return _Graphic3d.Graphic3d_Vec4i_Multiplied(self, theFactor)

    def cwiseMin(self, theVec):
        return _Graphic3d.Graphic3d_Vec4i_cwiseMin(self, theVec)

    def cwiseMax(self, theVec):
        return _Graphic3d.Graphic3d_Vec4i_cwiseMax(self, theVec)

    def cwiseAbs(self):
        return _Graphic3d.Graphic3d_Vec4i_cwiseAbs(self)

    def maxComp(self):
        return _Graphic3d.Graphic3d_Vec4i_maxComp(self)

    def minComp(self):
        return _Graphic3d.Graphic3d_Vec4i_minComp(self)

    def Dot(self, theOther):
        return _Graphic3d.Graphic3d_Vec4i_Dot(self, theOther)

    def __itruediv__(self, *args):
        return _Graphic3d.Graphic3d_Vec4i___itruediv__(self, *args)
    __idiv__ = __itruediv__



    def __truediv__(self, *args):
        return _Graphic3d.Graphic3d_Vec4i___truediv__(self, *args)
    __div__ = __truediv__



    def DumpJson(self, theOStream, theDepth=-1):
        return _Graphic3d.Graphic3d_Vec4i_DumpJson(self, theOStream, theDepth)
    __swig_destroy__ = _Graphic3d.delete_Graphic3d_Vec4i

# Register Graphic3d_Vec4i in _Graphic3d:
_Graphic3d.Graphic3d_Vec4i_swigregister(Graphic3d_Vec4i)
class Graphic3d_Vec4ub(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    @staticmethod
    def Length():
        return _Graphic3d.Graphic3d_Vec4ub_Length()

    def __init__(self, *args):
        _Graphic3d.Graphic3d_Vec4ub_swiginit(self, _Graphic3d.new_Graphic3d_Vec4ub(*args))

    def SetValues(self, *args):
        return _Graphic3d.Graphic3d_Vec4ub_SetValues(self, *args)

    def xy(self):
        return _Graphic3d.Graphic3d_Vec4ub_xy(self)

    def yx(self):
        return _Graphic3d.Graphic3d_Vec4ub_yx(self)

    def xz(self):
        return _Graphic3d.Graphic3d_Vec4ub_xz(self)

    def zx(self):
        return _Graphic3d.Graphic3d_Vec4ub_zx(self)

    def xw(self):
        return _Graphic3d.Graphic3d_Vec4ub_xw(self)

    def wx(self):
        return _Graphic3d.Graphic3d_Vec4ub_wx(self)

    def yz(self):
        return _Graphic3d.Graphic3d_Vec4ub_yz(self)

    def zy(self):
        return _Graphic3d.Graphic3d_Vec4ub_zy(self)

    def yw(self):
        return _Graphic3d.Graphic3d_Vec4ub_yw(self)

    def wy(self):
        return _Graphic3d.Graphic3d_Vec4ub_wy(self)

    def zw(self):
        return _Graphic3d.Graphic3d_Vec4ub_zw(self)

    def wz(self):
        return _Graphic3d.Graphic3d_Vec4ub_wz(self)

    def xyz(self):
        return _Graphic3d.Graphic3d_Vec4ub_xyz(self)

    def xzy(self):
        return _Graphic3d.Graphic3d_Vec4ub_xzy(self)

    def yxz(self):
        return _Graphic3d.Graphic3d_Vec4ub_yxz(self)

    def yzx(self):
        return _Graphic3d.Graphic3d_Vec4ub_yzx(self)

    def zyx(self):
        return _Graphic3d.Graphic3d_Vec4ub_zyx(self)

    def zxy(self):
        return _Graphic3d.Graphic3d_Vec4ub_zxy(self)

    def xyw(self):
        return _Graphic3d.Graphic3d_Vec4ub_xyw(self)

    def xwy(self):
        return _Graphic3d.Graphic3d_Vec4ub_xwy(self)

    def yxw(self):
        return _Graphic3d.Graphic3d_Vec4ub_yxw(self)

    def ywx(self):
        return _Graphic3d.Graphic3d_Vec4ub_ywx(self)

    def wyx(self):
        return _Graphic3d.Graphic3d_Vec4ub_wyx(self)

    def wxy(self):
        return _Graphic3d.Graphic3d_Vec4ub_wxy(self)

    def xzw(self):
        return _Graphic3d.Graphic3d_Vec4ub_xzw(self)

    def xwz(self):
        return _Graphic3d.Graphic3d_Vec4ub_xwz(self)

    def zxw(self):
        return _Graphic3d.Graphic3d_Vec4ub_zxw(self)

    def zwx(self):
        return _Graphic3d.Graphic3d_Vec4ub_zwx(self)

    def wzx(self):
        return _Graphic3d.Graphic3d_Vec4ub_wzx(self)

    def wxz(self):
        return _Graphic3d.Graphic3d_Vec4ub_wxz(self)

    def yzw(self):
        return _Graphic3d.Graphic3d_Vec4ub_yzw(self)

    def ywz(self):
        return _Graphic3d.Graphic3d_Vec4ub_ywz(self)

    def zyw(self):
        return _Graphic3d.Graphic3d_Vec4ub_zyw(self)

    def zwy(self):
        return _Graphic3d.Graphic3d_Vec4ub_zwy(self)

    def wzy(self):
        return _Graphic3d.Graphic3d_Vec4ub_wzy(self)

    def wyz(self):
        return _Graphic3d.Graphic3d_Vec4ub_wyz(self)

    def rgb(self):
        return _Graphic3d.Graphic3d_Vec4ub_rgb(self)

    def rbg(self):
        return _Graphic3d.Graphic3d_Vec4ub_rbg(self)

    def grb(self):
        return _Graphic3d.Graphic3d_Vec4ub_grb(self)

    def gbr(self):
        return _Graphic3d.Graphic3d_Vec4ub_gbr(self)

    def bgr(self):
        return _Graphic3d.Graphic3d_Vec4ub_bgr(self)

    def brg(self):
        return _Graphic3d.Graphic3d_Vec4ub_brg(self)

    def x(self, *args):
        return _Graphic3d.Graphic3d_Vec4ub_x(self, *args)

    def r(self, *args):
        return _Graphic3d.Graphic3d_Vec4ub_r(self, *args)

    def y(self, *args):
        return _Graphic3d.Graphic3d_Vec4ub_y(self, *args)

    def g(self, *args):
        return _Graphic3d.Graphic3d_Vec4ub_g(self, *args)

    def z(self, *args):
        return _Graphic3d.Graphic3d_Vec4ub_z(self, *args)

    def b(self, *args):
        return _Graphic3d.Graphic3d_Vec4ub_b(self, *args)

    def w(self, *args):
        return _Graphic3d.Graphic3d_Vec4ub_w(self, *args)

    def a(self, *args):
        return _Graphic3d.Graphic3d_Vec4ub_a(self, *args)

    def IsEqual(self, theOther):
        return _Graphic3d.Graphic3d_Vec4ub_IsEqual(self, theOther)

    def __eq__(self, theOther):
        return _Graphic3d.Graphic3d_Vec4ub___eq__(self, theOther)

    def __ne__(self, theOther):
        return _Graphic3d.Graphic3d_Vec4ub___ne__(self, theOther)

    def GetData(self):
        return _Graphic3d.Graphic3d_Vec4ub_GetData(self)

    def ChangeData(self):
        return _Graphic3d.Graphic3d_Vec4ub_ChangeData(self)

    def __iadd__(self, theAdd):
        return _Graphic3d.Graphic3d_Vec4ub___iadd__(self, theAdd)

    def __neg__(self):
        return _Graphic3d.Graphic3d_Vec4ub___neg__(self)

    def __isub__(self, theDec):
        return _Graphic3d.Graphic3d_Vec4ub___isub__(self, theDec)

    def Multiply(self, theFactor):
        return _Graphic3d.Graphic3d_Vec4ub_Multiply(self, theFactor)

    def __imul__(self, *args):
        return _Graphic3d.Graphic3d_Vec4ub___imul__(self, *args)

    def __mul__(self, theFactor):
        return _Graphic3d.Graphic3d_Vec4ub___mul__(self, theFactor)

    def Multiplied(self, theFactor):
        return _Graphic3d.Graphic3d_Vec4ub_Multiplied(self, theFactor)

    def cwiseMin(self, theVec):
        return _Graphic3d.Graphic3d_Vec4ub_cwiseMin(self, theVec)

    def cwiseMax(self, theVec):
        return _Graphic3d.Graphic3d_Vec4ub_cwiseMax(self, theVec)

    def cwiseAbs(self):
        return _Graphic3d.Graphic3d_Vec4ub_cwiseAbs(self)

    def maxComp(self):
        return _Graphic3d.Graphic3d_Vec4ub_maxComp(self)

    def minComp(self):
        return _Graphic3d.Graphic3d_Vec4ub_minComp(self)

    def Dot(self, theOther):
        return _Graphic3d.Graphic3d_Vec4ub_Dot(self, theOther)

    def __itruediv__(self, *args):
        return _Graphic3d.Graphic3d_Vec4ub___itruediv__(self, *args)
    __idiv__ = __itruediv__



    def __truediv__(self, *args):
        return _Graphic3d.Graphic3d_Vec4ub___truediv__(self, *args)
    __div__ = __truediv__



    def DumpJson(self, theOStream, theDepth=-1):
        return _Graphic3d.Graphic3d_Vec4ub_DumpJson(self, theOStream, theDepth)
    __swig_destroy__ = _Graphic3d.delete_Graphic3d_Vec4ub

# Register Graphic3d_Vec4ub in _Graphic3d:
_Graphic3d.Graphic3d_Vec4ub_swigregister(Graphic3d_Vec4ub)
class Graphic3d_ArrayOfPrimitives(OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

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

    def AddBound(self, *args):
        r"""

        Parameters
        ----------
        theEdgeNumber: int

        Return
        -------
        int

        Description
        -----------
        Adds a bound of length theEdgeNumber in the bound array 
        Return: the actual bounds number.

        Parameters
        ----------
        theEdgeNumber: int
        theBColor: Quantity_Color

        Return
        -------
        int

        Description
        -----------
        Adds a bound of length theEdgeNumber and bound color theBColor in the bound array. Warning: theBColor is ignored when the hasBColors constructor parameter is False 
        Return: the actual bounds number.

        Parameters
        ----------
        theEdgeNumber: int
        theR: float
        theG: float
        theB: float

        Return
        -------
        int

        Description
        -----------
        Adds a bound of length theEdgeNumber and bound color coordinates in the bound array. Warning: <theR,theG,theB> are ignored when the hasBColors constructor parameter is False 
        Return: the actual bounds number.

        """
        return _Graphic3d.Graphic3d_ArrayOfPrimitives_AddBound(self, *args)

    def AddEdge(self, *args):
        r"""

        Parameters
        ----------
        theVertexIndex: int

        Return
        -------
        int

        Description
        -----------
        Adds an edge in the range [1,VertexNumber()] in the array. 
        Return: the actual edges number.

        """
        return _Graphic3d.Graphic3d_ArrayOfPrimitives_AddEdge(self, *args)

    def AddEdges(self, *args):
        r"""

        Parameters
        ----------
        theVertexIndex1: int
        theVertexIndex2: int

        Return
        -------
        int

        Description
        -----------
        Convenience method, adds two vertex indices (a segment) in the range [1,VertexNumber()] in the array. 
        Return: the actual edges number.

        Parameters
        ----------
        theVertexIndex1: int
        theVertexIndex2: int
        theVertexIndex3: int

        Return
        -------
        int

        Description
        -----------
        Convenience method, adds three vertex indices (a triangle) in the range [1,VertexNumber()] in the array. 
        Return: the actual edges number.

        Parameters
        ----------
        theVertexIndex1: int
        theVertexIndex2: int
        theVertexIndex3: int
        theVertexIndex4: int

        Return
        -------
        int

        Description
        -----------
        Convenience method, adds four vertex indices (a quad) in the range [1,VertexNumber()] in the array. 
        Return: the actual edges number.

        """
        return _Graphic3d.Graphic3d_ArrayOfPrimitives_AddEdges(self, *args)

    def AddPolylineEdges(self, *args):
        r"""

        Parameters
        ----------
        theVertexLower: int
        theVertexUpper: int
        theToClose: bool

        Return
        -------
        None

        Description
        -----------
        Add line strip (polyline) into indexed segments array. N-1 segments are added from N input nodes (or N with closed flag). Raises exception if array is not of type Graphic3d_TOPA_SEGMENTS. 
        Input parameter: theVertexLower index of first node defining line strip fun (center) 
        Input parameter: theVertexUpper index of last node defining triangle fun 
        Input parameter: theToClose close triangle fan (connect first and last points).

        """
        return _Graphic3d.Graphic3d_ArrayOfPrimitives_AddPolylineEdges(self, *args)

    def AddQuadEdges(self, *args):
        r"""

        Parameters
        ----------
        theVertexIndex1: int
        theVertexIndex2: int
        theVertexIndex3: int
        theVertexIndex4: int

        Return
        -------
        int

        Description
        -----------
        Convenience method, adds four vertex indices (a quad) in the range [1,VertexNumber()] in the array of quads. Raises exception if array is not of type Graphic3d_TOPA_QUADRANGLES. 
        Return: the actual edges number.

        """
        return _Graphic3d.Graphic3d_ArrayOfPrimitives_AddQuadEdges(self, *args)

    def AddQuadTriangleEdges(self, *args):
        r"""

        Parameters
        ----------
        theVertexIndex1: int
        theVertexIndex2: int
        theVertexIndex3: int
        theVertexIndex4: int

        Return
        -------
        int

        Description
        -----------
        Convenience method, adds quad indices in the range [1,VertexNumber()] into array or triangles as two triangles. Raises exception if array is not of type Graphic3d_TOPA_TRIANGLES. 
        Return: the actual edges number.

        Parameters
        ----------
        theIndexes: Graphic3d_Vec4i

        Return
        -------
        int

        Description
        -----------
        Convenience method, adds quad indices in the range [1,VertexNumber()] into array or triangles as two triangles. Raises exception if array is not of type Graphic3d_TOPA_TRIANGLES. 
        Return: the actual edges number.

        """
        return _Graphic3d.Graphic3d_ArrayOfPrimitives_AddQuadTriangleEdges(self, *args)

    def AddSegmentEdges(self, *args):
        r"""

        Parameters
        ----------
        theVertexIndex1: int
        theVertexIndex2: int

        Return
        -------
        int

        Description
        -----------
        Convenience method, adds two vertex indices (a segment) in the range [1,VertexNumber()] in the array of segments (Graphic3d_TOPA_SEGMENTS). Raises exception if array is not of type Graphic3d_TOPA_SEGMENTS. 
        Return: the actual edges number.

        """
        return _Graphic3d.Graphic3d_ArrayOfPrimitives_AddSegmentEdges(self, *args)

    def AddTriangleEdges(self, *args):
        r"""

        Parameters
        ----------
        theVertexIndex1: int
        theVertexIndex2: int
        theVertexIndex3: int

        Return
        -------
        int

        Description
        -----------
        Convenience method, adds three vertex indices of triangle in the range [1,VertexNumber()] in the array of triangles. Raises exception if array is not of type Graphic3d_TOPA_TRIANGLES. 
        Return: the actual edges number.

        Parameters
        ----------
        theIndexes: Graphic3d_Vec3i

        Return
        -------
        int

        Description
        -----------
        Convenience method, adds three vertex indices of triangle in the range [1,VertexNumber()] in the array of triangles. Raises exception if array is not of type Graphic3d_TOPA_TRIANGLES. 
        Return: the actual edges number.

        Parameters
        ----------
        theIndexes: Graphic3d_Vec4i

        Return
        -------
        int

        Description
        -----------
        Convenience method, adds three vertex indices (4th component is ignored) of triangle in the range [1,VertexNumber()] in the array of triangles. Raises exception if array is not of type Graphic3d_TOPA_TRIANGLES. 
        Return: the actual edges number.

        """
        return _Graphic3d.Graphic3d_ArrayOfPrimitives_AddTriangleEdges(self, *args)

    def AddTriangleFanEdges(self, *args):
        r"""

        Parameters
        ----------
        theVertexLower: int
        theVertexUpper: int
        theToClose: bool

        Return
        -------
        None

        Description
        -----------
        Add triangle fan into indexed triangulation array. N-2 triangles are added from N input nodes (or N-1 with closed flag). Raises exception if array is not of type Graphic3d_TOPA_TRIANGLES. 
        Input parameter: theVertexLower index of first node defining triangle fun (center) 
        Input parameter: theVertexUpper index of last node defining triangle fun 
        Input parameter: theToClose close triangle fan (connect first and last points).

        """
        return _Graphic3d.Graphic3d_ArrayOfPrimitives_AddTriangleFanEdges(self, *args)

    def AddTriangleStripEdges(self, *args):
        r"""

        Parameters
        ----------
        theVertexLower: int
        theVertexUpper: int

        Return
        -------
        None

        Description
        -----------
        Add triangle strip into indexed triangulation array. N-2 triangles are added from N input nodes. Raises exception if array is not of type Graphic3d_TOPA_TRIANGLES. 
        Input parameter: theVertexLower index of first node defining triangle strip 
        Input parameter: theVertexUpper index of last node defining triangle strip.

        """
        return _Graphic3d.Graphic3d_ArrayOfPrimitives_AddTriangleStripEdges(self, *args)

    def AddVertex(self, *args):
        r"""

        Parameters
        ----------
        theVertex: gp_Pnt

        Return
        -------
        int

        Description
        -----------
        Adds a vertice in the array. 
        Return: the actual vertex number.

        Parameters
        ----------
        theVertex: Graphic3d_Vec3

        Return
        -------
        int

        Description
        -----------
        Adds a vertice in the array. 
        Return: the actual vertex number.

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

        Return
        -------
        int

        Description
        -----------
        Adds a vertice in the array. 
        Return: the actual vertex number.

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

        Return
        -------
        int

        Description
        -----------
        Adds a vertice in the array. 
        Return: the actual vertex number.

        Parameters
        ----------
        theVertex: gp_Pnt
        theColor: Quantity_Color

        Return
        -------
        int

        Description
        -----------
        Adds a vertice and vertex color in the vertex array. Warning: theColor is ignored when the hasVColors constructor parameter is False 
        Return: the actual vertex number.

        Parameters
        ----------
        theVertex: gp_Pnt
        theColor32: int

        Return
        -------
        int

        Description
        -----------
        Adds a vertice and vertex color in the vertex array. Warning: theColor is ignored when the hasVColors constructor parameter is False @code theColor32 = Alpha << 24 + Blue << 16 + Green << 8 + Red @endcode 
        Return: the actual vertex number.

        Parameters
        ----------
        theVertex: gp_Pnt
        theColor: Graphic3d_Vec4ub

        Return
        -------
        int

        Description
        -----------
        Adds a vertice and vertex color in the vertex array. Warning: theColor is ignored when the hasVColors constructor parameter is False 
        Return: the actual vertex number.

        Parameters
        ----------
        theVertex: gp_Pnt
        theNormal: gp_Dir

        Return
        -------
        int

        Description
        -----------
        Adds a vertice and vertex normal in the vertex array. Warning: theNormal is ignored when the hasVNormals constructor parameter is False. 
        Return: the actual vertex number.

        Parameters
        ----------
        theX: float
        theY: float
        theZ: float
        theNX: float
        theNY: float
        theNZ: float

        Return
        -------
        int

        Description
        -----------
        Adds a vertice and vertex normal in the vertex array. Warning: Normal is ignored when the hasVNormals constructor parameter is False. 
        Return: the actual vertex number.

        Parameters
        ----------
        theX: float
        theY: float
        theZ: float
        theNX: float
        theNY: float
        theNZ: float

        Return
        -------
        int

        Description
        -----------
        Adds a vertice and vertex normal in the vertex array. Warning: Normal is ignored when the hasVNormals constructor parameter is False. 
        Return: the actual vertex number.

        Parameters
        ----------
        theVertex: gp_Pnt
        theNormal: gp_Dir
        theColor: Quantity_Color

        Return
        -------
        int

        Description
        -----------
        Adds a vertice,vertex normal and color in the vertex array. Warning: theNormal is ignored when the hasVNormals constructor parameter is False and theColor is ignored when the hasVColors constructor parameter is False. 
        Return: the actual vertex number.

        Parameters
        ----------
        theVertex: gp_Pnt
        theNormal: gp_Dir
        theColor32: int

        Return
        -------
        int

        Description
        -----------
        Adds a vertice,vertex normal and color in the vertex array. Warning: theNormal is ignored when the hasVNormals constructor parameter is False and theColor is ignored when the hasVColors constructor parameter is False. @code theColor32 = Alpha << 24 + Blue << 16 + Green << 8 + Red @endcode 
        Return: the actual vertex number.

        Parameters
        ----------
        theVertex: gp_Pnt
        theTexel: gp_Pnt2d

        Return
        -------
        int

        Description
        -----------
        Adds a vertice and vertex texture in the vertex array. theTexel is ignored when the hasVTexels constructor parameter is False. 
        Return: the actual vertex number.

        Parameters
        ----------
        theX: float
        theY: float
        theZ: float
        theTX: float
        theTY: float

        Return
        -------
        int

        Description
        -----------
        Adds a vertice and vertex texture coordinates in the vertex array. Texel is ignored when the hasVTexels constructor parameter is False. 
        Return: the actual vertex number.

        Parameters
        ----------
        theX: float
        theY: float
        theZ: float
        theTX: float
        theTY: float

        Return
        -------
        int

        Description
        -----------
        Adds a vertice and vertex texture coordinates in the vertex array. Texel is ignored when the hasVTexels constructor parameter is False. 
        Return: the actual vertex number.

        Parameters
        ----------
        theVertex: gp_Pnt
        theNormal: gp_Dir
        theTexel: gp_Pnt2d

        Return
        -------
        int

        Description
        -----------
        Adds a vertice,vertex normal and texture in the vertex array. Warning: theNormal is ignored when the hasVNormals constructor parameter is False and theTexel is ignored when the hasVTexels constructor parameter is False. 
        Return: the actual vertex number.

        Parameters
        ----------
        theX: float
        theY: float
        theZ: float
        theNX: float
        theNY: float
        theNZ: float
        theTX: float
        theTY: float

        Return
        -------
        int

        Description
        -----------
        Adds a vertice,vertex normal and texture in the vertex array. Warning: Normal is ignored when the hasVNormals constructor parameter is False and Texel is ignored when the hasVTexels constructor parameter is False. 
        Return: the actual vertex number.

        Parameters
        ----------
        theX: float
        theY: float
        theZ: float
        theNX: float
        theNY: float
        theNZ: float
        theTX: float
        theTY: float

        Return
        -------
        int

        Description
        -----------
        Adds a vertice,vertex normal and texture in the vertex array. Warning: Normal is ignored when the hasVNormals constructor parameter is False and Texel is ignored when the hasVTexels constructor parameter is False. 
        Return: the actual vertex number.

        """
        return _Graphic3d.Graphic3d_ArrayOfPrimitives_AddVertex(self, *args)

    def Attributes(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_Buffer>

        Description
        -----------
        Returns vertex attributes buffer (colors, normals, texture coordinates).

        """
        return _Graphic3d.Graphic3d_ArrayOfPrimitives_Attributes(self, *args)

    def Bound(self, *args):
        r"""

        Parameters
        ----------
        theRank: int

        Return
        -------
        int

        Description
        -----------
        Returns the edge number at rank theRank.

        """
        return _Graphic3d.Graphic3d_ArrayOfPrimitives_Bound(self, *args)

    def BoundColor(self, *args):
        r"""

        Parameters
        ----------
        theRank: int

        Return
        -------
        Quantity_Color

        Description
        -----------
        Returns the bound color at rank theRank from the bound table if defined.

        Parameters
        ----------
        theRank: int

        Return
        -------
        theR: float
        theG: float
        theB: float

        Description
        -----------
        Returns the bound color values at rank theRank from the bound table if defined.

        """
        return _Graphic3d.Graphic3d_ArrayOfPrimitives_BoundColor(self, *args)

    def BoundNumber(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Returns the number of defined bounds.

        """
        return _Graphic3d.Graphic3d_ArrayOfPrimitives_BoundNumber(self, *args)

    def BoundNumberAllocated(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Returns the number of allocated bounds.

        """
        return _Graphic3d.Graphic3d_ArrayOfPrimitives_BoundNumberAllocated(self, *args)

    def Bounds(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_BoundBuffer>

        Description
        -----------
        primitives / assigning colors) Returns optional bounds buffer.

        """
        return _Graphic3d.Graphic3d_ArrayOfPrimitives_Bounds(self, *args)

    @staticmethod
    def CreateArray(*args):
        r"""

        Parameters
        ----------
        theType: Graphic3d_TypeOfPrimitiveArray
        theMaxVertexs: int
        theMaxEdges: int
        theArrayFlags: int

        Return
        -------
        opencascade::handle<Graphic3d_ArrayOfPrimitives>

        Description
        -----------
        Create an array of specified type.

        Parameters
        ----------
        theType: Graphic3d_TypeOfPrimitiveArray
        theMaxVertexs: int
        theMaxBounds: int
        theMaxEdges: int
        theArrayFlags: int

        Return
        -------
        opencascade::handle<Graphic3d_ArrayOfPrimitives>

        Description
        -----------
        Create an array of specified type.

        """
        return _Graphic3d.Graphic3d_ArrayOfPrimitives_CreateArray(*args)

    def Edge(self, *args):
        r"""

        Parameters
        ----------
        theRank: int

        Return
        -------
        int

        Description
        -----------
        Returns the vertex index at rank theRank in the range [1,EdgeNumber()].

        """
        return _Graphic3d.Graphic3d_ArrayOfPrimitives_Edge(self, *args)

    def EdgeNumber(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Returns the number of defined edges.

        """
        return _Graphic3d.Graphic3d_ArrayOfPrimitives_EdgeNumber(self, *args)

    def EdgeNumberAllocated(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Returns the number of allocated edges.

        """
        return _Graphic3d.Graphic3d_ArrayOfPrimitives_EdgeNumberAllocated(self, *args)

    def HasBoundColors(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns True when bound colors array is defined.

        """
        return _Graphic3d.Graphic3d_ArrayOfPrimitives_HasBoundColors(self, *args)

    def HasVertexColors(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns True when vertex colors array is defined.

        """
        return _Graphic3d.Graphic3d_ArrayOfPrimitives_HasVertexColors(self, *args)

    def HasVertexNormals(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns True when vertex normals array is defined.

        """
        return _Graphic3d.Graphic3d_ArrayOfPrimitives_HasVertexNormals(self, *args)

    def HasVertexTexels(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns True when vertex texels array is defined.

        """
        return _Graphic3d.Graphic3d_ArrayOfPrimitives_HasVertexTexels(self, *args)

    def Indices(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_IndexBuffer>

        Description
        -----------
        Returns optional index buffer.

        """
        return _Graphic3d.Graphic3d_ArrayOfPrimitives_Indices(self, *args)

    def IsValid(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns True only when the contains of this array is available.

        """
        return _Graphic3d.Graphic3d_ArrayOfPrimitives_IsValid(self, *args)

    def ItemNumber(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Returns the number of total items according to the array type.

        """
        return _Graphic3d.Graphic3d_ArrayOfPrimitives_ItemNumber(self, *args)

    def SetBoundColor(self, *args):
        r"""

        Parameters
        ----------
        theIndex: int
        theColor: Quantity_Color

        Return
        -------
        None

        Description
        -----------
        Change the bound color of rank theIndex in the array.

        Parameters
        ----------
        theIndex: int
        theR: float
        theG: float
        theB: float

        Return
        -------
        None

        Description
        -----------
        Change the bound color of rank theIndex in the array.

        """
        return _Graphic3d.Graphic3d_ArrayOfPrimitives_SetBoundColor(self, *args)

    def SetVertexColor(self, *args):
        r"""

        Parameters
        ----------
        theIndex: int
        theColor: Quantity_Color

        Return
        -------
        None

        Description
        -----------
        Change the vertex color in the array. 
        Input parameter: theIndex node index within [1, VertexNumberAllocated()] range 
        Input parameter: theColor node color.

        Parameters
        ----------
        theIndex: int
        theR: float
        theG: float
        theB: float

        Return
        -------
        None

        Description
        -----------
        Change the vertex color in the array. 
        Input parameter: theIndex node index within [1, VertexNumberAllocated()] range 
        Input parameter: theR red color value within [0, 1] range 
        Input parameter: theG green color value within [0, 1] range 
        Input parameter: theB blue color value within [0, 1] range.

        Parameters
        ----------
        theIndex: int
        theColor: Graphic3d_Vec4ub

        Return
        -------
        None

        Description
        -----------
        Change the vertex color in the array. 
        Input parameter: theIndex node index within [1, VertexNumberAllocated()] range 
        Input parameter: theColor node RGBA color values within [0, 255] range.

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

        Return
        -------
        None

        Description
        -----------
        Change the vertex color in the array. @code theColor32 = Alpha << 24 + Blue << 16 + Green << 8 + Red @endcode 
        Input parameter: theIndex node index within [1, VertexNumberAllocated()] range 
        Input parameter: theColor32 packed RGBA color values.

        """
        return _Graphic3d.Graphic3d_ArrayOfPrimitives_SetVertexColor(self, *args)

    def SetVertexNormal(self, *args):
        r"""

        Parameters
        ----------
        theIndex: int
        theNormal: gp_Dir

        Return
        -------
        None

        Description
        -----------
        Change the vertex normal in the array. 
        Input parameter: theIndex node index within [1, VertexNumberAllocated()] range 
        Input parameter: theNormal normalized surface normal.

        Parameters
        ----------
        theIndex: int
        theNX: float
        theNY: float
        theNZ: float

        Return
        -------
        None

        Description
        -----------
        Change the vertex normal in the array. 
        Input parameter: theIndex node index within [1, VertexNumberAllocated()] range 
        Input parameter: theNX surface normal X component 
        Input parameter: theNY surface normal Y component 
        Input parameter: theNZ surface normal Z component.

        """
        return _Graphic3d.Graphic3d_ArrayOfPrimitives_SetVertexNormal(self, *args)

    def SetVertexTexel(self, *args):
        r"""

        Parameters
        ----------
        theIndex: int
        theTexel: gp_Pnt2d

        Return
        -------
        None

        Description
        -----------
        Change the vertex texel in the array. 
        Input parameter: theIndex node index within [1, VertexNumberAllocated()] range 
        Input parameter: theTexel node UV coordinates.

        Parameters
        ----------
        theIndex: int
        theTX: float
        theTY: float

        Return
        -------
        None

        Description
        -----------
        Change the vertex texel in the array. 
        Input parameter: theIndex node index within [1, VertexNumberAllocated()] range 
        Input parameter: theTX node U coordinate 
        Input parameter: theTY node V coordinate.

        """
        return _Graphic3d.Graphic3d_ArrayOfPrimitives_SetVertexTexel(self, *args)

    def SetVertice(self, *args):
        r"""

        Parameters
        ----------
        theIndex: int
        theVertex: gp_Pnt

        Return
        -------
        None

        Description
        -----------
        Change the vertice of rank theIndex in the array. 
        Input parameter: theIndex node index within [1, VertexNumberAllocated()] range 
        Input parameter: theVertex 3D coordinates.

        Parameters
        ----------
        theIndex: int
        theX: float
        theY: float
        theZ: float

        Return
        -------
        None

        Description
        -----------
        Change the vertice in the array. 
        Input parameter: theIndex node index within [1, VertexNumberAllocated()] range 
        Input parameter: theX coordinate X 
        Input parameter: theY coordinate Y 
        Input parameter: theZ coordinate Z.

        """
        return _Graphic3d.Graphic3d_ArrayOfPrimitives_SetVertice(self, *args)

    def StringType(self, *args):
        r"""
        Return
        -------
        str

        Description
        -----------
        Returns the string type of this primitive.

        """
        return _Graphic3d.Graphic3d_ArrayOfPrimitives_StringType(self, *args)

    def Type(self, *args):
        r"""
        Return
        -------
        Graphic3d_TypeOfPrimitiveArray

        Description
        -----------
        Returns the type of this primitive.

        """
        return _Graphic3d.Graphic3d_ArrayOfPrimitives_Type(self, *args)

    def VertexColor(self, *args):
        r"""

        Parameters
        ----------
        theRank: int

        Return
        -------
        Quantity_Color

        Description
        -----------
        Returns the vertex color at rank theRank from the vertex table if defined. 
        Input parameter: theRank node index within [1, VertexNumber()] range 
        Return: node color RGB value.

        Parameters
        ----------
        theIndex: int
        theColor: Graphic3d_Vec4ub

        Return
        -------
        None

        Description
        -----------
        Returns the vertex color from the vertex table if defined. 
        Input parameter: theIndex node index within [1, VertexNumber()] range @param[out] theColor node RGBA color values within [0, 255] range.

        Parameters
        ----------
        theRank: int

        Return
        -------
        theR: float
        theG: float
        theB: float

        Description
        -----------
        Returns the vertex color values from the vertex table if defined. 
        Input parameter: theRank node index within [1, VertexNumber()] range @param[out] theR node red color component value within [0, 1] range @param[out] theG node green color component value within [0, 1] range @param[out] theB node blue color component value within [0, 1] range.

        Parameters
        ----------
        theRank: int

        Return
        -------
        theColor: int

        Description
        -----------
        Returns the vertex color values from the vertex table if defined. 
        Input parameter: theRank node index within [1, VertexNumber()] range @param[out] theColor node RGBA color packed into 32-bit integer.

        """
        return _Graphic3d.Graphic3d_ArrayOfPrimitives_VertexColor(self, *args)

    def VertexNormal(self, *args):
        r"""

        Parameters
        ----------
        theRank: int

        Return
        -------
        gp_Dir

        Description
        -----------
        Returns the vertex normal from the vertex table if defined. 
        Input parameter: theRank node index within [1, VertexNumber()] range 
        Return: normalized 3D vector defining surface normal.

        Parameters
        ----------
        theRank: int

        Return
        -------
        theNX: float
        theNY: float
        theNZ: float

        Description
        -----------
        Returns the vertex normal coordinates at rank theRank from the vertex table if defined. 
        Input parameter: theRank node index within [1, VertexNumber()] range @param[out] theNX normal X coordinate @param[out] theNY normal Y coordinate @param[out] theNZ normal Z coordinate.

        """
        return _Graphic3d.Graphic3d_ArrayOfPrimitives_VertexNormal(self, *args)

    def VertexNumber(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Returns the number of defined vertex.

        """
        return _Graphic3d.Graphic3d_ArrayOfPrimitives_VertexNumber(self, *args)

    def VertexNumberAllocated(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Returns the number of allocated vertex.

        """
        return _Graphic3d.Graphic3d_ArrayOfPrimitives_VertexNumberAllocated(self, *args)

    def VertexTexel(self, *args):
        r"""

        Parameters
        ----------
        theRank: int

        Return
        -------
        gp_Pnt2d

        Description
        -----------
        Returns the vertex texture at rank theRank from the vertex table if defined. 
        Input parameter: theRank node index within [1, VertexNumber()] range 
        Return: UV coordinates.

        Parameters
        ----------
        theRank: int

        Return
        -------
        theTX: float
        theTY: float

        Description
        -----------
        Returns the vertex texture coordinates at rank theRank from the vertex table if defined. 
        Input parameter: theRank node index within [1, VertexNumber()] range @param[out] theTX texel U coordinate value @param[out] theTY texel V coordinate value.

        """
        return _Graphic3d.Graphic3d_ArrayOfPrimitives_VertexTexel(self, *args)

    def Vertice(self, *args):
        r"""

        Parameters
        ----------
        theRank: int

        Return
        -------
        gp_Pnt

        Description
        -----------
        Returns the vertice from the vertex table if defined. 
        Input parameter: theRank node index within [1, VertexNumber()] range 
        Return: node 3D coordinates.

        Parameters
        ----------
        theRank: int

        Return
        -------
        theX: float
        theY: float
        theZ: float

        Description
        -----------
        Returns the vertice coordinates at rank theRank from the vertex table if defined. 
        Input parameter: theRank node index within [1, VertexNumber()] range @param[out] theX node X coordinate value @param[out] theY node Y coordinate value @param[out] theZ node Z coordinate value.

        """
        return _Graphic3d.Graphic3d_ArrayOfPrimitives_Vertice(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_ArrayOfPrimitives

# Register Graphic3d_ArrayOfPrimitives in _Graphic3d:
_Graphic3d.Graphic3d_ArrayOfPrimitives_swigregister(Graphic3d_ArrayOfPrimitives)
class Graphic3d_Aspects(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"""
        Return
        -------
        None

        Description
        -----------
        Creates a context table for drawing primitives defined with the following default values:.

        """
        _Graphic3d.Graphic3d_Aspects_swiginit(self, _Graphic3d.new_Graphic3d_Aspects(*args))

    def AllowBackFace(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_Aspects_AllowBackFace(self, *args)

    def AlphaCutoff(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Returns alpha cutoff threshold, for discarding fragments within Graphic3d_AlphaMode_Mask mode (0.5 by default). If the alpha value is greater than or equal to this value then it is rendered as fully opaque, otherwise, it is rendered as fully transparent.

        """
        return _Graphic3d.Graphic3d_Aspects_AlphaCutoff(self, *args)

    def AlphaMode(self, *args):
        r"""
        Return
        -------
        Graphic3d_AlphaMode

        Description
        -----------
        Returns the way how alpha value should be treated (Graphic3d_AlphaMode_BlendAuto by default, for backward compatibility).

        """
        return _Graphic3d.Graphic3d_Aspects_AlphaMode(self, *args)

    def BackFace(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_Aspects_BackFace(self, *args)

    def BackInteriorColor(self, *args):
        r"""
        Return
        -------
        Quantity_Color

        Description
        -----------
        Return back interior color.

        """
        return _Graphic3d.Graphic3d_Aspects_BackInteriorColor(self, *args)

    def BackInteriorColorRGBA(self, *args):
        r"""
        Return
        -------
        Quantity_ColorRGBA

        Description
        -----------
        Return back interior color.

        """
        return _Graphic3d.Graphic3d_Aspects_BackInteriorColorRGBA(self, *args)

    def BackMaterial(self, *args):
        r"""
        Return
        -------
        Graphic3d_MaterialAspect

        Description
        -----------
        Returns the surface material of internal faces.

        """
        return _Graphic3d.Graphic3d_Aspects_BackMaterial(self, *args)

    def ChangeBackMaterial(self, *args):
        r"""
        Return
        -------
        Graphic3d_MaterialAspect

        Description
        -----------
        Returns the surface material of internal faces.

        """
        return _Graphic3d.Graphic3d_Aspects_ChangeBackMaterial(self, *args)

    def ChangeFrontMaterial(self, *args):
        r"""
        Return
        -------
        Graphic3d_MaterialAspect

        Description
        -----------
        Returns the surface material of external faces.

        """
        return _Graphic3d.Graphic3d_Aspects_ChangeFrontMaterial(self, *args)

    def Color(self, *args):
        r"""
        Return
        -------
        Quantity_Color

        Description
        -----------
        Return the color.

        """
        return _Graphic3d.Graphic3d_Aspects_Color(self, *args)

    def ColorRGBA(self, *args):
        r"""
        Return
        -------
        Quantity_ColorRGBA

        Description
        -----------
        Return color.

        """
        return _Graphic3d.Graphic3d_Aspects_ColorRGBA(self, *args)

    def ColorSubTitle(self, *args):
        r"""
        Return
        -------
        Quantity_Color

        Description
        -----------
        Return text background/shadow color; equals to EdgeColor() property.

        """
        return _Graphic3d.Graphic3d_Aspects_ColorSubTitle(self, *args)

    def ColorSubTitleRGBA(self, *args):
        r"""
        Return
        -------
        Quantity_ColorRGBA

        Description
        -----------
        Returns text background/shadow color; equals to EdgeColor() property.

        """
        return _Graphic3d.Graphic3d_Aspects_ColorSubTitleRGBA(self, *args)

    @staticmethod
    def DefaultLinePatternForType(*args):
        r"""

        Parameters
        ----------
        theType: Aspect_TypeOfLine

        Return
        -------
        uint16_t

        Description
        -----------
        Return stipple line pattern for line type.

        """
        return _Graphic3d.Graphic3d_Aspects_DefaultLinePatternForType(*args)

    @staticmethod
    def DefaultLineTypeForPattern(*args):
        r"""

        Parameters
        ----------
        thePattern: uint16_t

        Return
        -------
        Aspect_TypeOfLine

        Description
        -----------
        Return line type for stipple line pattern.

        """
        return _Graphic3d.Graphic3d_Aspects_DefaultLineTypeForPattern(*args)

    def Distinguish(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns true if material properties should be distinguished for back and front faces (false by default).

        """
        return _Graphic3d.Graphic3d_Aspects_Distinguish(self, *args)

    def DumpJson(self, depth=-1):
        r"""

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        """
        return _Graphic3d.Graphic3d_Aspects_DumpJson(self, depth)

    def EdgeColor(self, *args):
        r"""
        Return
        -------
        Quantity_Color

        Description
        -----------
        Return color of edges.

        """
        return _Graphic3d.Graphic3d_Aspects_EdgeColor(self, *args)

    def EdgeColorRGBA(self, *args):
        r"""
        Return
        -------
        Quantity_ColorRGBA

        Description
        -----------
        Return color of edges.

        """
        return _Graphic3d.Graphic3d_Aspects_EdgeColorRGBA(self, *args)

    def EdgeLineType(self, *args):
        r"""
        Return
        -------
        Aspect_TypeOfLine

        Description
        -----------
        Return edges line type (same as LineType()).

        """
        return _Graphic3d.Graphic3d_Aspects_EdgeLineType(self, *args)

    def EdgeWidth(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Return width for edges in pixels (same as LineWidth()).

        """
        return _Graphic3d.Graphic3d_Aspects_EdgeWidth(self, *args)

    def FaceCulling(self, *args):
        r"""
        Return
        -------
        Graphic3d_TypeOfBackfacingModel

        Description
        -----------
        Return face culling mode; Graphic3d_FaceCulling_BackClosed by default. A back-facing polygon is defined as a polygon whose vertices are in a clockwise order with respect to screen coordinates.

        """
        return _Graphic3d.Graphic3d_Aspects_FaceCulling(self, *args)

    def FrontMaterial(self, *args):
        r"""
        Return
        -------
        Graphic3d_MaterialAspect

        Description
        -----------
        Returns the surface material of external faces.

        """
        return _Graphic3d.Graphic3d_Aspects_FrontMaterial(self, *args)

    def HatchStyle(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_HatchStyle>

        Description
        -----------
        Returns the hatch type used when InteriorStyle is IS_HATCH.

        """
        return _Graphic3d.Graphic3d_Aspects_HatchStyle(self, *args)

    def InteriorColor(self, *args):
        r"""
        Return
        -------
        Quantity_Color

        Description
        -----------
        Return interior color.

        """
        return _Graphic3d.Graphic3d_Aspects_InteriorColor(self, *args)

    def InteriorColorRGBA(self, *args):
        r"""
        Return
        -------
        Quantity_ColorRGBA

        Description
        -----------
        Return interior color.

        """
        return _Graphic3d.Graphic3d_Aspects_InteriorColorRGBA(self, *args)

    def InteriorStyle(self, *args):
        r"""
        Return
        -------
        Aspect_InteriorStyle

        Description
        -----------
        Return interior rendering style; Aspect_IS_SOLID by default.

        """
        return _Graphic3d.Graphic3d_Aspects_InteriorStyle(self, *args)

    def IsEqual(self, *args):
        r"""

        Parameters
        ----------
        theOther: Graphic3d_Aspects

        Return
        -------
        bool

        Description
        -----------
        Check for equality with another aspects.

        """
        return _Graphic3d.Graphic3d_Aspects_IsEqual(self, *args)

    def IsMarkerSprite(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns True if marker should be drawn using marker sprite (either user-provided or generated).

        """
        return _Graphic3d.Graphic3d_Aspects_IsMarkerSprite(self, *args)

    def IsTextZoomable(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns True when the Text Zoomable is on.

        """
        return _Graphic3d.Graphic3d_Aspects_IsTextZoomable(self, *args)

    def LinePattern(self, *args):
        r"""
        Return
        -------
        uint16_t

        Description
        -----------
        Return custom stipple line pattern; 0xFFFF by default.

        """
        return _Graphic3d.Graphic3d_Aspects_LinePattern(self, *args)

    def LineStippleFactor(self, *args):
        r"""
        Return
        -------
        uint16_t

        Description
        -----------
        Return a multiplier for each bit in the line stipple pattern within [1, 256] range; 1 by default.

        """
        return _Graphic3d.Graphic3d_Aspects_LineStippleFactor(self, *args)

    def LineType(self, *args):
        r"""
        Return
        -------
        Aspect_TypeOfLine

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_Aspects_LineType(self, *args)

    def LineWidth(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Return width for edges in pixels; 1.0 by default.

        """
        return _Graphic3d.Graphic3d_Aspects_LineWidth(self, *args)

    def MarkerImage(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_MarkerImage>

        Description
        -----------
        Returns marker's image texture. Could be null handle if marker aspect has been initialized as default type of marker.

        """
        return _Graphic3d.Graphic3d_Aspects_MarkerImage(self, *args)

    def MarkerScale(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Return marker scale factor; 1.0 by default.

        """
        return _Graphic3d.Graphic3d_Aspects_MarkerScale(self, *args)

    def MarkerType(self, *args):
        r"""
        Return
        -------
        Aspect_TypeOfMarker

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_Aspects_MarkerType(self, *args)

    def PolygonOffset(self, *args):
        r"""
        Return
        -------
        Graphic3d_PolygonOffset

        Description
        -----------
        Returns current polygon offsets settings.

        """
        return _Graphic3d.Graphic3d_Aspects_PolygonOffset(self, *args)

    def PolygonOffsets(self, *args):
        r"""

        Parameters
        ----------

        Return
        -------
        theMode: int
        theFactor: float
        theUnits: float

        Description
        -----------
        Returns current polygon offsets settings.

        """
        return _Graphic3d.Graphic3d_Aspects_PolygonOffsets(self, *args)

    def SetAlphaMode(self, *args):
        r"""

        Parameters
        ----------
        theMode: Graphic3d_AlphaMode
        theAlphaCutoff: float (optional, default to 0.5f)

        Return
        -------
        None

        Description
        -----------
        Defines the way how alpha value should be treated.

        """
        return _Graphic3d.Graphic3d_Aspects_SetAlphaMode(self, *args)

    def SetBackInteriorColor(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Modifies the color of the interior of the back face.

        Parameters
        ----------
        theColor: Quantity_ColorRGBA

        Return
        -------
        None

        Description
        -----------
        Modifies the color of the interior of the back face.

        """
        return _Graphic3d.Graphic3d_Aspects_SetBackInteriorColor(self, *args)

    def SetBackMaterial(self, *args):
        r"""

        Parameters
        ----------
        theMaterial: Graphic3d_MaterialAspect

        Return
        -------
        None

        Description
        -----------
        Modifies the surface material of internal faces.

        """
        return _Graphic3d.Graphic3d_Aspects_SetBackMaterial(self, *args)

    def SetColor(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Modifies the color.

        """
        return _Graphic3d.Graphic3d_Aspects_SetColor(self, *args)

    def SetColorSubTitle(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Modifies text background/shadow color; equals to EdgeColor() property.

        Parameters
        ----------
        theColor: Quantity_ColorRGBA

        Return
        -------
        None

        Description
        -----------
        Modifies text background/shadow color; equals to EdgeColor() property.

        """
        return _Graphic3d.Graphic3d_Aspects_SetColorSubTitle(self, *args)

    def SetDistinguish(self, *args):
        r"""

        Parameters
        ----------
        toDistinguish: bool

        Return
        -------
        None

        Description
        -----------
        Set material distinction between front and back faces.

        """
        return _Graphic3d.Graphic3d_Aspects_SetDistinguish(self, *args)

    def SetDistinguishOff(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Forbids material distinction between front and back faces.

        """
        return _Graphic3d.Graphic3d_Aspects_SetDistinguishOff(self, *args)

    def SetDistinguishOn(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Allows material distinction between front and back faces.

        """
        return _Graphic3d.Graphic3d_Aspects_SetDistinguishOn(self, *args)

    def SetDrawEdges(self, *args):
        r"""

        Parameters
        ----------
        theToDraw: bool

        Return
        -------
        None

        Description
        -----------
        Set if mesh edges should be drawn or not.

        """
        return _Graphic3d.Graphic3d_Aspects_SetDrawEdges(self, *args)

    def SetDrawSilhouette(self, *args):
        r"""

        Parameters
        ----------
        theToDraw: bool

        Return
        -------
        None

        Description
        -----------
        Enables/disables drawing silhouette (outline).

        """
        return _Graphic3d.Graphic3d_Aspects_SetDrawSilhouette(self, *args)

    def SetEdgeColor(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Modifies the color of the edge of the face.

        Parameters
        ----------
        theColor: Quantity_ColorRGBA

        Return
        -------
        None

        Description
        -----------
        Modifies the color of the edge of the face.

        """
        return _Graphic3d.Graphic3d_Aspects_SetEdgeColor(self, *args)

    def SetEdgeLineType(self, *args):
        r"""

        Parameters
        ----------
        theType: Aspect_TypeOfLine

        Return
        -------
        None

        Description
        -----------
        Modifies the edge line type (same as SetLineType()).

        """
        return _Graphic3d.Graphic3d_Aspects_SetEdgeLineType(self, *args)

    def SetEdgeOff(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        The edges of FillAreas are not drawn.

        """
        return _Graphic3d.Graphic3d_Aspects_SetEdgeOff(self, *args)

    def SetEdgeOn(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        The edges of FillAreas are drawn.

        """
        return _Graphic3d.Graphic3d_Aspects_SetEdgeOn(self, *args)

    def SetEdgeWidth(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Modifies the edge thickness (same as SetLineWidth()).

        """
        return _Graphic3d.Graphic3d_Aspects_SetEdgeWidth(self, *args)

    def SetFaceCulling(self, *args):
        r"""

        Parameters
        ----------
        theCulling: Graphic3d_TypeOfBackfacingModel

        Return
        -------
        None

        Description
        -----------
        Set face culling mode.

        """
        return _Graphic3d.Graphic3d_Aspects_SetFaceCulling(self, *args)

    def SetFrontMaterial(self, *args):
        r"""

        Parameters
        ----------
        theMaterial: Graphic3d_MaterialAspect

        Return
        -------
        None

        Description
        -----------
        Modifies the surface material of external faces.

        """
        return _Graphic3d.Graphic3d_Aspects_SetFrontMaterial(self, *args)

    def SetHatchStyle(self, *args):
        r"""

        Parameters
        ----------
        theStyle: Graphic3d_HatchStyle

        Return
        -------
        None

        Description
        -----------
        Modifies the hatch type used when InteriorStyle is IS_HATCH.

        Parameters
        ----------
        theStyle: Aspect_HatchStyle

        Return
        -------
        None

        Description
        -----------
        Modifies the hatch type used when InteriorStyle is IS_HATCH @warning This method always creates a new handle for a given hatch style.

        """
        return _Graphic3d.Graphic3d_Aspects_SetHatchStyle(self, *args)

    def SetInteriorColor(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Modifies the color of the interior of the face.

        Parameters
        ----------
        theColor: Quantity_ColorRGBA

        Return
        -------
        None

        Description
        -----------
        Modifies the color of the interior of the face.

        """
        return _Graphic3d.Graphic3d_Aspects_SetInteriorColor(self, *args)

    def SetInteriorStyle(self, *args):
        r"""

        Parameters
        ----------
        theStyle: Aspect_InteriorStyle

        Return
        -------
        None

        Description
        -----------
        Modifies the interior type used for rendering.

        """
        return _Graphic3d.Graphic3d_Aspects_SetInteriorStyle(self, *args)

    def SetLinePattern(self, *args):
        r"""

        Parameters
        ----------
        thePattern: uint16_t

        Return
        -------
        None

        Description
        -----------
        Modifies the stipple line pattern, and changes line type to Aspect_TOL_USERDEFINED for non-standard pattern.

        """
        return _Graphic3d.Graphic3d_Aspects_SetLinePattern(self, *args)

    def SetLineStippleFactor(self, *args):
        r"""

        Parameters
        ----------
        theFactor: uint16_t

        Return
        -------
        None

        Description
        -----------
        Set a multiplier for each bit in the line stipple pattern.

        """
        return _Graphic3d.Graphic3d_Aspects_SetLineStippleFactor(self, *args)

    def SetLineType(self, *args):
        r"""

        Parameters
        ----------
        theType: Aspect_TypeOfLine

        Return
        -------
        None

        Description
        -----------
        Modifies the line type.

        """
        return _Graphic3d.Graphic3d_Aspects_SetLineType(self, *args)

    def SetLineWidth(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Modifies the line thickness Warning: Raises Standard_OutOfRange if the width is a negative value.

        """
        return _Graphic3d.Graphic3d_Aspects_SetLineWidth(self, *args)

    def SetMarkerImage(self, *args):
        r"""

        Parameters
        ----------
        theImage: Graphic3d_MarkerImage

        Return
        -------
        None

        Description
        -----------
        Set marker's image texture.

        """
        return _Graphic3d.Graphic3d_Aspects_SetMarkerImage(self, *args)

    def SetMarkerScale(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Modifies the scale factor. Marker type Aspect_TOM_POINT is not affected by the marker size scale factor. It is always the smallest displayable dot. Warning: Raises Standard_OutOfRange if the scale is a negative value.

        """
        return _Graphic3d.Graphic3d_Aspects_SetMarkerScale(self, *args)

    def SetMarkerType(self, *args):
        r"""

        Parameters
        ----------
        theType: Aspect_TypeOfMarker

        Return
        -------
        None

        Description
        -----------
        Modifies the type of marker.

        """
        return _Graphic3d.Graphic3d_Aspects_SetMarkerType(self, *args)

    def SetPolygonOffset(self, *args):
        r"""

        Parameters
        ----------
        theOffset: Graphic3d_PolygonOffset

        Return
        -------
        None

        Description
        -----------
        Sets polygon offsets settings.

        """
        return _Graphic3d.Graphic3d_Aspects_SetPolygonOffset(self, *args)

    def SetPolygonOffsets(self, *args):
        r"""

        Parameters
        ----------
        theMode: int
        theFactor: float (optional, default to 1.0f)
        theUnits: float (optional, default to 0.0f)

        Return
        -------
        None

        Description
        -----------
        Sets up OpenGL polygon offsets mechanism. <aMode> parameter can contain various combinations of Aspect_PolygonOffsetMode enumeration elements (Aspect_POM_None means that polygon offsets are not changed). If <aMode> is different from Aspect_POM_Off and Aspect_POM_None, then <aFactor> and <aUnits> arguments are used by graphic renderer to calculate a depth offset value: //! offset = <aFactor> * m + <aUnits> * r, where m - maximum depth slope for the polygon currently being displayed, r - minimum window coordinates depth resolution (implementation-specific) //! Default settings for OCC 3D viewer: mode = Aspect_POM_Fill, factor = 1., units = 0. //! Negative offset values move polygons closer to the viewport, while positive values shift polygons away. Consult OpenGL reference for details (glPolygonOffset function description).

        """
        return _Graphic3d.Graphic3d_Aspects_SetPolygonOffsets(self, *args)

    def SetShaderProgram(self, *args):
        r"""

        Parameters
        ----------
        theProgram: Graphic3d_ShaderProgram

        Return
        -------
        None

        Description
        -----------
        Sets up OpenGL/GLSL shader program.

        """
        return _Graphic3d.Graphic3d_Aspects_SetShaderProgram(self, *args)

    def SetShadingModel(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Sets shading model.

        """
        return _Graphic3d.Graphic3d_Aspects_SetShadingModel(self, *args)

    def SetSkipFirstEdge(self, *args):
        r"""

        Parameters
        ----------
        theToSkipFirstEdge: bool

        Return
        -------
        None

        Description
        -----------
        Set skip first triangle edge flag for drawing wireframe presentation of quads array split into triangles.

        """
        return _Graphic3d.Graphic3d_Aspects_SetSkipFirstEdge(self, *args)

    def SetSuppressBackFaces(self, *args):
        r"""

        Parameters
        ----------
        theToSuppress: bool

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_Aspects_SetSuppressBackFaces(self, *args)

    def SetTextAngle(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Turns usage of text rotated.

        """
        return _Graphic3d.Graphic3d_Aspects_SetTextAngle(self, *args)

    def SetTextDisplayType(self, *args):
        r"""

        Parameters
        ----------
        theType: Aspect_TypeOfDisplayText

        Return
        -------
        None

        Description
        -----------
        Sets display type.

        """
        return _Graphic3d.Graphic3d_Aspects_SetTextDisplayType(self, *args)

    def SetTextFont(self, *args):
        r"""

        Parameters
        ----------
        theFont: TCollection_HAsciiString

        Return
        -------
        None

        Description
        -----------
        Modifies the font.

        """
        return _Graphic3d.Graphic3d_Aspects_SetTextFont(self, *args)

    def SetTextFontAspect(self, *args):
        r"""

        Parameters
        ----------
        theFontAspect: Font_FontAspect

        Return
        -------
        None

        Description
        -----------
        Turns usage of Aspect text.

        """
        return _Graphic3d.Graphic3d_Aspects_SetTextFontAspect(self, *args)

    def SetTextStyle(self, *args):
        r"""

        Parameters
        ----------
        theStyle: Aspect_TypeOfStyleText

        Return
        -------
        None

        Description
        -----------
        Modifies the style of the text.

        """
        return _Graphic3d.Graphic3d_Aspects_SetTextStyle(self, *args)

    def SetTextZoomable(self, *args):
        r"""

        Parameters
        ----------
        theFlag: bool

        Return
        -------
        None

        Description
        -----------
        Turns usage of text zoomable on/off.

        """
        return _Graphic3d.Graphic3d_Aspects_SetTextZoomable(self, *args)

    def SetTextureMap(self, *args):
        r"""

        Parameters
        ----------
        theTexture: Graphic3d_TextureMap

        Return
        -------
        None

        Description
        -----------
        Assign texture to be mapped. See also SetTextureMapOn() to actually activate texture mapping.

        """
        return _Graphic3d.Graphic3d_Aspects_SetTextureMap(self, *args)

    def SetTextureMapOff(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Disable texture mapping.

        """
        return _Graphic3d.Graphic3d_Aspects_SetTextureMapOff(self, *args)

    def SetTextureMapOn(self, *args):
        r"""

        Parameters
        ----------
        theToMap: bool

        Return
        -------
        None

        Description
        -----------
        Enable or disable texture mapping (has no effect if texture is not set).
        Return
        -------
        None

        Description
        -----------
        Enable texture mapping (has no effect if texture is not set).

        """
        return _Graphic3d.Graphic3d_Aspects_SetTextureMapOn(self, *args)

    def SetTextureSet(self, *args):
        r"""

        Parameters
        ----------
        theTextures: Graphic3d_TextureSet

        Return
        -------
        None

        Description
        -----------
        Setup texture array to be mapped.

        """
        return _Graphic3d.Graphic3d_Aspects_SetTextureSet(self, *args)

    def ShaderProgram(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_ShaderProgram>

        Description
        -----------
        Return shader program.

        """
        return _Graphic3d.Graphic3d_Aspects_ShaderProgram(self, *args)

    def ShadingModel(self, *args):
        r"""
        Return
        -------
        Graphic3d_TypeOfShadingModel

        Description
        -----------
        Returns shading model; Graphic3d_TypeOfShadingModel_DEFAULT by default. Graphic3d_TOSM_DEFAULT means that Shading Model set as default for entire Viewer will be used.

        """
        return _Graphic3d.Graphic3d_Aspects_ShadingModel(self, *args)

    def SuppressBackFace(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_Aspects_SuppressBackFace(self, *args)

    def TextAngle(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Returns Angle of degree.

        """
        return _Graphic3d.Graphic3d_Aspects_TextAngle(self, *args)

    def TextDisplayType(self, *args):
        r"""
        Return
        -------
        Aspect_TypeOfDisplayText

        Description
        -----------
        Returns display type; Aspect_TODT_NORMAL by default.

        """
        return _Graphic3d.Graphic3d_Aspects_TextDisplayType(self, *args)

    def TextFont(self, *args):
        r"""
        Return
        -------
        opencascade::handle<TCollection_HAsciiString>

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_Aspects_TextFont(self, *args)

    def TextFontAspect(self, *args):
        r"""
        Return
        -------
        Font_FontAspect

        Description
        -----------
        Returns text FontAspect.

        """
        return _Graphic3d.Graphic3d_Aspects_TextFontAspect(self, *args)

    def TextStyle(self, *args):
        r"""
        Return
        -------
        Aspect_TypeOfStyleText

        Description
        -----------
        Returns the text style; Aspect_TOST_NORMAL by default.

        """
        return _Graphic3d.Graphic3d_Aspects_TextStyle(self, *args)

    def TextureMap(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_TextureMap>

        Description
        -----------
        Return texture to be mapped.

        """
        return _Graphic3d.Graphic3d_Aspects_TextureMap(self, *args)

    def TextureMapState(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return true if texture mapping is enabled (false by default).

        """
        return _Graphic3d.Graphic3d_Aspects_TextureMapState(self, *args)

    def TextureSet(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_TextureSet>

        Description
        -----------
        Return texture array to be mapped.

        """
        return _Graphic3d.Graphic3d_Aspects_TextureSet(self, *args)

    def ToDrawEdges(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_Aspects_ToDrawEdges(self, *args)

    def ToDrawSilhouette(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns True if silhouette (outline) should be drawn (with edge color and width); False by default.

        """
        return _Graphic3d.Graphic3d_Aspects_ToDrawSilhouette(self, *args)

    def ToMapTexture(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return true if texture mapping is enabled (false by default).

        """
        return _Graphic3d.Graphic3d_Aspects_ToMapTexture(self, *args)

    def ToSkipFirstEdge(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns True if drawing element edges should discard first edge in triangle; False by default. Graphics hardware works mostly with triangles, so that wireframe presentation will draw triangle edges by default. This flag allows rendering wireframe presentation of quad-only array split into triangles. For this, quads should be split in specific order, so that the quad diagonal (to be NOT rendered) goes first: 1------2 / / Triangle #1: 2-0-1; Triangle #2: 0-2-3 0------3.

        """
        return _Graphic3d.Graphic3d_Aspects_ToSkipFirstEdge(self, *args)

    def ToSuppressBackFaces(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_Aspects_ToSuppressBackFaces(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_Aspects

# Register Graphic3d_Aspects in _Graphic3d:
_Graphic3d.Graphic3d_Aspects_swigregister(Graphic3d_Aspects)
class Graphic3d_Attribute(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Id = property(_Graphic3d.Graphic3d_Attribute_Id_get, _Graphic3d.Graphic3d_Attribute_Id_set)
    DataType = property(_Graphic3d.Graphic3d_Attribute_DataType_get, _Graphic3d.Graphic3d_Attribute_DataType_set)

    @staticmethod
    def Stride(*args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        Parameters
        ----------
        theType: Graphic3d_TypeOfData

        Return
        -------
        int

        Description
        -----------
        Return: size of attribute of specified data type.

        """
        return _Graphic3d.Graphic3d_Attribute_Stride(*args)

    __repr__ = _dumps_object


    def __init__(self):
        _Graphic3d.Graphic3d_Attribute_swiginit(self, _Graphic3d.new_Graphic3d_Attribute())
    __swig_destroy__ = _Graphic3d.delete_Graphic3d_Attribute

# Register Graphic3d_Attribute in _Graphic3d:
_Graphic3d.Graphic3d_Attribute_swigregister(Graphic3d_Attribute)
class Graphic3d_BSDF(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Kc = property(_Graphic3d.Graphic3d_BSDF_Kc_get, _Graphic3d.Graphic3d_BSDF_Kc_set)
    Kd = property(_Graphic3d.Graphic3d_BSDF_Kd_get, _Graphic3d.Graphic3d_BSDF_Kd_set)
    Ks = property(_Graphic3d.Graphic3d_BSDF_Ks_get, _Graphic3d.Graphic3d_BSDF_Ks_set)
    Kt = property(_Graphic3d.Graphic3d_BSDF_Kt_get, _Graphic3d.Graphic3d_BSDF_Kt_set)
    Le = property(_Graphic3d.Graphic3d_BSDF_Le_get, _Graphic3d.Graphic3d_BSDF_Le_set)
    Absorption = property(_Graphic3d.Graphic3d_BSDF_Absorption_get, _Graphic3d.Graphic3d_BSDF_Absorption_set)
    FresnelCoat = property(_Graphic3d.Graphic3d_BSDF_FresnelCoat_get, _Graphic3d.Graphic3d_BSDF_FresnelCoat_set)
    FresnelBase = property(_Graphic3d.Graphic3d_BSDF_FresnelBase_get, _Graphic3d.Graphic3d_BSDF_FresnelBase_set)

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Creates uninitialized BSDF.

        """
        _Graphic3d.Graphic3d_BSDF_swiginit(self, _Graphic3d.new_Graphic3d_BSDF(*args))

    @staticmethod
    def CreateDiffuse(*args):
        r"""

        Parameters
        ----------
        theWeight: Graphic3d_Vec3

        Return
        -------
        Graphic3d_BSDF

        Description
        -----------
        Creates BSDF describing diffuse (Lambertian) surface.

        """
        return _Graphic3d.Graphic3d_BSDF_CreateDiffuse(*args)

    @staticmethod
    def CreateGlass(*args):
        r"""

        Parameters
        ----------
        theWeight: Graphic3d_Vec3
        theAbsorptionColor: Graphic3d_Vec3
        theAbsorptionCoeff: float
        theRefractionIndex: float

        Return
        -------
        Graphic3d_BSDF

        Description
        -----------
        Creates BSDF describing glass-like object. Glass-like BSDF mixes refraction and reflection effects at grazing angles using physically-based Fresnel dielectric model.

        """
        return _Graphic3d.Graphic3d_BSDF_CreateGlass(*args)

    @staticmethod
    def CreateMetallic(*args):
        r"""

        Parameters
        ----------
        theWeight: Graphic3d_Vec3
        theFresnel: Graphic3d_Fresnel
        theRoughness: float

        Return
        -------
        Graphic3d_BSDF

        Description
        -----------
        Creates BSDF describing polished metallic-like surface.

        """
        return _Graphic3d.Graphic3d_BSDF_CreateMetallic(*args)

    @staticmethod
    def CreateMetallicRoughness(*args):
        r"""

        Parameters
        ----------
        thePbr: Graphic3d_PBRMaterial

        Return
        -------
        Graphic3d_BSDF

        Description
        -----------
        Creates BSDF from PBR metallic-roughness material.

        """
        return _Graphic3d.Graphic3d_BSDF_CreateMetallicRoughness(*args)

    @staticmethod
    def CreateTransparent(*args):
        r"""

        Parameters
        ----------
        theWeight: Graphic3d_Vec3
        theAbsorptionColor: Graphic3d_Vec3
        theAbsorptionCoeff: float

        Return
        -------
        Graphic3d_BSDF

        Description
        -----------
        Creates BSDF describing transparent object. Transparent BSDF models simple transparency without refraction (the ray passes straight through the surface).

        """
        return _Graphic3d.Graphic3d_BSDF_CreateTransparent(*args)

    def DumpJson(self, depth=-1):
        r"""

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        """
        return _Graphic3d.Graphic3d_BSDF_DumpJson(self, depth)

    def Normalize(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Normalizes BSDF components.

        """
        return _Graphic3d.Graphic3d_BSDF_Normalize(self, *args)

    def __eq_wrapper__(self, other):
        return _Graphic3d.Graphic3d_BSDF___eq_wrapper__(self, other)

    def __eq__(self, right):
        try:
            return self.__eq_wrapper__(right)
        except:
            return False


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_BSDF

# Register Graphic3d_BSDF in _Graphic3d:
_Graphic3d.Graphic3d_BSDF_swigregister(Graphic3d_BSDF)
class Graphic3d_BoundBuffer(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Colors = property(_Graphic3d.Graphic3d_BoundBuffer_Colors_get, _Graphic3d.Graphic3d_BoundBuffer_Colors_set)
    Bounds = property(_Graphic3d.Graphic3d_BoundBuffer_Bounds_get, _Graphic3d.Graphic3d_BoundBuffer_Bounds_set)
    NbBounds = property(_Graphic3d.Graphic3d_BoundBuffer_NbBounds_get, _Graphic3d.Graphic3d_BoundBuffer_NbBounds_set)
    NbMaxBounds = property(_Graphic3d.Graphic3d_BoundBuffer_NbMaxBounds_get, _Graphic3d.Graphic3d_BoundBuffer_NbMaxBounds_set)

    def __init__(self, *args):
        r"""

        Parameters
        ----------
        theAlloc: NCollection_BaseAllocator

        Return
        -------
        None

        Description
        -----------
        Empty constructor.

        """
        _Graphic3d.Graphic3d_BoundBuffer_swiginit(self, _Graphic3d.new_Graphic3d_BoundBuffer(*args))

    def DumpJson(self, depth=-1):
        r"""

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        """
        return _Graphic3d.Graphic3d_BoundBuffer_DumpJson(self, depth)

    def Init(self, *args):
        r"""

        Parameters
        ----------
        theNbBounds: int
        theHasColors: bool

        Return
        -------
        bool

        Description
        -----------
        Allocates new empty array.

        """
        return _Graphic3d.Graphic3d_BoundBuffer_Init(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_BoundBuffer

# Register Graphic3d_BoundBuffer in _Graphic3d:
_Graphic3d.Graphic3d_BoundBuffer_swigregister(Graphic3d_BoundBuffer)
class Graphic3d_BufferRange(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Start = property(_Graphic3d.Graphic3d_BufferRange_Start_get, _Graphic3d.Graphic3d_BufferRange_Start_set)
    Length = property(_Graphic3d.Graphic3d_BufferRange_Length_get, _Graphic3d.Graphic3d_BufferRange_Length_set)

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Empty constructor.

        Parameters
        ----------
        theStart: int
        theLength: int

        Return
        -------
        None

        Description
        -----------
        Constructor.

        """
        _Graphic3d.Graphic3d_BufferRange_swiginit(self, _Graphic3d.new_Graphic3d_BufferRange(*args))

    def Clear(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Clear the range.

        """
        return _Graphic3d.Graphic3d_BufferRange_Clear(self, *args)

    def IsEmpty(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return True if range is empty.

        """
        return _Graphic3d.Graphic3d_BufferRange_IsEmpty(self, *args)

    def Unite(self, *args):
        r"""

        Parameters
        ----------
        theRange: Graphic3d_BufferRange

        Return
        -------
        None

        Description
        -----------
        Add another range to this one.

        """
        return _Graphic3d.Graphic3d_BufferRange_Unite(self, *args)

    def Upper(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Return the Upper element within the range.

        """
        return _Graphic3d.Graphic3d_BufferRange_Upper(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_BufferRange

# Register Graphic3d_BufferRange in _Graphic3d:
_Graphic3d.Graphic3d_BufferRange_swigregister(Graphic3d_BufferRange)
class Graphic3d_BvhCStructureSet(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

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

    def Box(self, *args):
        r"""

        Parameters
        ----------
        theIdx: int

        Return
        -------
        Graphic3d_BndBox3d

        Description
        -----------
        Returns AABB of the structure.

        """
        return _Graphic3d.Graphic3d_BvhCStructureSet_Box(self, *args)

    def Center(self, *args):
        r"""

        Parameters
        ----------
        theIdx: int
        theAxis: int

        Return
        -------
        float

        Description
        -----------
        Calculates center of the AABB along given axis.

        """
        return _Graphic3d.Graphic3d_BvhCStructureSet_Center(self, *args)

    def Size(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Returns total number of structures.

        """
        return _Graphic3d.Graphic3d_BvhCStructureSet_Size(self, *args)

    def Structures(self, *args):
        r"""
        Return
        -------
        NCollection_IndexedMap< Graphic3d_CStructure *>

        Description
        -----------
        Access directly a collection of structures.

        """
        return _Graphic3d.Graphic3d_BvhCStructureSet_Structures(self, *args)

    def Swap(self, *args):
        r"""

        Parameters
        ----------
        theIdx1: int
        theIdx2: int

        Return
        -------
        None

        Description
        -----------
        Swaps structures with the given indices.

        """
        return _Graphic3d.Graphic3d_BvhCStructureSet_Swap(self, *args)

    __repr__ = _dumps_object

    @methodnotwrapped
    def Graphic3d_BvhCStructureSet(self):
    	pass

    @methodnotwrapped
    def Add(self):
    	pass

    @methodnotwrapped
    def Clear(self):
    	pass

    @methodnotwrapped
    def GetStructureById(self):
    	pass

    @methodnotwrapped
    def Remove(self):
    	pass

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_BvhCStructureSet

# Register Graphic3d_BvhCStructureSet in _Graphic3d:
_Graphic3d.Graphic3d_BvhCStructureSet_swigregister(Graphic3d_BvhCStructureSet)
class Graphic3d_CLight(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"""

        Parameters
        ----------
        theType: Graphic3d_TypeOfLightSource

        Return
        -------
        None

        Description
        -----------
        Empty constructor, which should be followed by light source properties configuration.

        """
        _Graphic3d.Graphic3d_CLight_swiginit(self, _Graphic3d.new_Graphic3d_CLight(*args))

    def Angle(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_CLight_Angle(self, *args)

    def Attenuation(self, *args):
        r"""

        Parameters
        ----------

        Return
        -------
        theConstAttenuation: float
        theLinearAttenuation: float

        Description
        -----------
        Returns the attenuation factors.

        """
        return _Graphic3d.Graphic3d_CLight_Attenuation(self, *args)

    def Color(self, *args):
        r"""
        Return
        -------
        Quantity_Color

        Description
        -----------
        Returns the color of the light source; WHITE by default.

        """
        return _Graphic3d.Graphic3d_CLight_Color(self, *args)

    def Concentration(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Returns intensity distribution of the spot light, within [0.0, 1.0] range; 1.0 by default. This coefficient should be converted into spotlight exponent within [0.0, 128.0] range: @code float aSpotExponent = Concentration() * 128.0; anAttenuation *= pow (aCosA, aSpotExponent);' @endcode The concentration factor determines the dispersion of the light on the surface, the default value (1.0) corresponds to a minimum of dispersion.

        """
        return _Graphic3d.Graphic3d_CLight_Concentration(self, *args)

    def ConstAttenuation(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Returns constant attenuation factor of positional/spot light source; 1.0f by default. Distance attenuation factors of reducing positional/spot light intensity depending on the distance from its position: @code float anAttenuation = 1.0 / (ConstAttenuation() + LinearAttenuation() * theDistance + QuadraticAttenuation() * theDistance * theDistance); @endcode.

        """
        return _Graphic3d.Graphic3d_CLight_ConstAttenuation(self, *args)

    def CopyFrom(self, *args):
        r"""

        Parameters
        ----------
        theLight: Graphic3d_CLight

        Return
        -------
        None

        Description
        -----------
        Copy parameters from another light source excluding source type.

        """
        return _Graphic3d.Graphic3d_CLight_CopyFrom(self, *args)

    def Direction(self, *args):
        r"""
        Return
        -------
        gp_Dir

        Description
        -----------
        No available documentation.

        Parameters
        ----------

        Return
        -------
        theVx: float
        theVy: float
        theVz: float

        Description
        -----------
        Returns the theVx, theVy, theVz direction of the light source.

        """
        return _Graphic3d.Graphic3d_CLight_Direction(self, *args)

    def DisplayPosition(self, *args):
        r"""
        Return
        -------
        gp_Pnt

        Description
        -----------
        Returns location of positional/spot/directional light, which is the same as returned by Position().

        """
        return _Graphic3d.Graphic3d_CLight_DisplayPosition(self, *args)

    def DumpJson(self, depth=-1):
        r"""

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        """
        return _Graphic3d.Graphic3d_CLight_DumpJson(self, depth)

    def GetId(self, *args):
        r"""
        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_CLight_GetId(self, *args)

    def HasRange(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns True if maximum distance of point light source is defined.

        """
        return _Graphic3d.Graphic3d_CLight_HasRange(self, *args)

    def Headlight(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Alias for IsHeadlight().

        """
        return _Graphic3d.Graphic3d_CLight_Headlight(self, *args)

    def Intensity(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_CLight_Intensity(self, *args)

    def IsEnabled(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Check that the light source is turned on; True by default. This flag affects all occurrences of light sources, where it was registered and activated; so that it is possible defining an active light in View which is actually in disabled state.

        """
        return _Graphic3d.Graphic3d_CLight_IsEnabled(self, *args)

    def IsHeadlight(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns true if the light is a headlight; False by default. Headlight flag means that light position/direction are defined not in a World coordinate system, but relative to the camera orientation.

        """
        return _Graphic3d.Graphic3d_CLight_IsHeadlight(self, *args)

    def LinearAttenuation(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Returns linear attenuation factor of positional/spot light source; 0.0 by default. Distance attenuation factors of reducing positional/spot light intensity depending on the distance from its position: @code float anAttenuation = 1.0 / (ConstAttenuation() + LinearAttenuation() * theDistance + QuadraticAttenuation() * theDistance * theDistance); @endcode.

        """
        return _Graphic3d.Graphic3d_CLight_LinearAttenuation(self, *args)

    def Name(self, *args):
        r"""
        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        Returns light source name; empty string by default.

        """
        return _Graphic3d.Graphic3d_CLight_Name(self, *args)

    def PackedColor(self, *args):
        r"""
        Return
        -------
        Graphic3d_Vec4

        Description
        -----------
        Returns the color of the light source with dummy Alpha component, which should be ignored.

        """
        return _Graphic3d.Graphic3d_CLight_PackedColor(self, *args)

    def PackedDirection(self, *args):
        r"""
        Return
        -------
        Graphic3d_Vec3

        Description
        -----------
        Returns direction of directional/spot light.

        """
        return _Graphic3d.Graphic3d_CLight_PackedDirection(self, *args)

    def PackedDirectionRange(self, *args):
        r"""
        Return
        -------
        Graphic3d_Vec4

        Description
        -----------
        Returns direction of directional/spot light and range for positional/spot light in alpha channel.

        """
        return _Graphic3d.Graphic3d_CLight_PackedDirectionRange(self, *args)

    def PackedParams(self, *args):
        r"""
        Return
        -------
        Graphic3d_Vec4

        Description
        -----------
        Packed light parameters.

        """
        return _Graphic3d.Graphic3d_CLight_PackedParams(self, *args)

    def Position(self, *args):
        r"""
        Return
        -------
        gp_Pnt

        Description
        -----------
        No available documentation.

        Parameters
        ----------

        Return
        -------
        theX: float
        theY: float
        theZ: float

        Description
        -----------
        Returns location of positional/spot light.

        """
        return _Graphic3d.Graphic3d_CLight_Position(self, *args)

    def Range(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Returns maximum distance on which point light source affects to objects and is considered during illumination calculations. 0.0 means disabling range considering at all without any distance limits. Has sense only for point light sources (positional and spot).

        """
        return _Graphic3d.Graphic3d_CLight_Range(self, *args)

    def Revision(self, *args):
        r"""
        Return
        -------
        Standard_Size

        Description
        -----------
        Return: modification counter.

        """
        return _Graphic3d.Graphic3d_CLight_Revision(self, *args)

    def SetAngle(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Angle in radians of the cone created by the spot, should be within range (0.0, M_PI).

        """
        return _Graphic3d.Graphic3d_CLight_SetAngle(self, *args)

    def SetAttenuation(self, *args):
        r"""

        Parameters
        ----------
        theConstAttenuation: float
        theLinearAttenuation: float

        Return
        -------
        None

        Description
        -----------
        Defines the coefficients of attenuation; values should be >= 0.0 and their summ should not be equal to 0.

        """
        return _Graphic3d.Graphic3d_CLight_SetAttenuation(self, *args)

    def SetCastShadows(self, *args):
        r"""

        Parameters
        ----------
        theToCast: bool

        Return
        -------
        None

        Description
        -----------
        Enable/disable shadow casting.

        """
        return _Graphic3d.Graphic3d_CLight_SetCastShadows(self, *args)

    def SetColor(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Defines the color of a light source by giving the basic color.

        """
        return _Graphic3d.Graphic3d_CLight_SetColor(self, *args)

    def SetConcentration(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Defines the coefficient of concentration; value should be within range [0.0, 1.0].

        """
        return _Graphic3d.Graphic3d_CLight_SetConcentration(self, *args)

    def SetDirection(self, *args):
        r"""

        Parameters
        ----------
        theDir: gp_Dir

        Return
        -------
        None

        Description
        -----------
        Sets direction of directional/spot light.

        Parameters
        ----------
        theVx: float
        theVy: float
        theVz: float

        Return
        -------
        None

        Description
        -----------
        Sets direction of directional/spot light.

        """
        return _Graphic3d.Graphic3d_CLight_SetDirection(self, *args)

    def SetDisplayPosition(self, *args):
        r"""

        Parameters
        ----------
        thePosition: gp_Pnt

        Return
        -------
        None

        Description
        -----------
        Setup location of positional/spot/directional light, which is the same as SetPosition() but allows directional light source (technically having no position, but this point can be used for displaying light source presentation).

        """
        return _Graphic3d.Graphic3d_CLight_SetDisplayPosition(self, *args)

    def SetEnabled(self, *args):
        r"""

        Parameters
        ----------
        theIsOn: bool

        Return
        -------
        None

        Description
        -----------
        Change enabled state of the light state. This call does not remove or deactivate light source in Views/Viewers; instead it turns it OFF so that it just have no effect.

        """
        return _Graphic3d.Graphic3d_CLight_SetEnabled(self, *args)

    def SetHeadlight(self, *args):
        r"""

        Parameters
        ----------
        theValue: bool

        Return
        -------
        None

        Description
        -----------
        Setup headlight flag.

        """
        return _Graphic3d.Graphic3d_CLight_SetHeadlight(self, *args)

    def SetIntensity(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Modifies the intensity of light source, which should be > 0.0.

        """
        return _Graphic3d.Graphic3d_CLight_SetIntensity(self, *args)

    def SetName(self, *args):
        r"""

        Parameters
        ----------
        theName: str

        Return
        -------
        None

        Description
        -----------
        Sets light source name.

        """
        return _Graphic3d.Graphic3d_CLight_SetName(self, *args)

    def SetPosition(self, *args):
        r"""

        Parameters
        ----------
        thePosition: gp_Pnt

        Return
        -------
        None

        Description
        -----------
        Setup location of positional/spot light.

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

        Return
        -------
        None

        Description
        -----------
        Setup location of positional/spot light.

        """
        return _Graphic3d.Graphic3d_CLight_SetPosition(self, *args)

    def SetRange(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Modifies maximum distance on which point light source affects to objects and is considered during illumination calculations. Positional and spot lights are only point light sources. 0.0 means disabling range considering at all without any distance limits.

        """
        return _Graphic3d.Graphic3d_CLight_SetRange(self, *args)

    def SetSmoothAngle(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Modifies the smoothing angle (in radians) of directional light source; should be within range [0.0, M_PI/2].

        """
        return _Graphic3d.Graphic3d_CLight_SetSmoothAngle(self, *args)

    def SetSmoothRadius(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Modifies the smoothing radius of positional/spot light; should be >= 0.0.

        """
        return _Graphic3d.Graphic3d_CLight_SetSmoothRadius(self, *args)

    def Smoothness(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Returns the smoothness of light source (either smoothing angle for directional light or smoothing radius in case of positional light); 0.0 by default.

        """
        return _Graphic3d.Graphic3d_CLight_Smoothness(self, *args)

    def ToCastShadows(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return True if shadow casting is enabled; False by default. Has no effect in Ray-Tracing rendering mode.

        """
        return _Graphic3d.Graphic3d_CLight_ToCastShadows(self, *args)

    def Type(self, *args):
        r"""
        Return
        -------
        Graphic3d_TypeOfLightSource

        Description
        -----------
        Returns the Type of the Light, cannot be changed after object construction.

        """
        return _Graphic3d.Graphic3d_CLight_Type(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_CLight

# Register Graphic3d_CLight in _Graphic3d:
_Graphic3d.Graphic3d_CLight_swigregister(Graphic3d_CLight)
class Graphic3d_CStructure(OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr
    ViewAffinity = property(_Graphic3d.Graphic3d_CStructure_ViewAffinity_get, _Graphic3d.Graphic3d_CStructure_ViewAffinity_set)
    IsInfinite = property(_Graphic3d.Graphic3d_CStructure_IsInfinite_get, _Graphic3d.Graphic3d_CStructure_IsInfinite_set)
    stick = property(_Graphic3d.Graphic3d_CStructure_stick_get, _Graphic3d.Graphic3d_CStructure_stick_set)
    highlight = property(_Graphic3d.Graphic3d_CStructure_highlight_get, _Graphic3d.Graphic3d_CStructure_highlight_set)
    visible = property(_Graphic3d.Graphic3d_CStructure_visible_get, _Graphic3d.Graphic3d_CStructure_visible_set)
    HLRValidation = property(_Graphic3d.Graphic3d_CStructure_HLRValidation_get, _Graphic3d.Graphic3d_CStructure_HLRValidation_set)
    IsForHighlight = property(_Graphic3d.Graphic3d_CStructure_IsForHighlight_get, _Graphic3d.Graphic3d_CStructure_IsForHighlight_set)
    IsMutable = property(_Graphic3d.Graphic3d_CStructure_IsMutable_get, _Graphic3d.Graphic3d_CStructure_IsMutable_set)
    Is2dText = property(_Graphic3d.Graphic3d_CStructure_Is2dText_get, _Graphic3d.Graphic3d_CStructure_Is2dText_set)

    def BndBoxClipCheck(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns whether check of object's bounding box clipping is enabled before drawing of object; True by default.

        """
        return _Graphic3d.Graphic3d_CStructure_BndBoxClipCheck(self, *args)

    def BoundingBox(self, *args):
        r"""
        Return
        -------
        Graphic3d_BndBox3d

        Description
        -----------
        Return: bounding box of this presentation.

        """
        return _Graphic3d.Graphic3d_CStructure_BoundingBox(self, *args)

    def ChangeBoundingBox(self, *args):
        r"""
        Return
        -------
        Graphic3d_BndBox3d

        Description
        -----------
        Return: bounding box of this presentation without transformation matrix applied.

        """
        return _Graphic3d.Graphic3d_CStructure_ChangeBoundingBox(self, *args)

    def Clear(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Clear graphic data.

        """
        return _Graphic3d.Graphic3d_CStructure_Clear(self, *args)

    def ClipPlanes(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_SequenceOfHClipPlane>

        Description
        -----------
        Return: associated clip planes.

        """
        return _Graphic3d.Graphic3d_CStructure_ClipPlanes(self, *args)

    def Connect(self, *args):
        r"""

        Parameters
        ----------
        theStructure: Graphic3d_CStructure

        Return
        -------
        None

        Description
        -----------
        Connect other structure to this one.

        """
        return _Graphic3d.Graphic3d_CStructure_Connect(self, *args)

    def Disconnect(self, *args):
        r"""

        Parameters
        ----------
        theStructure: Graphic3d_CStructure

        Return
        -------
        None

        Description
        -----------
        Disconnect other structure to this one.

        """
        return _Graphic3d.Graphic3d_CStructure_Disconnect(self, *args)

    def DumpJson(self, depth=-1):
        r"""

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        """
        return _Graphic3d.Graphic3d_CStructure_DumpJson(self, depth)

    def GraphicDriver(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_GraphicDriver>

        Description
        -----------
        Return: graphic driver created this structure.

        """
        return _Graphic3d.Graphic3d_CStructure_GraphicDriver(self, *args)

    def GraphicHighlight(self, *args):
        r"""

        Parameters
        ----------
        theStyle: Graphic3d_PresentationAttributes

        Return
        -------
        None

        Description
        -----------
        Highlights structure with the given style.

        """
        return _Graphic3d.Graphic3d_CStructure_GraphicHighlight(self, *args)

    def GraphicUnhighlight(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Unhighlights the structure and invalidates pointer to structure's highlight style.

        """
        return _Graphic3d.Graphic3d_CStructure_GraphicUnhighlight(self, *args)

    def Groups(self, *args):
        r"""
        Return
        -------
        Graphic3d_SequenceOfGroup

        Description
        -----------
        Return: graphic groups.

        """
        return _Graphic3d.Graphic3d_CStructure_Groups(self, *args)

    def HasGroupTransformPersistence(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return True if some groups might have transform persistence; False by default.

        """
        return _Graphic3d.Graphic3d_CStructure_HasGroupTransformPersistence(self, *args)

    def HighlightStyle(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_PresentationAttributes>

        Description
        -----------
        Returns valid handle to highlight style of the structure in case if highlight flag is set to true.

        """
        return _Graphic3d.Graphic3d_CStructure_HighlightStyle(self, *args)

    def Identification(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Return structure id (generated by Graphic3d_GraphicDriver::NewIdentification() during structure construction).

        """
        return _Graphic3d.Graphic3d_CStructure_Identification(self, *args)

    def IsAlwaysRendered(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Checks if the structure should be included into BVH tree or not.

        """
        return _Graphic3d.Graphic3d_CStructure_IsAlwaysRendered(self, *args)

    def IsCulled(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns False if the structure hits the current view volume, otherwise returns True.

        """
        return _Graphic3d.Graphic3d_CStructure_IsCulled(self, *args)

    def IsVisible(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return structure visibility flag.

        Parameters
        ----------
        theViewId: int

        Return
        -------
        bool

        Description
        -----------
        Return structure visibility considering both View Affinity and global visibility state.

        """
        return _Graphic3d.Graphic3d_CStructure_IsVisible(self, *args)

    def MarkAsNotCulled(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Marks structure as overlapping the current view volume one. The method is called during traverse of BVH tree.

        """
        return _Graphic3d.Graphic3d_CStructure_MarkAsNotCulled(self, *args)

    def NewGroup(self, *args):
        r"""

        Parameters
        ----------
        theStruct: Graphic3d_Structure

        Return
        -------
        opencascade::handle<Graphic3d_Group>

        Description
        -----------
        Create new group within this structure.

        """
        return _Graphic3d.Graphic3d_CStructure_NewGroup(self, *args)

    def OnVisibilityChanged(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Update structure visibility state.

        """
        return _Graphic3d.Graphic3d_CStructure_OnVisibilityChanged(self, *args)

    def PreviousPriority(self, *args):
        r"""
        Return
        -------
        Graphic3d_DisplayPriority

        Description
        -----------
        Return previous structure display priority.

        """
        return _Graphic3d.Graphic3d_CStructure_PreviousPriority(self, *args)

    def Priority(self, *args):
        r"""
        Return
        -------
        Graphic3d_DisplayPriority

        Description
        -----------
        Return structure display priority.

        """
        return _Graphic3d.Graphic3d_CStructure_Priority(self, *args)

    def RemoveGroup(self, *args):
        r"""

        Parameters
        ----------
        theGroup: Graphic3d_Group

        Return
        -------
        None

        Description
        -----------
        Remove group from this structure.

        """
        return _Graphic3d.Graphic3d_CStructure_RemoveGroup(self, *args)

    def SetBndBoxClipCheck(self, *args):
        r"""

        Parameters
        ----------
        theBndBoxClipCheck: bool

        Return
        -------
        None

        Description
        -----------
        Enable/disable check of object's bounding box clipping before drawing of object.

        """
        return _Graphic3d.Graphic3d_CStructure_SetBndBoxClipCheck(self, *args)

    def SetClipPlanes(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Pass clip planes to the associated graphic driver structure.

        """
        return _Graphic3d.Graphic3d_CStructure_SetClipPlanes(self, *args)

    def SetCulled(self, *args):
        r"""

        Parameters
        ----------
        theIsCulled: bool

        Return
        -------
        None

        Description
        -----------
        Marks structure as culled/not culled - note that IsAlwaysRendered() is ignored here!.

        """
        return _Graphic3d.Graphic3d_CStructure_SetCulled(self, *args)

    def SetGroupTransformPersistence(self, *args):
        r"""

        Parameters
        ----------
        theValue: bool

        Return
        -------
        None

        Description
        -----------
        Set if some groups might have transform persistence.

        """
        return _Graphic3d.Graphic3d_CStructure_SetGroupTransformPersistence(self, *args)

    def SetPreviousPriority(self, *args):
        r"""

        Parameters
        ----------
        thePriority: Graphic3d_DisplayPriority

        Return
        -------
        None

        Description
        -----------
        Set previous structure display priority.

        """
        return _Graphic3d.Graphic3d_CStructure_SetPreviousPriority(self, *args)

    def SetPriority(self, *args):
        r"""

        Parameters
        ----------
        thePriority: Graphic3d_DisplayPriority

        Return
        -------
        None

        Description
        -----------
        Set structure display priority.

        """
        return _Graphic3d.Graphic3d_CStructure_SetPriority(self, *args)

    def SetTransformPersistence(self, *args):
        r"""

        Parameters
        ----------
        theTrsfPers: Graphic3d_TransformPers

        Return
        -------
        None

        Description
        -----------
        Set transformation persistence.

        """
        return _Graphic3d.Graphic3d_CStructure_SetTransformPersistence(self, *args)

    def SetTransformation(self, *args):
        r"""

        Parameters
        ----------
        theTrsf: TopLoc_Datum3D

        Return
        -------
        None

        Description
        -----------
        Assign transformation.

        """
        return _Graphic3d.Graphic3d_CStructure_SetTransformation(self, *args)

    def SetZLayer(self, *args):
        r"""

        Parameters
        ----------
        theLayerIndex: int

        Return
        -------
        None

        Description
        -----------
        Set z layer ID to display the structure in specified layer.

        """
        return _Graphic3d.Graphic3d_CStructure_SetZLayer(self, *args)

    def ShadowLink(self, *args):
        r"""

        Parameters
        ----------
        theManager: Graphic3d_StructureManager

        Return
        -------
        opencascade::handle<Graphic3d_CStructure>

        Description
        -----------
        Create shadow link to this structure.

        """
        return _Graphic3d.Graphic3d_CStructure_ShadowLink(self, *args)

    def TransformPersistence(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_TransformPers>

        Description
        -----------
        Return transformation persistence.

        """
        return _Graphic3d.Graphic3d_CStructure_TransformPersistence(self, *args)

    def Transformation(self, *args):
        r"""
        Return
        -------
        opencascade::handle<TopLoc_Datum3D>

        Description
        -----------
        Return transformation.

        """
        return _Graphic3d.Graphic3d_CStructure_Transformation(self, *args)

    def ZLayer(self, *args):
        r"""
        Return
        -------
        Graphic3d_ZLayerId

        Description
        -----------
        Get z layer ID.

        """
        return _Graphic3d.Graphic3d_CStructure_ZLayer(self, *args)

    def updateLayerTransformation(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Update render transformation matrix.

        """
        return _Graphic3d.Graphic3d_CStructure_updateLayerTransformation(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_CStructure

# Register Graphic3d_CStructure in _Graphic3d:
_Graphic3d.Graphic3d_CStructure_swigregister(Graphic3d_CStructure)
class Graphic3d_Camera(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
    Projection_Orthographic = _Graphic3d.Graphic3d_Camera_Projection_Orthographic
    Projection_Perspective = _Graphic3d.Graphic3d_Camera_Projection_Perspective
    Projection_Stereo = _Graphic3d.Graphic3d_Camera_Projection_Stereo
    Projection_MonoLeftEye = _Graphic3d.Graphic3d_Camera_Projection_MonoLeftEye
    Projection_MonoRightEye = _Graphic3d.Graphic3d_Camera_Projection_MonoRightEye
    FocusType_Absolute = _Graphic3d.Graphic3d_Camera_FocusType_Absolute
    FocusType_Relative = _Graphic3d.Graphic3d_Camera_FocusType_Relative
    IODType_Absolute = _Graphic3d.Graphic3d_Camera_IODType_Absolute
    IODType_Relative = _Graphic3d.Graphic3d_Camera_IODType_Relative
    FrustumVert_LeftBottomNear = _Graphic3d.Graphic3d_Camera_FrustumVert_LeftBottomNear
    FrustumVert_LeftBottomFar = _Graphic3d.Graphic3d_Camera_FrustumVert_LeftBottomFar
    FrustumVert_LeftTopNear = _Graphic3d.Graphic3d_Camera_FrustumVert_LeftTopNear
    FrustumVert_LeftTopFar = _Graphic3d.Graphic3d_Camera_FrustumVert_LeftTopFar
    FrustumVert_RightBottomNear = _Graphic3d.Graphic3d_Camera_FrustumVert_RightBottomNear
    FrustumVert_RightBottomFar = _Graphic3d.Graphic3d_Camera_FrustumVert_RightBottomFar
    FrustumVert_RightTopNear = _Graphic3d.Graphic3d_Camera_FrustumVert_RightTopNear
    FrustumVert_RightTopFar = _Graphic3d.Graphic3d_Camera_FrustumVert_RightTopFar
    FrustumVerticesNB = _Graphic3d.Graphic3d_Camera_FrustumVerticesNB


    class Projection(IntEnum):
    	Projection_Orthographic = 0
    	Projection_Perspective = 1
    	Projection_Stereo = 2
    	Projection_MonoLeftEye = 3
    	Projection_MonoRightEye = 4
    Projection_Orthographic = Projection.Projection_Orthographic
    Projection_Perspective = Projection.Projection_Perspective
    Projection_Stereo = Projection.Projection_Stereo
    Projection_MonoLeftEye = Projection.Projection_MonoLeftEye
    Projection_MonoRightEye = Projection.Projection_MonoRightEye

    class FocusType(IntEnum):
    	FocusType_Absolute = 0
    	FocusType_Relative = 1
    FocusType_Absolute = FocusType.FocusType_Absolute
    FocusType_Relative = FocusType.FocusType_Relative

    class IODType(IntEnum):
    	IODType_Absolute = 0
    	IODType_Relative = 1
    IODType_Absolute = IODType.IODType_Absolute
    IODType_Relative = IODType.IODType_Relative


    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Default constructor. Initializes camera with the following properties: Eye (0, 0, -2); Center (0, 0, 0); Up (0, 1, 0); Type (Orthographic); FOVy (45); Scale (1000); IsStereo(false); ZNear (0.001); ZFar (3000.0); Aspect(1); ZFocus(1.0); ZFocusType(Relative); IOD(0.05); IODType(Relative).

        Parameters
        ----------
        theOther: Graphic3d_Camera

        Return
        -------
        None

        Description
        -----------
        Copy constructor. 
        Input parameter: theOther the camera to copy from.

        """
        _Graphic3d.Graphic3d_Camera_swiginit(self, _Graphic3d.new_Graphic3d_Camera(*args))

    def Aspect(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Get camera display ratio. 
        Return: display ratio.

        """
        return _Graphic3d.Graphic3d_Camera_Aspect(self, *args)

    def AxialScale(self, *args):
        r"""
        Return
        -------
        gp_XYZ

        Description
        -----------
        Get camera axial scale. 
        Return: Camera's axial scale.

        """
        return _Graphic3d.Graphic3d_Camera_AxialScale(self, *args)

    def Center(self, *args):
        r"""
        Return
        -------
        gp_Pnt

        Description
        -----------
        Get Center of the camera, e.g. the point where camera looks at. This point is computed as Eye() translated along Direction() at Distance(). 
        Return: the point where the camera looks at.

        """
        return _Graphic3d.Graphic3d_Camera_Center(self, *args)

    def ConvertProj2View(self, *args):
        r"""

        Parameters
        ----------
        thePnt: gp_Pnt

        Return
        -------
        gp_Pnt

        Description
        -----------
        Convert point from projection coordinate space to view coordinate space. 
        Input parameter: thePnt the point in NDC. 
        Return: point in VCS.

        """
        return _Graphic3d.Graphic3d_Camera_ConvertProj2View(self, *args)

    def ConvertView2Proj(self, *args):
        r"""

        Parameters
        ----------
        thePnt: gp_Pnt

        Return
        -------
        gp_Pnt

        Description
        -----------
        Convert point from view coordinate space to projection coordinate space. 
        Input parameter: thePnt the point in VCS. 
        Return: point in NDC.

        """
        return _Graphic3d.Graphic3d_Camera_ConvertView2Proj(self, *args)

    def ConvertView2World(self, *args):
        r"""

        Parameters
        ----------
        thePnt: gp_Pnt

        Return
        -------
        gp_Pnt

        Description
        -----------
        Convert point from view coordinate space to world coordinates. 
        Input parameter: thePnt the 3D point in VCS. 
        Return: point in WCS.

        """
        return _Graphic3d.Graphic3d_Camera_ConvertView2World(self, *args)

    def ConvertWorld2View(self, *args):
        r"""

        Parameters
        ----------
        thePnt: gp_Pnt

        Return
        -------
        gp_Pnt

        Description
        -----------
        Convert point from world coordinate space to view coordinate space. 
        Input parameter: thePnt the 3D point in WCS. 
        Return: point in VCS.

        """
        return _Graphic3d.Graphic3d_Camera_ConvertWorld2View(self, *args)

    def Copy(self, *args):
        r"""

        Parameters
        ----------
        theOther: Graphic3d_Camera

        Return
        -------
        None

        Description
        -----------
        Copy properties of another camera. 
        Input parameter: theOther the camera to copy from.

        """
        return _Graphic3d.Graphic3d_Camera_Copy(self, *args)

    def CopyMappingData(self, *args):
        r"""

        Parameters
        ----------
        theOtherCamera: Graphic3d_Camera

        Return
        -------
        None

        Description
        -----------
        Initialize mapping related parameters from other camera handle.

        """
        return _Graphic3d.Graphic3d_Camera_CopyMappingData(self, *args)

    def CopyOrientationData(self, *args):
        r"""

        Parameters
        ----------
        theOtherCamera: Graphic3d_Camera

        Return
        -------
        None

        Description
        -----------
        Initialize orientation related parameters from other camera handle.

        """
        return _Graphic3d.Graphic3d_Camera_CopyOrientationData(self, *args)

    def Direction(self, *args):
        r"""
        Return
        -------
        gp_Dir

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_Camera_Direction(self, *args)

    def Distance(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Get distance of Eye from camera Center. 
        Return: the distance.

        """
        return _Graphic3d.Graphic3d_Camera_Distance(self, *args)

    def DumpJson(self, depth=-1):
        r"""

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        """
        return _Graphic3d.Graphic3d_Camera_DumpJson(self, depth)

    def Eye(self, *args):
        r"""
        Return
        -------
        gp_Pnt

        Description
        -----------
        Get camera Eye position. 
        Return: camera eye location.

        """
        return _Graphic3d.Graphic3d_Camera_Eye(self, *args)

    def FOV2d(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Get Field Of View (FOV) restriction for 2D on-screen elements; 180 degrees by default. When 2D FOV is smaller than FOVy or FOVx, 2D elements defined within offset from view corner will be extended to fit into specified 2D FOV. This can be useful to make 2D elements sharply visible, like in case of HMD normally having extra large FOVy.

        """
        return _Graphic3d.Graphic3d_Camera_FOV2d(self, *args)

    def FOVx(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Get Field Of View (FOV) in x axis. 
        Return: the FOV value in degrees.

        """
        return _Graphic3d.Graphic3d_Camera_FOVx(self, *args)

    def FOVy(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Get Field Of View (FOV) in y axis. 
        Return: the FOV value in degrees.

        """
        return _Graphic3d.Graphic3d_Camera_FOVy(self, *args)

    def FitMinMax(self, *args):
        r"""

        Parameters
        ----------
        theBox: Bnd_Box
        theResolution: float
        theToEnlargeIfLine: bool

        Return
        -------
        bool

        Description
        -----------
        Adjust camera to fit in specified AABB.

        """
        return _Graphic3d.Graphic3d_Camera_FitMinMax(self, *args)

    def Frustum(self, *args):
        r"""

        Parameters
        ----------
        theLeft: gp_Pln
        theRight: gp_Pln
        theBottom: gp_Pln
        theTop: gp_Pln
        theNear: gp_Pln
        theFar: gp_Pln

        Return
        -------
        None

        Description
        -----------
        Calculate WCS frustum planes for the camera projection volume. Frustum is a convex volume determined by six planes directing inwards. The frustum planes are usually used as inputs for camera algorithms. Thus, if any changes to projection matrix calculation are necessary, the frustum planes calculation should be also touched. @param[out] theLeft the frustum plane for left side of view. @param[out] theRight the frustum plane for right side of view. @param[out] theBottom the frustum plane for bottom side of view. @param[out] theTop the frustum plane for top side of view. @param[out] theNear the frustum plane for near side of view. @param[out] theFar the frustum plane for far side of view.

        """
        return _Graphic3d.Graphic3d_Camera_Frustum(self, *args)

    def FrustumPoints(self, *args):
        r"""

        Parameters
        ----------
        thePoints: NCollection_Array1<Graphic3d_Vec3d>
        theModelWorld: Graphic3d_Mat4d (optional, default to Graphic3d_Mat4d())

        Return
        -------
        None

        Description
        -----------
        Fill array of current view frustum corners. The size of this array is equal to FrustumVerticesNB. The order of vertices is as defined in FrustumVert_* enumeration.

        """
        return _Graphic3d.Graphic3d_Camera_FrustumPoints(self, *args)

    def GetIODType(self, *args):
        r"""
        Return
        -------
        Graphic3d_Camera::IODType

        Description
        -----------
        Get Intraocular distance definition type. 
        Return: definition type used for Intraocular distance.

        """
        return _Graphic3d.Graphic3d_Camera_GetIODType(self, *args)

    def IOD(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Get Intraocular distance value. 
        Return: absolute or relative IOD value depending on its definition type.

        """
        return _Graphic3d.Graphic3d_Camera_IOD(self, *args)

    @staticmethod
    def Interpolate(*args):
        r"""

        Parameters
        ----------
        theStart: Graphic3d_Camera
        theEnd: Graphic3d_Camera
        theT: double
        theCamera: Graphic3d_Camera

        Return
        -------
        None

        Description
        -----------
        Linear interpolation tool for camera orientation and position. This tool interpolates camera parameters scale, eye, center, rotation (up and direction vectors) independently. 
        See also: Graphic3d_CameraLerp //! Eye/Center interpolation is performed through defining an anchor point in-between Center and Eye. The anchor position is defined as point near to the camera point which has smaller translation part. The main idea is to keep the distance between Center and Eye (which will change if Center and Eye translation will be interpolated independently). E.g.: - When both Center and Eye are moved at the same vector -> both will be just translated by straight line; - When Center is not moved -> camera Eye will move around Center through arc; - When Eye is not moved -> camera Center will move around Eye through arc; - When both Center and Eye are move by different vectors -> transformation will be something in between, and will try interpolate linearly the distance between Center and Eye. //! This transformation might be not in line with user expectations. In this case, application might define intermediate camera positions for interpolation or implement own interpolation logic. //! 
        Input parameter: theStart initial camera position 
        Input parameter: theEnd final camera position 
        Input parameter: theT step between initial and final positions within [0,1] range @param[out] theCamera interpolation result.

        """
        return _Graphic3d.Graphic3d_Camera_Interpolate(*args)

    def InvalidateOrientation(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Invalidate orientation matrix. The matrix will be updated on request.

        """
        return _Graphic3d.Graphic3d_Camera_InvalidateOrientation(self, *args)

    def InvalidateProjection(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Invalidate state of projection matrix. The matrix will be updated on request.

        """
        return _Graphic3d.Graphic3d_Camera_InvalidateProjection(self, *args)

    def IsCustomMonoProjection(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return True if custom projection matrix is set.

        """
        return _Graphic3d.Graphic3d_Camera_IsCustomMonoProjection(self, *args)

    def IsCustomStereoFrustum(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return True if custom stereo frustums are set.

        """
        return _Graphic3d.Graphic3d_Camera_IsCustomStereoFrustum(self, *args)

    def IsCustomStereoProjection(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return True if custom stereo projection matrices are set.

        """
        return _Graphic3d.Graphic3d_Camera_IsCustomStereoProjection(self, *args)

    def IsOrthographic(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Check that the camera projection is orthographic. 
        Return: boolean flag that indicates whether the camera's projection is orthographic or not.

        """
        return _Graphic3d.Graphic3d_Camera_IsOrthographic(self, *args)

    def IsStereo(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Check whether the camera projection is stereo. Please note that stereo rendering is now implemented with support of Quad buffering. 
        Return: boolean flag indicating whether the stereographic L/R projection is chosen.

        """
        return _Graphic3d.Graphic3d_Camera_IsStereo(self, *args)

    def IsZeroToOneDepth(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return True if camera should calculate projection matrix for [0, 1] depth range or for [-1, 1] range. False by default.

        """
        return _Graphic3d.Graphic3d_Camera_IsZeroToOneDepth(self, *args)

    def MoveEyeTo(self, *args):
        r"""

        Parameters
        ----------
        theEye: gp_Pnt

        Return
        -------
        None

        Description
        -----------
        Sets camera Eye position. Unlike SetEye(), this method only changes Eye point and preserves camera direction. 
        Input parameter: theEye the location of camera's Eye. 
        See also: SetEye().

        """
        return _Graphic3d.Graphic3d_Camera_MoveEyeTo(self, *args)

    def NDC2dOffsetX(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Return offset to the view corner in NDC space within dimension X for 2d on-screen elements, which is normally 0.5. Can be clamped when FOVx exceeds FOV2d.

        """
        return _Graphic3d.Graphic3d_Camera_NDC2dOffsetX(self, *args)

    def NDC2dOffsetY(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Return offset to the view corner in NDC space within dimension X for 2d on-screen elements, which is normally 0.5. Can be clamped when FOVy exceeds FOV2d.

        """
        return _Graphic3d.Graphic3d_Camera_NDC2dOffsetY(self, *args)

    def OrientationMatrix(self, *args):
        r"""
        Return
        -------
        Graphic3d_Mat4d

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_Camera_OrientationMatrix(self, *args)

    def OrientationMatrixF(self, *args):
        r"""
        Return
        -------
        Graphic3d_Mat4

        Description
        -----------
        Get orientation matrix of Standard_ShortReal precision. 
        Return: camera orientation matrix.

        """
        return _Graphic3d.Graphic3d_Camera_OrientationMatrixF(self, *args)

    def OrthogonalizeUp(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Orthogonalize up direction vector.

        """
        return _Graphic3d.Graphic3d_Camera_OrthogonalizeUp(self, *args)

    def OrthogonalizedUp(self, *args):
        r"""
        Return
        -------
        gp_Dir

        Description
        -----------
        Return a copy of orthogonalized up direction vector.

        """
        return _Graphic3d.Graphic3d_Camera_OrthogonalizedUp(self, *args)

    def Project(self, *args):
        r"""

        Parameters
        ----------
        thePnt: gp_Pnt

        Return
        -------
        gp_Pnt

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_Camera_Project(self, *args)

    def ProjectionMatrix(self, *args):
        r"""
        Return
        -------
        Graphic3d_Mat4d

        Description
        -----------
        Get monographic or middle point projection matrix used for monographic rendering and for point projection / unprojection. 
        Return: monographic projection matrix.

        """
        return _Graphic3d.Graphic3d_Camera_ProjectionMatrix(self, *args)

    def ProjectionMatrixF(self, *args):
        r"""
        Return
        -------
        Graphic3d_Mat4

        Description
        -----------
        Get monographic or middle point projection matrix of Standard_ShortReal precision used for monographic rendering and for point projection / unprojection. 
        Return: monographic projection matrix.

        """
        return _Graphic3d.Graphic3d_Camera_ProjectionMatrixF(self, *args)

    def ProjectionState(self, *args):
        r"""
        Return
        -------
        Standard_Size

        Description
        -----------
        Returns modification state of camera projection matrix.

        """
        return _Graphic3d.Graphic3d_Camera_ProjectionState(self, *args)

    def ProjectionStereoLeft(self, *args):
        r"""
        Return
        -------
        Graphic3d_Mat4d

        Description
        -----------
        Return: stereographic matrix computed for left eye. Please note that this method is used for rendering for <i>Projection_Stereo</i>.

        """
        return _Graphic3d.Graphic3d_Camera_ProjectionStereoLeft(self, *args)

    def ProjectionStereoLeftF(self, *args):
        r"""
        Return
        -------
        Graphic3d_Mat4

        Description
        -----------
        Return: stereographic matrix of Standard_ShortReal precision computed for left eye. Please note that this method is used for rendering for <i>Projection_Stereo</i>.

        """
        return _Graphic3d.Graphic3d_Camera_ProjectionStereoLeftF(self, *args)

    def ProjectionStereoRight(self, *args):
        r"""
        Return
        -------
        Graphic3d_Mat4d

        Description
        -----------
        Return: stereographic matrix computed for right eye. Please note that this method is used for rendering for <i>Projection_Stereo</i>.

        """
        return _Graphic3d.Graphic3d_Camera_ProjectionStereoRight(self, *args)

    def ProjectionStereoRightF(self, *args):
        r"""
        Return
        -------
        Graphic3d_Mat4

        Description
        -----------
        Return: stereographic matrix of Standard_ShortReal precision computed for right eye. Please note that this method is used for rendering for <i>Projection_Stereo</i>.

        """
        return _Graphic3d.Graphic3d_Camera_ProjectionStereoRightF(self, *args)

    def ProjectionType(self, *args):
        r"""
        Return
        -------
        Graphic3d_Camera::Projection

        Description
        -----------
        Return: camera projection type.

        """
        return _Graphic3d.Graphic3d_Camera_ProjectionType(self, *args)

    def ResetCustomProjection(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Unset all custom frustums and projection matrices.

        """
        return _Graphic3d.Graphic3d_Camera_ResetCustomProjection(self, *args)

    def Scale(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Get camera scale. 
        Return: camera scale factor.

        """
        return _Graphic3d.Graphic3d_Camera_Scale(self, *args)

    def SetAspect(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Changes width / height display ratio. 
        Input parameter: theAspect the display ratio.

        """
        return _Graphic3d.Graphic3d_Camera_SetAspect(self, *args)

    def SetAxialScale(self, *args):
        r"""

        Parameters
        ----------
        theAxialScale: gp_XYZ

        Return
        -------
        None

        Description
        -----------
        Set camera axial scale. 
        Input parameter: theAxialScale the axial scale vector.

        """
        return _Graphic3d.Graphic3d_Camera_SetAxialScale(self, *args)

    def SetCenter(self, *args):
        r"""

        Parameters
        ----------
        theCenter: gp_Pnt

        Return
        -------
        None

        Description
        -----------
        Sets Center of the camera, e.g. the point where camera looks at. This methods changes camera direction, so that the new direction is computed from current Eye position to specified Center position. 
        Input parameter: theCenter the point where the camera looks at.

        """
        return _Graphic3d.Graphic3d_Camera_SetCenter(self, *args)

    def SetCustomMonoProjection(self, *args):
        r"""

        Parameters
        ----------
        theProj: Graphic3d_Mat4d

        Return
        -------
        None

        Description
        -----------
        Set custom projection matrix.

        """
        return _Graphic3d.Graphic3d_Camera_SetCustomMonoProjection(self, *args)

    def SetCustomStereoFrustums(self, *args):
        r"""

        Parameters
        ----------
        theFrustumL: Aspect_FrustumLRBT<float>
        theFrustumR: Aspect_FrustumLRBT<float>

        Return
        -------
        None

        Description
        -----------
        Set custom stereo frustums. These can be retrieved from APIs like OpenVR.

        """
        return _Graphic3d.Graphic3d_Camera_SetCustomStereoFrustums(self, *args)

    def SetCustomStereoProjection(self, *args):
        r"""

        Parameters
        ----------
        theProjL: Graphic3d_Mat4d
        theHeadToEyeL: Graphic3d_Mat4d
        theProjR: Graphic3d_Mat4d
        theHeadToEyeR: Graphic3d_Mat4d

        Return
        -------
        None

        Description
        -----------
        Set custom stereo projection matrices. 
        Input parameter: theProjL left eye projection matrix 
        Input parameter: theHeadToEyeL left head to eye translation matrix 
        Input parameter: theProjR right eye projection matrix 
        Input parameter: theHeadToEyeR right head to eye translation matrix.

        """
        return _Graphic3d.Graphic3d_Camera_SetCustomStereoProjection(self, *args)

    def SetDirection(self, *args):
        r"""

        Parameters
        ----------
        theDir: gp_Dir

        Return
        -------
        None

        Description
        -----------
        Sets camera look direction and computes the new Eye position relative to current Center. WARNING! This method does NOT verify that the current Up() vector is orthogonal to the new Direction. 
        Input parameter: theDir the direction.

        """
        return _Graphic3d.Graphic3d_Camera_SetDirection(self, *args)

    def SetDirectionFromEye(self, *args):
        r"""

        Parameters
        ----------
        theDir: gp_Dir

        Return
        -------
        None

        Description
        -----------
        Sets camera look direction preserving the current Eye() position. WARNING! This method does NOT verify that the current Up() vector is orthogonal to the new Direction. 
        Input parameter: theDir the direction.

        """
        return _Graphic3d.Graphic3d_Camera_SetDirectionFromEye(self, *args)

    def SetDistance(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Set distance of Eye from camera Center. 
        Input parameter: theDistance the distance.

        """
        return _Graphic3d.Graphic3d_Camera_SetDistance(self, *args)

    def SetEye(self, *args):
        r"""

        Parameters
        ----------
        theEye: gp_Pnt

        Return
        -------
        None

        Description
        -----------
        Sets camera Eye position. WARNING! For backward compatibility reasons, this method also changes view direction, so that the new direction is computed from new Eye position to old Center position. 
        Input parameter: theEye the location of camera's Eye. 
        See also: MoveEyeTo(), SetEyeAndCenter().

        """
        return _Graphic3d.Graphic3d_Camera_SetEye(self, *args)

    def SetEyeAndCenter(self, *args):
        r"""

        Parameters
        ----------
        theEye: gp_Pnt
        theCenter: gp_Pnt

        Return
        -------
        None

        Description
        -----------
        Sets camera Eye and Center positions. 
        Input parameter: theEye the location of camera's Eye 
        Input parameter: theCenter the location of camera's Center.

        """
        return _Graphic3d.Graphic3d_Camera_SetEyeAndCenter(self, *args)

    def SetFOV2d(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Set Field Of View (FOV) restriction for 2D on-screen elements.

        """
        return _Graphic3d.Graphic3d_Camera_SetFOV2d(self, *args)

    def SetFOVy(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Set Field Of View (FOV) in y axis for perspective projection. Field of View in x axis is automatically scaled from view aspect ratio. 
        Input parameter: theFOVy the FOV in degrees.

        """
        return _Graphic3d.Graphic3d_Camera_SetFOVy(self, *args)

    def SetIOD(self, *args):
        r"""

        Parameters
        ----------
        theType: IODType
        theIOD: float

        Return
        -------
        None

        Description
        -----------
        Sets Intraocular distance. 
        Input parameter: theType the IOD definition type. IOD can be defined as absolute value or relatively to (as coefficient of) camera focal length. 
        Input parameter: theIOD the Intraocular distance.

        """
        return _Graphic3d.Graphic3d_Camera_SetIOD(self, *args)

    def SetIdentityOrientation(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Sets camera parameters to make current orientation matrix identity one.

        """
        return _Graphic3d.Graphic3d_Camera_SetIdentityOrientation(self, *args)

    def SetProjectionType(self, *args):
        r"""

        Parameters
        ----------
        theProjection: Projection

        Return
        -------
        None

        Description
        -----------
        Change camera projection type. When switching to perspective projection from orthographic one, the ZNear and ZFar are reset to default values (0.001, 3000.0) if less than 0.0. 
        Input parameter: theProjection the camera projection type.

        """
        return _Graphic3d.Graphic3d_Camera_SetProjectionType(self, *args)

    def SetScale(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Sets camera scale. For orthographic projection the scale factor corresponds to parallel scale of view mapping (i.e. size of viewport). For perspective camera scale is converted to distance. The scale specifies equal size of the view projection in both dimensions assuming that the aspect is 1.0. The projection height and width are specified with the scale and correspondingly multiplied by the aspect. 
        Input parameter: theScale the scale factor.

        """
        return _Graphic3d.Graphic3d_Camera_SetScale(self, *args)

    def SetTile(self, *args):
        r"""

        Parameters
        ----------
        theTile: Graphic3d_CameraTile

        Return
        -------
        None

        Description
        -----------
        Sets the Tile defining the drawing sub-area within View. Note that tile defining a region outside the view boundaries is also valid - use method Graphic3d_CameraTile::Cropped() to assign a cropped copy. 
        Parameter theTile tile definition.

        """
        return _Graphic3d.Graphic3d_Camera_SetTile(self, *args)

    def SetUp(self, *args):
        r"""

        Parameters
        ----------
        theUp: gp_Dir

        Return
        -------
        None

        Description
        -----------
        Sets camera Up direction vector, orthogonal to camera direction. WARNING! This method does NOT verify that the new Up vector is orthogonal to the current Direction(). 
        Input parameter: theUp the Up direction vector. 
        See also: OrthogonalizeUp().

        """
        return _Graphic3d.Graphic3d_Camera_SetUp(self, *args)

    def SetZFocus(self, *args):
        r"""

        Parameters
        ----------
        theType: FocusType
        theZFocus: float

        Return
        -------
        None

        Description
        -----------
        Sets stereographic focus distance. 
        Input parameter: theType the focus definition type. Focus can be defined as absolute value or relatively to (as coefficient of) coefficient of camera focal length. 
        Input parameter: theZFocus the focus absolute value or coefficient depending on the passed definition type.

        """
        return _Graphic3d.Graphic3d_Camera_SetZFocus(self, *args)

    def SetZRange(self, *args):
        r"""

        Parameters
        ----------
        theZNear: float
        theZFar: float

        Return
        -------
        None

        Description
        -----------
        Change the Near and Far Z-clipping plane positions. For orthographic projection, theZNear, theZFar can be negative or positive. For perspective projection, only positive values are allowed. Program error exception is raised if non-positive values are specified for perspective projection or theZNear >= theZFar. 
        Input parameter: theZNear the distance of the plane from the Eye. 
        Input parameter: theZFar the distance of the plane from the Eye.

        """
        return _Graphic3d.Graphic3d_Camera_SetZRange(self, *args)

    def SetZeroToOneDepth(self, *args):
        r"""

        Parameters
        ----------
        theIsZeroToOne: bool

        Return
        -------
        None

        Description
        -----------
        Set using [0, 1] depth range or [-1, 1] range.

        """
        return _Graphic3d.Graphic3d_Camera_SetZeroToOneDepth(self, *args)

    def SideRight(self, *args):
        r"""
        Return
        -------
        gp_Dir

        Description
        -----------
        Right side direction.

        """
        return _Graphic3d.Graphic3d_Camera_SideRight(self, *args)

    def StereoProjection(self, *args):
        r"""

        Parameters
        ----------
        theProjL: Graphic3d_Mat4d
        theHeadToEyeL: Graphic3d_Mat4d
        theProjR: Graphic3d_Mat4d
        theHeadToEyeR: Graphic3d_Mat4d

        Return
        -------
        None

        Description
        -----------
        Get stereo projection matrices. @param[out] theProjL left eye projection matrix @param[out] theHeadToEyeL left head to eye translation matrix @param[out] theProjR right eye projection matrix @param[out] theHeadToEyeR right head to eye translation matrix.

        """
        return _Graphic3d.Graphic3d_Camera_StereoProjection(self, *args)

    def StereoProjectionF(self, *args):
        r"""

        Parameters
        ----------
        theProjL: Graphic3d_Mat4
        theHeadToEyeL: Graphic3d_Mat4
        theProjR: Graphic3d_Mat4
        theHeadToEyeR: Graphic3d_Mat4

        Return
        -------
        None

        Description
        -----------
        Get stereo projection matrices. @param[out] theProjL left eye projection matrix @param[out] theHeadToEyeL left head to eye translation matrix @param[out] theProjR right eye projection matrix @param[out] theHeadToEyeR right head to eye translation matrix.

        """
        return _Graphic3d.Graphic3d_Camera_StereoProjectionF(self, *args)

    def Tile(self, *args):
        r"""
        Return
        -------
        Graphic3d_CameraTile

        Description
        -----------
        Get current tile.

        """
        return _Graphic3d.Graphic3d_Camera_Tile(self, *args)

    def Transform(self, *args):
        r"""

        Parameters
        ----------
        theTrsf: gp_Trsf

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_Camera_Transform(self, *args)

    def UnProject(self, *args):
        r"""

        Parameters
        ----------
        thePnt: gp_Pnt

        Return
        -------
        gp_Pnt

        Description
        -----------
        Unproject point from normalized device coordinates to world coordinate space. 
        Input parameter: thePnt the NDC point. 
        Return: 3D point in WCS.

        """
        return _Graphic3d.Graphic3d_Camera_UnProject(self, *args)

    def Up(self, *args):
        r"""
        Return
        -------
        gp_Dir

        Description
        -----------
        Get camera Up direction vector. 
        Return: Camera's Up direction vector.

        """
        return _Graphic3d.Graphic3d_Camera_Up(self, *args)

    def ViewDimensions(self, *args):
        r"""
        Return
        -------
        gp_XYZ

        Description
        -----------
        Calculate view plane size at center (target) point and distance between ZFar and ZNear planes. 
        Return: values in form of gp_Pnt (Width, Height, Depth).

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

        Return
        -------
        gp_XYZ

        Description
        -----------
        Calculate view plane size at center point with specified Z offset and distance between ZFar and ZNear planes. 
        Input parameter: theZValue the distance from the eye in eye-to-center direction 
        Return: values in form of gp_Pnt (Width, Height, Depth).

        """
        return _Graphic3d.Graphic3d_Camera_ViewDimensions(self, *args)

    def WorldViewProjState(self, *args):
        r"""
        Return
        -------
        Graphic3d_WorldViewProjState

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_Camera_WorldViewProjState(self, *args)

    def WorldViewState(self, *args):
        r"""
        Return
        -------
        Standard_Size

        Description
        -----------
        Returns modification state of camera world view transformation matrix.

        """
        return _Graphic3d.Graphic3d_Camera_WorldViewState(self, *args)

    def ZFar(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Get the Far Z-clipping plane position. 
        Return: the distance of the plane from the Eye.

        """
        return _Graphic3d.Graphic3d_Camera_ZFar(self, *args)

    def ZFitAll(self, *args):
        r"""

        Parameters
        ----------
        theScaleFactor: float
        theMinMax: Bnd_Box
        theGraphicBB: Bnd_Box

        Return
        -------
        theZNear: float
        theZFar: float

        Description
        -----------
        Estimate Z-min and Z-max planes of projection volume to match the displayed objects. The methods ensures that view volume will be close by depth range to the displayed objects. Fitting assumes that for orthogonal projection the view volume contains the displayed objects completely. For zoomed perspective view, the view volume is adjusted such that it contains the objects or their parts, located in front of the camera. 
        Input parameter: theScaleFactor 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. 
        Input parameter: theMinMax applicative min max boundaries. 
        Input parameter: theGraphicBB real graphical boundaries (not accounting infinite flag).

        Parameters
        ----------
        theScaleFactor: float
        theMinMax: Bnd_Box
        theGraphicBB: Bnd_Box

        Return
        -------
        None

        Description
        -----------
        Change Z-min and Z-max planes of projection volume to match the displayed objects.

        """
        return _Graphic3d.Graphic3d_Camera_ZFitAll(self, *args)

    def ZFocus(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Get stereographic focus value. 
        Return: absolute or relative stereographic focus value depending on its definition type.

        """
        return _Graphic3d.Graphic3d_Camera_ZFocus(self, *args)

    def ZFocusType(self, *args):
        r"""
        Return
        -------
        Graphic3d_Camera::FocusType

        Description
        -----------
        Get stereographic focus definition type. 
        Return: definition type used for stereographic focus.

        """
        return _Graphic3d.Graphic3d_Camera_ZFocusType(self, *args)

    def ZNear(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Get the Near Z-clipping plane position. 
        Return: the distance of the plane from the Eye.

        """
        return _Graphic3d.Graphic3d_Camera_ZNear(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_Camera

# Register Graphic3d_Camera in _Graphic3d:
_Graphic3d.Graphic3d_Camera_swigregister(Graphic3d_Camera)
class Graphic3d_CameraTile(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    TotalSize = property(_Graphic3d.Graphic3d_CameraTile_TotalSize_get, _Graphic3d.Graphic3d_CameraTile_TotalSize_set)
    TileSize = property(_Graphic3d.Graphic3d_CameraTile_TileSize_get, _Graphic3d.Graphic3d_CameraTile_TileSize_set)
    Offset = property(_Graphic3d.Graphic3d_CameraTile_Offset_get, _Graphic3d.Graphic3d_CameraTile_Offset_set)
    IsTopDown = property(_Graphic3d.Graphic3d_CameraTile_IsTopDown_get, _Graphic3d.Graphic3d_CameraTile_IsTopDown_set)

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Default constructor. Initializes the empty Tile of zero size and lower-left offset orientation. Such Tile is considered uninitialized (invalid).

        """
        _Graphic3d.Graphic3d_CameraTile_swiginit(self, _Graphic3d.new_Graphic3d_CameraTile(*args))

    def Cropped(self, *args):
        r"""
        Return
        -------
        Graphic3d_CameraTile

        Description
        -----------
        Return the copy cropped by total size.

        """
        return _Graphic3d.Graphic3d_CameraTile_Cropped(self, *args)

    def DumpJson(self, depth=-1):
        r"""

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        """
        return _Graphic3d.Graphic3d_CameraTile_DumpJson(self, depth)

    def IsValid(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return true if Tile has been defined.

        """
        return _Graphic3d.Graphic3d_CameraTile_IsValid(self, *args)

    def OffsetLowerLeft(self, *args):
        r"""
        Return
        -------
        Graphic3d_Vec2i

        Description
        -----------
        Return offset position from lower-left corner.

        """
        return _Graphic3d.Graphic3d_CameraTile_OffsetLowerLeft(self, *args)

    def __eq_wrapper__(self, other):
        return _Graphic3d.Graphic3d_CameraTile___eq_wrapper__(self, other)

    def __eq__(self, right):
        try:
            return self.__eq_wrapper__(right)
        except:
            return False


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_CameraTile

# Register Graphic3d_CameraTile in _Graphic3d:
_Graphic3d.Graphic3d_CameraTile_swigregister(Graphic3d_CameraTile)
class Graphic3d_ClipPlane(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"""
        Return
        -------
        None

        Description
        -----------
        Default constructor. Initializes clip plane container with the following properties: - Equation (0.0, 0.0, 1.0, 0) - IsOn (True), - IsCapping (False), - Material (Graphic3d_NameOfMaterial_DEFAULT), - Texture (NULL), - HatchStyle (Aspect_HS_HORIZONTAL), - IsHatchOn (False).

        Parameters
        ----------
        theOther: Graphic3d_ClipPlane

        Return
        -------
        None

        Description
        -----------
        Copy constructor. 
        Input parameter: theOther the copied plane.

        Parameters
        ----------
        theEquation: Graphic3d_Vec4d

        Return
        -------
        None

        Description
        -----------
        Construct clip plane for the passed equation. By default the plane is on, capping is turned off. 
        Input parameter: theEquation the plane equation.

        Parameters
        ----------
        thePlane: gp_Pln

        Return
        -------
        None

        Description
        -----------
        Construct clip plane from the passed geometrical definition. By default the plane is on, capping is turned off. 
        Input parameter: thePlane the plane.

        """
        _Graphic3d.Graphic3d_ClipPlane_swiginit(self, _Graphic3d.new_Graphic3d_ClipPlane(*args))

    def CappingAspect(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_AspectFillArea3d>

        Description
        -----------
        Return capping aspect. 
        Return: capping surface rendering aspect.

        """
        return _Graphic3d.Graphic3d_ClipPlane_CappingAspect(self, *args)

    def CappingColor(self, *args):
        r"""
        Return
        -------
        Quantity_Color

        Description
        -----------
        Return color for rendering capping surface.

        """
        return _Graphic3d.Graphic3d_ClipPlane_CappingColor(self, *args)

    def CappingCustomHatch(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_HatchStyle>

        Description
        -----------
        Return: hatching style.

        """
        return _Graphic3d.Graphic3d_ClipPlane_CappingCustomHatch(self, *args)

    def CappingHatch(self, *args):
        r"""
        Return
        -------
        Aspect_HatchStyle

        Description
        -----------
        Return: hatching style.

        """
        return _Graphic3d.Graphic3d_ClipPlane_CappingHatch(self, *args)

    def CappingMaterial(self, *args):
        r"""
        Return
        -------
        Graphic3d_MaterialAspect

        Description
        -----------
        Return: capping material.

        """
        return _Graphic3d.Graphic3d_ClipPlane_CappingMaterial(self, *args)

    def CappingTexture(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_TextureMap>

        Description
        -----------
        Return: capping texture map.

        """
        return _Graphic3d.Graphic3d_ClipPlane_CappingTexture(self, *args)

    def ChainNextPlane(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_ClipPlane>

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_ClipPlane_ChainNextPlane(self, *args)

    def ChainPreviousPlane(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_ClipPlane>

        Description
        -----------
        Return the previous plane in a Chain of Planes defining logical AND operation, or NULL if there is no Chain or it is a first element in Chain. When clipping is defined by a Chain of Planes, it cuts a space only in case if check fails for all Planes in Chain.

        """
        return _Graphic3d.Graphic3d_ClipPlane_ChainPreviousPlane(self, *args)

    def Clone(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_ClipPlane>

        Description
        -----------
        Clone plane. Virtual method to simplify copying procedure if plane class is redefined at application level to add specific fields to it e.g. id, name, etc. 
        Return: new instance of clipping plane with same properties and attributes.

        """
        return _Graphic3d.Graphic3d_ClipPlane_Clone(self, *args)

    def DumpJson(self, depth=-1):
        r"""

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        """
        return _Graphic3d.Graphic3d_ClipPlane_DumpJson(self, depth)

    def GetEquation(self, *args):
        r"""
        Return
        -------
        Graphic3d_Vec4d

        Description
        -----------
        Get 4-component equation vector for clipping plane. 
        Return: clipping plane equation vector.

        """
        return _Graphic3d.Graphic3d_ClipPlane_GetEquation(self, *args)

    def GetId(self, *args):
        r"""
        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        This ID is used for managing associated resources in graphical driver. The clip plane can be assigned within a range of IO which can be displayed in separate OpenGl contexts. For each of the context an associated OpenGl resource for graphical aspects should be created and kept. The resources are stored in graphical driver for each of individual groups of shared context under the clip plane identifier. 
        Return: clip plane resource identifier string.

        """
        return _Graphic3d.Graphic3d_ClipPlane_GetId(self, *args)

    def IsBoxFullInHalfspace(self, *args):
        r"""

        Parameters
        ----------
        theBox: Graphic3d_BndBox3d

        Return
        -------
        bool

        Description
        -----------
        Check if the given bounding box is fully inside (or touches from inside) the half-space (e.g. NOT discarded by clipping plane).

        """
        return _Graphic3d.Graphic3d_ClipPlane_IsBoxFullInHalfspace(self, *args)

    def IsBoxFullOutHalfspace(self, *args):
        r"""

        Parameters
        ----------
        theBox: Graphic3d_BndBox3d

        Return
        -------
        bool

        Description
        -----------
        Check if the given bounding box is fully outside of the half-space (e.g. should be discarded by clipping plane).

        """
        return _Graphic3d.Graphic3d_ClipPlane_IsBoxFullOutHalfspace(self, *args)

    def IsCapping(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Check state of capping surface rendering. 
        Return: true (turned on) or false depending on the state.

        """
        return _Graphic3d.Graphic3d_ClipPlane_IsCapping(self, *args)

    def IsChain(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return True if this item defines a conjunction (logical AND) between a set of Planes. Graphic3d_ClipPlane item defines either a Clipping halfspace (single Clipping Plane) or a Clipping volume defined by a logical AND (conjunction) operation between a set of Planes defined as a Chain (so that the volume cuts a space only in case if check fails for ALL Planes in the Chain). //! Note that Graphic3d_ClipPlane item cannot: - Define a Chain with logical OR (disjunction) operation; this should be done through Graphic3d_SequenceOfHClipPlane. - Define nested Chains. - Disable Chain items; only entire Chain can be disabled (by disabled a head of Chain). //! The head of a Chain defines all visual properties of the Chain, so that Graphic3d_ClipPlane of next items in a Chain merely defines only geometrical definition of the plane.

        """
        return _Graphic3d.Graphic3d_ClipPlane_IsChain(self, *args)

    def IsHatchOn(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return: True if hatching mask is turned on.

        """
        return _Graphic3d.Graphic3d_ClipPlane_IsHatchOn(self, *args)

    def IsOn(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Check that the clipping plane is turned on. 
        Return: boolean flag indicating whether the plane is in on or off state.

        """
        return _Graphic3d.Graphic3d_ClipPlane_IsOn(self, *args)

    def IsPointOutHalfspace(self, *args):
        r"""

        Parameters
        ----------
        thePoint: Graphic3d_Vec4d

        Return
        -------
        bool

        Description
        -----------
        Check if the given point is outside of the half-space (e.g. should be discarded by clipping plane).

        """
        return _Graphic3d.Graphic3d_ClipPlane_IsPointOutHalfspace(self, *args)

    def MCountAspect(self, *args):
        r"""
        Return
        -------
        unsigned int

        Description
        -----------
        Return: modification counter for aspect.

        """
        return _Graphic3d.Graphic3d_ClipPlane_MCountAspect(self, *args)

    def MCountEquation(self, *args):
        r"""
        Return
        -------
        unsigned int

        Description
        -----------
        Return: modification counter for equation.

        """
        return _Graphic3d.Graphic3d_ClipPlane_MCountEquation(self, *args)

    def NbChainNextPlanes(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Return the number of chains in forward direction (including this item, so it is always >= 1). For a head of Chain - returns the length of entire Chain.

        """
        return _Graphic3d.Graphic3d_ClipPlane_NbChainNextPlanes(self, *args)

    def ProbeBox(self, *args):
        r"""

        Parameters
        ----------
        theBox: Graphic3d_BndBox3d

        Return
        -------
        Graphic3d_ClipState

        Description
        -----------
        Check if the given bounding box is fully outside / fully inside.

        """
        return _Graphic3d.Graphic3d_ClipPlane_ProbeBox(self, *args)

    def ProbeBoxHalfspace(self, *args):
        r"""

        Parameters
        ----------
        theBox: Graphic3d_BndBox3d

        Return
        -------
        Graphic3d_ClipState

        Description
        -----------
        Check if the given bounding box is fully outside / fully inside the half-space.

        """
        return _Graphic3d.Graphic3d_ClipPlane_ProbeBoxHalfspace(self, *args)

    def ProbeBoxMaxPointHalfspace(self, *args):
        r"""

        Parameters
        ----------
        theBox: Graphic3d_BndBox3d

        Return
        -------
        Graphic3d_ClipState

        Description
        -----------
        Check if the given bounding box is fully outside of the half-space (e.g. should be discarded by clipping plane).

        """
        return _Graphic3d.Graphic3d_ClipPlane_ProbeBoxMaxPointHalfspace(self, *args)

    def ProbeBoxTouch(self, *args):
        r"""

        Parameters
        ----------
        theBox: Graphic3d_BndBox3d

        Return
        -------
        bool

        Description
        -----------
        Check if the given bounding box is In and touch the clipping planes.

        """
        return _Graphic3d.Graphic3d_ClipPlane_ProbeBoxTouch(self, *args)

    def ProbePoint(self, *args):
        r"""

        Parameters
        ----------
        thePoint: Graphic3d_Vec4d

        Return
        -------
        Graphic3d_ClipState

        Description
        -----------
        Check if the given point is outside / inside / on section.

        """
        return _Graphic3d.Graphic3d_ClipPlane_ProbePoint(self, *args)

    def ProbePointHalfspace(self, *args):
        r"""

        Parameters
        ----------
        thePoint: Graphic3d_Vec4d

        Return
        -------
        Graphic3d_ClipState

        Description
        -----------
        Check if the given point is outside of the half-space (e.g. should be discarded by clipping plane).

        """
        return _Graphic3d.Graphic3d_ClipPlane_ProbePointHalfspace(self, *args)

    def ReversedEquation(self, *args):
        r"""
        Return
        -------
        Graphic3d_Vec4d

        Description
        -----------
        Get 4-component equation vector for clipping plane. 
        Return: clipping plane equation vector.

        """
        return _Graphic3d.Graphic3d_ClipPlane_ReversedEquation(self, *args)

    def SetCapping(self, *args):
        r"""

        Parameters
        ----------
        theIsOn: bool

        Return
        -------
        None

        Description
        -----------
        Change state of capping surface rendering. 
        Input parameter: theIsOn the flag specifying whether the graphic driver should perform rendering of capping surface produced by this plane. The graphic driver produces this surface for convex graphics by means of stencil-test and multi-pass rendering.

        """
        return _Graphic3d.Graphic3d_ClipPlane_SetCapping(self, *args)

    def SetCappingAspect(self, *args):
        r"""

        Parameters
        ----------
        theAspect: Graphic3d_AspectFillArea3d

        Return
        -------
        None

        Description
        -----------
        Assign capping aspect.

        """
        return _Graphic3d.Graphic3d_ClipPlane_SetCappingAspect(self, *args)

    def SetCappingColor(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Set color for rendering capping surface.

        """
        return _Graphic3d.Graphic3d_ClipPlane_SetCappingColor(self, *args)

    def SetCappingCustomHatch(self, *args):
        r"""

        Parameters
        ----------
        theStyle: Graphic3d_HatchStyle

        Return
        -------
        None

        Description
        -----------
        Set custom hatch style (stipple) and turn hatching on. 
        Input parameter: theStyle the hatch pattern.

        """
        return _Graphic3d.Graphic3d_ClipPlane_SetCappingCustomHatch(self, *args)

    def SetCappingHatch(self, *args):
        r"""

        Parameters
        ----------
        theStyle: Aspect_HatchStyle

        Return
        -------
        None

        Description
        -----------
        Set hatch style (stipple) and turn hatching on. 
        Input parameter: theStyle the hatch style.

        """
        return _Graphic3d.Graphic3d_ClipPlane_SetCappingHatch(self, *args)

    def SetCappingHatchOff(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Turn off hatching.

        """
        return _Graphic3d.Graphic3d_ClipPlane_SetCappingHatchOff(self, *args)

    def SetCappingHatchOn(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Turn on hatching.

        """
        return _Graphic3d.Graphic3d_ClipPlane_SetCappingHatchOn(self, *args)

    def SetCappingMaterial(self, *args):
        r"""

        Parameters
        ----------
        theMat: Graphic3d_MaterialAspect

        Return
        -------
        None

        Description
        -----------
        Set material for rendering capping surface. 
        Input parameter: theMat the material.

        """
        return _Graphic3d.Graphic3d_ClipPlane_SetCappingMaterial(self, *args)

    def SetCappingTexture(self, *args):
        r"""

        Parameters
        ----------
        theTexture: Graphic3d_TextureMap

        Return
        -------
        None

        Description
        -----------
        Set texture to be applied on capping surface. 
        Input parameter: theTexture the texture.

        """
        return _Graphic3d.Graphic3d_ClipPlane_SetCappingTexture(self, *args)

    def SetChainNextPlane(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Set the next plane in a Chain of Planes. This operation also updates relationship between chains (Previous/Next items), so that the previously set Next plane is cut off.

        """
        return _Graphic3d.Graphic3d_ClipPlane_SetChainNextPlane(self, *args)

    def SetEquation(self, *args):
        r"""

        Parameters
        ----------
        thePlane: gp_Pln

        Return
        -------
        None

        Description
        -----------
        Set plane equation by its geometrical definition. The equation is specified in 'world' coordinate system. 
        Input parameter: thePlane the plane.

        Parameters
        ----------
        theEquation: Graphic3d_Vec4d

        Return
        -------
        None

        Description
        -----------
        Set 4-component equation vector for clipping plane. The equation is specified in 'world' coordinate system. 
        Input parameter: theEquation the XYZW (or 'ABCD') equation vector.

        """
        return _Graphic3d.Graphic3d_ClipPlane_SetEquation(self, *args)

    def SetOn(self, *args):
        r"""

        Parameters
        ----------
        theIsOn: bool

        Return
        -------
        None

        Description
        -----------
        Change state of the clipping plane. 
        Input parameter: theIsOn the flag specifying whether the graphic driver clipping by this plane should be turned on or off.

        """
        return _Graphic3d.Graphic3d_ClipPlane_SetOn(self, *args)

    def SetUseObjectMaterial(self, *args):
        r"""

        Parameters
        ----------
        theToUse: bool

        Return
        -------
        None

        Description
        -----------
        Set flag for controlling the source of capping plane material.

        """
        return _Graphic3d.Graphic3d_ClipPlane_SetUseObjectMaterial(self, *args)

    def SetUseObjectShader(self, *args):
        r"""

        Parameters
        ----------
        theToUse: bool

        Return
        -------
        None

        Description
        -----------
        Set flag for controlling the source of capping plane shader program.

        """
        return _Graphic3d.Graphic3d_ClipPlane_SetUseObjectShader(self, *args)

    def SetUseObjectTexture(self, *args):
        r"""

        Parameters
        ----------
        theToUse: bool

        Return
        -------
        None

        Description
        -----------
        Set flag for controlling the source of capping plane texture.

        """
        return _Graphic3d.Graphic3d_ClipPlane_SetUseObjectTexture(self, *args)

    def ToPlane(self, *args):
        r"""
        Return
        -------
        gp_Pln

        Description
        -----------
        Get geometrical definition. 
        Return: geometrical definition of clipping plane.

        """
        return _Graphic3d.Graphic3d_ClipPlane_ToPlane(self, *args)

    def ToUseObjectMaterial(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Flag indicating whether material for capping plane should be taken from object. Default value: False (use dedicated capping plane material).

        """
        return _Graphic3d.Graphic3d_ClipPlane_ToUseObjectMaterial(self, *args)

    def ToUseObjectProperties(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return true if some fill area aspect properties should be taken from object.

        """
        return _Graphic3d.Graphic3d_ClipPlane_ToUseObjectProperties(self, *args)

    def ToUseObjectShader(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Flag indicating whether shader program for capping plane should be taken from object. Default value: False.

        """
        return _Graphic3d.Graphic3d_ClipPlane_ToUseObjectShader(self, *args)

    def ToUseObjectTexture(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Flag indicating whether texture for capping plane should be taken from object. Default value: False.

        """
        return _Graphic3d.Graphic3d_ClipPlane_ToUseObjectTexture(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_ClipPlane

# Register Graphic3d_ClipPlane in _Graphic3d:
_Graphic3d.Graphic3d_ClipPlane_swigregister(Graphic3d_ClipPlane)
class Graphic3d_CullingTool(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"""
        Return
        -------
        None

        Description
        -----------
        Creates an empty selector object with parallel projection type by default.

        """
        _Graphic3d.Graphic3d_CullingTool_swiginit(self, _Graphic3d.new_Graphic3d_CullingTool(*args))

    def CacheClipPtsProjections(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Caches view volume's vertices projections along its normals and AABBs dimensions. Must be called at the beginning of each BVH tree traverse loop.

        """
        return _Graphic3d.Graphic3d_CullingTool_CacheClipPtsProjections(self, *args)

    def Camera(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_Camera>

        Description
        -----------
        Return the camera definition.

        """
        return _Graphic3d.Graphic3d_CullingTool_Camera(self, *args)

    def CameraDirection(self, *args):
        r"""
        Return
        -------
        Graphic3d_Vec3d

        Description
        -----------
        Returns camera direction.

        """
        return _Graphic3d.Graphic3d_CullingTool_CameraDirection(self, *args)

    def CameraEye(self, *args):
        r"""
        Return
        -------
        Graphic3d_Vec3d

        Description
        -----------
        Returns camera eye position.

        """
        return _Graphic3d.Graphic3d_CullingTool_CameraEye(self, *args)

    def IsCulled(self, *args):
        r"""

        Parameters
        ----------
        theCtx: CullingContext
        theMinPnt: Graphic3d_Vec3d
        theMaxPnt: Graphic3d_Vec3d
        theIsInside: bool * (optional, default to NULL)

        Return
        -------
        bool

        Description
        -----------
        Checks whether given AABB should be entirely culled or not. 
        Input parameter: theCtx culling properties 
        Input parameter: theMinPnt maximum point of AABB 
        Input parameter: theMaxPnt minimum point of AABB @param[out] theIsInside flag indicating if AABB is fully inside; initial value should be set to True 
        Return: True if AABB is completely outside of view frustum or culled by size/distance; False in case of partial or complete overlap (use theIsInside to distinguish).

        """
        return _Graphic3d.Graphic3d_CullingTool_IsCulled(self, *args)

    def IsOutFrustum(self, *args):
        r"""

        Parameters
        ----------
        theMinPnt: Graphic3d_Vec3d
        theMaxPnt: Graphic3d_Vec3d
        theIsInside: bool * (optional, default to NULL)

        Return
        -------
        bool

        Description
        -----------
        Detects if AABB overlaps view volume using separating axis theorem (SAT). 
        Input parameter: theMinPnt maximum point of AABB 
        Input parameter: theMaxPnt minimum point of AABB @param[out] theIsInside flag indicating if AABB is fully inside; initial value should be set to True 
        Return: True if AABB is completely outside of view frustum; False in case of partial or complete overlap (use theIsInside to distinguish) 
        See also: SelectMgr_Frustum::hasOverlap().

        """
        return _Graphic3d.Graphic3d_CullingTool_IsOutFrustum(self, *args)

    def IsTooDistant(self, *args):
        r"""

        Parameters
        ----------
        theCtx: CullingContext
        theMinPnt: Graphic3d_Vec3d
        theMaxPnt: Graphic3d_Vec3d
        theIsInside: bool * (optional, default to NULL)

        Return
        -------
        bool

        Description
        -----------
        Returns True if given AABB should be discarded by distance culling criterion. 
        Input parameter: theMinPnt maximum point of AABB 
        Input parameter: theMaxPnt minimum point of AABB @param[out] theIsInside flag indicating if AABB is fully inside; initial value should be set to True 
        Return: True if AABB is completely behind culling distance; False in case of partial or complete overlap (use theIsInside to distinguish).

        """
        return _Graphic3d.Graphic3d_CullingTool_IsTooDistant(self, *args)

    def IsTooSmall(self, *args):
        r"""

        Parameters
        ----------
        theCtx: CullingContext
        theMinPnt: Graphic3d_Vec3d
        theMaxPnt: Graphic3d_Vec3d

        Return
        -------
        bool

        Description
        -----------
        Returns True if given AABB should be discarded by size culling criterion.

        """
        return _Graphic3d.Graphic3d_CullingTool_IsTooSmall(self, *args)

    def ProjectionMatrix(self, *args):
        r"""
        Return
        -------
        Graphic3d_Mat4d

        Description
        -----------
        Returns current projection matrix.

        """
        return _Graphic3d.Graphic3d_CullingTool_ProjectionMatrix(self, *args)

    def SetViewVolume(self, *args):
        r"""

        Parameters
        ----------
        theCamera: Graphic3d_Camera
        theModelWorld: Graphic3d_Mat4d (optional, default to Graphic3d_Mat4d())

        Return
        -------
        None

        Description
        -----------
        Retrieves view volume's planes equations and its vertices from projection and world-view matrices. 
        Input parameter: theCamera camera definition 
        Input parameter: theModelWorld optional object transformation for computing frustum in object local coordinate system.

        """
        return _Graphic3d.Graphic3d_CullingTool_SetViewVolume(self, *args)

    def SetViewportSize(self, *args):
        r"""

        Parameters
        ----------
        theViewportWidth: int
        theViewportHeight: int
        theResolutionRatio: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_CullingTool_SetViewportSize(self, *args)

    def SignedPlanePointDistance(self, *args):
        r"""

        Parameters
        ----------
        theNormal: Graphic3d_Vec4d
        thePnt: Graphic3d_Vec4d

        Return
        -------
        float

        Description
        -----------
        Calculates signed distance from plane to point. 
        Input parameter: theNormal the plane's normal. 
        Input parameter: thePnt.

        """
        return _Graphic3d.Graphic3d_CullingTool_SignedPlanePointDistance(self, *args)

    def ViewportHeight(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_CullingTool_ViewportHeight(self, *args)

    def ViewportWidth(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_CullingTool_ViewportWidth(self, *args)

    def WorldViewMatrix(self, *args):
        r"""
        Return
        -------
        Graphic3d_Mat4d

        Description
        -----------
        Returns current world view transformation matrix.

        """
        return _Graphic3d.Graphic3d_CullingTool_WorldViewMatrix(self, *args)

    def WorldViewProjState(self, *args):
        r"""
        Return
        -------
        Graphic3d_WorldViewProjState

        Description
        -----------
        Returns state of current world view projection transformation matrices.

        """
        return _Graphic3d.Graphic3d_CullingTool_WorldViewProjState(self, *args)

    __repr__ = _dumps_object

    @methodnotwrapped
    def SetCullingDistance(self):
    	pass

    @methodnotwrapped
    def SetCullingSize(self):
    	pass

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_CullingTool

# Register Graphic3d_CullingTool in _Graphic3d:
_Graphic3d.Graphic3d_CullingTool_swigregister(Graphic3d_CullingTool)
class Graphic3d_DataStructureManager(OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

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


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_DataStructureManager

# Register Graphic3d_DataStructureManager in _Graphic3d:
_Graphic3d.Graphic3d_DataStructureManager_swigregister(Graphic3d_DataStructureManager)
class Graphic3d_FrameStats(OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

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

    def ActiveDataFrame(self, *args):
        r"""
        Return
        -------
        Graphic3d_FrameStatsDataTmp

        Description
        -----------
        Returns currently filling data frame for modification, should be called between ::FrameStart() and ::FrameEnd() calls.

        """
        return _Graphic3d.Graphic3d_FrameStats_ActiveDataFrame(self, *args)

    def ChangeCounter(self, *args):
        r"""

        Parameters
        ----------
        theCounter: Graphic3d_FrameStatsCounter

        Return
        -------
        Standard_Size

        Description
        -----------
        Returns value of specified counter for modification, should be called between ::FrameStart() and ::FrameEnd() calls.

        """
        return _Graphic3d.Graphic3d_FrameStats_ChangeCounter(self, *args)

    def ChangeDataFrames(self, *args):
        r"""
        Return
        -------
        NCollection_Array1<Graphic3d_FrameStatsData>

        Description
        -----------
        Returns data frames.

        """
        return _Graphic3d.Graphic3d_FrameStats_ChangeDataFrames(self, *args)

    def GetChangeTimer(self, theTimer):
        r"""GetChangeTimer(Graphic3d_FrameStats self, Graphic3d_FrameStatsTimer theTimer) -> Standard_Real"""
        return _Graphic3d.Graphic3d_FrameStats_GetChangeTimer(self, theTimer)

    def SetChangeTimer(self, theTimer, value):
        r"""SetChangeTimer(Graphic3d_FrameStats self, Graphic3d_FrameStatsTimer theTimer, Standard_Real value)"""
        return _Graphic3d.Graphic3d_FrameStats_SetChangeTimer(self, theTimer, value)

    def CounterValue(self, *args):
        r"""

        Parameters
        ----------
        theCounter: Graphic3d_FrameStatsCounter

        Return
        -------
        Standard_Size

        Description
        -----------
        Returns value of specified counter, cached between stats updates. Should NOT be called between ::FrameStart() and ::FrameEnd() calls.

        """
        return _Graphic3d.Graphic3d_FrameStats_CounterValue(self, *args)

    def DataFrames(self, *args):
        r"""
        Return
        -------
        NCollection_Array1<Graphic3d_FrameStatsData>

        Description
        -----------
        Returns data frames.

        """
        return _Graphic3d.Graphic3d_FrameStats_DataFrames(self, *args)

    def FormatStats(self, *args):
        r"""

        Parameters
        ----------
        theFlags: Graphic3d_RenderingParams::PerfCounters

        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        Returns formatted string.

        Parameters
        ----------
        theDict: TColStd_IndexedDataMapOfStringString
        theFlags: Graphic3d_RenderingParams::PerfCounters

        Return
        -------
        None

        Description
        -----------
        Fill in the dictionary with formatted statistic info.

        """
        return _Graphic3d.Graphic3d_FrameStats_FormatStats(self, *args)

    def FrameDuration(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Returns duration of the last frame in seconds.

        """
        return _Graphic3d.Graphic3d_FrameStats_FrameDuration(self, *args)

    def FrameEnd(self, *args):
        r"""

        Parameters
        ----------
        theView: Graphic3d_CView
        theIsImmediateOnly: bool

        Return
        -------
        None

        Description
        -----------
        Frame redraw finished.

        """
        return _Graphic3d.Graphic3d_FrameStats_FrameEnd(self, *args)

    def FrameRate(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Returns FPS (frames per seconds, elapsed time). This number indicates an actual frame rate averaged for several frames within UpdateInterval() duration, basing on a real elapsed time between updates.

        """
        return _Graphic3d.Graphic3d_FrameStats_FrameRate(self, *args)

    def FrameRateCpu(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Returns CPU FPS (frames per seconds, CPU time). This number indicates a PREDICTED frame rate, basing on CPU elapsed time between updates and NOT real elapsed time (which might include periods of CPU inactivity). Number is expected to be greater then actual frame rate returned by FrameRate(). Values significantly greater actual frame rate indicate that rendering is limited by GPU performance (CPU is stalled in-between), while values around actual frame rate indicate rendering being limited by CPU performance (GPU is stalled in-between).

        """
        return _Graphic3d.Graphic3d_FrameStats_FrameRateCpu(self, *args)

    def FrameStart(self, *args):
        r"""

        Parameters
        ----------
        theView: Graphic3d_CView
        theIsImmediateOnly: bool

        Return
        -------
        None

        Description
        -----------
        Frame redraw started.

        """
        return _Graphic3d.Graphic3d_FrameStats_FrameStart(self, *args)

    def HasCulledLayers(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns True if some Layers have been culled.

        """
        return _Graphic3d.Graphic3d_FrameStats_HasCulledLayers(self, *args)

    def HasCulledStructs(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns True if some structures have been culled.

        """
        return _Graphic3d.Graphic3d_FrameStats_HasCulledStructs(self, *args)

    def IsLongLineFormat(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Prefer longer lines over more greater of lines.

        """
        return _Graphic3d.Graphic3d_FrameStats_IsLongLineFormat(self, *args)

    def LastDataFrame(self, *args):
        r"""
        Return
        -------
        Graphic3d_FrameStatsData

        Description
        -----------
        Returns last data frame, cached between stats updates. Should NOT be called between ::FrameStart() and ::FrameEnd() calls.

        """
        return _Graphic3d.Graphic3d_FrameStats_LastDataFrame(self, *args)

    def LastDataFrameIndex(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Returns last data frame index.

        """
        return _Graphic3d.Graphic3d_FrameStats_LastDataFrameIndex(self, *args)

    def SetLongLineFormat(self, *args):
        r"""

        Parameters
        ----------
        theValue: bool

        Return
        -------
        None

        Description
        -----------
        Set if format should prefer longer lines over greater number of lines.

        """
        return _Graphic3d.Graphic3d_FrameStats_SetLongLineFormat(self, *args)

    def SetUpdateInterval(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Sets interval in seconds for updating values.

        """
        return _Graphic3d.Graphic3d_FrameStats_SetUpdateInterval(self, *args)

    def TimerValue(self, *args):
        r"""

        Parameters
        ----------
        theTimer: Graphic3d_FrameStatsTimer

        Return
        -------
        float

        Description
        -----------
        Returns value of specified timer for modification, should be called between ::FrameStart() and ::FrameEnd() calls. Should NOT be called between ::FrameStart() and ::FrameEnd() calls.

        """
        return _Graphic3d.Graphic3d_FrameStats_TimerValue(self, *args)

    def UpdateInterval(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Returns interval in seconds for updating meters across several frames; 1 second by default.

        """
        return _Graphic3d.Graphic3d_FrameStats_UpdateInterval(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_FrameStats

# Register Graphic3d_FrameStats in _Graphic3d:
_Graphic3d.Graphic3d_FrameStats_swigregister(Graphic3d_FrameStats)
class Graphic3d_FrameStatsData(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"""
        Return
        -------
        None

        Description
        -----------
        Empty constructor.

        Parameters
        ----------
        theOther: Graphic3d_FrameStatsData

        Return
        -------
        None

        Description
        -----------
        Copy constructor.

        Parameters
        ----------
        theOther: Graphic3d_FrameStatsData

        Return
        -------
        None

        Description
        -----------
        Move constructor.

        """
        _Graphic3d.Graphic3d_FrameStatsData_swiginit(self, _Graphic3d.new_Graphic3d_FrameStatsData(*args))

    def CounterValue(self, *args):
        r"""

        Parameters
        ----------
        theIndex: Graphic3d_FrameStatsCounter

        Return
        -------
        Standard_Size

        Description
        -----------
        Get counter value.

        """
        return _Graphic3d.Graphic3d_FrameStatsData_CounterValue(self, *args)

    def FillMax(self, *args):
        r"""

        Parameters
        ----------
        theOther: Graphic3d_FrameStatsData

        Return
        -------
        None

        Description
        -----------
        Fill with maximum values.

        """
        return _Graphic3d.Graphic3d_FrameStatsData_FillMax(self, *args)

    def FrameRate(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Returns FPS (frames per seconds, elapsed time). This number indicates an actual frame rate averaged for several frames within UpdateInterval() duration, basing on a real elapsed time between updates.

        """
        return _Graphic3d.Graphic3d_FrameStatsData_FrameRate(self, *args)

    def FrameRateCpu(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Returns CPU FPS (frames per seconds, CPU time). This number indicates a PREDICTED frame rate, basing on CPU elapsed time between updates and NOT real elapsed time (which might include periods of CPU inactivity). Number is expected to be greater then actual frame rate returned by FrameRate(). Values significantly greater actual frame rate indicate that rendering is limited by GPU performance (CPU is stalled in-between), while values around actual frame rate indicate rendering being limited by CPU performance (GPU is stalled in-between).

        """
        return _Graphic3d.Graphic3d_FrameStatsData_FrameRateCpu(self, *args)

    def ImmediateFrameRate(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Returns FPS for immediate redraws.

        """
        return _Graphic3d.Graphic3d_FrameStatsData_ImmediateFrameRate(self, *args)

    def ImmediateFrameRateCpu(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Returns CPU FPS for immediate redraws.

        """
        return _Graphic3d.Graphic3d_FrameStatsData_ImmediateFrameRateCpu(self, *args)

    def Reset(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Reset data.

        """
        return _Graphic3d.Graphic3d_FrameStatsData_Reset(self, *args)

    def TimerValue(self, *args):
        r"""

        Parameters
        ----------
        theIndex: Graphic3d_FrameStatsTimer

        Return
        -------
        float

        Description
        -----------
        Get timer value.

        """
        return _Graphic3d.Graphic3d_FrameStatsData_TimerValue(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_FrameStatsData

# Register Graphic3d_FrameStatsData in _Graphic3d:
_Graphic3d.Graphic3d_FrameStatsData_swigregister(Graphic3d_FrameStatsData)
class Graphic3d_Fresnel(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"""
        Return
        -------
        None

        Description
        -----------
        Creates uninitialized Fresnel factor.

        """
        _Graphic3d.Graphic3d_Fresnel_swiginit(self, _Graphic3d.new_Graphic3d_Fresnel(*args))

    @staticmethod
    def CreateConductor(*args):
        r"""

        Parameters
        ----------
        theRefractionIndex: float
        theAbsorptionIndex: float

        Return
        -------
        Graphic3d_Fresnel

        Description
        -----------
        Creates Fresnel factor for physical-based conductor model.

        Parameters
        ----------
        theRefractionIndex: Graphic3d_Vec3
        theAbsorptionIndex: Graphic3d_Vec3

        Return
        -------
        Graphic3d_Fresnel

        Description
        -----------
        Creates Fresnel factor for physical-based conductor model (spectral version).

        """
        return _Graphic3d.Graphic3d_Fresnel_CreateConductor(*args)

    @staticmethod
    def CreateConstant(*args):
        r"""

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

        Return
        -------
        Graphic3d_Fresnel

        Description
        -----------
        Creates Fresnel factor for constant reflection.

        """
        return _Graphic3d.Graphic3d_Fresnel_CreateConstant(*args)

    @staticmethod
    def CreateDielectric(*args):
        r"""

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

        Return
        -------
        Graphic3d_Fresnel

        Description
        -----------
        Creates Fresnel factor for physical-based dielectric model.

        """
        return _Graphic3d.Graphic3d_Fresnel_CreateDielectric(*args)

    @staticmethod
    def CreateSchlick(*args):
        r"""

        Parameters
        ----------
        theSpecularColor: Graphic3d_Vec3

        Return
        -------
        Graphic3d_Fresnel

        Description
        -----------
        Creates Schlick's approximation of Fresnel factor.

        """
        return _Graphic3d.Graphic3d_Fresnel_CreateSchlick(*args)

    def DumpJson(self, depth=-1):
        r"""

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        """
        return _Graphic3d.Graphic3d_Fresnel_DumpJson(self, depth)

    def FresnelType(self, *args):
        r"""
        Return
        -------
        Graphic3d_FresnelModel

        Description
        -----------
        Returns type of Fresnel.

        """
        return _Graphic3d.Graphic3d_Fresnel_FresnelType(self, *args)

    def Serialize(self, *args):
        r"""
        Return
        -------
        Graphic3d_Vec4

        Description
        -----------
        Returns serialized representation of Fresnel factor.

        """
        return _Graphic3d.Graphic3d_Fresnel_Serialize(self, *args)

    def __eq_wrapper__(self, other):
        return _Graphic3d.Graphic3d_Fresnel___eq_wrapper__(self, other)

    def __eq__(self, right):
        try:
            return self.__eq_wrapper__(right)
        except:
            return False


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_Fresnel

# Register Graphic3d_Fresnel in _Graphic3d:
_Graphic3d.Graphic3d_Fresnel_swigregister(Graphic3d_Fresnel)
class Graphic3d_GraduatedTrihedron(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"""

        Parameters
        ----------
        theNamesFont: str (optional, default to 'Arial')
        theNamesStyle: Font_FontAspect (optional, default to Font_FA_Bold)
        theNamesSize: int (optional, default to 12)
        theValuesFont: str (optional, default to 'Arial')
        theValuesStyle: Font_FontAspect (optional, default to Font_FA_Regular)
        theValuesSize: int (optional, default to 12)
        theArrowsLength: float (optional, default to 30.0f)
        theGridColor: Quantity_Color (optional, default to Quantity_NOC_WHITE)
        theToDrawGrid: bool (optional, default to Standard_True)
        theToDrawAxes: bool (optional, default to Standard_True)

        Return
        -------
        None

        Description
        -----------
        Default constructor Constructs the default graduated trihedron with grid, X, Y, Z axes, and tickmarks.

        """
        _Graphic3d.Graphic3d_GraduatedTrihedron_swiginit(self, _Graphic3d.new_Graphic3d_GraduatedTrihedron(*args))

    def ArrowsLength(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_GraduatedTrihedron_ArrowsLength(self, *args)

    def AxisAspectAt(self, *args):
        r"""

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

        Return
        -------
        Graphic3d_GraduatedTrihedron::AxisAspect

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_GraduatedTrihedron_AxisAspectAt(self, *args)

    def ChangeAxisAspect(self, *args):
        r"""

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

        Return
        -------
        Graphic3d_GraduatedTrihedron::AxisAspect

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_GraduatedTrihedron_ChangeAxisAspect(self, *args)

    def ChangeXAxisAspect(self, *args):
        r"""
        Return
        -------
        Graphic3d_GraduatedTrihedron::AxisAspect

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_GraduatedTrihedron_ChangeXAxisAspect(self, *args)

    def ChangeYAxisAspect(self, *args):
        r"""
        Return
        -------
        Graphic3d_GraduatedTrihedron::AxisAspect

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_GraduatedTrihedron_ChangeYAxisAspect(self, *args)

    def ChangeZAxisAspect(self, *args):
        r"""
        Return
        -------
        Graphic3d_GraduatedTrihedron::AxisAspect

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_GraduatedTrihedron_ChangeZAxisAspect(self, *args)

    def CubicAxesCallback(self, *args):
        r"""

        Parameters
        ----------
        theView: Graphic3d_CView *

        Return
        -------
        bool

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_GraduatedTrihedron_CubicAxesCallback(self, *args)

    def GridColor(self, *args):
        r"""
        Return
        -------
        Quantity_Color

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_GraduatedTrihedron_GridColor(self, *args)

    def NamesFont(self, *args):
        r"""
        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_GraduatedTrihedron_NamesFont(self, *args)

    def NamesFontAspect(self, *args):
        r"""
        Return
        -------
        Font_FontAspect

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_GraduatedTrihedron_NamesFontAspect(self, *args)

    def NamesSize(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_GraduatedTrihedron_NamesSize(self, *args)

    def SetArrowsLength(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_GraduatedTrihedron_SetArrowsLength(self, *args)

    def SetDrawAxes(self, *args):
        r"""

        Parameters
        ----------
        theToDraw: bool

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_GraduatedTrihedron_SetDrawAxes(self, *args)

    def SetDrawGrid(self, *args):
        r"""

        Parameters
        ----------
        theToDraw: bool

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_GraduatedTrihedron_SetDrawGrid(self, *args)

    def SetGridColor(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_GraduatedTrihedron_SetGridColor(self, *args)

    def SetNamesFont(self, *args):
        r"""

        Parameters
        ----------
        theFont: str

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_GraduatedTrihedron_SetNamesFont(self, *args)

    def SetNamesFontAspect(self, *args):
        r"""

        Parameters
        ----------
        theAspect: Font_FontAspect

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_GraduatedTrihedron_SetNamesFontAspect(self, *args)

    def SetNamesSize(self, *args):
        r"""

        Parameters
        ----------
        theValue: int

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_GraduatedTrihedron_SetNamesSize(self, *args)

    def SetValuesFont(self, *args):
        r"""

        Parameters
        ----------
        theFont: str

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_GraduatedTrihedron_SetValuesFont(self, *args)

    def SetValuesFontAspect(self, *args):
        r"""

        Parameters
        ----------
        theAspect: Font_FontAspect

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_GraduatedTrihedron_SetValuesFontAspect(self, *args)

    def SetValuesSize(self, *args):
        r"""

        Parameters
        ----------
        theValue: int

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_GraduatedTrihedron_SetValuesSize(self, *args)

    def ToDrawAxes(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_GraduatedTrihedron_ToDrawAxes(self, *args)

    def ToDrawGrid(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_GraduatedTrihedron_ToDrawGrid(self, *args)

    def ValuesFont(self, *args):
        r"""
        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_GraduatedTrihedron_ValuesFont(self, *args)

    def ValuesFontAspect(self, *args):
        r"""
        Return
        -------
        Font_FontAspect

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_GraduatedTrihedron_ValuesFontAspect(self, *args)

    def ValuesSize(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_GraduatedTrihedron_ValuesSize(self, *args)

    def XAxisAspect(self, *args):
        r"""
        Return
        -------
        Graphic3d_GraduatedTrihedron::AxisAspect

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_GraduatedTrihedron_XAxisAspect(self, *args)

    def YAxisAspect(self, *args):
        r"""
        Return
        -------
        Graphic3d_GraduatedTrihedron::AxisAspect

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_GraduatedTrihedron_YAxisAspect(self, *args)

    def ZAxisAspect(self, *args):
        r"""
        Return
        -------
        Graphic3d_GraduatedTrihedron::AxisAspect

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_GraduatedTrihedron_ZAxisAspect(self, *args)

    __repr__ = _dumps_object

    @methodnotwrapped
    def SetCubicAxesCallback(self):
    	pass

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_GraduatedTrihedron

# Register Graphic3d_GraduatedTrihedron in _Graphic3d:
_Graphic3d.Graphic3d_GraduatedTrihedron_swigregister(Graphic3d_GraduatedTrihedron)
class Graphic3d_GraphicDriver(OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

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

    def CreateStructure(self, *args):
        r"""

        Parameters
        ----------
        theManager: Graphic3d_StructureManager

        Return
        -------
        opencascade::handle<Graphic3d_CStructure>

        Description
        -----------
        Creates new empty graphic structure.

        """
        return _Graphic3d.Graphic3d_GraphicDriver_CreateStructure(self, *args)

    def CreateView(self, *args):
        r"""

        Parameters
        ----------
        theMgr: Graphic3d_StructureManager

        Return
        -------
        opencascade::handle<Graphic3d_CView>

        Description
        -----------
        Creates new view for this graphic driver.

        """
        return _Graphic3d.Graphic3d_GraphicDriver_CreateView(self, *args)

    def DefaultTextHeight(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_GraphicDriver_DefaultTextHeight(self, *args)

    def DumpJson(self, depth=-1):
        r"""

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        """
        return _Graphic3d.Graphic3d_GraphicDriver_DumpJson(self, depth)

    def EnableVBO(self, *args):
        r"""

        Parameters
        ----------
        status: bool

        Return
        -------
        None

        Description
        -----------
        enables/disables usage of OpenGL vertex buffer arrays while drawing primitive arrays.

        """
        return _Graphic3d.Graphic3d_GraphicDriver_EnableVBO(self, *args)

    def GetDisplayConnection(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Aspect_DisplayConnection>

        Description
        -----------
        returns Handle to display connection.

        """
        return _Graphic3d.Graphic3d_GraphicDriver_GetDisplayConnection(self, *args)

    def InquireLightLimit(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Request maximum number of active light sources supported by driver and hardware.

        """
        return _Graphic3d.Graphic3d_GraphicDriver_InquireLightLimit(self, *args)

    def InquireLimit(self, *args):
        r"""

        Parameters
        ----------
        theType: Graphic3d_TypeOfLimit

        Return
        -------
        int

        Description
        -----------
        Request limit of graphic resource of specific type.

        """
        return _Graphic3d.Graphic3d_GraphicDriver_InquireLimit(self, *args)

    def InquirePlaneLimit(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Request maximum number of active clipping planes supported by driver and hardware.

        """
        return _Graphic3d.Graphic3d_GraphicDriver_InquirePlaneLimit(self, *args)

    def InquireViewLimit(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Request maximum number of views supported by driver.

        """
        return _Graphic3d.Graphic3d_GraphicDriver_InquireViewLimit(self, *args)

    def InsertLayerAfter(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Adds a layer to all views. 
        Input parameter: theNewLayerId id of new layer, should be > 0 (negative values are reserved for default layers). 
        Input parameter: theSettings new layer settings 
        Input parameter: theLayerBefore id of layer to append new layer after.

        """
        return _Graphic3d.Graphic3d_GraphicDriver_InsertLayerAfter(self, *args)

    def InsertLayerBefore(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Adds a layer to all views. To add a structure to desired layer on display it is necessary to set the layer ID for the structure. 
        Input parameter: theNewLayerId id of new layer, should be > 0 (negative values are reserved for default layers). 
        Input parameter: theSettings new layer settings 
        Input parameter: theLayerAfter id of layer to append new layer before.

        """
        return _Graphic3d.Graphic3d_GraphicDriver_InsertLayerBefore(self, *args)

    def IsVerticalSync(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns True if vertical synchronization with display refresh rate (VSync) should be used; True by default.

        """
        return _Graphic3d.Graphic3d_GraphicDriver_IsVerticalSync(self, *args)

    def MemoryInfo(self, *args):
        r"""

        Parameters
        ----------
        theFreeBytes: Standard_Size
        theInfo: str

        Return
        -------
        bool

        Description
        -----------
        Returns information about GPU memory usage.

        """
        return _Graphic3d.Graphic3d_GraphicDriver_MemoryInfo(self, *args)

    def NewIdentification(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Returns a new identification number for a new structure.

        """
        return _Graphic3d.Graphic3d_GraphicDriver_NewIdentification(self, *args)

    def RemoveIdentification(self, *args):
        r"""

        Parameters
        ----------
        theId: int

        Return
        -------
        None

        Description
        -----------
        Frees the identifier of a structure.

        """
        return _Graphic3d.Graphic3d_GraphicDriver_RemoveIdentification(self, *args)

    def RemoveStructure(self, *args):
        r"""

        Parameters
        ----------
        theCStructure: Graphic3d_CStructure

        Return
        -------
        None

        Description
        -----------
        Removes structure from graphic driver and releases its resources.

        """
        return _Graphic3d.Graphic3d_GraphicDriver_RemoveStructure(self, *args)

    def RemoveView(self, *args):
        r"""

        Parameters
        ----------
        theView: Graphic3d_CView

        Return
        -------
        None

        Description
        -----------
        Removes view from graphic driver and releases its resources.

        """
        return _Graphic3d.Graphic3d_GraphicDriver_RemoveView(self, *args)

    def RemoveZLayer(self, *args):
        r"""

        Parameters
        ----------
        theLayerId: int

        Return
        -------
        None

        Description
        -----------
        Removes Z layer. All structures displayed at the moment in layer will be displayed in default layer (the bottom-level z layer). By default, there are always default bottom-level layer that can't be removed. The passed theLayerId should be not less than 0 (reserved for default layers that can not be removed).

        """
        return _Graphic3d.Graphic3d_GraphicDriver_RemoveZLayer(self, *args)

    def SetVerticalSync(self, *args):
        r"""

        Parameters
        ----------
        theToEnable: bool

        Return
        -------
        None

        Description
        -----------
        Set if vertical synchronization with display refresh rate (VSync) should be used.

        """
        return _Graphic3d.Graphic3d_GraphicDriver_SetVerticalSync(self, *args)

    def SetZLayerSettings(self, *args):
        r"""

        Parameters
        ----------
        theLayerId: int
        theSettings: Graphic3d_ZLayerSettings

        Return
        -------
        None

        Description
        -----------
        Sets the settings for a single Z layer.

        """
        return _Graphic3d.Graphic3d_GraphicDriver_SetZLayerSettings(self, *args)

    def TextSize(self, *args):
        r"""

        Parameters
        ----------
        theView: Graphic3d_CView
        theText: str
        theHeight: float

        Return
        -------
        theWidth: float
        theAscent: float
        theDescent: float

        Description
        -----------
        Computes text width.

        """
        return _Graphic3d.Graphic3d_GraphicDriver_TextSize(self, *args)

    def ViewExists(self, *args):
        r"""

        Parameters
        ----------
        theWindow: Aspect_Window
        theView: Graphic3d_CView

        Return
        -------
        bool

        Description
        -----------
        Returns view associated with the window if it is exists and is activated. Returns Standard_True if the view associated to the window exists.

        """
        return _Graphic3d.Graphic3d_GraphicDriver_ViewExists(self, *args)

    def ZLayerSettings(self, *args):
        r"""

        Parameters
        ----------
        theLayerId: int

        Return
        -------
        Graphic3d_ZLayerSettings

        Description
        -----------
        Returns the settings of a single Z layer.

        """
        return _Graphic3d.Graphic3d_GraphicDriver_ZLayerSettings(self, *args)

    def ZLayers(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Returns list of Z layers defined for the graphical driver.

        """
        return _Graphic3d.Graphic3d_GraphicDriver_ZLayers(self, *args)


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


    __repr__ = _dumps_object

    @methodnotwrapped
    def Print(self):
    	pass

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_GraphicDriver

# Register Graphic3d_GraphicDriver in _Graphic3d:
_Graphic3d.Graphic3d_GraphicDriver_swigregister(Graphic3d_GraphicDriver)
class Graphic3d_GraphicDriverFactory(OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

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

    def CreateDriver(self, *args):
        r"""

        Parameters
        ----------
        theDisp: Aspect_DisplayConnection

        Return
        -------
        opencascade::handle<Graphic3d_GraphicDriver>

        Description
        -----------
        Creates new empty graphic driver.

        """
        return _Graphic3d.Graphic3d_GraphicDriverFactory_CreateDriver(self, *args)

    @staticmethod
    def DefaultDriverFactory(*args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_GraphicDriverFactory>

        Description
        -----------
        Return default driver factory or NULL if no one was registered.

        """
        return _Graphic3d.Graphic3d_GraphicDriverFactory_DefaultDriverFactory(*args)

    @staticmethod
    def DriverFactories(*args):
        r"""
        Return
        -------
        Graphic3d_GraphicDriverFactoryList

        Description
        -----------
        Return the global map of registered driver factories.

        """
        return _Graphic3d.Graphic3d_GraphicDriverFactory_DriverFactories(*args)

    def Name(self, *args):
        r"""
        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        Return driver factory name.

        """
        return _Graphic3d.Graphic3d_GraphicDriverFactory_Name(self, *args)

    @staticmethod
    def RegisterFactory(*args):
        r"""

        Parameters
        ----------
        theFactory: Graphic3d_GraphicDriverFactory
        theIsPreferred: bool (optional, default to false)

        Return
        -------
        None

        Description
        -----------
        Registers factory. 
        Input parameter: theFactory factory to register 
        Input parameter: theIsPreferred add to the beginning of the list when True, or add to the end otherwise.

        """
        return _Graphic3d.Graphic3d_GraphicDriverFactory_RegisterFactory(*args)

    @staticmethod
    def UnregisterFactory(*args):
        r"""

        Parameters
        ----------
        theName: str

        Return
        -------
        None

        Description
        -----------
        Unregisters factory.

        """
        return _Graphic3d.Graphic3d_GraphicDriverFactory_UnregisterFactory(*args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_GraphicDriverFactory

# Register Graphic3d_GraphicDriverFactory in _Graphic3d:
_Graphic3d.Graphic3d_GraphicDriverFactory_swigregister(Graphic3d_GraphicDriverFactory)
class Graphic3d_Group(OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

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

    def AddPrimitiveArray(self, *args):
        r"""

        Parameters
        ----------
        theType: Graphic3d_TypeOfPrimitiveArray
        theIndices: Graphic3d_IndexBuffer
        theAttribs: Graphic3d_Buffer
        theBounds: Graphic3d_BoundBuffer
        theToEvalMinMax: bool (optional, default to Standard_True)

        Return
        -------
        None

        Description
        -----------
        Adds an array of primitives for display.

        Parameters
        ----------
        thePrim: Graphic3d_ArrayOfPrimitives
        theToEvalMinMax: bool (optional, default to Standard_True)

        Return
        -------
        None

        Description
        -----------
        Adds an array of primitives for display.

        """
        return _Graphic3d.Graphic3d_Group_AddPrimitiveArray(self, *args)

    def AddText(self, *args):
        r"""

        Parameters
        ----------
        theTextParams: Graphic3d_Text
        theToEvalMinMax: bool (optional, default to Standard_True)

        Return
        -------
        None

        Description
        -----------
        Adds a text for display.

        """
        return _Graphic3d.Graphic3d_Group_AddText(self, *args)

    def Aspects(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_Aspects>

        Description
        -----------
        Return fill area aspect.

        """
        return _Graphic3d.Graphic3d_Group_Aspects(self, *args)

    def BoundingBox(self, *args):
        r"""
        Return
        -------
        Graphic3d_BndBox4f

        Description
        -----------
        Returns boundary box of the group <self> without transformation applied,.

        """
        return _Graphic3d.Graphic3d_Group_BoundingBox(self, *args)

    def ChangeBoundingBox(self, *args):
        r"""
        Return
        -------
        Graphic3d_BndBox4f

        Description
        -----------
        Returns non-const boundary box of the group <self> without transformation applied,.

        """
        return _Graphic3d.Graphic3d_Group_ChangeBoundingBox(self, *args)

    def Clear(self, *args):
        r"""

        Parameters
        ----------
        theUpdateStructureMgr: bool (optional, default to Standard_True)

        Return
        -------
        None

        Description
        -----------
        Suppress all primitives and attributes of <self>. To clear group without update in Graphic3d_StructureManager pass Standard_False as <theUpdateStructureMgr>. This used on context and viewer destruction, when the pointer to structure manager in Graphic3d_Structure could be already released (pointers are used here to avoid handle cross-reference);.

        """
        return _Graphic3d.Graphic3d_Group_Clear(self, *args)

    def DumpJson(self, depth=-1):
        r"""

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        """
        return _Graphic3d.Graphic3d_Group_DumpJson(self, depth)

    def IsClosed(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return true if primitive arrays within this graphic group form closed volume (do no contain open shells).

        """
        return _Graphic3d.Graphic3d_Group_IsClosed(self, *args)

    def IsDeleted(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns Standard_True if the group <self> is deleted. <self> is deleted after the call Remove (me) or the associated structure is deleted.

        """
        return _Graphic3d.Graphic3d_Group_IsDeleted(self, *args)

    def IsEmpty(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns Standard_True if the group <self> is empty.

        """
        return _Graphic3d.Graphic3d_Group_IsEmpty(self, *args)

    def Marker(self, *args):
        r"""

        Parameters
        ----------
        thePoint: Graphic3d_Vertex
        theToEvalMinMax: bool (optional, default to Standard_True)

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_Group_Marker(self, *args)

    def MinMaxValues(self, *args):
        r"""

        Parameters
        ----------

        Return
        -------
        theXMin: float
        theYMin: float
        theZMin: float
        theXMax: float
        theYMax: float
        theZMax: float

        Description
        -----------
        Returns the coordinates of the boundary box of the group.

        """
        return _Graphic3d.Graphic3d_Group_MinMaxValues(self, *args)

    def Remove(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Suppress the group <self> in the structure. Warning: No more graphic operations in <self> after this call. Modifies the current modelling transform persistence (pan, zoom or rotate) Get the current modelling transform persistence (pan, zoom or rotate).

        """
        return _Graphic3d.Graphic3d_Group_Remove(self, *args)

    def ReplaceAspects(self, *args):
        r"""

        Parameters
        ----------
        theMap: Graphic3d_MapOfAspectsToAspects

        Return
        -------
        None

        Description
        -----------
        Replace aspects specified in the replacement map.

        """
        return _Graphic3d.Graphic3d_Group_ReplaceAspects(self, *args)

    def SetClosed(self, *args):
        r"""

        Parameters
        ----------
        theIsClosed: bool

        Return
        -------
        None

        Description
        -----------
        Changes property shown that primitive arrays within this group form closed volume (do no contain open shells).

        """
        return _Graphic3d.Graphic3d_Group_SetClosed(self, *args)

    def SetFlippingOptions(self, *args):
        r"""

        Parameters
        ----------
        theIsEnabled: bool
        theRefPlane: gp_Ax2

        Return
        -------
        None

        Description
        -----------
        sets the flipping to theIsEnabled state.

        """
        return _Graphic3d.Graphic3d_Group_SetFlippingOptions(self, *args)

    def SetMinMaxValues(self, *args):
        r"""

        Parameters
        ----------
        theXMin: float
        theYMin: float
        theZMin: float
        theXMax: float
        theYMax: float
        theZMax: float

        Return
        -------
        None

        Description
        -----------
        Sets the coordinates of the boundary box of the group.

        """
        return _Graphic3d.Graphic3d_Group_SetMinMaxValues(self, *args)

    def SetPrimitivesAspect(self, *args):
        r"""

        Parameters
        ----------
        theAspect: Graphic3d_Aspects

        Return
        -------
        None

        Description
        -----------
        Modifies the current context of the group to give another aspect for all the primitives created after this call in the group.

        """
        return _Graphic3d.Graphic3d_Group_SetPrimitivesAspect(self, *args)

    def SetStencilTestOptions(self, *args):
        r"""

        Parameters
        ----------
        theIsEnabled: bool

        Return
        -------
        None

        Description
        -----------
        sets the stencil test to theIsEnabled state;.

        """
        return _Graphic3d.Graphic3d_Group_SetStencilTestOptions(self, *args)

    def SetTransformPersistence(self, *args):
        r"""

        Parameters
        ----------
        theTrsfPers: Graphic3d_TransformPers

        Return
        -------
        None

        Description
        -----------
        Set transformation persistence.

        """
        return _Graphic3d.Graphic3d_Group_SetTransformPersistence(self, *args)

    def SetTransformation(self, *args):
        r"""

        Parameters
        ----------
        theTrsf: gp_Trsf

        Return
        -------
        None

        Description
        -----------
        Assign transformation.

        """
        return _Graphic3d.Graphic3d_Group_SetTransformation(self, *args)

    def Structure(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_Structure>

        Description
        -----------
        Returns the structure containing the group <self>.

        """
        return _Graphic3d.Graphic3d_Group_Structure(self, *args)

    def SynchronizeAspects(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Update presentation aspects after their modification.

        """
        return _Graphic3d.Graphic3d_Group_SynchronizeAspects(self, *args)

    def Text(self, *args):
        r"""

        Parameters
        ----------
        AText: str
        APoint: Graphic3d_Vertex
        AHeight: float
        AAngle: float
        ATp: Graphic3d_TextPath
        AHta: Graphic3d_HorizontalTextAlignment
        AVta: Graphic3d_VerticalTextAlignment
        EvalMinMax: bool (optional, default to Standard_True)

        Return
        -------
        None

        Description
        -----------
        Creates the string <AText> at position <APoint>. The 3D point of attachment is projected. The text is written in the plane of projection. The attributes are given with respect to the plane of projection. AHeight: Height of text. (Relative to the Normalized Projection Coordinates (NPC) Space). AAngle: Orientation of the text (with respect to the horizontal).

        Parameters
        ----------
        AText: str
        APoint: Graphic3d_Vertex
        AHeight: float
        EvalMinMax: bool (optional, default to Standard_True)

        Return
        -------
        None

        Description
        -----------
        Creates the string <AText> at position <APoint>. The 3D point of attachment is projected. The text is written in the plane of projection. The attributes are given with respect to the plane of projection. AHeight: Height of text. (Relative to the Normalized Projection Coordinates (NPC) Space). The other attributes have the following default values: AAngle: PI / 2. ATp: TP_RIGHT AHta: HTA_LEFT AVta: VTA_BOTTOM.

        Parameters
        ----------
        AText: str
        APoint: Graphic3d_Vertex
        AHeight: float
        AAngle: float
        ATp: Graphic3d_TextPath
        AHta: Graphic3d_HorizontalTextAlignment
        AVta: Graphic3d_VerticalTextAlignment
        EvalMinMax: bool (optional, default to Standard_True)

        Return
        -------
        None

        Description
        -----------
        Creates the string <AText> at position <APoint>. The 3D point of attachment is projected. The text is written in the plane of projection. The attributes are given with respect to the plane of projection. AHeight: Height of text. (Relative to the Normalized Projection Coordinates (NPC) Space). AAngle: Orientation of the text (with respect to the horizontal).

        Parameters
        ----------
        AText: str
        APoint: Graphic3d_Vertex
        AHeight: float
        EvalMinMax: bool (optional, default to Standard_True)

        Return
        -------
        None

        Description
        -----------
        Creates the string <AText> at position <APoint>. The 3D point of attachment is projected. The text is written in the plane of projection. The attributes are given with respect to the plane of projection. AHeight: Height of text. (Relative to the Normalized Projection Coordinates (NPC) Space). The other attributes have the following default values: AAngle: PI / 2. ATp: TP_RIGHT AHta: HTA_LEFT AVta: VTA_BOTTOM.

        Parameters
        ----------
        theTextUtf: str
        theOrientation: gp_Ax2
        theHeight: float
        theAngle: float
        theTp: Graphic3d_TextPath
        theHTA: Graphic3d_HorizontalTextAlignment
        theVTA: Graphic3d_VerticalTextAlignment
        theToEvalMinMax: bool (optional, default to Standard_True)
        theHasOwnAnchor: bool (optional, default to Standard_True)

        Return
        -------
        None

        Description
        -----------
        Creates the string <theText> at orientation <theOrientation> in 3D space.

        Parameters
        ----------
        theText: str
        theOrientation: gp_Ax2
        theHeight: float
        theAngle: float
        theTp: Graphic3d_TextPath
        theHTA: Graphic3d_HorizontalTextAlignment
        theVTA: Graphic3d_VerticalTextAlignment
        theToEvalMinMax: bool (optional, default to Standard_True)
        theHasOwnAnchor: bool (optional, default to Standard_True)

        Return
        -------
        None

        Description
        -----------
        Creates the string <theText> at orientation <theOrientation> in 3D space.

        """
        return _Graphic3d.Graphic3d_Group_Text(self, *args)

    def TransformPersistence(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_TransformPers>

        Description
        -----------
        Return transformation persistence.

        """
        return _Graphic3d.Graphic3d_Group_TransformPersistence(self, *args)

    def Transformation(self, *args):
        r"""
        Return
        -------
        gp_Trsf

        Description
        -----------
        Return transformation.

        """
        return _Graphic3d.Graphic3d_Group_Transformation(self, *args)


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


    __repr__ = _dumps_object

    @methodnotwrapped
    def SetGroupPrimitivesAspect(self):
    	pass

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_Group

# Register Graphic3d_Group in _Graphic3d:
_Graphic3d.Graphic3d_Group_swigregister(Graphic3d_Group)
class Graphic3d_HatchStyle(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"""

        Parameters
        ----------
        thePattern: Image_PixMap

        Return
        -------
        None

        Description
        -----------
        Creates a new custom hatch style with the given pattern and unique style id @warning Raises a program error if given pattern image is not a valid 32*32 bitmap.

        Parameters
        ----------
        theType: Aspect_HatchStyle

        Return
        -------
        None

        Description
        -----------
        Creates a new predefined hatch style with the given id in Aspect_HatchStyle enum. GPU memory for the pattern will not be allocated.

        """
        _Graphic3d.Graphic3d_HatchStyle_swiginit(self, _Graphic3d.new_Graphic3d_HatchStyle(*args))

    def DumpJson(self, depth=-1):
        r"""

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        """
        return _Graphic3d.Graphic3d_HatchStyle_DumpJson(self, depth)

    def HatchType(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        In case if predefined OCCT style is used, returns index in Aspect_HatchStyle enumeration. If the style is custom, returns unique index of the style.

        """
        return _Graphic3d.Graphic3d_HatchStyle_HatchType(self, *args)

    def Pattern(self, *args):
        r"""
        Return
        -------
        Standard_Byte *

        Description
        -----------
        Returns the pattern of custom hatch style.

        """
        return _Graphic3d.Graphic3d_HatchStyle_Pattern(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_HatchStyle

# Register Graphic3d_HatchStyle in _Graphic3d:
_Graphic3d.Graphic3d_HatchStyle_swigregister(Graphic3d_HatchStyle)
class Graphic3d_Layer(OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

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

    def Add(self, *args):
        r"""

        Parameters
        ----------
        theStruct: Graphic3d_CStructure *
        thePriority: Graphic3d_DisplayPriority
        isForChangePriority: bool (optional, default to Standard_False)

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_Layer_Add(self, *args)

    def Append(self, *args):
        r"""

        Parameters
        ----------
        theOther: Graphic3d_Layer

        Return
        -------
        bool

        Description
        -----------
        Append layer of acceptable type (with similar number of priorities or less). Returns Standard_False if the list can not be accepted.

        """
        return _Graphic3d.Graphic3d_Layer_Append(self, *args)

    def ArrayOfStructures(self, *args):
        r"""
        Return
        -------
        Graphic3d_ArrayOfIndexedMapOfStructure

        Description
        -----------
        Returns array of structures.

        """
        return _Graphic3d.Graphic3d_Layer_ArrayOfStructures(self, *args)

    def BoundingBox(self, *args):
        r"""

        Parameters
        ----------
        theViewId: int
        theCamera: Graphic3d_Camera
        theWindowWidth: int
        theWindowHeight: int
        theToIncludeAuxiliary: bool

        Return
        -------
        Bnd_Box

        Description
        -----------
        Returns layer bounding box. 
        Parameter theViewId view index to consider View Affinity in structure 
        Parameter theCamera camera definition 
        Parameter theWindowWidth viewport width (for applying transformation-persistence) 
        Parameter theWindowHeight viewport height (for applying transformation-persistence) 
        Parameter theToIncludeAuxiliary consider also auxiliary presentations (with infinite flag or with trihedron transformation persistence) 
        Return: computed bounding box.

        """
        return _Graphic3d.Graphic3d_Layer_BoundingBox(self, *args)

    def CullableStructuresBVH(self, *args):
        r"""
        Return
        -------
        Graphic3d_BvhCStructureSet

        Description
        -----------
        Returns set of Graphic3d_CStructures structures for building BVH tree.

        """
        return _Graphic3d.Graphic3d_Layer_CullableStructuresBVH(self, *args)

    def CullableTrsfPersStructuresBVH(self, *args):
        r"""
        Return
        -------
        Graphic3d_BvhCStructureSetTrsfPers

        Description
        -----------
        Returns set of transform persistent Graphic3d_CStructures for building BVH tree.

        """
        return _Graphic3d.Graphic3d_Layer_CullableTrsfPersStructuresBVH(self, *args)

    def DumpJson(self, depth=-1):
        r"""

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        """
        return _Graphic3d.Graphic3d_Layer_DumpJson(self, depth)

    def InvalidateBVHData(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Marks BVH tree for given priority list as dirty and marks primitive set for rebuild.

        """
        return _Graphic3d.Graphic3d_Layer_InvalidateBVHData(self, *args)

    def InvalidateBoundingBox(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Marks cached bounding box as obsolete.

        """
        return _Graphic3d.Graphic3d_Layer_InvalidateBoundingBox(self, *args)

    def IsCulled(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns True if layer is empty or has been discarded entirely by culling test.

        """
        return _Graphic3d.Graphic3d_Layer_IsCulled(self, *args)

    def IsImmediate(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return true if layer was marked with immediate flag.

        """
        return _Graphic3d.Graphic3d_Layer_IsImmediate(self, *args)

    def LayerId(self, *args):
        r"""
        Return
        -------
        Graphic3d_ZLayerId

        Description
        -----------
        Return layer id.

        """
        return _Graphic3d.Graphic3d_Layer_LayerId(self, *args)

    def LayerSettings(self, *args):
        r"""
        Return
        -------
        Graphic3d_ZLayerSettings

        Description
        -----------
        Returns settings of the layer object.

        """
        return _Graphic3d.Graphic3d_Layer_LayerSettings(self, *args)

    def NbOfTransformPersistenceObjects(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Returns number of transform persistence objects.

        """
        return _Graphic3d.Graphic3d_Layer_NbOfTransformPersistenceObjects(self, *args)

    def NbPriorities(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Returns the number of available priority levels.

        """
        return _Graphic3d.Graphic3d_Layer_NbPriorities(self, *args)

    def NbStructures(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Return: the number of structures.

        """
        return _Graphic3d.Graphic3d_Layer_NbStructures(self, *args)

    def NbStructuresNotCulled(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Number of NOT culled structures in the layer.

        """
        return _Graphic3d.Graphic3d_Layer_NbStructuresNotCulled(self, *args)

    def NonCullableStructures(self, *args):
        r"""
        Return
        -------
        NCollection_IndexedMap< Graphic3d_CStructure *>

        Description
        -----------
        Returns indexed map of always rendered structures.

        """
        return _Graphic3d.Graphic3d_Layer_NonCullableStructures(self, *args)

    def Remove(self, *args):
        r"""

        Parameters
        ----------
        theStruct: Graphic3d_CStructure *
        isForChangePriority: bool (optional, default to Standard_False)

        Return
        -------
        thePriority: Graphic3d_DisplayPriority

        Description
        -----------
        Remove structure and returns its priority, if the structure is not found, method returns negative value.

        """
        return _Graphic3d.Graphic3d_Layer_Remove(self, *args)

    def SetLayerSettings(self, *args):
        r"""

        Parameters
        ----------
        theSettings: Graphic3d_ZLayerSettings

        Return
        -------
        None

        Description
        -----------
        Sets settings of the layer object.

        """
        return _Graphic3d.Graphic3d_Layer_SetLayerSettings(self, *args)

    def Structures(self, *args):
        r"""

        Parameters
        ----------
        thePriority: Graphic3d_DisplayPriority

        Return
        -------
        Graphic3d_IndexedMapOfStructure

        Description
        -----------
        Returns structures for specified priority.

        """
        return _Graphic3d.Graphic3d_Layer_Structures(self, *args)

    def UpdateCulling(self, *args):
        r"""

        Parameters
        ----------
        theViewId: int
        theSelector: Graphic3d_CullingTool
        theFrustumCullingState: Graphic3d_RenderingParams::FrustumCulling

        Return
        -------
        None

        Description
        -----------
        Update culling state - should be called before rendering. Traverses through BVH tree to determine which structures are in view volume.

        """
        return _Graphic3d.Graphic3d_Layer_UpdateCulling(self, *args)

    def considerZoomPersistenceObjects(self, *args):
        r"""

        Parameters
        ----------
        theViewId: int
        theCamera: Graphic3d_Camera
        theWindowWidth: int
        theWindowHeight: int

        Return
        -------
        float

        Description
        -----------
        Returns zoom-scale factor.

        """
        return _Graphic3d.Graphic3d_Layer_considerZoomPersistenceObjects(self, *args)


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


    __repr__ = _dumps_object

    @methodnotwrapped
    def FrustumCullingBVHBuilder(self):
    	pass

    @methodnotwrapped
    def Graphic3d_Layer(self):
    	pass

    @methodnotwrapped
    def SetFrustumCullingBVHBuilder(self):
    	pass

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_Layer

# Register Graphic3d_Layer in _Graphic3d:
_Graphic3d.Graphic3d_Layer_swigregister(Graphic3d_Layer)
class Graphic3d_LightSet(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
    IterationFilter_None = _Graphic3d.Graphic3d_LightSet_IterationFilter_None
    IterationFilter_ExcludeAmbient = _Graphic3d.Graphic3d_LightSet_IterationFilter_ExcludeAmbient
    IterationFilter_ExcludeDisabled = _Graphic3d.Graphic3d_LightSet_IterationFilter_ExcludeDisabled
    IterationFilter_ExcludeNoShadow = _Graphic3d.Graphic3d_LightSet_IterationFilter_ExcludeNoShadow
    IterationFilter_ExcludeDisabledAndAmbient = _Graphic3d.Graphic3d_LightSet_IterationFilter_ExcludeDisabledAndAmbient
    IterationFilter_ActiveShadowCasters = _Graphic3d.Graphic3d_LightSet_IterationFilter_ActiveShadowCasters


    class IterationFilter(IntEnum):
    	IterationFilter_None = 0
    	IterationFilter_ExcludeAmbient = 2
    	IterationFilter_ExcludeDisabled = 4
    	IterationFilter_ExcludeNoShadow = 8
    	IterationFilter_ExcludeDisabledAndAmbient = IterationFilter_ExcludeAmbient | IterationFilter_ExcludeDisabled
    	IterationFilter_ActiveShadowCasters = IterationFilter_ExcludeDisabledAndAmbient | IterationFilter_ExcludeNoShadow
    IterationFilter_None = IterationFilter.IterationFilter_None
    IterationFilter_ExcludeAmbient = IterationFilter.IterationFilter_ExcludeAmbient
    IterationFilter_ExcludeDisabled = IterationFilter.IterationFilter_ExcludeDisabled
    IterationFilter_ExcludeNoShadow = IterationFilter.IterationFilter_ExcludeNoShadow
    IterationFilter_ExcludeDisabledAndAmbient = IterationFilter.IterationFilter_ExcludeDisabledAndAmbient
    IterationFilter_ActiveShadowCasters = IterationFilter.IterationFilter_ActiveShadowCasters


    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Empty constructor.

        """
        _Graphic3d.Graphic3d_LightSet_swiginit(self, _Graphic3d.new_Graphic3d_LightSet(*args))

    def Add(self, *args):
        r"""

        Parameters
        ----------
        theLight: Graphic3d_CLight

        Return
        -------
        bool

        Description
        -----------
        Append new light source.

        """
        return _Graphic3d.Graphic3d_LightSet_Add(self, *args)

    def AmbientColor(self, *args):
        r"""
        Return
        -------
        Graphic3d_Vec4

        Description
        -----------
        Returns cumulative ambient color, which is computed as sum of all enabled ambient light sources. Values are NOT clamped (can be greater than 1.0f) and alpha component is fixed to 1.0f. 
        See also: UpdateRevision().

        """
        return _Graphic3d.Graphic3d_LightSet_AmbientColor(self, *args)

    def Contains(self, *args):
        r"""

        Parameters
        ----------
        theLight: Graphic3d_CLight

        Return
        -------
        bool

        Description
        -----------
        Return True if light source is defined in this set.

        """
        return _Graphic3d.Graphic3d_LightSet_Contains(self, *args)

    def Extent(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Return number of light sources.

        """
        return _Graphic3d.Graphic3d_LightSet_Extent(self, *args)

    def IsEmpty(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return True if lights list is empty.

        """
        return _Graphic3d.Graphic3d_LightSet_IsEmpty(self, *args)

    def KeyEnabledLong(self, *args):
        r"""
        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        Returns a string defining a list of enabled light sources as concatenation of letters 'd' (Directional), 'p' (Point), 's' (Spot) depending on the type of light source in the list. Example: 'dppp'. 
        See also: UpdateRevision().

        """
        return _Graphic3d.Graphic3d_LightSet_KeyEnabledLong(self, *args)

    def KeyEnabledShort(self, *args):
        r"""
        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        Returns a string defining a list of enabled light sources as concatenation of letters 'd' (Directional), 'p' (Point), 's' (Spot) depending on the type of light source in the list, specified only once. Example: 'dp'. 
        See also: UpdateRevision().

        """
        return _Graphic3d.Graphic3d_LightSet_KeyEnabledShort(self, *args)

    def Lower(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Return lower light index.

        """
        return _Graphic3d.Graphic3d_LightSet_Lower(self, *args)

    def NbCastShadows(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Returns total amount of enabled lights castings shadows. 
        See also: UpdateRevision().

        """
        return _Graphic3d.Graphic3d_LightSet_NbCastShadows(self, *args)

    def NbEnabled(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Returns total amount of enabled lights EXCLUDING ambient. 
        See also: UpdateRevision().

        """
        return _Graphic3d.Graphic3d_LightSet_NbEnabled(self, *args)

    def NbEnabledLightsOfType(self, *args):
        r"""

        Parameters
        ----------
        theType: Graphic3d_TypeOfLightSource

        Return
        -------
        int

        Description
        -----------
        Returns total amount of enabled lights of specified type. 
        See also: UpdateRevision().

        """
        return _Graphic3d.Graphic3d_LightSet_NbEnabledLightsOfType(self, *args)

    def NbLightsOfType(self, *args):
        r"""

        Parameters
        ----------
        theType: Graphic3d_TypeOfLightSource

        Return
        -------
        int

        Description
        -----------
        Returns total amount of lights of specified type.

        """
        return _Graphic3d.Graphic3d_LightSet_NbLightsOfType(self, *args)

    def Remove(self, *args):
        r"""

        Parameters
        ----------
        theLight: Graphic3d_CLight

        Return
        -------
        bool

        Description
        -----------
        Remove light source.

        """
        return _Graphic3d.Graphic3d_LightSet_Remove(self, *args)

    def Revision(self, *args):
        r"""
        Return
        -------
        Standard_Size

        Description
        -----------
        Return light sources revision. 
        See also: UpdateRevision().

        """
        return _Graphic3d.Graphic3d_LightSet_Revision(self, *args)

    def UpdateRevision(self, *args):
        r"""
        Return
        -------
        Standard_Size

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_LightSet_UpdateRevision(self, *args)

    def Upper(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Return upper light index.

        """
        return _Graphic3d.Graphic3d_LightSet_Upper(self, *args)

    def Value(self, *args):
        r"""

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

        Return
        -------
        opencascade::handle<Graphic3d_CLight>

        Description
        -----------
        Return the light source for specified index within range [Lower(), Upper()].

        """
        return _Graphic3d.Graphic3d_LightSet_Value(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_LightSet

# Register Graphic3d_LightSet in _Graphic3d:
_Graphic3d.Graphic3d_LightSet_swigregister(Graphic3d_LightSet)
class Graphic3d_MarkerImage(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"""

        Parameters
        ----------
        theImage: Image_PixMap
        theImageAlpha: Image_PixMap (optional, default to opencascade::handle<Image_PixMap>())

        Return
        -------
        None

        Description
        -----------
        Constructor from existing pixmap. 
        Input parameter: theImage source image 
        Input parameter: theImageAlpha colorless image.

        Parameters
        ----------
        theBitMap: TColStd_HArray1OfByte
        theWidth: int
        theHeight: int

        Return
        -------
        None

        Description
        -----------
        Creates marker image from array of bytes (method for compatibility with old markers definition). 
        Input parameter: theBitMap source bitmap stored as array of bytes 
        Input parameter: theWidth number of bits in a row 
        Input parameter: theHeight number of bits in a column.

        """
        _Graphic3d.Graphic3d_MarkerImage_swiginit(self, _Graphic3d.new_Graphic3d_MarkerImage(*args))

    def GetBitMapArray(self, *args):
        r"""

        Parameters
        ----------
        theAlphaValue: float (optional, default to 0.5)
        theIsTopDown: bool (optional, default to false)

        Return
        -------
        opencascade::handle<TColStd_HArray1OfByte>

        Description
        -----------
        Return marker image as array of bytes. If an instance of the class has been initialized with image, it will be converted to bitmap based on the parameter theAlphaValue. 
        Parameter theAlphaValue pixels in the image that have alpha value greater than  or equal to this parameter will be stored in bitmap as '1',  others will be stored as '0' 
        Input parameter: theIsTopDown flag indicating expected rows order in returned bitmap, which is bottom-up by default.

        """
        return _Graphic3d.Graphic3d_MarkerImage_GetBitMapArray(self, *args)

    def GetImage(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Image_PixMap>

        Description
        -----------
        Return marker image. If an instance of the class has been initialized with a bitmap, it will be converted to image.

        """
        return _Graphic3d.Graphic3d_MarkerImage_GetImage(self, *args)

    def GetImageAlpha(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Image_PixMap>

        Description
        -----------
        Return image alpha as grayscale image. Note that if an instance of the class has been initialized with a bitmap or with grayscale image this method will return exactly the same image as GetImage().

        """
        return _Graphic3d.Graphic3d_MarkerImage_GetImageAlpha(self, *args)

    def GetImageAlphaId(self, *args):
        r"""
        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        Return an unique ID. This ID will be used to manage resource in graphic driver.

        """
        return _Graphic3d.Graphic3d_MarkerImage_GetImageAlphaId(self, *args)

    def GetImageId(self, *args):
        r"""
        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        Return an unique ID. This ID will be used to manage resource in graphic driver.

        """
        return _Graphic3d.Graphic3d_MarkerImage_GetImageId(self, *args)

    def GetTextureSize(self, *args):
        r"""

        Parameters
        ----------

        Return
        -------
        theWidth: int
        theHeight: int

        Description
        -----------
        Return texture size.

        """
        return _Graphic3d.Graphic3d_MarkerImage_GetTextureSize(self, *args)

    def IsColoredImage(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return True if marker image has colors (e.g. RGBA and not grayscale).

        """
        return _Graphic3d.Graphic3d_MarkerImage_IsColoredImage(self, *args)

    @staticmethod
    def StandardMarker(*args):
        r"""

        Parameters
        ----------
        theMarkerType: Aspect_TypeOfMarker
        theScale: float
        theColor: Graphic3d_Vec4

        Return
        -------
        opencascade::handle<Graphic3d_MarkerImage>

        Description
        -----------
        Returns a marker image for the marker of the specified type, scale and color.

        """
        return _Graphic3d.Graphic3d_MarkerImage_StandardMarker(*args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_MarkerImage

# Register Graphic3d_MarkerImage in _Graphic3d:
_Graphic3d.Graphic3d_MarkerImage_swigregister(Graphic3d_MarkerImage)
class Graphic3d_MaterialAspect(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"""
        Return
        -------
        None

        Description
        -----------
        Creates a material from default values.

        Parameters
        ----------
        theName: Graphic3d_NameOfMaterial

        Return
        -------
        None

        Description
        -----------
        Creates a generic material.

        """
        _Graphic3d.Graphic3d_MaterialAspect_swiginit(self, _Graphic3d.new_Graphic3d_MaterialAspect(*args))

    def Alpha(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Returns the alpha coefficient of the surface (1.0 - Transparency); 1.0 means opaque.

        """
        return _Graphic3d.Graphic3d_MaterialAspect_Alpha(self, *args)

    def AmbientColor(self, *args):
        r"""
        Return
        -------
        Quantity_Color

        Description
        -----------
        Returns the ambient color of the surface.

        """
        return _Graphic3d.Graphic3d_MaterialAspect_AmbientColor(self, *args)

    def BSDF(self, *args):
        r"""
        Return
        -------
        Graphic3d_BSDF

        Description
        -----------
        Returns BSDF (bidirectional scattering distribution function).

        """
        return _Graphic3d.Graphic3d_MaterialAspect_BSDF(self, *args)

    def Color(self, *args):
        r"""
        Return
        -------
        Quantity_Color

        Description
        -----------
        Returns the diffuse color of the surface. WARNING! This method does NOT return color for Graphic3d_MATERIAL_ASPECT material (color is defined by Graphic3d_Aspects::InteriorColor()).

        """
        return _Graphic3d.Graphic3d_MaterialAspect_Color(self, *args)

    def DiffuseColor(self, *args):
        r"""
        Return
        -------
        Quantity_Color

        Description
        -----------
        Returns the diffuse color of the surface.

        """
        return _Graphic3d.Graphic3d_MaterialAspect_DiffuseColor(self, *args)

    def DumpJson(self, depth=-1):
        r"""

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        """
        return _Graphic3d.Graphic3d_MaterialAspect_DumpJson(self, depth)

    def EmissiveColor(self, *args):
        r"""
        Return
        -------
        Quantity_Color

        Description
        -----------
        Returns the emissive color of the surface.

        """
        return _Graphic3d.Graphic3d_MaterialAspect_EmissiveColor(self, *args)

    def IncreaseShine(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Increases or decreases the luminosity. 
        Parameter theDelta a signed percentage.

        """
        return _Graphic3d.Graphic3d_MaterialAspect_IncreaseShine(self, *args)

    def IsDifferent(self, *args):
        r"""

        Parameters
        ----------
        theOther: Graphic3d_MaterialAspect

        Return
        -------
        bool

        Description
        -----------
        Returns True if this material differs from specified one.

        """
        return _Graphic3d.Graphic3d_MaterialAspect_IsDifferent(self, *args)

    def IsEqual(self, *args):
        r"""

        Parameters
        ----------
        theOther: Graphic3d_MaterialAspect

        Return
        -------
        bool

        Description
        -----------
        Returns True if this material is identical to specified one.

        """
        return _Graphic3d.Graphic3d_MaterialAspect_IsEqual(self, *args)

    @staticmethod
    def MaterialFromName(*args):
        r"""

        Parameters
        ----------
        theName: str

        Return
        -------
        theMat: Graphic3d_NameOfMaterial

        Description
        -----------
        Finds the material for specified name. 
        Input parameter: theName name to find @param[out] theMat found material 
        Return: False if name was unrecognized.

        Parameters
        ----------
        theName: str

        Return
        -------
        Graphic3d_NameOfMaterial

        Description
        -----------
        Returns the material for specified name or Graphic3d_NameOfMaterial_DEFAULT if name is unknown.

        """
        return _Graphic3d.Graphic3d_MaterialAspect_MaterialFromName(*args)

    def MaterialName(self, *args):
        r"""

        Parameters
        ----------
        theRank: int

        Return
        -------
        str

        Description
        -----------
        Returns the name of the predefined material of specified rank within range [1, NumberOfMaterials()].
        Return
        -------
        str

        Description
        -----------
        Returns the given name of this material. This might be:.

        """
        return _Graphic3d.Graphic3d_MaterialAspect_MaterialName(self, *args)

    def MaterialType(self, *args):
        r"""

        Parameters
        ----------
        theRank: int

        Return
        -------
        Graphic3d_TypeOfMaterial

        Description
        -----------
        Returns the type of the predefined material of specified rank within range [1, NumberOfMaterials()].
        Return
        -------
        Graphic3d_TypeOfMaterial

        Description
        -----------
        Returns material type.

        Parameters
        ----------
        theType: Graphic3d_TypeOfMaterial

        Return
        -------
        bool

        Description
        -----------
        Returns True if type of this material is equal to specified type.

        """
        return _Graphic3d.Graphic3d_MaterialAspect_MaterialType(self, *args)

    def Name(self, *args):
        r"""
        Return
        -------
        Graphic3d_NameOfMaterial

        Description
        -----------
        Returns the material name (within predefined enumeration).

        """
        return _Graphic3d.Graphic3d_MaterialAspect_Name(self, *args)

    @staticmethod
    def NumberOfMaterials(*args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Returns the number of predefined textures.

        """
        return _Graphic3d.Graphic3d_MaterialAspect_NumberOfMaterials(*args)

    def PBRMaterial(self, *args):
        r"""
        Return
        -------
        Graphic3d_PBRMaterial

        Description
        -----------
        Returns physically based representation of material.

        """
        return _Graphic3d.Graphic3d_MaterialAspect_PBRMaterial(self, *args)

    def ReflectionMode(self, *args):
        r"""

        Parameters
        ----------
        theType: Graphic3d_TypeOfReflection

        Return
        -------
        bool

        Description
        -----------
        Returns True if the reflection mode is active, False otherwise.

        """
        return _Graphic3d.Graphic3d_MaterialAspect_ReflectionMode(self, *args)

    def RefractionIndex(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Returns the refraction index of the material.

        """
        return _Graphic3d.Graphic3d_MaterialAspect_RefractionIndex(self, *args)

    def RequestedName(self, *args):
        r"""
        Return
        -------
        Graphic3d_NameOfMaterial

        Description
        -----------
        Returns the material name within predefined enumeration which has been requested (before modifications).

        """
        return _Graphic3d.Graphic3d_MaterialAspect_RequestedName(self, *args)

    def Reset(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Resets the material with the original values according to the material name but leave the current color values untouched for the material of type ASPECT.

        """
        return _Graphic3d.Graphic3d_MaterialAspect_Reset(self, *args)

    def SetAlpha(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Modifies the alpha coefficient of the surface, where 1.0 is opaque and 0.0 is fully transparent.

        """
        return _Graphic3d.Graphic3d_MaterialAspect_SetAlpha(self, *args)

    def SetAmbientColor(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Modifies the ambient color of the surface.

        """
        return _Graphic3d.Graphic3d_MaterialAspect_SetAmbientColor(self, *args)

    def SetBSDF(self, *args):
        r"""

        Parameters
        ----------
        theBSDF: Graphic3d_BSDF

        Return
        -------
        None

        Description
        -----------
        Modifies the BSDF (bidirectional scattering distribution function).

        """
        return _Graphic3d.Graphic3d_MaterialAspect_SetBSDF(self, *args)

    def SetColor(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Modifies the ambient and diffuse color of the surface. WARNING! Has no effect for Graphic3d_MATERIAL_ASPECT material (color should be set to Graphic3d_Aspects::SetInteriorColor()).

        """
        return _Graphic3d.Graphic3d_MaterialAspect_SetColor(self, *args)

    def SetDiffuseColor(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Modifies the diffuse color of the surface.

        """
        return _Graphic3d.Graphic3d_MaterialAspect_SetDiffuseColor(self, *args)

    def SetEmissiveColor(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Modifies the emissive color of the surface.

        """
        return _Graphic3d.Graphic3d_MaterialAspect_SetEmissiveColor(self, *args)

    def SetMaterialName(self, *args):
        r"""

        Parameters
        ----------
        theName: str

        Return
        -------
        None

        Description
        -----------
        The current material become a 'UserDefined' material. Set the name of the 'UserDefined' material.

        """
        return _Graphic3d.Graphic3d_MaterialAspect_SetMaterialName(self, *args)

    def SetMaterialType(self, *args):
        r"""

        Parameters
        ----------
        theType: Graphic3d_TypeOfMaterial

        Return
        -------
        None

        Description
        -----------
        Set material type.

        """
        return _Graphic3d.Graphic3d_MaterialAspect_SetMaterialType(self, *args)

    def SetPBRMaterial(self, *args):
        r"""

        Parameters
        ----------
        thePBRMaterial: Graphic3d_PBRMaterial

        Return
        -------
        None

        Description
        -----------
        Modifies the physically based representation of material.

        """
        return _Graphic3d.Graphic3d_MaterialAspect_SetPBRMaterial(self, *args)

    def SetReflectionModeOff(self, *args):
        r"""

        Parameters
        ----------
        theType: Graphic3d_TypeOfReflection

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_MaterialAspect_SetReflectionModeOff(self, *args)

    def SetRefractionIndex(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Modifies the refraction index of the material. Warning: Raises MaterialDefinitionError if given value is a lesser than 1.0.

        """
        return _Graphic3d.Graphic3d_MaterialAspect_SetRefractionIndex(self, *args)

    def SetShininess(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Modifies the luminosity of the surface. Warning: Raises MaterialDefinitionError if given value is a negative value or greater than 1.0.

        """
        return _Graphic3d.Graphic3d_MaterialAspect_SetShininess(self, *args)

    def SetSpecularColor(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Modifies the specular color of the surface.

        """
        return _Graphic3d.Graphic3d_MaterialAspect_SetSpecularColor(self, *args)

    def SetTransparency(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Modifies the transparency coefficient of the surface, where 0 is opaque and 1 is fully transparent. Transparency is applicable to materials that have at least one of reflection modes (ambient, diffuse, specular or emissive) enabled. See also SetReflectionModeOn() and SetReflectionModeOff() methods. //! Warning: Raises MaterialDefinitionError if given value is a negative value or greater than 1.0.

        """
        return _Graphic3d.Graphic3d_MaterialAspect_SetTransparency(self, *args)

    def Shininess(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Returns the luminosity of the surface.

        """
        return _Graphic3d.Graphic3d_MaterialAspect_Shininess(self, *args)

    def SpecularColor(self, *args):
        r"""
        Return
        -------
        Quantity_Color

        Description
        -----------
        Returns the specular color of the surface.

        """
        return _Graphic3d.Graphic3d_MaterialAspect_SpecularColor(self, *args)

    def StringName(self, *args):
        r"""
        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        Returns the given name of this material. This might be: - given name set by method ::SetMaterialName() - standard name for a material within enumeration - 'UserDefined' for non-standard material without name specified externally.

        """
        return _Graphic3d.Graphic3d_MaterialAspect_StringName(self, *args)

    def Transparency(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Returns the transparency coefficient of the surface (1.0 - Alpha); 0.0 means opaque.

        """
        return _Graphic3d.Graphic3d_MaterialAspect_Transparency(self, *args)

    def __ne_wrapper__(self, other):
        return _Graphic3d.Graphic3d_MaterialAspect___ne_wrapper__(self, other)

    def __ne__(self, right):
        try:
            return self.__ne_wrapper__(right)
        except:
            return True


    def __eq_wrapper__(self, other):
        return _Graphic3d.Graphic3d_MaterialAspect___eq_wrapper__(self, other)

    def __eq__(self, right):
        try:
            return self.__eq_wrapper__(right)
        except:
            return False


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_MaterialAspect

# Register Graphic3d_MaterialAspect in _Graphic3d:
_Graphic3d.Graphic3d_MaterialAspect_swigregister(Graphic3d_MaterialAspect)
class Graphic3d_PBRMaterial(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"""
        Return
        -------
        None

        Description
        -----------
        Creates new physically based material in Metallic-Roughness system. 'metallic' parameter is 0 by default. 'roughness' parameter is 1 by default. 'color' parameter is (0, 0, 0) by default. 'alpha' parameter is 1 by default. 'IOR' parameter is 1.5 by default. 'emission' parameter is (0, 0, 0) by default.

        Parameters
        ----------
        theBSDF: Graphic3d_BSDF

        Return
        -------
        None

        Description
        -----------
        Creates new physically based material in Metallic-Roughness system from Graphic3d_BSDF.

        """
        _Graphic3d.Graphic3d_PBRMaterial_swiginit(self, _Graphic3d.new_Graphic3d_PBRMaterial(*args))

    def Alpha(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Returns alpha component in range [0, 1].

        """
        return _Graphic3d.Graphic3d_PBRMaterial_Alpha(self, *args)

    def Color(self, *args):
        r"""
        Return
        -------
        Quantity_ColorRGBA

        Description
        -----------
        Returns albedo color with alpha component of material.

        """
        return _Graphic3d.Graphic3d_PBRMaterial_Color(self, *args)

    def DumpJson(self, depth=-1):
        r"""

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        """
        return _Graphic3d.Graphic3d_PBRMaterial_DumpJson(self, depth)

    def Emission(self, *args):
        r"""
        Return
        -------
        Graphic3d_Vec3

        Description
        -----------
        Returns light intensity emitted by material. Values are greater or equal 0.

        """
        return _Graphic3d.Graphic3d_PBRMaterial_Emission(self, *args)

    @staticmethod
    def GenerateEnvLUT(*args):
        r"""

        Parameters
        ----------
        theLUT: Image_PixMap
        theNbIntegralSamples: unsigned int (optional, default to 1024)

        Return
        -------
        None

        Description
        -----------
        Generates 2D look up table of scale and bias for fresnell zero coefficient. It is needed for calculation reflectance part of environment lighting. @param[out] theLUT table storage (must be Image_Format_RGF). 
        Input parameter: theNbIntegralSamples number of importance samples in hemisphere integral calculation for every table item.

        """
        return _Graphic3d.Graphic3d_PBRMaterial_GenerateEnvLUT(*args)

    def IOR(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Returns index of refraction in [1, 3] range.

        """
        return _Graphic3d.Graphic3d_PBRMaterial_IOR(self, *args)

    def Metallic(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Returns material's metallic coefficient in [0, 1] range. 1 for metals and 0 for dielectrics. It is preferable to be exactly 0 or 1. Average values are needed for textures mixing in shader.

        """
        return _Graphic3d.Graphic3d_PBRMaterial_Metallic(self, *args)

    @staticmethod
    def MetallicFromSpecular(*args):
        r"""

        Parameters
        ----------
        theSpecular: Quantity_Color

        Return
        -------
        float

        Description
        -----------
        Compute material metallicity from common material (specular color). 
        Input parameter: theSpecular specular color 
        Return: metallicity within [0..1] range.

        """
        return _Graphic3d.Graphic3d_PBRMaterial_MetallicFromSpecular(*args)

    @staticmethod
    def MinRoughness(*args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Roughness cannot be 0 in real calculations, so it returns minimal achievable level of roughness in practice.

        """
        return _Graphic3d.Graphic3d_PBRMaterial_MinRoughness(*args)

    def NormalizedRoughness(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Returns roughness mapping parameter in [0, 1] range. Roughness is defined in [0, 1] for handful material settings and is mapped to [MinRoughness, 1] for calculations.

        """
        return _Graphic3d.Graphic3d_PBRMaterial_NormalizedRoughness(self, *args)

    def Roughness(self, *args):
        r"""

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

        Return
        -------
        float

        Description
        -----------
        Maps roughness from [0, 1] to [MinRoughness, 1] for calculations.
        Return
        -------
        float

        Description
        -----------
        Returns real value of roughness in [MinRoughness, 1] range for calculations.

        """
        return _Graphic3d.Graphic3d_PBRMaterial_Roughness(self, *args)

    @staticmethod
    def RoughnessFromSpecular(*args):
        r"""

        Parameters
        ----------
        theSpecular: Quantity_Color
        theShiness: float

        Return
        -------
        float

        Description
        -----------
        Compute material roughness from common material (specular color + shininess). 
        Input parameter: theSpecular specular color 
        Input parameter: theShiness normalized shininess coefficient within [0..1] range 
        Return: roughness within [0..1] range.

        """
        return _Graphic3d.Graphic3d_PBRMaterial_RoughnessFromSpecular(*args)

    def SetAlpha(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Modifies alpha component.

        """
        return _Graphic3d.Graphic3d_PBRMaterial_SetAlpha(self, *args)

    def SetBSDF(self, *args):
        r"""

        Parameters
        ----------
        theBSDF: Graphic3d_BSDF

        Return
        -------
        None

        Description
        -----------
        Generates material in Metallic-Roughness system from Graphic3d_BSDF.

        """
        return _Graphic3d.Graphic3d_PBRMaterial_SetBSDF(self, *args)

    def SetColor(self, *args):
        r"""

        Parameters
        ----------
        theColor: Quantity_ColorRGBA

        Return
        -------
        None

        Description
        -----------
        Modifies albedo color with alpha component.

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

        Return
        -------
        None

        Description
        -----------
        Modifies only albedo color.

        """
        return _Graphic3d.Graphic3d_PBRMaterial_SetColor(self, *args)

    def SetEmission(self, *args):
        r"""

        Parameters
        ----------
        theEmission: Graphic3d_Vec3

        Return
        -------
        None

        Description
        -----------
        Modifies light intensity emitted by material.

        """
        return _Graphic3d.Graphic3d_PBRMaterial_SetEmission(self, *args)

    def SetIOR(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Modifies index of refraction in [1, 3] range. In practice affects only on non-metal materials reflection possibilities.

        """
        return _Graphic3d.Graphic3d_PBRMaterial_SetIOR(self, *args)

    def SetMetallic(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Modifies metallic coefficient of material in [0, 1] range.

        """
        return _Graphic3d.Graphic3d_PBRMaterial_SetMetallic(self, *args)

    def SetRoughness(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Modifies roughness coefficient of material in [0, 1] range.

        """
        return _Graphic3d.Graphic3d_PBRMaterial_SetRoughness(self, *args)

    @staticmethod
    def SpecIBLMapSamplesFactor(*args):
        r"""

        Parameters
        ----------
        theProbability: float
        theRoughness: float

        Return
        -------
        float

        Description
        -----------
        Shows how much times less samples can be used in certain roughness value specular IBL map generation in compare with samples number for map with roughness of 1. Specular IBL maps with less roughness values have higher resolution but require less samples for the same quality of baking. So that reducing samples number is good strategy to improve performance of baking. The samples number for specular IBL map with roughness of 1 (the maximum possible samples number) is expected to be defined as baking parameter. Samples number for other roughness values can be calculated by multiplication origin samples number by this factor. 
        Parameter theProbability value from 0 to 1 controlling strength of samples reducing. Bigger values result in slower reduction to provide better quality but worse performance. Value of 1 doesn't affect at all so that 1 will be returned (it can be used to disable reduction strategy). 
        Parameter theRoughness roughness value of current generated specular IBL map (from 0 to 1). 
        Return: factor to calculate number of samples for current specular IBL map baking. Be aware! It has no obligation to return 1 in case of roughness of 1. Be aware! It produces poor quality with small number of origin samples. In that case it is recommended to be disabled.

        """
        return _Graphic3d.Graphic3d_PBRMaterial_SpecIBLMapSamplesFactor(*args)

    def __eq_wrapper__(self, other):
        return _Graphic3d.Graphic3d_PBRMaterial___eq_wrapper__(self, other)

    def __eq__(self, right):
        try:
            return self.__eq_wrapper__(right)
        except:
            return False


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_PBRMaterial

# Register Graphic3d_PBRMaterial in _Graphic3d:
_Graphic3d.Graphic3d_PBRMaterial_swigregister(Graphic3d_PBRMaterial)
class Graphic3d_PolygonOffset(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Mode = property(_Graphic3d.Graphic3d_PolygonOffset_Mode_get, _Graphic3d.Graphic3d_PolygonOffset_Mode_set)
    Factor = property(_Graphic3d.Graphic3d_PolygonOffset_Factor_get, _Graphic3d.Graphic3d_PolygonOffset_Factor_set)
    Units = property(_Graphic3d.Graphic3d_PolygonOffset_Units_get, _Graphic3d.Graphic3d_PolygonOffset_Units_set)

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Empty constructor.

        """
        _Graphic3d.Graphic3d_PolygonOffset_swiginit(self, _Graphic3d.new_Graphic3d_PolygonOffset(*args))

    def DumpJson(self, depth=-1):
        r"""

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        """
        return _Graphic3d.Graphic3d_PolygonOffset_DumpJson(self, depth)

    def __eq_wrapper__(self, other):
        return _Graphic3d.Graphic3d_PolygonOffset___eq_wrapper__(self, other)

    def __eq__(self, right):
        try:
            return self.__eq_wrapper__(right)
        except:
            return False


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_PolygonOffset

# Register Graphic3d_PolygonOffset in _Graphic3d:
_Graphic3d.Graphic3d_PolygonOffset_swigregister(Graphic3d_PolygonOffset)
class Graphic3d_PresentationAttributes(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"""
        Return
        -------
        None

        Description
        -----------
        Empty constructor.

        """
        _Graphic3d.Graphic3d_PresentationAttributes_swiginit(self, _Graphic3d.new_Graphic3d_PresentationAttributes(*args))

    def BasicFillAreaAspect(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_AspectFillArea3d>

        Description
        -----------
        Return basic presentation fill area aspect, NULL by default. When set, might be used instead of Color() property.

        """
        return _Graphic3d.Graphic3d_PresentationAttributes_BasicFillAreaAspect(self, *args)

    def Color(self, *args):
        r"""
        Return
        -------
        Quantity_Color

        Description
        -----------
        Returns basic presentation color, Quantity_NOC_WHITE by default.

        """
        return _Graphic3d.Graphic3d_PresentationAttributes_Color(self, *args)

    def ColorRGBA(self, *args):
        r"""
        Return
        -------
        Quantity_ColorRGBA

        Description
        -----------
        Returns basic presentation color (including alpha channel).

        """
        return _Graphic3d.Graphic3d_PresentationAttributes_ColorRGBA(self, *args)

    def DisplayMode(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Returns display mode, 0 by default. -1 means undefined (main display mode of presentation to be used).

        """
        return _Graphic3d.Graphic3d_PresentationAttributes_DisplayMode(self, *args)

    def DumpJson(self, depth=-1):
        r"""

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        """
        return _Graphic3d.Graphic3d_PresentationAttributes_DumpJson(self, depth)

    def Method(self, *args):
        r"""
        Return
        -------
        Aspect_TypeOfHighlightMethod

        Description
        -----------
        Returns highlight method, Aspect_TOHM_COLOR by default.

        """
        return _Graphic3d.Graphic3d_PresentationAttributes_Method(self, *args)

    def SetBasicFillAreaAspect(self, *args):
        r"""

        Parameters
        ----------
        theAspect: Graphic3d_AspectFillArea3d

        Return
        -------
        None

        Description
        -----------
        Sets basic presentation fill area aspect.

        """
        return _Graphic3d.Graphic3d_PresentationAttributes_SetBasicFillAreaAspect(self, *args)

    def SetColor(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Sets basic presentation color (RGB components, does not modifies transparency).

        """
        return _Graphic3d.Graphic3d_PresentationAttributes_SetColor(self, *args)

    def SetDisplayMode(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Sets display mode.

        """
        return _Graphic3d.Graphic3d_PresentationAttributes_SetDisplayMode(self, *args)

    def SetMethod(self, *args):
        r"""

        Parameters
        ----------
        theMethod: Aspect_TypeOfHighlightMethod

        Return
        -------
        None

        Description
        -----------
        Changes highlight method to the given one.

        """
        return _Graphic3d.Graphic3d_PresentationAttributes_SetMethod(self, *args)

    def SetTransparency(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Sets basic presentation transparency (0 - opaque, 1 - fully transparent).

        """
        return _Graphic3d.Graphic3d_PresentationAttributes_SetTransparency(self, *args)

    def SetZLayer(self, *args):
        r"""

        Parameters
        ----------
        theLayer: int

        Return
        -------
        None

        Description
        -----------
        Sets presentation Zlayer.

        """
        return _Graphic3d.Graphic3d_PresentationAttributes_SetZLayer(self, *args)

    def Transparency(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Returns basic presentation transparency (0 - opaque, 1 - fully transparent), 0 by default (opaque).

        """
        return _Graphic3d.Graphic3d_PresentationAttributes_Transparency(self, *args)

    def ZLayer(self, *args):
        r"""
        Return
        -------
        Graphic3d_ZLayerId

        Description
        -----------
        Returns presentation Zlayer, Graphic3d_ZLayerId_Default by default. Graphic3d_ZLayerId_UNKNOWN means undefined (a layer of main presentation to be used).

        """
        return _Graphic3d.Graphic3d_PresentationAttributes_ZLayer(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_PresentationAttributes

# Register Graphic3d_PresentationAttributes in _Graphic3d:
_Graphic3d.Graphic3d_PresentationAttributes_swigregister(Graphic3d_PresentationAttributes)
class Graphic3d_RenderingParams(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    Anaglyph_RedCyan_Simple = _Graphic3d.Graphic3d_RenderingParams_Anaglyph_RedCyan_Simple
    Anaglyph_RedCyan_Optimized = _Graphic3d.Graphic3d_RenderingParams_Anaglyph_RedCyan_Optimized
    Anaglyph_YellowBlue_Simple = _Graphic3d.Graphic3d_RenderingParams_Anaglyph_YellowBlue_Simple
    Anaglyph_YellowBlue_Optimized = _Graphic3d.Graphic3d_RenderingParams_Anaglyph_YellowBlue_Optimized
    Anaglyph_GreenMagenta_Simple = _Graphic3d.Graphic3d_RenderingParams_Anaglyph_GreenMagenta_Simple
    Anaglyph_UserDefined = _Graphic3d.Graphic3d_RenderingParams_Anaglyph_UserDefined
    PerfCounters_NONE = _Graphic3d.Graphic3d_RenderingParams_PerfCounters_NONE
    PerfCounters_FrameRate = _Graphic3d.Graphic3d_RenderingParams_PerfCounters_FrameRate
    PerfCounters_CPU = _Graphic3d.Graphic3d_RenderingParams_PerfCounters_CPU
    PerfCounters_Layers = _Graphic3d.Graphic3d_RenderingParams_PerfCounters_Layers
    PerfCounters_Structures = _Graphic3d.Graphic3d_RenderingParams_PerfCounters_Structures
    PerfCounters_Groups = _Graphic3d.Graphic3d_RenderingParams_PerfCounters_Groups
    PerfCounters_GroupArrays = _Graphic3d.Graphic3d_RenderingParams_PerfCounters_GroupArrays
    PerfCounters_Triangles = _Graphic3d.Graphic3d_RenderingParams_PerfCounters_Triangles
    PerfCounters_Points = _Graphic3d.Graphic3d_RenderingParams_PerfCounters_Points
    PerfCounters_Lines = _Graphic3d.Graphic3d_RenderingParams_PerfCounters_Lines
    PerfCounters_EstimMem = _Graphic3d.Graphic3d_RenderingParams_PerfCounters_EstimMem
    PerfCounters_FrameTime = _Graphic3d.Graphic3d_RenderingParams_PerfCounters_FrameTime
    PerfCounters_FrameTimeMax = _Graphic3d.Graphic3d_RenderingParams_PerfCounters_FrameTimeMax
    PerfCounters_SkipImmediate = _Graphic3d.Graphic3d_RenderingParams_PerfCounters_SkipImmediate
    PerfCounters_Basic = _Graphic3d.Graphic3d_RenderingParams_PerfCounters_Basic
    PerfCounters_Extended = _Graphic3d.Graphic3d_RenderingParams_PerfCounters_Extended
    PerfCounters_All = _Graphic3d.Graphic3d_RenderingParams_PerfCounters_All
    FrustumCulling_Off = _Graphic3d.Graphic3d_RenderingParams_FrustumCulling_Off
    FrustumCulling_On = _Graphic3d.Graphic3d_RenderingParams_FrustumCulling_On
    FrustumCulling_NoUpdate = _Graphic3d.Graphic3d_RenderingParams_FrustumCulling_NoUpdate


    class Anaglyph(IntEnum):
    	Anaglyph_RedCyan_Simple = 0
    	Anaglyph_RedCyan_Optimized = 1
    	Anaglyph_YellowBlue_Simple = 2
    	Anaglyph_YellowBlue_Optimized = 3
    	Anaglyph_GreenMagenta_Simple = 4
    	Anaglyph_UserDefined = 5
    Anaglyph_RedCyan_Simple = Anaglyph.Anaglyph_RedCyan_Simple
    Anaglyph_RedCyan_Optimized = Anaglyph.Anaglyph_RedCyan_Optimized
    Anaglyph_YellowBlue_Simple = Anaglyph.Anaglyph_YellowBlue_Simple
    Anaglyph_YellowBlue_Optimized = Anaglyph.Anaglyph_YellowBlue_Optimized
    Anaglyph_GreenMagenta_Simple = Anaglyph.Anaglyph_GreenMagenta_Simple
    Anaglyph_UserDefined = Anaglyph.Anaglyph_UserDefined

    class PerfCounters(IntEnum):
    	PerfCounters_NONE = 0
    	PerfCounters_FrameRate = 1
    	PerfCounters_CPU = 2
    	PerfCounters_Layers = 4
    	PerfCounters_Structures = 8
    	PerfCounters_Groups = 16
    	PerfCounters_GroupArrays = 32
    	PerfCounters_Triangles = 64
    	PerfCounters_Points = 128
    	PerfCounters_Lines = 256
    	PerfCounters_EstimMem = 512
    	PerfCounters_FrameTime = 1024
    	PerfCounters_FrameTimeMax = 2048
    	PerfCounters_SkipImmediate = 4096
    	PerfCounters_Basic = PerfCounters_FrameRate | PerfCounters_CPU | PerfCounters_Layers | PerfCounters_Structures
    	PerfCounters_Extended = PerfCounters_Basic | PerfCounters_Groups | PerfCounters_GroupArrays | PerfCounters_Triangles | PerfCounters_Points | PerfCounters_Lines | PerfCounters_EstimMem
    	PerfCounters_All = PerfCounters_Extended | PerfCounters_FrameTime | PerfCounters_FrameTimeMax
    PerfCounters_NONE = PerfCounters.PerfCounters_NONE
    PerfCounters_FrameRate = PerfCounters.PerfCounters_FrameRate
    PerfCounters_CPU = PerfCounters.PerfCounters_CPU
    PerfCounters_Layers = PerfCounters.PerfCounters_Layers
    PerfCounters_Structures = PerfCounters.PerfCounters_Structures
    PerfCounters_Groups = PerfCounters.PerfCounters_Groups
    PerfCounters_GroupArrays = PerfCounters.PerfCounters_GroupArrays
    PerfCounters_Triangles = PerfCounters.PerfCounters_Triangles
    PerfCounters_Points = PerfCounters.PerfCounters_Points
    PerfCounters_Lines = PerfCounters.PerfCounters_Lines
    PerfCounters_EstimMem = PerfCounters.PerfCounters_EstimMem
    PerfCounters_FrameTime = PerfCounters.PerfCounters_FrameTime
    PerfCounters_FrameTimeMax = PerfCounters.PerfCounters_FrameTimeMax
    PerfCounters_SkipImmediate = PerfCounters.PerfCounters_SkipImmediate
    PerfCounters_Basic = PerfCounters.PerfCounters_Basic
    PerfCounters_Extended = PerfCounters.PerfCounters_Extended
    PerfCounters_All = PerfCounters.PerfCounters_All

    class FrustumCulling(IntEnum):
    	FrustumCulling_Off = 0
    	FrustumCulling_On = 1
    	FrustumCulling_NoUpdate = 2
    FrustumCulling_Off = FrustumCulling.FrustumCulling_Off
    FrustumCulling_On = FrustumCulling.FrustumCulling_On
    FrustumCulling_NoUpdate = FrustumCulling.FrustumCulling_NoUpdate

    Method = property(_Graphic3d.Graphic3d_RenderingParams_Method_get, _Graphic3d.Graphic3d_RenderingParams_Method_set)
    ShadingModel = property(_Graphic3d.Graphic3d_RenderingParams_ShadingModel_get, _Graphic3d.Graphic3d_RenderingParams_ShadingModel_set)
    TransparencyMethod = property(_Graphic3d.Graphic3d_RenderingParams_TransparencyMethod_get, _Graphic3d.Graphic3d_RenderingParams_TransparencyMethod_set)
    Resolution = property(_Graphic3d.Graphic3d_RenderingParams_Resolution_get, _Graphic3d.Graphic3d_RenderingParams_Resolution_set)
    FontHinting = property(_Graphic3d.Graphic3d_RenderingParams_FontHinting_get, _Graphic3d.Graphic3d_RenderingParams_FontHinting_set)
    LineFeather = property(_Graphic3d.Graphic3d_RenderingParams_LineFeather_get, _Graphic3d.Graphic3d_RenderingParams_LineFeather_set)
    PbrEnvPow2Size = property(_Graphic3d.Graphic3d_RenderingParams_PbrEnvPow2Size_get, _Graphic3d.Graphic3d_RenderingParams_PbrEnvPow2Size_set)
    PbrEnvSpecMapNbLevels = property(_Graphic3d.Graphic3d_RenderingParams_PbrEnvSpecMapNbLevels_get, _Graphic3d.Graphic3d_RenderingParams_PbrEnvSpecMapNbLevels_set)
    PbrEnvBakingDiffNbSamples = property(_Graphic3d.Graphic3d_RenderingParams_PbrEnvBakingDiffNbSamples_get, _Graphic3d.Graphic3d_RenderingParams_PbrEnvBakingDiffNbSamples_set)
    PbrEnvBakingSpecNbSamples = property(_Graphic3d.Graphic3d_RenderingParams_PbrEnvBakingSpecNbSamples_get, _Graphic3d.Graphic3d_RenderingParams_PbrEnvBakingSpecNbSamples_set)
    PbrEnvBakingProbability = property(_Graphic3d.Graphic3d_RenderingParams_PbrEnvBakingProbability_get, _Graphic3d.Graphic3d_RenderingParams_PbrEnvBakingProbability_set)
    OitDepthFactor = property(_Graphic3d.Graphic3d_RenderingParams_OitDepthFactor_get, _Graphic3d.Graphic3d_RenderingParams_OitDepthFactor_set)
    NbOitDepthPeelingLayers = property(_Graphic3d.Graphic3d_RenderingParams_NbOitDepthPeelingLayers_get, _Graphic3d.Graphic3d_RenderingParams_NbOitDepthPeelingLayers_set)
    NbMsaaSamples = property(_Graphic3d.Graphic3d_RenderingParams_NbMsaaSamples_get, _Graphic3d.Graphic3d_RenderingParams_NbMsaaSamples_set)
    RenderResolutionScale = property(_Graphic3d.Graphic3d_RenderingParams_RenderResolutionScale_get, _Graphic3d.Graphic3d_RenderingParams_RenderResolutionScale_set)
    ShadowMapResolution = property(_Graphic3d.Graphic3d_RenderingParams_ShadowMapResolution_get, _Graphic3d.Graphic3d_RenderingParams_ShadowMapResolution_set)
    ShadowMapBias = property(_Graphic3d.Graphic3d_RenderingParams_ShadowMapBias_get, _Graphic3d.Graphic3d_RenderingParams_ShadowMapBias_set)
    ToEnableDepthPrepass = property(_Graphic3d.Graphic3d_RenderingParams_ToEnableDepthPrepass_get, _Graphic3d.Graphic3d_RenderingParams_ToEnableDepthPrepass_set)
    ToEnableAlphaToCoverage = property(_Graphic3d.Graphic3d_RenderingParams_ToEnableAlphaToCoverage_get, _Graphic3d.Graphic3d_RenderingParams_ToEnableAlphaToCoverage_set)
    IsGlobalIlluminationEnabled = property(_Graphic3d.Graphic3d_RenderingParams_IsGlobalIlluminationEnabled_get, _Graphic3d.Graphic3d_RenderingParams_IsGlobalIlluminationEnabled_set)
    SamplesPerPixel = property(_Graphic3d.Graphic3d_RenderingParams_SamplesPerPixel_get, _Graphic3d.Graphic3d_RenderingParams_SamplesPerPixel_set)
    RaytracingDepth = property(_Graphic3d.Graphic3d_RenderingParams_RaytracingDepth_get, _Graphic3d.Graphic3d_RenderingParams_RaytracingDepth_set)
    IsShadowEnabled = property(_Graphic3d.Graphic3d_RenderingParams_IsShadowEnabled_get, _Graphic3d.Graphic3d_RenderingParams_IsShadowEnabled_set)
    IsReflectionEnabled = property(_Graphic3d.Graphic3d_RenderingParams_IsReflectionEnabled_get, _Graphic3d.Graphic3d_RenderingParams_IsReflectionEnabled_set)
    IsAntialiasingEnabled = property(_Graphic3d.Graphic3d_RenderingParams_IsAntialiasingEnabled_get, _Graphic3d.Graphic3d_RenderingParams_IsAntialiasingEnabled_set)
    IsTransparentShadowEnabled = property(_Graphic3d.Graphic3d_RenderingParams_IsTransparentShadowEnabled_get, _Graphic3d.Graphic3d_RenderingParams_IsTransparentShadowEnabled_set)
    UseEnvironmentMapBackground = property(_Graphic3d.Graphic3d_RenderingParams_UseEnvironmentMapBackground_get, _Graphic3d.Graphic3d_RenderingParams_UseEnvironmentMapBackground_set)
    ToIgnoreNormalMapInRayTracing = property(_Graphic3d.Graphic3d_RenderingParams_ToIgnoreNormalMapInRayTracing_get, _Graphic3d.Graphic3d_RenderingParams_ToIgnoreNormalMapInRayTracing_set)
    CoherentPathTracingMode = property(_Graphic3d.Graphic3d_RenderingParams_CoherentPathTracingMode_get, _Graphic3d.Graphic3d_RenderingParams_CoherentPathTracingMode_set)
    AdaptiveScreenSampling = property(_Graphic3d.Graphic3d_RenderingParams_AdaptiveScreenSampling_get, _Graphic3d.Graphic3d_RenderingParams_AdaptiveScreenSampling_set)
    AdaptiveScreenSamplingAtomic = property(_Graphic3d.Graphic3d_RenderingParams_AdaptiveScreenSamplingAtomic_get, _Graphic3d.Graphic3d_RenderingParams_AdaptiveScreenSamplingAtomic_set)
    ShowSamplingTiles = property(_Graphic3d.Graphic3d_RenderingParams_ShowSamplingTiles_get, _Graphic3d.Graphic3d_RenderingParams_ShowSamplingTiles_set)
    TwoSidedBsdfModels = property(_Graphic3d.Graphic3d_RenderingParams_TwoSidedBsdfModels_get, _Graphic3d.Graphic3d_RenderingParams_TwoSidedBsdfModels_set)
    RadianceClampingValue = property(_Graphic3d.Graphic3d_RenderingParams_RadianceClampingValue_get, _Graphic3d.Graphic3d_RenderingParams_RadianceClampingValue_set)
    RebuildRayTracingShaders = property(_Graphic3d.Graphic3d_RenderingParams_RebuildRayTracingShaders_get, _Graphic3d.Graphic3d_RenderingParams_RebuildRayTracingShaders_set)
    RayTracingTileSize = property(_Graphic3d.Graphic3d_RenderingParams_RayTracingTileSize_get, _Graphic3d.Graphic3d_RenderingParams_RayTracingTileSize_set)
    NbRayTracingTiles = property(_Graphic3d.Graphic3d_RenderingParams_NbRayTracingTiles_get, _Graphic3d.Graphic3d_RenderingParams_NbRayTracingTiles_set)
    CameraApertureRadius = property(_Graphic3d.Graphic3d_RenderingParams_CameraApertureRadius_get, _Graphic3d.Graphic3d_RenderingParams_CameraApertureRadius_set)
    CameraFocalPlaneDist = property(_Graphic3d.Graphic3d_RenderingParams_CameraFocalPlaneDist_get, _Graphic3d.Graphic3d_RenderingParams_CameraFocalPlaneDist_set)
    FrustumCullingState = property(_Graphic3d.Graphic3d_RenderingParams_FrustumCullingState_get, _Graphic3d.Graphic3d_RenderingParams_FrustumCullingState_set)
    ToneMappingMethod = property(_Graphic3d.Graphic3d_RenderingParams_ToneMappingMethod_get, _Graphic3d.Graphic3d_RenderingParams_ToneMappingMethod_set)
    Exposure = property(_Graphic3d.Graphic3d_RenderingParams_Exposure_get, _Graphic3d.Graphic3d_RenderingParams_Exposure_set)
    WhitePoint = property(_Graphic3d.Graphic3d_RenderingParams_WhitePoint_get, _Graphic3d.Graphic3d_RenderingParams_WhitePoint_set)
    StereoMode = property(_Graphic3d.Graphic3d_RenderingParams_StereoMode_get, _Graphic3d.Graphic3d_RenderingParams_StereoMode_set)
    HmdFov2d = property(_Graphic3d.Graphic3d_RenderingParams_HmdFov2d_get, _Graphic3d.Graphic3d_RenderingParams_HmdFov2d_set)
    AnaglyphFilter = property(_Graphic3d.Graphic3d_RenderingParams_AnaglyphFilter_get, _Graphic3d.Graphic3d_RenderingParams_AnaglyphFilter_set)
    AnaglyphLeft = property(_Graphic3d.Graphic3d_RenderingParams_AnaglyphLeft_get, _Graphic3d.Graphic3d_RenderingParams_AnaglyphLeft_set)
    AnaglyphRight = property(_Graphic3d.Graphic3d_RenderingParams_AnaglyphRight_get, _Graphic3d.Graphic3d_RenderingParams_AnaglyphRight_set)
    ToReverseStereo = property(_Graphic3d.Graphic3d_RenderingParams_ToReverseStereo_get, _Graphic3d.Graphic3d_RenderingParams_ToReverseStereo_set)
    ToSmoothInterlacing = property(_Graphic3d.Graphic3d_RenderingParams_ToSmoothInterlacing_get, _Graphic3d.Graphic3d_RenderingParams_ToSmoothInterlacing_set)
    ToMirrorComposer = property(_Graphic3d.Graphic3d_RenderingParams_ToMirrorComposer_get, _Graphic3d.Graphic3d_RenderingParams_ToMirrorComposer_set)
    StatsPosition = property(_Graphic3d.Graphic3d_RenderingParams_StatsPosition_get, _Graphic3d.Graphic3d_RenderingParams_StatsPosition_set)
    ChartPosition = property(_Graphic3d.Graphic3d_RenderingParams_ChartPosition_get, _Graphic3d.Graphic3d_RenderingParams_ChartPosition_set)
    ChartSize = property(_Graphic3d.Graphic3d_RenderingParams_ChartSize_get, _Graphic3d.Graphic3d_RenderingParams_ChartSize_set)
    StatsTextAspect = property(_Graphic3d.Graphic3d_RenderingParams_StatsTextAspect_get, _Graphic3d.Graphic3d_RenderingParams_StatsTextAspect_set)
    StatsUpdateInterval = property(_Graphic3d.Graphic3d_RenderingParams_StatsUpdateInterval_get, _Graphic3d.Graphic3d_RenderingParams_StatsUpdateInterval_set)
    StatsTextHeight = property(_Graphic3d.Graphic3d_RenderingParams_StatsTextHeight_get, _Graphic3d.Graphic3d_RenderingParams_StatsTextHeight_set)
    StatsNbFrames = property(_Graphic3d.Graphic3d_RenderingParams_StatsNbFrames_get, _Graphic3d.Graphic3d_RenderingParams_StatsNbFrames_set)
    StatsMaxChartTime = property(_Graphic3d.Graphic3d_RenderingParams_StatsMaxChartTime_get, _Graphic3d.Graphic3d_RenderingParams_StatsMaxChartTime_set)
    CollectedStats = property(_Graphic3d.Graphic3d_RenderingParams_CollectedStats_get, _Graphic3d.Graphic3d_RenderingParams_CollectedStats_set)
    ToShowStats = property(_Graphic3d.Graphic3d_RenderingParams_ToShowStats_get, _Graphic3d.Graphic3d_RenderingParams_ToShowStats_set)

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Creates default rendering parameters.

        """
        _Graphic3d.Graphic3d_RenderingParams_swiginit(self, _Graphic3d.new_Graphic3d_RenderingParams(*args))

    def DumpJson(self, depth=-1):
        r"""

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        """
        return _Graphic3d.Graphic3d_RenderingParams_DumpJson(self, depth)

    def ResolutionRatio(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Returns resolution ratio.

        """
        return _Graphic3d.Graphic3d_RenderingParams_ResolutionRatio(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_RenderingParams

# Register Graphic3d_RenderingParams in _Graphic3d:
_Graphic3d.Graphic3d_RenderingParams_swigregister(Graphic3d_RenderingParams)
class Graphic3d_SequenceOfHClipPlane(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"""
        Return
        -------
        None

        Description
        -----------
        Empty constructor.

        """
        _Graphic3d.Graphic3d_SequenceOfHClipPlane_swiginit(self, _Graphic3d.new_Graphic3d_SequenceOfHClipPlane(*args))

    def Append(self, *args):
        r"""

        Parameters
        ----------
        theItem: Graphic3d_ClipPlane

        Return
        -------
        bool

        Description
        -----------
        Append a plane. 
        Return: True if new item has been added (False if item already existed).

        """
        return _Graphic3d.Graphic3d_SequenceOfHClipPlane_Append(self, *args)

    def Clear(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Clear the items out.

        """
        return _Graphic3d.Graphic3d_SequenceOfHClipPlane_Clear(self, *args)

    def DumpJson(self, depth=-1):
        r"""

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        """
        return _Graphic3d.Graphic3d_SequenceOfHClipPlane_DumpJson(self, depth)

    def First(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_ClipPlane>

        Description
        -----------
        Return the first item in sequence.

        """
        return _Graphic3d.Graphic3d_SequenceOfHClipPlane_First(self, *args)

    def IsEmpty(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return True if sequence is empty.

        """
        return _Graphic3d.Graphic3d_SequenceOfHClipPlane_IsEmpty(self, *args)

    def SetOverrideGlobal(self, *args):
        r"""

        Parameters
        ----------
        theToOverride: bool

        Return
        -------
        None

        Description
        -----------
        Setup flag defining if local properties should override global properties.

        """
        return _Graphic3d.Graphic3d_SequenceOfHClipPlane_SetOverrideGlobal(self, *args)

    def Size(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Return the number of items in sequence.

        """
        return _Graphic3d.Graphic3d_SequenceOfHClipPlane_Size(self, *args)

    def ToOverrideGlobal(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return true if local properties should override global properties.

        """
        return _Graphic3d.Graphic3d_SequenceOfHClipPlane_ToOverrideGlobal(self, *args)


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


    __repr__ = _dumps_object

    @methodnotwrapped
    def Remove(self):
    	pass

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_SequenceOfHClipPlane

# Register Graphic3d_SequenceOfHClipPlane in _Graphic3d:
_Graphic3d.Graphic3d_SequenceOfHClipPlane_swigregister(Graphic3d_SequenceOfHClipPlane)
class Graphic3d_ShaderAttribute(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"""

        Parameters
        ----------
        theName: str
        theLocation: int

        Return
        -------
        None

        Description
        -----------
        Creates new attribute.

        """
        _Graphic3d.Graphic3d_ShaderAttribute_swiginit(self, _Graphic3d.new_Graphic3d_ShaderAttribute(*args))

    def Location(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Returns attribute location to be bound on GLSL program linkage stage.

        """
        return _Graphic3d.Graphic3d_ShaderAttribute_Location(self, *args)

    def Name(self, *args):
        r"""
        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        Returns name of shader variable.

        """
        return _Graphic3d.Graphic3d_ShaderAttribute_Name(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_ShaderAttribute

# Register Graphic3d_ShaderAttribute in _Graphic3d:
_Graphic3d.Graphic3d_ShaderAttribute_swigregister(Graphic3d_ShaderAttribute)
class Graphic3d_ShaderManager(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"""

        Parameters
        ----------
        theGapi: Aspect_GraphicsLibrary

        Return
        -------
        None

        Description
        -----------
        Creates new empty shader manager.

        """
        _Graphic3d.Graphic3d_ShaderManager_swiginit(self, _Graphic3d.new_Graphic3d_ShaderManager(*args))

    def EnableGlslExtension(self, *args):
        r"""

        Parameters
        ----------
        theExt: Graphic3d_GlslExtension
        theToEnable: bool (optional, default to true)

        Return
        -------
        None

        Description
        -----------
        Set if specified extension is available or not.

        """
        return _Graphic3d.Graphic3d_ShaderManager_EnableGlslExtension(self, *args)

    def GapiVersionMajor(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Return GAPI version major number.

        """
        return _Graphic3d.Graphic3d_ShaderManager_GapiVersionMajor(self, *args)

    def GapiVersionMinor(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Return GAPI version minor number.

        """
        return _Graphic3d.Graphic3d_ShaderManager_GapiVersionMinor(self, *args)

    def HasFlatShading(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return flag indicating flat shading usage; True by default.

        """
        return _Graphic3d.Graphic3d_ShaderManager_HasFlatShading(self, *args)

    def HasGlslExtension(self, *args):
        r"""

        Parameters
        ----------
        theExt: Graphic3d_GlslExtension

        Return
        -------
        bool

        Description
        -----------
        Return True if specified extension is available.

        """
        return _Graphic3d.Graphic3d_ShaderManager_HasGlslExtension(self, *args)

    def IsGapiGreaterEqual(self, *args):
        r"""

        Parameters
        ----------
        theVerMajor: int
        theVerMinor: int

        Return
        -------
        bool

        Description
        -----------
        Return: true if detected GL version is greater or equal to requested one.

        """
        return _Graphic3d.Graphic3d_ShaderManager_IsGapiGreaterEqual(self, *args)

    def SetEmulateDepthClamp(self, *args):
        r"""

        Parameters
        ----------
        theToEmulate: bool

        Return
        -------
        None

        Description
        -----------
        Set if depth clamping should be emulated by GLSL program.

        """
        return _Graphic3d.Graphic3d_ShaderManager_SetEmulateDepthClamp(self, *args)

    def SetFlatShading(self, *args):
        r"""

        Parameters
        ----------
        theToUse: bool
        theToReverseSign: bool

        Return
        -------
        None

        Description
        -----------
        Set flag indicating flat shading usage.

        """
        return _Graphic3d.Graphic3d_ShaderManager_SetFlatShading(self, *args)

    def SetGapiVersion(self, *args):
        r"""

        Parameters
        ----------
        theVerMajor: int
        theVerMinor: int

        Return
        -------
        None

        Description
        -----------
        Return GAPI version major number.

        """
        return _Graphic3d.Graphic3d_ShaderManager_SetGapiVersion(self, *args)

    def SetUseRedAlpha(self, *args):
        r"""

        Parameters
        ----------
        theUseRedAlpha: bool

        Return
        -------
        None

        Description
        -----------
        Set if RED channel should be used instead of ALPHA for single-channel textures.

        """
        return _Graphic3d.Graphic3d_ShaderManager_SetUseRedAlpha(self, *args)

    def ToEmulateDepthClamp(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return True if depth clamping should be emulated by GLSL program; True by default.

        """
        return _Graphic3d.Graphic3d_ShaderManager_ToEmulateDepthClamp(self, *args)

    def ToReverseDFdxSign(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return flag indicating flat shading should reverse normal flag; False by default.

        """
        return _Graphic3d.Graphic3d_ShaderManager_ToReverseDFdxSign(self, *args)

    def UseRedAlpha(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return True if RED channel should be used instead of ALPHA for single-channel textures (e.g. GAPI supports only GL_RED textures and not GL_ALPHA).

        """
        return _Graphic3d.Graphic3d_ShaderManager_UseRedAlpha(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_ShaderManager

# Register Graphic3d_ShaderManager in _Graphic3d:
_Graphic3d.Graphic3d_ShaderManager_swigregister(Graphic3d_ShaderManager)
class Graphic3d_ShaderObject(OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

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

    @staticmethod
    def CreateFromFile(*args):
        r"""

        Parameters
        ----------
        theType: Graphic3d_TypeOfShaderObject
        thePath: str

        Return
        -------
        opencascade::handle<Graphic3d_ShaderObject>

        Description
        -----------
        Creates new shader object from specified file.

        """
        return _Graphic3d.Graphic3d_ShaderObject_CreateFromFile(*args)

    @staticmethod
    def CreateFromSource(*args):
        r"""

        Parameters
        ----------
        theType: Graphic3d_TypeOfShaderObject
        theSource: str

        Return
        -------
        opencascade::handle<Graphic3d_ShaderObject>

        Description
        -----------
        Creates new shader object from specified source.

        """
        return _Graphic3d.Graphic3d_ShaderObject_CreateFromSource(*args)

    def GetId(self, *args):
        r"""
        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        Returns unique ID used to manage resource in graphic driver.

        """
        return _Graphic3d.Graphic3d_ShaderObject_GetId(self, *args)

    def IsDone(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Checks if the shader object is valid or not.

        """
        return _Graphic3d.Graphic3d_ShaderObject_IsDone(self, *args)

    def Path(self, *args):
        r"""
        Return
        -------
        OSD_Path

        Description
        -----------
        Returns the full path to the shader source.

        """
        return _Graphic3d.Graphic3d_ShaderObject_Path(self, *args)

    def Source(self, *args):
        r"""
        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        Returns the source code of the shader object.

        """
        return _Graphic3d.Graphic3d_ShaderObject_Source(self, *args)

    def Type(self, *args):
        r"""
        Return
        -------
        Graphic3d_TypeOfShaderObject

        Description
        -----------
        Returns type of the shader object.

        """
        return _Graphic3d.Graphic3d_ShaderObject_Type(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_ShaderObject

# Register Graphic3d_ShaderObject in _Graphic3d:
_Graphic3d.Graphic3d_ShaderObject_swigregister(Graphic3d_ShaderObject)
class Graphic3d_ShaderProgram(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"""
        Return
        -------
        None

        Description
        -----------
        Creates new empty program object.

        """
        _Graphic3d.Graphic3d_ShaderProgram_swiginit(self, _Graphic3d.new_Graphic3d_ShaderProgram(*args))

    def AppendToHeader(self, *args):
        r"""

        Parameters
        ----------
        theHeaderLine: str

        Return
        -------
        None

        Description
        -----------
        Append line to GLSL header.

        """
        return _Graphic3d.Graphic3d_ShaderProgram_AppendToHeader(self, *args)

    def AttachShader(self, *args):
        r"""

        Parameters
        ----------
        theShader: Graphic3d_ShaderObject

        Return
        -------
        bool

        Description
        -----------
        Attaches shader object to the program object.

        """
        return _Graphic3d.Graphic3d_ShaderProgram_AttachShader(self, *args)

    def ClearVariables(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Removes all custom uniform variables from the program.

        """
        return _Graphic3d.Graphic3d_ShaderProgram_ClearVariables(self, *args)

    def DetachShader(self, *args):
        r"""

        Parameters
        ----------
        theShader: Graphic3d_ShaderObject

        Return
        -------
        bool

        Description
        -----------
        Detaches shader object from the program object.

        """
        return _Graphic3d.Graphic3d_ShaderProgram_DetachShader(self, *args)

    def GetId(self, *args):
        r"""
        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        Returns unique ID used to manage resource in graphic driver.

        """
        return _Graphic3d.Graphic3d_ShaderProgram_GetId(self, *args)

    def HasAlphaTest(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return true if Fragment Shader should perform alpha test; False by default.

        """
        return _Graphic3d.Graphic3d_ShaderProgram_HasAlphaTest(self, *args)

    def HasDefaultSampler(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return True if standard program header should define default texture sampler occSampler0; True by default for compatibility.

        """
        return _Graphic3d.Graphic3d_ShaderProgram_HasDefaultSampler(self, *args)

    def Header(self, *args):
        r"""
        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        Returns GLSL header (version code and extensions).

        """
        return _Graphic3d.Graphic3d_ShaderProgram_Header(self, *args)

    def IsDone(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Checks if the program object is valid or not.

        """
        return _Graphic3d.Graphic3d_ShaderProgram_IsDone(self, *args)

    def IsPBR(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return True if standard program header should define functions and variables used in PBR pipeline. False by default.

        """
        return _Graphic3d.Graphic3d_ShaderProgram_IsPBR(self, *args)

    def NbClipPlanesMax(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Return the length of array of clipping planes (THE_MAX_CLIP_PLANES), to be used for initialization occClipPlaneEquations. Default value is THE_MAX_CLIP_PLANES_DEFAULT.

        """
        return _Graphic3d.Graphic3d_ShaderProgram_NbClipPlanesMax(self, *args)

    def NbFragmentOutputs(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Returns the number (1+) of Fragment Shader outputs to be written to (more than 1 can be in case of multiple draw buffers); 1 by default.

        """
        return _Graphic3d.Graphic3d_ShaderProgram_NbFragmentOutputs(self, *args)

    def NbLightsMax(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Return the length of array of light sources (THE_MAX_LIGHTS), to be used for initialization occLightSources. Default value is THE_MAX_LIGHTS_DEFAULT.

        """
        return _Graphic3d.Graphic3d_ShaderProgram_NbLightsMax(self, *args)

    def NbShadowMaps(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Return the length of array of shadow maps (THE_NB_SHADOWMAPS); 0 by default.

        """
        return _Graphic3d.Graphic3d_ShaderProgram_NbShadowMaps(self, *args)

    def OitOutput(self, *args):
        r"""
        Return
        -------
        Graphic3d_RenderTransparentMethod

        Description
        -----------
        Return if Fragment Shader color should output to OIT buffers; OFF by default.

        """
        return _Graphic3d.Graphic3d_ShaderProgram_OitOutput(self, *args)

    def PushVariableFloat(self, *args):
        r"""

        Parameters
        ----------
        theName: str
        theValue: float

        Return
        -------
        bool

        Description
        -----------
        Pushes float uniform.

        """
        return _Graphic3d.Graphic3d_ShaderProgram_PushVariableFloat(self, *args)

    def PushVariableInt(self, *args):
        r"""

        Parameters
        ----------
        theName: str
        theValue: int

        Return
        -------
        bool

        Description
        -----------
        Pushes int uniform.

        """
        return _Graphic3d.Graphic3d_ShaderProgram_PushVariableInt(self, *args)

    def PushVariableVec2(self, *args):
        r"""

        Parameters
        ----------
        theName: str
        theValue: Graphic3d_Vec2

        Return
        -------
        bool

        Description
        -----------
        Pushes vec2 uniform.

        """
        return _Graphic3d.Graphic3d_ShaderProgram_PushVariableVec2(self, *args)

    def PushVariableVec2i(self, *args):
        r"""

        Parameters
        ----------
        theName: str
        theValue: Graphic3d_Vec2i

        Return
        -------
        bool

        Description
        -----------
        Pushes vec2i uniform.

        """
        return _Graphic3d.Graphic3d_ShaderProgram_PushVariableVec2i(self, *args)

    def PushVariableVec3(self, *args):
        r"""

        Parameters
        ----------
        theName: str
        theValue: Graphic3d_Vec3

        Return
        -------
        bool

        Description
        -----------
        Pushes vec3 uniform.

        """
        return _Graphic3d.Graphic3d_ShaderProgram_PushVariableVec3(self, *args)

    def PushVariableVec3i(self, *args):
        r"""

        Parameters
        ----------
        theName: str
        theValue: Graphic3d_Vec3i

        Return
        -------
        bool

        Description
        -----------
        Pushes vec3i uniform.

        """
        return _Graphic3d.Graphic3d_ShaderProgram_PushVariableVec3i(self, *args)

    def PushVariableVec4(self, *args):
        r"""

        Parameters
        ----------
        theName: str
        theValue: Graphic3d_Vec4

        Return
        -------
        bool

        Description
        -----------
        Pushes vec4 uniform.

        """
        return _Graphic3d.Graphic3d_ShaderProgram_PushVariableVec4(self, *args)

    def PushVariableVec4i(self, *args):
        r"""

        Parameters
        ----------
        theName: str
        theValue: Graphic3d_Vec4i

        Return
        -------
        bool

        Description
        -----------
        Pushes vec4i uniform.

        """
        return _Graphic3d.Graphic3d_ShaderProgram_PushVariableVec4i(self, *args)

    def SetAlphaTest(self, *args):
        r"""

        Parameters
        ----------
        theAlphaTest: bool

        Return
        -------
        None

        Description
        -----------
        Set if Fragment Shader should perform alpha test. Note that this flag is designed for usage with - custom shader program may discard fragment regardless this flag.

        """
        return _Graphic3d.Graphic3d_ShaderProgram_SetAlphaTest(self, *args)

    def SetDefaultSampler(self, *args):
        r"""

        Parameters
        ----------
        theHasDefSampler: bool

        Return
        -------
        None

        Description
        -----------
        Set if standard program header should define default texture sampler occSampler0.

        """
        return _Graphic3d.Graphic3d_ShaderProgram_SetDefaultSampler(self, *args)

    def SetHeader(self, *args):
        r"""

        Parameters
        ----------
        theHeader: str

        Return
        -------
        None

        Description
        -----------
        Setup GLSL header containing language version code and used extensions. Will be prepended to the very beginning of the source code. Example: @code #version 300 es #extension GL_ARB_bindless_texture: require @endcode.

        """
        return _Graphic3d.Graphic3d_ShaderProgram_SetHeader(self, *args)

    def SetId(self, *args):
        r"""

        Parameters
        ----------
        theId: str

        Return
        -------
        None

        Description
        -----------
        Sets unique ID used to manage resource in graphic driver. WARNING! Graphic3d_ShaderProgram constructor generates a unique id for proper resource management; however if application overrides it, it is responsibility of application to avoid name collisions.

        """
        return _Graphic3d.Graphic3d_ShaderProgram_SetId(self, *args)

    def SetNbClipPlanesMax(self, *args):
        r"""

        Parameters
        ----------
        theNbPlanes: int

        Return
        -------
        None

        Description
        -----------
        Specify the length of array of clipping planes (THE_MAX_CLIP_PLANES).

        """
        return _Graphic3d.Graphic3d_ShaderProgram_SetNbClipPlanesMax(self, *args)

    def SetNbFragmentOutputs(self, *args):
        r"""

        Parameters
        ----------
        theNbOutputs: int

        Return
        -------
        None

        Description
        -----------
        Sets the number of Fragment Shader outputs to be written to. Should be done before GLSL program initialization.

        """
        return _Graphic3d.Graphic3d_ShaderProgram_SetNbFragmentOutputs(self, *args)

    def SetNbLightsMax(self, *args):
        r"""

        Parameters
        ----------
        theNbLights: int

        Return
        -------
        None

        Description
        -----------
        Specify the length of array of light sources (THE_MAX_LIGHTS).

        """
        return _Graphic3d.Graphic3d_ShaderProgram_SetNbLightsMax(self, *args)

    def SetNbShadowMaps(self, *args):
        r"""

        Parameters
        ----------
        theNbMaps: int

        Return
        -------
        None

        Description
        -----------
        Specify the length of array of shadow maps (THE_NB_SHADOWMAPS).

        """
        return _Graphic3d.Graphic3d_ShaderProgram_SetNbShadowMaps(self, *args)

    def SetOitOutput(self, *args):
        r"""

        Parameters
        ----------
        theOutput: Graphic3d_RenderTransparentMethod

        Return
        -------
        None

        Description
        -----------
        Set if Fragment Shader color should output to OIT buffers. Note that weighted OIT also requires at least 2 Fragment Outputs (color + coverage), and Depth Peeling requires at least 3 Fragment Outputs (depth + front color + back color),.

        """
        return _Graphic3d.Graphic3d_ShaderProgram_SetOitOutput(self, *args)

    def SetPBR(self, *args):
        r"""

        Parameters
        ----------
        theIsPBR: bool

        Return
        -------
        None

        Description
        -----------
        Sets whether standard program header should define functions and variables used in PBR pipeline.

        """
        return _Graphic3d.Graphic3d_ShaderProgram_SetPBR(self, *args)

    def SetTextureSetBits(self, *args):
        r"""

        Parameters
        ----------
        theBits: int

        Return
        -------
        None

        Description
        -----------
        Set texture units declared within the program.

        """
        return _Graphic3d.Graphic3d_ShaderProgram_SetTextureSetBits(self, *args)

    def SetVertexAttributes(self, *args):
        r"""

        Parameters
        ----------
        theAttributes: Graphic3d_ShaderAttributeList

        Return
        -------
        None

        Description
        -----------
        Assign the list of custom vertex attributes. Should be done before GLSL program initialization.

        """
        return _Graphic3d.Graphic3d_ShaderProgram_SetVertexAttributes(self, *args)

    def ShaderObjects(self, *args):
        r"""
        Return
        -------
        Graphic3d_ShaderObjectList

        Description
        -----------
        Returns list of attached shader objects.

        """
        return _Graphic3d.Graphic3d_ShaderProgram_ShaderObjects(self, *args)

    @staticmethod
    def ShadersFolder(*args):
        r"""
        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        The path to GLSL programs determined from CSF_ShadersDirectory or CASROOT environment variables. 
        Return: the root folder with default GLSL programs.

        """
        return _Graphic3d.Graphic3d_ShaderProgram_ShadersFolder(*args)

    def TextureSetBits(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Return texture units declared within the program, 
        See also: Graphic3d_TextureSetBits.

        """
        return _Graphic3d.Graphic3d_ShaderProgram_TextureSetBits(self, *args)

    def Variables(self, *args):
        r"""
        Return
        -------
        Graphic3d_ShaderVariableList

        Description
        -----------
        The list of currently pushed but not applied custom uniform variables. This list is automatically cleared after applying to GLSL program.

        """
        return _Graphic3d.Graphic3d_ShaderProgram_Variables(self, *args)

    def VertexAttributes(self, *args):
        r"""
        Return
        -------
        Graphic3d_ShaderAttributeList

        Description
        -----------
        Return the list of custom vertex attributes.

        """
        return _Graphic3d.Graphic3d_ShaderProgram_VertexAttributes(self, *args)


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


    __repr__ = _dumps_object

    @methodnotwrapped
    def PushVariable(self):
    	pass

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_ShaderProgram

# Register Graphic3d_ShaderProgram in _Graphic3d:
_Graphic3d.Graphic3d_ShaderProgram_swigregister(Graphic3d_ShaderProgram)
class Graphic3d_ShaderVariable(OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

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

    def IsDone(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Checks if the shader variable is valid or not.

        """
        return _Graphic3d.Graphic3d_ShaderVariable_IsDone(self, *args)

    def Name(self, *args):
        r"""
        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        Returns name of shader variable.

        """
        return _Graphic3d.Graphic3d_ShaderVariable_Name(self, *args)

    def Value(self, *args):
        r"""
        Return
        -------
        Graphic3d_ValueInterface *

        Description
        -----------
        Returns interface of shader variable value.

        """
        return _Graphic3d.Graphic3d_ShaderVariable_Value(self, *args)


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


    __repr__ = _dumps_object

    @methodnotwrapped
    def Create(self):
    	pass

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_ShaderVariable

# Register Graphic3d_ShaderVariable in _Graphic3d:
_Graphic3d.Graphic3d_ShaderVariable_swigregister(Graphic3d_ShaderVariable)
class Graphic3d_Structure(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"""

        Parameters
        ----------
        theManager: Graphic3d_StructureManager
        theLinkPrs: Graphic3d_Structure (optional, default to opencascade::handle<Graphic3d_Structure>())

        Return
        -------
        None

        Description
        -----------
        Creates a graphic object in the manager theManager. It will appear in all the views of the visualiser. The structure is not displayed when it is created. 
        Parameter theManager structure manager holding this structure 
        Parameter theLinkPrs another structure for creating a shadow (linked) structure.

        """
        _Graphic3d.Graphic3d_Structure_swiginit(self, _Graphic3d.new_Graphic3d_Structure(*args))

    @staticmethod
    def AcceptConnection(*args):
        r"""

        Parameters
        ----------
        theStructure1: Graphic3d_Structure *
        theStructure2: Graphic3d_Structure *
        theType: Graphic3d_TypeOfConnection

        Return
        -------
        bool

        Description
        -----------
        Returns Standard_True if the connection is possible between <AStructure1> and <AStructure2> without a creation of a cycle. //! It's not possible to call the method AStructure1->Connect (AStructure2, TypeOfConnection) if - the set of all ancestors of <AStructure1> contains <AStructure1> and if the TypeOfConnection == TOC_DESCENDANT - the set of all descendants of <AStructure1> contains <AStructure2> and if the TypeOfConnection == TOC_ANCESTOR.

        """
        return _Graphic3d.Graphic3d_Structure_AcceptConnection(*args)

    def Ancestors(self, *args):
        r"""

        Parameters
        ----------
        SG: Graphic3d_MapOfStructure

        Return
        -------
        None

        Description
        -----------
        Returns the group of structures to which <self> is connected.

        """
        return _Graphic3d.Graphic3d_Structure_Ancestors(self, *args)

    def CStructure(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_CStructure>

        Description
        -----------
        Returns the low-level structure.

        """
        return _Graphic3d.Graphic3d_Structure_CStructure(self, *args)

    def CalculateBoundBox(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Computes axis-aligned bounding box of a structure.

        """
        return _Graphic3d.Graphic3d_Structure_CalculateBoundBox(self, *args)

    def Clear(self, *args):
        r"""

        Parameters
        ----------
        WithDestruction: bool (optional, default to Standard_True)

        Return
        -------
        None

        Description
        -----------
        if WithDestruction == Standard_True then suppress all the groups of primitives in the structure. and it is mandatory to create a new group in <self>. if WithDestruction == Standard_False then clears all the groups of primitives in the structure. and all the groups are conserved and empty. They will be erased at the next screen update. The structure itself is conserved. The transformation and the attributes of <self> are conserved. The childs of <self> are conserved.

        """
        return _Graphic3d.Graphic3d_Structure_Clear(self, *args)

    def ClipPlanes(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_SequenceOfHClipPlane>

        Description
        -----------
        Get clip planes slicing the structure on rendering. 
        Return: set of clip planes.

        """
        return _Graphic3d.Graphic3d_Structure_ClipPlanes(self, *args)

    def Compute(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_Structure_Compute(self, *args)

    def ComputeVisual(self, *args):
        r"""
        Return
        -------
        Graphic3d_TypeOfStructure

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_Structure_ComputeVisual(self, *args)

    def Connect(self, *args):
        r"""

        Parameters
        ----------
        theStructure: Graphic3d_Structure *
        theType: Graphic3d_TypeOfConnection
        theWithCheck: bool (optional, default to Standard_False)

        Return
        -------
        None

        Description
        -----------
        If Atype is TOC_DESCENDANT then add <AStructure> as a child structure of <self>. If Atype is TOC_ANCESTOR then add <AStructure> as a parent structure of <self>. The connection propagates Display, Highlight, Erase, Remove, and stacks the transformations. No connection if the graph of the structures contains a cycle and <WithCheck> is Standard_True;.

        Parameters
        ----------
        thePrs: Graphic3d_Structure

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_Structure_Connect(self, *args)

    def CurrentGroup(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_Group>

        Description
        -----------
        Returns the last created group or creates new one if list is empty.

        """
        return _Graphic3d.Graphic3d_Structure_CurrentGroup(self, *args)

    def Descendants(self, *args):
        r"""

        Parameters
        ----------
        SG: Graphic3d_MapOfStructure

        Return
        -------
        None

        Description
        -----------
        Returns the group of structures connected to <self>.

        """
        return _Graphic3d.Graphic3d_Structure_Descendants(self, *args)

    def Disconnect(self, *args):
        r"""

        Parameters
        ----------
        theStructure: Graphic3d_Structure *

        Return
        -------
        None

        Description
        -----------
        Suppress the connection between <AStructure> and <self>.

        """
        return _Graphic3d.Graphic3d_Structure_Disconnect(self, *args)

    def DisconnectAll(self, *args):
        r"""

        Parameters
        ----------
        AType: Graphic3d_TypeOfConnection

        Return
        -------
        None

        Description
        -----------
        If Atype is TOC_DESCENDANT then suppress all the connections with the child structures of <self>. If Atype is TOC_ANCESTOR then suppress all the connections with the parent structures of <self>.

        """
        return _Graphic3d.Graphic3d_Structure_DisconnectAll(self, *args)

    def Display(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Displays the structure <self> in all the views of the visualiser.

        """
        return _Graphic3d.Graphic3d_Structure_Display(self, *args)

    def DisplayPriority(self, *args):
        r"""
        Return
        -------
        Graphic3d_DisplayPriority

        Description
        -----------
        Returns the current display priority for this structure.

        """
        return _Graphic3d.Graphic3d_Structure_DisplayPriority(self, *args)

    def DumpJson(self, depth=-1):
        r"""

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        """
        return _Graphic3d.Graphic3d_Structure_DumpJson(self, depth)

    def Erase(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Erases this structure in all the views of the visualiser.

        """
        return _Graphic3d.Graphic3d_Structure_Erase(self, *args)

    def GetZLayer(self, *args):
        r"""
        Return
        -------
        Graphic3d_ZLayerId

        Description
        -----------
        Get Z layer ID of displayed structure. The method returns -1 if the structure has no ID (deleted from graphic driver).

        """
        return _Graphic3d.Graphic3d_Structure_GetZLayer(self, *args)

    def GraphicClear(self, *args):
        r"""

        Parameters
        ----------
        WithDestruction: bool

        Return
        -------
        None

        Description
        -----------
        Clears the structure <self>.

        """
        return _Graphic3d.Graphic3d_Structure_GraphicClear(self, *args)

    def GraphicConnect(self, *args):
        r"""

        Parameters
        ----------
        theDaughter: Graphic3d_Structure

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_Structure_GraphicConnect(self, *args)

    def GraphicDisconnect(self, *args):
        r"""

        Parameters
        ----------
        theDaughter: Graphic3d_Structure

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_Structure_GraphicDisconnect(self, *args)

    def GraphicTransform(self, *args):
        r"""

        Parameters
        ----------
        theTrsf: TopLoc_Datum3D

        Return
        -------
        None

        Description
        -----------
        Internal method which sets new transformation without calling graphic manager callbacks.

        """
        return _Graphic3d.Graphic3d_Structure_GraphicTransform(self, *args)

    def Groups(self, *args):
        r"""
        Return
        -------
        Graphic3d_SequenceOfGroup

        Description
        -----------
        Returns the groups sequence included in this structure.

        """
        return _Graphic3d.Graphic3d_Structure_Groups(self, *args)

    def HLRValidation(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Hidden parts stored in this structure are valid if: 1) the owner is defined. 2) they are not invalid.

        """
        return _Graphic3d.Graphic3d_Structure_HLRValidation(self, *args)

    def Highlight(self, *args):
        r"""

        Parameters
        ----------
        theStyle: Graphic3d_PresentationAttributes
        theToUpdateMgr: bool (optional, default to Standard_True)

        Return
        -------
        None

        Description
        -----------
        Highlights the structure in all the views with the given style 
        Input parameter: theStyle the style (type of highlighting: box/color, color and opacity) 
        Input parameter: theToUpdateMgr defines whether related computed structures will be highlighted via structure manager or not.

        """
        return _Graphic3d.Graphic3d_Structure_Highlight(self, *args)

    def HighlightStyle(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_PresentationAttributes>

        Description
        -----------
        Returns the highlight attributes.

        """
        return _Graphic3d.Graphic3d_Structure_HighlightStyle(self, *args)

    def Identification(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Returns the identification number of this structure.

        """
        return _Graphic3d.Graphic3d_Structure_Identification(self, *args)

    def IsDeleted(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns True if this structure is deleted (after Remove() call).

        """
        return _Graphic3d.Graphic3d_Structure_IsDeleted(self, *args)

    def IsDisplayed(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns the display indicator for this structure.

        """
        return _Graphic3d.Graphic3d_Structure_IsDisplayed(self, *args)

    def IsEmpty(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns Standard_True if the structure <self> is empty. Warning: A structure is empty if: it do not have group or all the groups are empties and it do not have descendant or all the descendants are empties.

        """
        return _Graphic3d.Graphic3d_Structure_IsEmpty(self, *args)

    def IsHighlighted(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns the highlight indicator for this structure.

        """
        return _Graphic3d.Graphic3d_Structure_IsHighlighted(self, *args)

    def IsInfinite(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns Standard_True if the structure <self> is infinite.

        """
        return _Graphic3d.Graphic3d_Structure_IsInfinite(self, *args)

    def IsMutable(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns true if structure has mutable nature (content or location are be changed regularly). Mutable structure will be managed in different way than static ones.

        """
        return _Graphic3d.Graphic3d_Structure_IsMutable(self, *args)

    def IsTransformed(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns True if the structure is transformed.

        """
        return _Graphic3d.Graphic3d_Structure_IsTransformed(self, *args)

    def IsVisible(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns the visibility indicator for this structure.

        """
        return _Graphic3d.Graphic3d_Structure_IsVisible(self, *args)

    def MinMaxValues(self, *args):
        r"""

        Parameters
        ----------
        theToIgnoreInfiniteFlag: bool (optional, default to Standard_False)

        Return
        -------
        Bnd_Box

        Description
        -----------
        Returns the coordinates of the boundary box of the structure <self>. If <theToIgnoreInfiniteFlag> is True, the method returns actual graphical boundaries of the Graphic3d_Group components. Otherwise, the method returns boundaries taking into account infinite state of the structure. This approach generally used for application specific fit operation (e.g. fitting the model into screen, not taking into account infinite helper elements). Warning: If the structure <self> is empty then the empty box is returned, If the structure <self> is infinite then the whole box is returned.

        """
        return _Graphic3d.Graphic3d_Structure_MinMaxValues(self, *args)

    @staticmethod
    def Network(*args):
        r"""

        Parameters
        ----------
        theStructure: Graphic3d_Structure *
        theType: Graphic3d_TypeOfConnection
        theSet: NCollection_Map<Graphic3d_Structure *>

        Return
        -------
        None

        Description
        -----------
        Returns <ASet> the group of structures: - directly or indirectly connected to <AStructure> if the TypeOfConnection == TOC_DESCENDANT - to which <AStructure> is directly or indirectly connected if the TypeOfConnection == TOC_ANCESTOR.

        """
        return _Graphic3d.Graphic3d_Structure_Network(*args)

    def NewGroup(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_Group>

        Description
        -----------
        Append new group to this structure.

        """
        return _Graphic3d.Graphic3d_Structure_NewGroup(self, *args)

    def NumberOfGroups(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Returns the current number of groups in this structure.

        """
        return _Graphic3d.Graphic3d_Structure_NumberOfGroups(self, *args)

    def Owner(self, *args):
        r"""
        Return
        -------
        Standard_Address

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_Structure_Owner(self, *args)

    @staticmethod
    def PrintNetwork(*args):
        r"""

        Parameters
        ----------
        AStructure: Graphic3d_Structure
        AType: Graphic3d_TypeOfConnection

        Return
        -------
        None

        Description
        -----------
        Prints information about the network associated with the structure <AStructure>.

        """
        return _Graphic3d.Graphic3d_Structure_PrintNetwork(*args)

    def ReCompute(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Forces a new construction of the structure <self> if <self> is displayed and TOS_COMPUTED.

        Parameters
        ----------
        aProjector: Graphic3d_DataStructureManager

        Return
        -------
        None

        Description
        -----------
        Forces a new construction of the structure <self> if <self> is displayed in <aProjetor> and TOS_COMPUTED.

        """
        return _Graphic3d.Graphic3d_Structure_ReCompute(self, *args)

    def RecomputeTransformation(self, *args):
        r"""

        Parameters
        ----------
        theProjector: Graphic3d_Camera

        Return
        -------
        None

        Description
        -----------
        Calculates structure transformation for specific camera position.

        """
        return _Graphic3d.Graphic3d_Structure_RecomputeTransformation(self, *args)

    def Remove(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Suppress the structure <self>. It will be erased at the next screen update. Warning: No more graphic operations in <self> after this call. Category: Methods to modify the class definition.

        Parameters
        ----------
        thePrs: Graphic3d_Structure

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        Parameters
        ----------
        thePtr: Graphic3d_Structure *
        theType: Graphic3d_TypeOfConnection

        Return
        -------
        None

        Description
        -----------
        Suppress the structure in the list of descendants or in the list of ancestors.

        """
        return _Graphic3d.Graphic3d_Structure_Remove(self, *args)

    def RemoveAll(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_Structure_RemoveAll(self, *args)

    def ResetDisplayPriority(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Reset the current priority of the structure to the previous priority. Warning: If structure is displayed then the SetDisplayPriority() method erases it and displays with the previous priority.

        """
        return _Graphic3d.Graphic3d_Structure_ResetDisplayPriority(self, *args)

    def SetClipPlanes(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Changes a sequence of clip planes slicing the structure on rendering. 
        Input parameter: thePlanes the set of clip planes.

        """
        return _Graphic3d.Graphic3d_Structure_SetClipPlanes(self, *args)

    def SetComputeVisual(self, *args):
        r"""

        Parameters
        ----------
        theVisual: Graphic3d_TypeOfStructure

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_Structure_SetComputeVisual(self, *args)

    def SetDisplayPriority(self, *args):
        r"""

        Parameters
        ----------
        thePriority: Graphic3d_DisplayPriority

        Return
        -------
        None

        Description
        -----------
        Modifies the order of displaying the structure. Values are between 0 and 10. Structures are drawn according to their display priorities in ascending order. A structure of priority 10 is displayed the last and appears over the others. The default value is 5. Warning: If structure is displayed then the SetDisplayPriority method erases it and displays with the new priority. Raises Graphic3d_PriorityDefinitionError if Priority is greater than 10 or a negative value.

        Parameters
        ----------
        thePriority: int

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_Structure_SetDisplayPriority(self, *args)

    def SetHLRValidation(self, *args):
        r"""

        Parameters
        ----------
        theFlag: bool

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_Structure_SetHLRValidation(self, *args)

    def SetInfiniteState(self, *args):
        r"""

        Parameters
        ----------
        theToSet: bool

        Return
        -------
        None

        Description
        -----------
        Sets infinite flag. When True, the MinMaxValues method returns: theXMin = theYMin = theZMin = RealFirst(). theXMax = theYMax = theZMax = RealLast(). By default, structure is created not infinite but empty.

        """
        return _Graphic3d.Graphic3d_Structure_SetInfiniteState(self, *args)

    def SetIsForHighlight(self, *args):
        r"""

        Parameters
        ----------
        isForHighlight: bool

        Return
        -------
        None

        Description
        -----------
        Marks the structure <self> representing wired structure needed for highlight only so it won't be added to BVH tree.

        """
        return _Graphic3d.Graphic3d_Structure_SetIsForHighlight(self, *args)

    def SetMutable(self, *args):
        r"""

        Parameters
        ----------
        theIsMutable: bool

        Return
        -------
        None

        Description
        -----------
        Sets if the structure location has mutable nature (content or location will be changed regularly).

        """
        return _Graphic3d.Graphic3d_Structure_SetMutable(self, *args)

    def SetOwner(self, *args):
        r"""

        Parameters
        ----------
        theOwner: Standard_Address

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_Structure_SetOwner(self, *args)

    def SetTransformPersistence(self, *args):
        r"""

        Parameters
        ----------
        theTrsfPers: Graphic3d_TransformPers

        Return
        -------
        None

        Description
        -----------
        Modifies the current transform persistence (pan, zoom or rotate).

        """
        return _Graphic3d.Graphic3d_Structure_SetTransformPersistence(self, *args)

    def SetTransformation(self, *args):
        r"""

        Parameters
        ----------
        theTrsf: TopLoc_Datum3D

        Return
        -------
        None

        Description
        -----------
        Modifies the current local transformation.

        """
        return _Graphic3d.Graphic3d_Structure_SetTransformation(self, *args)

    def SetVisible(self, *args):
        r"""

        Parameters
        ----------
        AValue: bool

        Return
        -------
        None

        Description
        -----------
        Modifies the visibility indicator to Standard_True or Standard_False for the structure <self>. The default value at the definition of <self> is Standard_True.

        """
        return _Graphic3d.Graphic3d_Structure_SetVisible(self, *args)

    def SetVisual(self, *args):
        r"""

        Parameters
        ----------
        AVisual: Graphic3d_TypeOfStructure

        Return
        -------
        None

        Description
        -----------
        Modifies the visualisation mode for the structure <self>.

        """
        return _Graphic3d.Graphic3d_Structure_SetVisual(self, *args)

    def SetZLayer(self, *args):
        r"""

        Parameters
        ----------
        theLayerId: int

        Return
        -------
        None

        Description
        -----------
        Set Z layer ID for the structure. The Z layer mechanism allows to display structures presented in higher layers in overlay of structures in lower layers by switching off z buffer depth test between layers.

        """
        return _Graphic3d.Graphic3d_Structure_SetZLayer(self, *args)

    def SetZoomLimit(self, *args):
        r"""

        Parameters
        ----------
        LimitInf: float
        LimitSup: float

        Return
        -------
        None

        Description
        -----------
        Modifies the minimum and maximum zoom coefficients for the structure <self>. The default value at the definition of <self> is unlimited. Category: Methods to modify the class definition Warning: Raises StructureDefinitionError if <LimitInf> is greater than <LimitSup> or if <LimitInf> or <LimitSup> is a negative value.

        """
        return _Graphic3d.Graphic3d_Structure_SetZoomLimit(self, *args)

    def TransformPersistence(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_TransformPers>

        Description
        -----------
        Return: transform persistence of the presentable object.

        """
        return _Graphic3d.Graphic3d_Structure_TransformPersistence(self, *args)

    def Transformation(self, *args):
        r"""
        Return
        -------
        opencascade::handle<TopLoc_Datum3D>

        Description
        -----------
        Return local transformation.

        """
        return _Graphic3d.Graphic3d_Structure_Transformation(self, *args)

    @staticmethod
    def Transforms(*args):
        r"""

        Parameters
        ----------
        theTrsf: gp_Trsf
        theX: float
        theY: float
        theZ: float

        Return
        -------
        theNewX: float
        theNewY: float
        theNewZ: float

        Description
        -----------
        Transforms theX, theY, theZ with the transformation theTrsf.

        """
        return _Graphic3d.Graphic3d_Structure_Transforms(*args)

    def UnHighlight(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Suppresses the highlight for the structure <self> in all the views of the visualiser.

        """
        return _Graphic3d.Graphic3d_Structure_UnHighlight(self, *args)

    def Visual(self, *args):
        r"""
        Return
        -------
        Graphic3d_TypeOfStructure

        Description
        -----------
        Returns the visualisation mode for the structure <self>.

        """
        return _Graphic3d.Graphic3d_Structure_Visual(self, *args)

    def computeHLR(self, *args):
        r"""

        Parameters
        ----------
        theProjector: Graphic3d_Camera
        theStructure: Graphic3d_Structure

        Return
        -------
        None

        Description
        -----------
        Returns the new Structure defined for the new visualization.

        """
        return _Graphic3d.Graphic3d_Structure_computeHLR(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_Structure

# Register Graphic3d_Structure in _Graphic3d:
_Graphic3d.Graphic3d_Structure_swigregister(Graphic3d_Structure)
class Graphic3d_StructureManager(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"""

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

        Return
        -------
        None

        Description
        -----------
        Initializes the ViewManager. Currently creating of more than 100 viewer instances is not supported and leads to InitializationError and initialization failure. This limitation might be addressed in some future OCCT releases. Warning: Raises InitialisationError if the initialization of the ViewManager failed.

        """
        _Graphic3d.Graphic3d_StructureManager_swiginit(self, _Graphic3d.new_Graphic3d_StructureManager(*args))

    def ChangeDisplayPriority(self, *args):
        r"""

        Parameters
        ----------
        theStructure: Graphic3d_Structure
        theOldPriority: Graphic3d_DisplayPriority
        theNewPriority: Graphic3d_DisplayPriority

        Return
        -------
        None

        Description
        -----------
        Changes the display priority of the structure <AStructure>.

        """
        return _Graphic3d.Graphic3d_StructureManager_ChangeDisplayPriority(self, *args)

    def ChangeZLayer(self, *args):
        r"""

        Parameters
        ----------
        theStructure: Graphic3d_Structure
        theLayerId: int

        Return
        -------
        None

        Description
        -----------
        Change Z layer for structure. The Z layer mechanism allows to display structures in higher layers in overlay of structures in lower layers.

        """
        return _Graphic3d.Graphic3d_StructureManager_ChangeZLayer(self, *args)

    def Clear(self, *args):
        r"""

        Parameters
        ----------
        theStructure: Graphic3d_Structure *
        theWithDestruction: bool

        Return
        -------
        None

        Description
        -----------
        Clears the structure.

        """
        return _Graphic3d.Graphic3d_StructureManager_Clear(self, *args)

    def Connect(self, *args):
        r"""

        Parameters
        ----------
        theMother: Graphic3d_Structure *
        theDaughter: Graphic3d_Structure *

        Return
        -------
        None

        Description
        -----------
        Connects the structures.

        """
        return _Graphic3d.Graphic3d_StructureManager_Connect(self, *args)

    def DefinedViews(self, *args):
        r"""
        Return
        -------
        Graphic3d_IndexedMapOfView

        Description
        -----------
        Returns the group of views defined in the structure manager.

        """
        return _Graphic3d.Graphic3d_StructureManager_DefinedViews(self, *args)

    def Disconnect(self, *args):
        r"""

        Parameters
        ----------
        theMother: Graphic3d_Structure *
        theDaughter: Graphic3d_Structure *

        Return
        -------
        None

        Description
        -----------
        Disconnects the structures.

        """
        return _Graphic3d.Graphic3d_StructureManager_Disconnect(self, *args)

    def Display(self, *args):
        r"""

        Parameters
        ----------
        theStructure: Graphic3d_Structure

        Return
        -------
        None

        Description
        -----------
        Display the structure.

        """
        return _Graphic3d.Graphic3d_StructureManager_Display(self, *args)

    def DisplayedStructures(self, *args):
        r"""

        Parameters
        ----------
        SG: Graphic3d_MapOfStructure

        Return
        -------
        None

        Description
        -----------
        Returns the set of structures displayed in visualiser <self>.

        """
        return _Graphic3d.Graphic3d_StructureManager_DisplayedStructures(self, *args)

    def DumpJson(self, depth=-1):
        r"""

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        """
        return _Graphic3d.Graphic3d_StructureManager_DumpJson(self, depth)

    def Erase(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Erases all the structures.

        Parameters
        ----------
        theStructure: Graphic3d_Structure

        Return
        -------
        None

        Description
        -----------
        Erases the structure.

        """
        return _Graphic3d.Graphic3d_StructureManager_Erase(self, *args)

    def GraphicDriver(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_GraphicDriver>

        Description
        -----------
        Returns the graphic driver of <self>.

        """
        return _Graphic3d.Graphic3d_StructureManager_GraphicDriver(self, *args)

    def Highlight(self, *args):
        r"""

        Parameters
        ----------
        theStructure: Graphic3d_Structure

        Return
        -------
        None

        Description
        -----------
        Highlights the structure.

        """
        return _Graphic3d.Graphic3d_StructureManager_Highlight(self, *args)

    def HighlightedStructures(self, *args):
        r"""

        Parameters
        ----------
        SG: Graphic3d_MapOfStructure

        Return
        -------
        None

        Description
        -----------
        Returns the set of highlighted structures in a visualiser <self>.

        """
        return _Graphic3d.Graphic3d_StructureManager_HighlightedStructures(self, *args)

    def Identification(self, *args):
        r"""

        Parameters
        ----------
        theView: Graphic3d_CView *

        Return
        -------
        int

        Description
        -----------
        Attaches the view to this structure manager and sets its identification number within the manager.

        Parameters
        ----------
        AId: int

        Return
        -------
        opencascade::handle<Graphic3d_Structure>

        Description
        -----------
        Returns the structure with the identification number <AId>.

        """
        return _Graphic3d.Graphic3d_StructureManager_Identification(self, *args)

    def IsDeviceLost(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns True if Device Lost flag has been set and presentation data should be reuploaded onto graphics driver.

        """
        return _Graphic3d.Graphic3d_StructureManager_IsDeviceLost(self, *args)

    def MaxNumOfViews(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Returns the theoretical maximum number of definable views in the manager. Warning: It's not possible to accept an infinite number of definable views because each view must have an identification and we have different managers.

        """
        return _Graphic3d.Graphic3d_StructureManager_MaxNumOfViews(self, *args)

    def ObjectAffinity(self, *args):
        r"""

        Parameters
        ----------
        theObject: Standard_Transient

        Return
        -------
        opencascade::handle<Graphic3d_ViewAffinity>

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_StructureManager_ObjectAffinity(self, *args)

    def ReCompute(self, *args):
        r"""

        Parameters
        ----------
        theStructure: Graphic3d_Structure

        Return
        -------
        None

        Description
        -----------
        Forces a new construction of the structure. if <theStructure> is displayed and TOS_COMPUTED.

        Parameters
        ----------
        theStructure: Graphic3d_Structure
        theProjector: Graphic3d_DataStructureManager

        Return
        -------
        None

        Description
        -----------
        Forces a new construction of the structure. if <theStructure> is displayed in <theProjector> and TOS_COMPUTED.

        """
        return _Graphic3d.Graphic3d_StructureManager_ReCompute(self, *args)

    def RecomputeStructures(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Recomputes all structures in the manager. Resets Device Lost flag.

        Parameters
        ----------
        theStructures: NCollection_Map<Graphic3d_Structure *>

        Return
        -------
        None

        Description
        -----------
        Recomputes all structures from theStructures.

        """
        return _Graphic3d.Graphic3d_StructureManager_RecomputeStructures(self, *args)

    def RegisterObject(self, *args):
        r"""

        Parameters
        ----------
        theObject: Standard_Transient
        theAffinity: Graphic3d_ViewAffinity

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_StructureManager_RegisterObject(self, *args)

    def Remove(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Deletes and erases the 3D structure manager.

        """
        return _Graphic3d.Graphic3d_StructureManager_Remove(self, *args)

    def SetDeviceLost(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Sets Device Lost flag.

        """
        return _Graphic3d.Graphic3d_StructureManager_SetDeviceLost(self, *args)

    def SetTransform(self, *args):
        r"""

        Parameters
        ----------
        theStructure: Graphic3d_Structure
        theTrsf: TopLoc_Datum3D

        Return
        -------
        None

        Description
        -----------
        Transforms the structure.

        """
        return _Graphic3d.Graphic3d_StructureManager_SetTransform(self, *args)

    def UnHighlight(self, *args):
        r"""

        Parameters
        ----------
        AStructure: Graphic3d_Structure

        Return
        -------
        None

        Description
        -----------
        Suppress the highlighting on the structure <AStructure>.
        Return
        -------
        None

        Description
        -----------
        Suppresses the highlighting on all the structures in <self>.

        """
        return _Graphic3d.Graphic3d_StructureManager_UnHighlight(self, *args)

    def UnIdentification(self, *args):
        r"""

        Parameters
        ----------
        theView: Graphic3d_CView *

        Return
        -------
        None

        Description
        -----------
        Detach the view from this structure manager and release its identification.

        """
        return _Graphic3d.Graphic3d_StructureManager_UnIdentification(self, *args)

    def UnregisterObject(self, *args):
        r"""

        Parameters
        ----------
        theObject: Standard_Transient

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_StructureManager_UnregisterObject(self, *args)

    def Update(self, *args):
        r"""

        Parameters
        ----------
        theLayerId: int (optional, default to Graphic3d_ZLayerId_UNKNOWN)

        Return
        -------
        None

        Description
        -----------
        Invalidates bounding box of specified ZLayerId.

        """
        return _Graphic3d.Graphic3d_StructureManager_Update(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_StructureManager

# Register Graphic3d_StructureManager in _Graphic3d:
_Graphic3d.Graphic3d_StructureManager_swigregister(Graphic3d_StructureManager)
class Graphic3d_Text(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"""

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

        Return
        -------
        None

        Description
        -----------
        Creates default text parameters.

        """
        _Graphic3d.Graphic3d_Text_swiginit(self, _Graphic3d.new_Graphic3d_Text(*args))

    def HasOwnAnchorPoint(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns true if the text has an anchor point.

        """
        return _Graphic3d.Graphic3d_Text_HasOwnAnchorPoint(self, *args)

    def HasPlane(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns true if the text is filled by a point.

        """
        return _Graphic3d.Graphic3d_Text_HasPlane(self, *args)

    def Height(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Sets height of text. (Relative to the Normalized Projection Coordinates (NPC) Space).

        """
        return _Graphic3d.Graphic3d_Text_Height(self, *args)

    def HorizontalAlignment(self, *args):
        r"""
        Return
        -------
        Graphic3d_HorizontalTextAlignment

        Description
        -----------
        Returns horizontal alignment of text.

        """
        return _Graphic3d.Graphic3d_Text_HorizontalAlignment(self, *args)

    def Orientation(self, *args):
        r"""
        Return
        -------
        gp_Ax2

        Description
        -----------
        Returns text orientation in 3D space.

        """
        return _Graphic3d.Graphic3d_Text_Orientation(self, *args)

    def Position(self, *args):
        r"""
        Return
        -------
        gp_Pnt

        Description
        -----------
        The 3D point of attachment is projected. If the orientation is defined, the text is written in the plane of projection.

        """
        return _Graphic3d.Graphic3d_Text_Position(self, *args)

    def ResetOrientation(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Reset text orientation in 3D space.

        """
        return _Graphic3d.Graphic3d_Text_ResetOrientation(self, *args)

    def SetHeight(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Returns height of text.

        """
        return _Graphic3d.Graphic3d_Text_SetHeight(self, *args)

    def SetHorizontalAlignment(self, *args):
        r"""

        Parameters
        ----------
        theJustification: Graphic3d_HorizontalTextAlignment

        Return
        -------
        None

        Description
        -----------
        Sets horizontal alignment of text.

        """
        return _Graphic3d.Graphic3d_Text_SetHorizontalAlignment(self, *args)

    def SetOrientation(self, *args):
        r"""

        Parameters
        ----------
        theOrientation: gp_Ax2

        Return
        -------
        None

        Description
        -----------
        Sets text orientation in 3D space.

        """
        return _Graphic3d.Graphic3d_Text_SetOrientation(self, *args)

    def SetOwnAnchorPoint(self, *args):
        r"""

        Parameters
        ----------
        theHasOwnAnchor: bool

        Return
        -------
        None

        Description
        -----------
        Returns true if the text has an anchor point.

        """
        return _Graphic3d.Graphic3d_Text_SetOwnAnchorPoint(self, *args)

    def SetPosition(self, *args):
        r"""

        Parameters
        ----------
        thePoint: gp_Pnt

        Return
        -------
        None

        Description
        -----------
        Sets text point.

        """
        return _Graphic3d.Graphic3d_Text_SetPosition(self, *args)

    def SetText(self, *args):
        r"""

        Parameters
        ----------
        theText: NCollection_String

        Return
        -------
        None

        Description
        -----------
        Sets text value.

        Parameters
        ----------
        theText: str

        Return
        -------
        None

        Description
        -----------
        Sets text value.

        Parameters
        ----------
        theText: str

        Return
        -------
        None

        Description
        -----------
        Sets text value.

        """
        return _Graphic3d.Graphic3d_Text_SetText(self, *args)

    def SetTextFormatter(self, *args):
        r"""

        Parameters
        ----------
        theFormatter: Font_TextFormatter

        Return
        -------
        None

        Description
        -----------
        Setup text default formatter for text within this context.

        """
        return _Graphic3d.Graphic3d_Text_SetTextFormatter(self, *args)

    def SetVerticalAlignment(self, *args):
        r"""

        Parameters
        ----------
        theJustification: Graphic3d_VerticalTextAlignment

        Return
        -------
        None

        Description
        -----------
        Sets vertical alignment of text.

        """
        return _Graphic3d.Graphic3d_Text_SetVerticalAlignment(self, *args)

    def Text(self, *args):
        r"""
        Return
        -------
        NCollection_String

        Description
        -----------
        Returns text value.

        """
        return _Graphic3d.Graphic3d_Text_Text(self, *args)

    def TextFormatter(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Font_TextFormatter>

        Description
        -----------
        Return: text formatter; NULL by default, which means standard text formatter will be used.

        """
        return _Graphic3d.Graphic3d_Text_TextFormatter(self, *args)

    def VerticalAlignment(self, *args):
        r"""
        Return
        -------
        Graphic3d_VerticalTextAlignment

        Description
        -----------
        Returns vertical alignment of text.

        """
        return _Graphic3d.Graphic3d_Text_VerticalAlignment(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_Text

# Register Graphic3d_Text in _Graphic3d:
_Graphic3d.Graphic3d_Text_swigregister(Graphic3d_Text)
class Graphic3d_TextureParams(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"""
        Return
        -------
        None

        Description
        -----------
        Default constructor.

        """
        _Graphic3d.Graphic3d_TextureParams_swiginit(self, _Graphic3d.new_Graphic3d_TextureParams(*args))

    def AnisoFilter(self, *args):
        r"""
        Return
        -------
        Graphic3d_LevelOfTextureAnisotropy

        Description
        -----------
        Return: level of anisontropy texture filter. Default value is Graphic3d_LOTA_OFF.

        """
        return _Graphic3d.Graphic3d_TextureParams_AnisoFilter(self, *args)

    def BaseLevel(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Return: base texture mipmap level; 0 by default.

        """
        return _Graphic3d.Graphic3d_TextureParams_BaseLevel(self, *args)

    def Filter(self, *args):
        r"""
        Return
        -------
        Graphic3d_TypeOfTextureFilter

        Description
        -----------
        Return: texture interpolation filter. Default value is Graphic3d_TOTF_NEAREST.

        """
        return _Graphic3d.Graphic3d_TextureParams_Filter(self, *args)

    def GenMode(self, *args):
        r"""
        Return
        -------
        Graphic3d_TypeOfTextureMode

        Description
        -----------
        Return: texture coordinates generation mode. Default value is Graphic3d_TOTM_MANUAL.

        """
        return _Graphic3d.Graphic3d_TextureParams_GenMode(self, *args)

    def GenPlaneS(self, *args):
        r"""
        Return
        -------
        Graphic3d_Vec4

        Description
        -----------
        Return: texture coordinates generation plane S.

        """
        return _Graphic3d.Graphic3d_TextureParams_GenPlaneS(self, *args)

    def GenPlaneT(self, *args):
        r"""
        Return
        -------
        Graphic3d_Vec4

        Description
        -----------
        Return: texture coordinates generation plane T.

        """
        return _Graphic3d.Graphic3d_TextureParams_GenPlaneT(self, *args)

    def IsModulate(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return: True if the texture is modulate. Default value is False.

        """
        return _Graphic3d.Graphic3d_TextureParams_IsModulate(self, *args)

    def IsRepeat(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return: True if the texture repeat is enabled. Default value is False.

        """
        return _Graphic3d.Graphic3d_TextureParams_IsRepeat(self, *args)

    def MaxLevel(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Return maximum texture mipmap array level; 1000 by default. Real rendering limit will take into account mipmap generation flags and presence of mipmaps in loaded image.

        """
        return _Graphic3d.Graphic3d_TextureParams_MaxLevel(self, *args)

    def Rotation(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Return rotation angle in degrees; 0 by default. Complete transformation matrix: Rotation -> Translation -> Scale.

        """
        return _Graphic3d.Graphic3d_TextureParams_Rotation(self, *args)

    def SamplerRevision(self, *args):
        r"""
        Return
        -------
        unsigned int

        Description
        -----------
        Return modification counter of parameters related to sampler state.

        """
        return _Graphic3d.Graphic3d_TextureParams_SamplerRevision(self, *args)

    def Scale(self, *args):
        r"""
        Return
        -------
        Graphic3d_Vec2

        Description
        -----------
        Return scale factor; (1.0; 1.0) by default, which means no scaling. Complete transformation matrix: Rotation -> Translation -> Scale.

        """
        return _Graphic3d.Graphic3d_TextureParams_Scale(self, *args)

    def SetAnisoFilter(self, *args):
        r"""

        Parameters
        ----------
        theLevel: Graphic3d_LevelOfTextureAnisotropy

        Return
        -------
        None

        Description
        -----------
        Parameter theLevel level of anisontropy texture filter.

        """
        return _Graphic3d.Graphic3d_TextureParams_SetAnisoFilter(self, *args)

    def SetFilter(self, *args):
        r"""

        Parameters
        ----------
        theFilter: Graphic3d_TypeOfTextureFilter

        Return
        -------
        None

        Description
        -----------
        Parameter theFilter texture interpolation filter.

        """
        return _Graphic3d.Graphic3d_TextureParams_SetFilter(self, *args)

    def SetGenMode(self, *args):
        r"""

        Parameters
        ----------
        theMode: Graphic3d_TypeOfTextureMode
        thePlaneS: Graphic3d_Vec4
        thePlaneT: Graphic3d_Vec4

        Return
        -------
        None

        Description
        -----------
        Setup texture coordinates generation mode.

        """
        return _Graphic3d.Graphic3d_TextureParams_SetGenMode(self, *args)

    def SetLevelsRange(self, *args):
        r"""

        Parameters
        ----------
        theFirstLevel: int
        theSecondLevel: int (optional, default to 0)

        Return
        -------
        None

        Description
        -----------
        Setups texture mipmap array levels range. The lowest value will be the base level. The remaining one will be the maximum level.

        """
        return _Graphic3d.Graphic3d_TextureParams_SetLevelsRange(self, *args)

    def SetModulate(self, *args):
        r"""

        Parameters
        ----------
        theToModulate: bool

        Return
        -------
        None

        Description
        -----------
        Parameter theToModulate turn modulation on/off.

        """
        return _Graphic3d.Graphic3d_TextureParams_SetModulate(self, *args)

    def SetRepeat(self, *args):
        r"""

        Parameters
        ----------
        theToRepeat: bool

        Return
        -------
        None

        Description
        -----------
        Parameter theToRepeat turn texture repeat mode ON or OFF (clamping).

        """
        return _Graphic3d.Graphic3d_TextureParams_SetRepeat(self, *args)

    def SetRotation(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Parameter theAngleDegrees rotation angle.

        """
        return _Graphic3d.Graphic3d_TextureParams_SetRotation(self, *args)

    def SetScale(self, *args):
        r"""

        Parameters
        ----------
        theScale: Graphic3d_Vec2

        Return
        -------
        None

        Description
        -----------
        Parameter theScale scale factor.

        """
        return _Graphic3d.Graphic3d_TextureParams_SetScale(self, *args)

    def SetTextureUnit(self, *args):
        r"""

        Parameters
        ----------
        theUnit: Graphic3d_TextureUnit

        Return
        -------
        None

        Description
        -----------
        Setup default texture unit.

        """
        return _Graphic3d.Graphic3d_TextureParams_SetTextureUnit(self, *args)

    def SetTranslation(self, *args):
        r"""

        Parameters
        ----------
        theVec: Graphic3d_Vec2

        Return
        -------
        None

        Description
        -----------
        Parameter theVec translation vector.

        """
        return _Graphic3d.Graphic3d_TextureParams_SetTranslation(self, *args)

    def TextureUnit(self, *args):
        r"""
        Return
        -------
        Graphic3d_TextureUnit

        Description
        -----------
        Default texture unit to be used, default is Graphic3d_TextureUnit_BaseColor.

        """
        return _Graphic3d.Graphic3d_TextureParams_TextureUnit(self, *args)

    def Translation(self, *args):
        r"""
        Return
        -------
        Graphic3d_Vec2

        Description
        -----------
        Return translation vector; (0.0; 0.0), which means no translation. Complete transformation matrix: Rotation -> Translation -> Scale.

        """
        return _Graphic3d.Graphic3d_TextureParams_Translation(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_TextureParams

# Register Graphic3d_TextureParams in _Graphic3d:
_Graphic3d.Graphic3d_TextureParams_swigregister(Graphic3d_TextureParams)
class Graphic3d_TextureRoot(OCC.Core.Standard.Standard_Transient):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

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

    def GetCompressedImage(self, *args):
        r"""

        Parameters
        ----------
        theSupported: Image_SupportedFormats

        Return
        -------
        opencascade::handle<Image_CompressedPixMap>

        Description
        -----------
        This method will be called by graphic driver each time when texture resource should be created. It is called in front of GetImage() for uploading compressed image formats natively supported by GPU. 
        Input parameter: theSupported the list of supported compressed texture formats;  returning image in unsupported format will result in texture upload  failure 
        Return: compressed pixmap or NULL if image is not in supported compressed format.

        """
        return _Graphic3d.Graphic3d_TextureRoot_GetCompressedImage(self, *args)

    def GetId(self, *args):
        r"""
        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        This ID will be used to manage resource in graphic driver. //! Default implementation generates unique ID within constructor; inheritors may re-initialize it within their constructor, but should never modify it afterwards. //! Multiple Graphic3d_TextureRoot instances with same ID will be treated as single texture with different parameters to optimize memory usage though this will be more natural to use same instance of Graphic3d_TextureRoot when possible. //! If this ID is set to empty string by inheritor, then independent graphical resource will be created for each instance of Graphic3d_AspectFillArea3d where texture will be used. //! 
        Return: texture identifier.

        """
        return _Graphic3d.Graphic3d_TextureRoot_GetId(self, *args)

    def GetImage(self, *args):
        r"""

        Parameters
        ----------
        theSupported: Image_SupportedFormats

        Return
        -------
        opencascade::handle<Image_PixMap>

        Description
        -----------
        This method will be called by graphic driver each time when texture resource should be created. Default constructors allow defining the texture source as path to texture image or directly as pixmap. If the source is defined as path, then the image will be dynamically loaded when this method is called (and no copy will be preserved in this class instance). Inheritors may dynamically generate the image. Notice, image data should be in Bottom-Up order (see Image_PixMap::IsTopDown())! 
        Return: the image for texture.

        """
        return _Graphic3d.Graphic3d_TextureRoot_GetImage(self, *args)

    def GetParams(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_TextureParams>

        Description
        -----------
        Return: low-level texture parameters.

        """
        return _Graphic3d.Graphic3d_TextureRoot_GetParams(self, *args)

    def HasMipmaps(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns whether mipmaps should be generated or not.

        """
        return _Graphic3d.Graphic3d_TextureRoot_HasMipmaps(self, *args)

    def IsColorMap(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return flag indicating color nature of values within the texture; True by default. //! This flag will be used to interpret 8-bit per channel RGB(A) images as sRGB(A) textures with implicit linearizion of color components. Has no effect on images with floating point values (always considered linearized). //! When set to False, such images will be interpreted as textures will be linear component values, which is useful for RGB(A) textures defining non-color properties (like Normalmap/Metalness/Roughness).

        """
        return _Graphic3d.Graphic3d_TextureRoot_IsColorMap(self, *args)

    def IsDone(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Checks if a texture class is valid or not. 
        Return: true if the construction of the class is correct.

        """
        return _Graphic3d.Graphic3d_TextureRoot_IsDone(self, *args)

    def IsTopDown(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns whether row's memory layout is top-down.

        """
        return _Graphic3d.Graphic3d_TextureRoot_IsTopDown(self, *args)

    def Path(self, *args):
        r"""
        Return
        -------
        OSD_Path

        Description
        -----------
        Returns the full path of the defined texture. It could be empty path if GetImage() is overridden to load image not from file.

        """
        return _Graphic3d.Graphic3d_TextureRoot_Path(self, *args)

    def Revision(self, *args):
        r"""
        Return
        -------
        Standard_Size

        Description
        -----------
        Return image revision.

        """
        return _Graphic3d.Graphic3d_TextureRoot_Revision(self, *args)

    def SetColorMap(self, *args):
        r"""

        Parameters
        ----------
        theIsColor: bool

        Return
        -------
        None

        Description
        -----------
        Set flag indicating color nature of values within the texture.

        """
        return _Graphic3d.Graphic3d_TextureRoot_SetColorMap(self, *args)

    def SetMipmapsGeneration(self, *args):
        r"""

        Parameters
        ----------
        theToGenerateMipmaps: bool

        Return
        -------
        None

        Description
        -----------
        Sets whether to generate mipmaps or not.

        """
        return _Graphic3d.Graphic3d_TextureRoot_SetMipmapsGeneration(self, *args)

    @staticmethod
    def TexturesFolder(*args):
        r"""
        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        The path to textures determined from CSF_MDTVTexturesDirectory or CASROOT environment variables. 
        Return: the root folder with default textures.

        """
        return _Graphic3d.Graphic3d_TextureRoot_TexturesFolder(*args)

    def Type(self, *args):
        r"""
        Return
        -------
        Graphic3d_TypeOfTexture

        Description
        -----------
        Return: the texture type.

        """
        return _Graphic3d.Graphic3d_TextureRoot_Type(self, *args)

    def UpdateRevision(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Update image revision. Can be used for signaling changes in the texture source (e.g. file update, pixmap update) without re-creating texture source itself (since unique id should be never modified).

        """
        return _Graphic3d.Graphic3d_TextureRoot_UpdateRevision(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_TextureRoot

# Register Graphic3d_TextureRoot in _Graphic3d:
_Graphic3d.Graphic3d_TextureRoot_swigregister(Graphic3d_TextureRoot)
class Graphic3d_TransformPers(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"""

        Parameters
        ----------
        theMode: Graphic3d_TransModeFlags

        Return
        -------
        None

        Description
        -----------
        Set transformation persistence.

        Parameters
        ----------
        theMode: Graphic3d_TransModeFlags
        thePnt: gp_Pnt

        Return
        -------
        None

        Description
        -----------
        Set Zoom/Rotate transformation persistence with an anchor 3D point. Anchor point defines the origin of Local Coordinate system within World Coordinate system. Throws an exception if persistence mode is not Graphic3d_TMF_ZoomPers, Graphic3d_TMF_ZoomRotatePers or Graphic3d_TMF_RotatePers.

        Parameters
        ----------
        theMode: Graphic3d_TransModeFlags
        theCorner: Aspect_TypeOfTriedronPosition
        theOffset: Graphic3d_Vec2i (optional, default to Graphic3d_Vec2i(0,0))

        Return
        -------
        None

        Description
        -----------
        Set 2d/trihedron transformation persistence with a corner and 2D offset. 2D offset defines the origin of Local Coordinate system as projection of 2D point on screen plane into World Coordinate system. Throws an exception if persistence mode is not Graphic3d_TMF_TriedronPers or Graphic3d_TMF_2d. The offset is a positive displacement from the view corner in pixels.

        """
        _Graphic3d.Graphic3d_TransformPers_swiginit(self, _Graphic3d.new_Graphic3d_TransformPers(*args))

    def AnchorPoint(self, *args):
        r"""
        Return
        -------
        gp_Pnt

        Description
        -----------
        Return the anchor point for zoom/rotate transformation persistence.

        """
        return _Graphic3d.Graphic3d_TransformPers_AnchorPoint(self, *args)

    def ComputeApply(self, *args):
        r"""

        Parameters
        ----------
        theCamera: Graphic3d_Camera
        theViewportWidth: int
        theViewportHeight: int
        theAnchor: gp_Pnt * (optional, default to NULL)

        Return
        -------
        NCollection_Mat4<float >

        Description
        -----------
        Perform computations for applying transformation persistence on specified matrices. 
        Input parameter: theCamera camera definition 
        Input parameter: theViewportWidth viewport width 
        Input parameter: theViewportHeight viewport height 
        Input parameter: theAnchor if not NULL, overrides anchor point.

        """
        return _Graphic3d.Graphic3d_TransformPers_ComputeApply(self, *args)

    def Corner2d(self, *args):
        r"""
        Return
        -------
        Aspect_TypeOfTriedronPosition

        Description
        -----------
        Return the corner for 2d/trihedron transformation persistence.

        """
        return _Graphic3d.Graphic3d_TransformPers_Corner2d(self, *args)

    def DumpJson(self, depth=-1):
        r"""

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        """
        return _Graphic3d.Graphic3d_TransformPers_DumpJson(self, depth)

    def Flags(self, *args):
        r"""
        Return
        -------
        Graphic3d_TransModeFlags

        Description
        -----------
        Transformation persistence mode flags.

        """
        return _Graphic3d.Graphic3d_TransformPers_Flags(self, *args)

    def IsAxial(self, *args):
        r"""

        Parameters
        ----------
        theMode: Graphic3d_TransModeFlags

        Return
        -------
        bool

        Description
        -----------
        Return true if specified mode is axial transformation persistence.
        Return
        -------
        bool

        Description
        -----------
        Return true for Graphic3d_TMF_AxialScalePers modes.

        """
        return _Graphic3d.Graphic3d_TransformPers_IsAxial(self, *args)

    def IsOrthoPers(self, *args):
        r"""

        Parameters
        ----------
        theMode: Graphic3d_TransModeFlags

        Return
        -------
        bool

        Description
        -----------
        Return true if specified mode is orthographic projection transformation persistence.
        Return
        -------
        bool

        Description
        -----------
        Return true for Graphic3d_TMF_OrthoPers mode.

        """
        return _Graphic3d.Graphic3d_TransformPers_IsOrthoPers(self, *args)

    def IsTrihedronOr2d(self, *args):
        r"""

        Parameters
        ----------
        theMode: Graphic3d_TransModeFlags

        Return
        -------
        bool

        Description
        -----------
        Return true if specified mode is 2d/trihedron transformation persistence.
        Return
        -------
        bool

        Description
        -----------
        Return true for Graphic3d_TMF_TriedronPers and Graphic3d_TMF_2d modes.

        """
        return _Graphic3d.Graphic3d_TransformPers_IsTrihedronOr2d(self, *args)

    def IsZoomOrRotate(self, *args):
        r"""

        Parameters
        ----------
        theMode: Graphic3d_TransModeFlags

        Return
        -------
        bool

        Description
        -----------
        Return true if specified mode is zoom/rotate transformation persistence.
        Return
        -------
        bool

        Description
        -----------
        Return true for Graphic3d_TMF_ZoomPers, Graphic3d_TMF_ZoomRotatePers or Graphic3d_TMF_RotatePers modes.

        """
        return _Graphic3d.Graphic3d_TransformPers_IsZoomOrRotate(self, *args)

    def Mode(self, *args):
        r"""
        Return
        -------
        Graphic3d_TransModeFlags

        Description
        -----------
        Transformation persistence mode flags.

        """
        return _Graphic3d.Graphic3d_TransformPers_Mode(self, *args)

    def Offset2d(self, *args):
        r"""
        Return
        -------
        Graphic3d_Vec2i

        Description
        -----------
        Return the offset from the corner for 2d/trihedron transformation persistence.

        """
        return _Graphic3d.Graphic3d_TransformPers_Offset2d(self, *args)

    def SetAnchorPoint(self, *args):
        r"""

        Parameters
        ----------
        thePnt: gp_Pnt

        Return
        -------
        None

        Description
        -----------
        Set the anchor point for zoom/rotate transformation persistence.

        """
        return _Graphic3d.Graphic3d_TransformPers_SetAnchorPoint(self, *args)

    def SetCorner2d(self, *args):
        r"""

        Parameters
        ----------
        thePos: Aspect_TypeOfTriedronPosition

        Return
        -------
        None

        Description
        -----------
        Set the corner for 2d/trihedron transformation persistence.

        """
        return _Graphic3d.Graphic3d_TransformPers_SetCorner2d(self, *args)

    def SetOffset2d(self, *args):
        r"""

        Parameters
        ----------
        theOffset: Graphic3d_Vec2i

        Return
        -------
        None

        Description
        -----------
        Set the offset from the corner for 2d/trihedron transformation persistence.

        """
        return _Graphic3d.Graphic3d_TransformPers_SetOffset2d(self, *args)

    def SetPersistence(self, *args):
        r"""

        Parameters
        ----------
        theMode: Graphic3d_TransModeFlags
        thePnt: gp_Pnt

        Return
        -------
        None

        Description
        -----------
        Set Zoom/Rotate transformation persistence with an anchor 3D point. Throws an exception if persistence mode is not Graphic3d_TMF_ZoomPers, Graphic3d_TMF_ZoomRotatePers or Graphic3d_TMF_RotatePers.

        Parameters
        ----------
        theMode: Graphic3d_TransModeFlags
        theCorner: Aspect_TypeOfTriedronPosition
        theOffset: Graphic3d_Vec2i

        Return
        -------
        None

        Description
        -----------
        Set 2d/trihedron transformation persistence with a corner and 2D offset. Throws an exception if persistence mode is not Graphic3d_TMF_TriedronPers or Graphic3d_TMF_2d.

        """
        return _Graphic3d.Graphic3d_TransformPers_SetPersistence(self, *args)

    def persistentRotationMatrix(self, *args):
        r"""

        Parameters
        ----------
        theCamera: Graphic3d_Camera
        theViewportWidth: int
        theViewportHeight: int

        Return
        -------
        NCollection_Mat3<float >

        Description
        -----------
        Create orientation matrix based on camera and view dimensions. Default implementation locks rotation by nullifying rotation component. Camera and view dimensions are not used, by default. 
        Input parameter: theCamera camera definition 
        Input parameter: theViewportWidth the width of viewport 
        Input parameter: theViewportHeight the height of viewport.

        """
        return _Graphic3d.Graphic3d_TransformPers_persistentRotationMatrix(self, *args)

    def persistentScale(self, *args):
        r"""

        Parameters
        ----------
        theCamera: Graphic3d_Camera
        theViewportWidth: int
        theViewportHeight: int

        Return
        -------
        float

        Description
        -----------
        Find scale value based on the camera position and view dimensions 
        Input parameter: theCamera camera definition 
        Input parameter: theViewportWidth the width of viewport. 
        Input parameter: theViewportHeight the height of viewport.

        """
        return _Graphic3d.Graphic3d_TransformPers_persistentScale(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_TransformPers

# Register Graphic3d_TransformPers in _Graphic3d:
_Graphic3d.Graphic3d_TransformPers_swigregister(Graphic3d_TransformPers)
class Graphic3d_ValidatedCubeMapOrder(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"""

        Parameters
        ----------
        theOther: Graphic3d_ValidatedCubeMapOrder

        Return
        -------
        None

        Description
        -----------
        Copy constructor.

        """
        _Graphic3d.Graphic3d_ValidatedCubeMapOrder_swiginit(self, _Graphic3d.new_Graphic3d_ValidatedCubeMapOrder(*args))

    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_ValidatedCubeMapOrder

# Register Graphic3d_ValidatedCubeMapOrder in _Graphic3d:
_Graphic3d.Graphic3d_ValidatedCubeMapOrder_swigregister(Graphic3d_ValidatedCubeMapOrder)
class Graphic3d_ValueInterface(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

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

    def TypeID(self, *args):
        r"""
        Return
        -------
        Standard_Size

        Description
        -----------
        Returns unique identifier of value type.

        """
        return _Graphic3d.Graphic3d_ValueInterface_TypeID(self, *args)

    __repr__ = _dumps_object

    @methodnotwrapped
    def As(self):
    	pass

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_ValueInterface

# Register Graphic3d_ValueInterface in _Graphic3d:
_Graphic3d.Graphic3d_ValueInterface_swigregister(Graphic3d_ValueInterface)
class Graphic3d_Vertex(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr
    xyz = property(_Graphic3d.Graphic3d_Vertex_xyz_get, _Graphic3d.Graphic3d_Vertex_xyz_set)

    def __init__(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Creates a point with 0.0, 0.0, 0.0 coordinates.

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

        Return
        -------
        None

        Description
        -----------
        Creates a point with theX, theY and theZ coordinates.

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

        Return
        -------
        None

        Description
        -----------
        Creates a point with theX, theY and theZ coordinates.

        """
        _Graphic3d.Graphic3d_Vertex_swiginit(self, _Graphic3d.new_Graphic3d_Vertex(*args))

    def Coord(self, *args):
        r"""

        Parameters
        ----------

        Return
        -------
        theX: float
        theY: float
        theZ: float

        Description
        -----------
        Returns the coordinates.

        Parameters
        ----------

        Return
        -------
        theX: float
        theY: float
        theZ: float

        Description
        -----------
        Returns the coordinates.

        """
        return _Graphic3d.Graphic3d_Vertex_Coord(self, *args)

    def Distance(self, *args):
        r"""

        Parameters
        ----------
        theOther: Graphic3d_Vertex

        Return
        -------
        float

        Description
        -----------
        Returns the distance between two points.

        """
        return _Graphic3d.Graphic3d_Vertex_Distance(self, *args)

    def DumpJson(self, depth=-1):
        r"""

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        """
        return _Graphic3d.Graphic3d_Vertex_DumpJson(self, depth)

    def SetCoord(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Modifies the coordinates.

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

        Return
        -------
        None

        Description
        -----------
        Modifies the coordinates.

        """
        return _Graphic3d.Graphic3d_Vertex_SetCoord(self, *args)

    def X(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Returns the X coordinates.

        """
        return _Graphic3d.Graphic3d_Vertex_X(self, *args)

    def Y(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Returns the Y coordinate.

        """
        return _Graphic3d.Graphic3d_Vertex_Y(self, *args)

    def Z(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Returns the Z coordinate.

        """
        return _Graphic3d.Graphic3d_Vertex_Z(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_Vertex

# Register Graphic3d_Vertex in _Graphic3d:
_Graphic3d.Graphic3d_Vertex_swigregister(Graphic3d_Vertex)
class Graphic3d_ViewAffinity(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"""
        Return
        -------
        None

        Description
        -----------
        Empty constructor.

        """
        _Graphic3d.Graphic3d_ViewAffinity_swiginit(self, _Graphic3d.new_Graphic3d_ViewAffinity(*args))

    def DumpJson(self, depth=-1):
        r"""

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        """
        return _Graphic3d.Graphic3d_ViewAffinity_DumpJson(self, depth)

    def IsVisible(self, *args):
        r"""

        Parameters
        ----------
        theViewId: int

        Return
        -------
        bool

        Description
        -----------
        Return visibility flag.

        """
        return _Graphic3d.Graphic3d_ViewAffinity_IsVisible(self, *args)

    def SetVisible(self, *args):
        r"""

        Parameters
        ----------
        theIsVisible: bool

        Return
        -------
        None

        Description
        -----------
        Setup visibility flag for all views.

        Parameters
        ----------
        theViewId: int
        theIsVisible: bool

        Return
        -------
        None

        Description
        -----------
        Setup visibility flag.

        """
        return _Graphic3d.Graphic3d_ViewAffinity_SetVisible(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_ViewAffinity

# Register Graphic3d_ViewAffinity in _Graphic3d:
_Graphic3d.Graphic3d_ViewAffinity_swigregister(Graphic3d_ViewAffinity)
class Graphic3d_WorldViewProjState(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"""
        Return
        -------
        None

        Description
        -----------
        Default constructor.

        Parameters
        ----------
        theProjectionState: Standard_Size
        theWorldViewState: Standard_Size
        theCamera: Standard_Transient * (optional, default to NULL)

        Return
        -------
        None

        Description
        -----------
        Constructor for custom projector type. 
        Input parameter: theProjectionState the projection state. 
        Input parameter: theWorldViewState the world view state. 
        Input parameter: theCamera the pointer to the class supplying projection and  world view matrices (camera).

        """
        _Graphic3d.Graphic3d_WorldViewProjState_swiginit(self, _Graphic3d.new_Graphic3d_WorldViewProjState(*args))

    def DumpJson(self, depth=-1):
        r"""

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        """
        return _Graphic3d.Graphic3d_WorldViewProjState_DumpJson(self, depth)

    def Initialize(self, *args):
        r"""

        Parameters
        ----------
        theProjectionState: Standard_Size
        theWorldViewState: Standard_Size
        theCamera: Standard_Transient * (optional, default to NULL)

        Return
        -------
        None

        Description
        -----------
        Initialize world view projection state.

        Parameters
        ----------
        theCamera: Standard_Transient * (optional, default to NULL)

        Return
        -------
        None

        Description
        -----------
        Initialize world view projection state.

        """
        return _Graphic3d.Graphic3d_WorldViewProjState_Initialize(self, *args)

    def IsChanged(self, *args):
        r"""

        Parameters
        ----------
        theState: Graphic3d_WorldViewProjState

        Return
        -------
        bool

        Description
        -----------
        Compare with other world view projection state. 
        Return: true when the projection of the given camera state differs from this one.

        """
        return _Graphic3d.Graphic3d_WorldViewProjState_IsChanged(self, *args)

    def IsProjectionChanged(self, *args):
        r"""

        Parameters
        ----------
        theState: Graphic3d_WorldViewProjState

        Return
        -------
        bool

        Description
        -----------
        Compare projection with other state. 
        Return: true when the projection of the given camera state differs from this one.

        """
        return _Graphic3d.Graphic3d_WorldViewProjState_IsProjectionChanged(self, *args)

    def IsValid(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Check state validity. 
        Return: true if state is set.

        """
        return _Graphic3d.Graphic3d_WorldViewProjState_IsValid(self, *args)

    def IsWorldViewChanged(self, *args):
        r"""

        Parameters
        ----------
        theState: Graphic3d_WorldViewProjState

        Return
        -------
        bool

        Description
        -----------
        Compare world view transformation with other state. 
        Return: true when the orientation of the given camera state differs from this one.

        """
        return _Graphic3d.Graphic3d_WorldViewProjState_IsWorldViewChanged(self, *args)

    def ProjectionState(self, *args):
        r"""
        Return
        -------
        Standard_Size

        Description
        -----------
        Return: projection state counter.

        """
        return _Graphic3d.Graphic3d_WorldViewProjState_ProjectionState(self, *args)

    def Reset(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Invalidate world view projection state.

        """
        return _Graphic3d.Graphic3d_WorldViewProjState_Reset(self, *args)

    def WorldViewState(self, *args):
        r"""
        Return
        -------
        Standard_Size

        Description
        -----------
        Return: world view state counter.

        """
        return _Graphic3d.Graphic3d_WorldViewProjState_WorldViewState(self, *args)

    def __ne_wrapper__(self, other):
        return _Graphic3d.Graphic3d_WorldViewProjState___ne_wrapper__(self, other)

    def __ne__(self, right):
        try:
            return self.__ne_wrapper__(right)
        except:
            return True


    def __eq_wrapper__(self, other):
        return _Graphic3d.Graphic3d_WorldViewProjState___eq_wrapper__(self, other)

    def __eq__(self, right):
        try:
            return self.__eq_wrapper__(right)
        except:
            return False


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_WorldViewProjState

# Register Graphic3d_WorldViewProjState in _Graphic3d:
_Graphic3d.Graphic3d_WorldViewProjState_swigregister(Graphic3d_WorldViewProjState)
class Graphic3d_ZLayerSettings(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"""
        Return
        -------
        None

        Description
        -----------
        Default settings.

        """
        _Graphic3d.Graphic3d_ZLayerSettings_swiginit(self, _Graphic3d.new_Graphic3d_ZLayerSettings(*args))

    def ChangePolygonOffset(self, *args):
        r"""
        Return
        -------
        Graphic3d_PolygonOffset

        Description
        -----------
        Modify glPolygonOffset() arguments.

        """
        return _Graphic3d.Graphic3d_ZLayerSettings_ChangePolygonOffset(self, *args)

    def CullingDistance(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Return the distance to discard drawing of distant objects (distance from camera Eye point); by default it is Infinite (distance culling is disabled). Since camera eye definition has no strong meaning within orthographic projection, option is considered only within perspective projection. Note also that this option has effect only when frustum culling is enabled.

        """
        return _Graphic3d.Graphic3d_ZLayerSettings_CullingDistance(self, *args)

    def CullingSize(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Return the size to discard drawing of small objects; by default it is Infinite (size culling is disabled). Current implementation checks the length of projected diagonal of bounding box in pixels for discarding. Note that this option has effect only when frustum culling is enabled.

        """
        return _Graphic3d.Graphic3d_ZLayerSettings_CullingSize(self, *args)

    def DumpJson(self, depth=-1):
        r"""

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        """
        return _Graphic3d.Graphic3d_ZLayerSettings_DumpJson(self, depth)

    def HasCullingDistance(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return True, if culling of distant objects (distance culling) should be performed; False by default. 
        See also: CullingDistance().

        """
        return _Graphic3d.Graphic3d_ZLayerSettings_HasCullingDistance(self, *args)

    def HasCullingSize(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return True, if culling of small objects (size culling) should be performed; False by default. 
        See also: CullingSize().

        """
        return _Graphic3d.Graphic3d_ZLayerSettings_HasCullingSize(self, *args)

    def IsImmediate(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return true if this layer should be drawn after all normal (non-immediate) layers.

        """
        return _Graphic3d.Graphic3d_ZLayerSettings_IsImmediate(self, *args)

    def IsRaytracable(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns True if layer should be processed by ray-tracing renderer; True by default. Note that this flag is IGNORED for layers with IsImmediate() flag.

        """
        return _Graphic3d.Graphic3d_ZLayerSettings_IsRaytracable(self, *args)

    def Lights(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_LightSet>

        Description
        -----------
        Return lights list to be used for rendering presentations within this Z-Layer; NULL by default. NULL list (but not empty list!) means that default lights assigned to the View should be used instead of per-layer lights.

        """
        return _Graphic3d.Graphic3d_ZLayerSettings_Lights(self, *args)

    def Name(self, *args):
        r"""
        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        Return user-provided name.

        """
        return _Graphic3d.Graphic3d_ZLayerSettings_Name(self, *args)

    def Origin(self, *args):
        r"""
        Return
        -------
        gp_XYZ

        Description
        -----------
        Return the origin of all objects within the layer.

        """
        return _Graphic3d.Graphic3d_ZLayerSettings_Origin(self, *args)

    def OriginTransformation(self, *args):
        r"""
        Return
        -------
        opencascade::handle<TopLoc_Datum3D>

        Description
        -----------
        Return the transformation to the origin.

        """
        return _Graphic3d.Graphic3d_ZLayerSettings_OriginTransformation(self, *args)

    def PolygonOffset(self, *args):
        r"""
        Return
        -------
        Graphic3d_PolygonOffset

        Description
        -----------
        Return glPolygonOffset() arguments.

        """
        return _Graphic3d.Graphic3d_ZLayerSettings_PolygonOffset(self, *args)

    def SetClearDepth(self, *args):
        r"""

        Parameters
        ----------
        theValue: bool

        Return
        -------
        None

        Description
        -----------
        Set if depth values should be cleared before drawing the layer.

        """
        return _Graphic3d.Graphic3d_ZLayerSettings_SetClearDepth(self, *args)

    def SetCullingDistance(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Set the distance to discard drawing objects.

        """
        return _Graphic3d.Graphic3d_ZLayerSettings_SetCullingDistance(self, *args)

    def SetCullingSize(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Set the distance to discard drawing objects.

        """
        return _Graphic3d.Graphic3d_ZLayerSettings_SetCullingSize(self, *args)

    def SetDepthOffsetNegative(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Sets minimal possible negative depth offset.

        """
        return _Graphic3d.Graphic3d_ZLayerSettings_SetDepthOffsetNegative(self, *args)

    def SetDepthOffsetPositive(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Sets minimal possible positive depth offset.

        """
        return _Graphic3d.Graphic3d_ZLayerSettings_SetDepthOffsetPositive(self, *args)

    def SetEnableDepthTest(self, *args):
        r"""

        Parameters
        ----------
        theValue: bool

        Return
        -------
        None

        Description
        -----------
        Set if depth test should be enabled.

        """
        return _Graphic3d.Graphic3d_ZLayerSettings_SetEnableDepthTest(self, *args)

    def SetEnableDepthWrite(self, *args):
        r"""

        Parameters
        ----------
        theValue: bool

        Return
        -------
        None

        Description
        -----------
        Set if depth values should be written during rendering.

        """
        return _Graphic3d.Graphic3d_ZLayerSettings_SetEnableDepthWrite(self, *args)

    def SetEnvironmentTexture(self, *args):
        r"""

        Parameters
        ----------
        theValue: bool

        Return
        -------
        None

        Description
        -----------
        Set the flag to allow/prevent environment texture mapping usage for specific layer.

        """
        return _Graphic3d.Graphic3d_ZLayerSettings_SetEnvironmentTexture(self, *args)

    def SetImmediate(self, *args):
        r"""

        Parameters
        ----------
        theValue: bool

        Return
        -------
        None

        Description
        -----------
        Set the flag indicating the immediate layer, which should be drawn after all normal (non-immediate) layers.

        """
        return _Graphic3d.Graphic3d_ZLayerSettings_SetImmediate(self, *args)

    def SetLights(self, *args):
        r"""

        Parameters
        ----------
        theLights: Graphic3d_LightSet

        Return
        -------
        None

        Description
        -----------
        Assign lights list to be used.

        """
        return _Graphic3d.Graphic3d_ZLayerSettings_SetLights(self, *args)

    def SetName(self, *args):
        r"""

        Parameters
        ----------
        theName: str

        Return
        -------
        None

        Description
        -----------
        Set custom name.

        """
        return _Graphic3d.Graphic3d_ZLayerSettings_SetName(self, *args)

    def SetOrigin(self, *args):
        r"""

        Parameters
        ----------
        theOrigin: gp_XYZ

        Return
        -------
        None

        Description
        -----------
        Set the origin of all objects within the layer.

        """
        return _Graphic3d.Graphic3d_ZLayerSettings_SetOrigin(self, *args)

    def SetPolygonOffset(self, *args):
        r"""

        Parameters
        ----------
        theParams: Graphic3d_PolygonOffset

        Return
        -------
        None

        Description
        -----------
        Setup glPolygonOffset() arguments.

        """
        return _Graphic3d.Graphic3d_ZLayerSettings_SetPolygonOffset(self, *args)

    def SetRaytracable(self, *args):
        r"""

        Parameters
        ----------
        theToRaytrace: bool

        Return
        -------
        None

        Description
        -----------
        Sets if layer should be processed by ray-tracing renderer.

        """
        return _Graphic3d.Graphic3d_ZLayerSettings_SetRaytracable(self, *args)

    def SetRenderInDepthPrepass(self, *args):
        r"""

        Parameters
        ----------
        theToRender: bool

        Return
        -------
        None

        Description
        -----------
        Set if layer should be rendered within depth pre-pass.

        """
        return _Graphic3d.Graphic3d_ZLayerSettings_SetRenderInDepthPrepass(self, *args)

    def ToClearDepth(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return true if depth values should be cleared before drawing the layer.

        """
        return _Graphic3d.Graphic3d_ZLayerSettings_ToClearDepth(self, *args)

    def ToEnableDepthTest(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return true if depth test should be enabled.

        """
        return _Graphic3d.Graphic3d_ZLayerSettings_ToEnableDepthTest(self, *args)

    def ToEnableDepthWrite(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return true depth values should be written during rendering.

        """
        return _Graphic3d.Graphic3d_ZLayerSettings_ToEnableDepthWrite(self, *args)

    def ToRenderInDepthPrepass(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return True if layer should be rendered within depth pre-pass; True by default.

        """
        return _Graphic3d.Graphic3d_ZLayerSettings_ToRenderInDepthPrepass(self, *args)

    def UseEnvironmentTexture(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return flag to allow/prevent environment texture mapping usage for specific layer.

        """
        return _Graphic3d.Graphic3d_ZLayerSettings_UseEnvironmentTexture(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_ZLayerSettings

# Register Graphic3d_ZLayerSettings in _Graphic3d:
_Graphic3d.Graphic3d_ZLayerSettings_swigregister(Graphic3d_ZLayerSettings)
class Graphic3d_ArrayOfPoints(Graphic3d_ArrayOfPrimitives):
    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"""

        Parameters
        ----------
        theMaxVertexs: int
        theArrayFlags: int

        Return
        -------
        None

        Description
        -----------
        Creates an array of points (Graphic3d_TOPA_POINTS). The array must be filled using the AddVertex(Point) method. 
        Parameter theMaxVertexs maximum number of points 
        Parameter theArrayFlags array flags.

        Parameters
        ----------
        theMaxVertexs: int
        theHasVColors: bool (optional, default to Standard_False)
        theHasVNormals: bool (optional, default to Standard_False)

        Return
        -------
        None

        Description
        -----------
        Creates an array of points (Graphic3d_TOPA_POINTS). The array must be filled using the AddVertex(Point) method. 
        Parameter theMaxVertexs maximum number of points 
        Parameter theHasVColors when True, AddVertex(Point,Color) should be used for specifying vertex color 
        Parameter theHasVNormals when True, AddVertex(Point,Normal) should be used for specifying vertex normal.

        """
        _Graphic3d.Graphic3d_ArrayOfPoints_swiginit(self, _Graphic3d.new_Graphic3d_ArrayOfPoints(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_ArrayOfPoints

# Register Graphic3d_ArrayOfPoints in _Graphic3d:
_Graphic3d.Graphic3d_ArrayOfPoints_swigregister(Graphic3d_ArrayOfPoints)
class Graphic3d_ArrayOfPolygons(Graphic3d_ArrayOfPrimitives):
    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"""

        Parameters
        ----------
        theMaxVertexs: int
        theMaxBounds: int
        theMaxEdges: int
        theArrayFlags: int

        Return
        -------
        None

        Description
        -----------
        Creates an array of polygons (Graphic3d_TOPA_POLYGONS), a polygon can be filled as: 1) Creating a single polygon defined with his vertexes, i.e: @code myArray = Graphic3d_ArrayOfPolygons (7); myArray->AddVertex (x1, y1, z1); .... myArray->AddVertex (x7, y7, z7); @endcode 2) Creating separate polygons defined with a predefined number of bounds and the number of vertex per bound, i.e: @code myArray = Graphic3d_ArrayOfPolygons (7, 2); myArray->AddBound (4); myArray->AddVertex (x1, y1, z1); .... myArray->AddVertex (x4, y4, z4); myArray->AddBound (3); myArray->AddVertex (x5, y5, z5); .... myArray->AddVertex (x7, y7, z7); @endcode 3) Creating a single indexed polygon defined with his vertex ans edges, i.e: @code myArray = Graphic3d_ArrayOfPolygons (4, 0, 6); myArray->AddVertex (x1, y1, z1); .... myArray->AddVertex (x4, y4, z4); myArray->AddEdge (1); myArray->AddEdge (2); myArray->AddEdge (3); myArray->AddEdge (1); myArray->AddEdge (2); myArray->AddEdge (4); @endcode 4) Creating separate polygons defined with a predefined number of bounds and the number of edges per bound, i.e: @code myArray = Graphic3d_ArrayOfPolygons (6, 4, 14); myArray->AddBound (3); myArray->AddVertex (x1, y1, z1); myArray->AddVertex (x2, y2, z2); myArray->AddVertex (x3, y3, z3); myArray->AddEdge (1); myArray->AddEdge (2); myArray->AddEdge (3); myArray->AddBound (3); myArray->AddVertex (x4, y4, z4); myArray->AddVertex (x5, y5, z5); myArray->AddVertex (x6, y6, z6); myArray->AddEdge (4); myArray->AddEdge (5); myArray->AddEdge (6); myArray->AddBound (4); myArray->AddEdge (2); myArray->AddEdge (3); myArray->AddEdge (5); myArray->AddEdge (6); myArray->AddBound (4); myArray->AddEdge (1); myArray->AddEdge (3); myArray->AddEdge (5); myArray->AddEdge (4); @endcode 
        Parameter theMaxVertexs defines the maximum allowed vertex number in the array 
        Parameter theMaxBounds defines the maximum allowed bound number in the array 
        Parameter theMaxEdges defines the maximum allowed edge number in the array 
        Parameter theArrayFlags array flags.

        Parameters
        ----------
        theMaxVertexs: int
        theMaxBounds: int (optional, default to 0)
        theMaxEdges: int (optional, default to 0)
        theHasVNormals: bool (optional, default to Standard_False)
        theHasVColors: bool (optional, default to Standard_False)
        theHasBColors: bool (optional, default to Standard_False)
        theHasVTexels: bool (optional, default to Standard_False)

        Return
        -------
        None

        Description
        -----------
        Creates an array of polygons (Graphic3d_TOPA_POLYGONS): 
        Parameter theMaxVertexs defines the maximum allowed vertex number in the array 
        Parameter theMaxBounds defines the maximum allowed bound number in the array 
        Parameter theMaxEdges defines the maximum allowed edge number in the array.

        """
        _Graphic3d.Graphic3d_ArrayOfPolygons_swiginit(self, _Graphic3d.new_Graphic3d_ArrayOfPolygons(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_ArrayOfPolygons

# Register Graphic3d_ArrayOfPolygons in _Graphic3d:
_Graphic3d.Graphic3d_ArrayOfPolygons_swigregister(Graphic3d_ArrayOfPolygons)
class Graphic3d_ArrayOfPolylines(Graphic3d_ArrayOfPrimitives):
    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"""

        Parameters
        ----------
        theMaxVertexs: int
        theMaxBounds: int
        theMaxEdges: int
        theArrayFlags: int

        Return
        -------
        None

        Description
        -----------
        Creates an array of polylines (Graphic3d_TOPA_POLYLINES), a polyline can be filled as: 1) Creating a single polyline defined with his vertexes, i.e: @code myArray = Graphic3d_ArrayOfPolylines (7); myArray->AddVertex (x1, y1, z1); .... myArray->AddVertex (x7, y7, z7); @endcode 2) Creating separate polylines defined with a predefined number of bounds and the number of vertex per bound, i.e: @code myArray = Graphic3d_ArrayOfPolylines (7, 2); myArray->AddBound (4); myArray->AddVertex (x1, y1, z1); .... myArray->AddVertex (x4, y4, z4); myArray->AddBound (3); myArray->AddVertex (x5, y5, z5); .... myArray->AddVertex (x7, y7, z7); @endcode 3) Creating a single indexed polyline defined with his vertex and edges, i.e: @code myArray = Graphic3d_ArrayOfPolylines (4, 0, 6); myArray->AddVertex (x1, y1, z1); .... myArray->AddVertex (x4, y4, z4); myArray->AddEdge (1); myArray->AddEdge (2); myArray->AddEdge (3); myArray->AddEdge (1); myArray->AddEdge (2); myArray->AddEdge (4); @endcode 4) creating separate polylines defined with a predefined number of bounds and the number of edges per bound, i.e: @code myArray = Graphic3d_ArrayOfPolylines (6, 4, 14); myArray->AddBound (3); myArray->AddVertex (x1, y1, z1); myArray->AddVertex (x2, y2, z2); myArray->AddVertex (x3, y3, z3); myArray->AddEdge (1); myArray->AddEdge (2); myArray->AddEdge (3); myArray->AddBound (3); myArray->AddVertex (x4, y4, z4); myArray->AddVertex (x5, y5, z5); myArray->AddVertex (x6, y6, z6); myArray->AddEdge (4); myArray->AddEdge (5); myArray->AddEdge (6); myArray->AddBound (4); myArray->AddEdge (2); myArray->AddEdge (3); myArray->AddEdge (5); myArray->AddEdge (6); myArray->AddBound (4); myArray->AddEdge (1); myArray->AddEdge (3); myArray->AddEdge (5); myArray->AddEdge (4); @endcode 
        Parameter theMaxVertexs defines the maximum allowed vertex number in the array 
        Parameter theMaxBounds defines the maximum allowed bound number in the array 
        Parameter theMaxEdges defines the maximum allowed edge number in the array 
        Parameter theArrayFlags array flags.

        Parameters
        ----------
        theMaxVertexs: int
        theMaxBounds: int (optional, default to 0)
        theMaxEdges: int (optional, default to 0)
        theHasVColors: bool (optional, default to Standard_False)
        theHasBColors: bool (optional, default to Standard_False)

        Return
        -------
        None

        Description
        -----------
        Creates an array of polylines (Graphic3d_TOPA_POLYLINES). 
        Parameter theMaxVertexs defines the maximum allowed vertex number in the array 
        Parameter theMaxBounds defines the maximum allowed bound number in the array 
        Parameter theMaxEdges defines the maximum allowed edge number in the array 
        Parameter theHasVColors when True AddVertex(Point,Color) or AddVertex(Point,Normal,Color) should be used to specify per-vertex color values 
        Parameter theHasBColors when True AddBound(number,Color) should be used to specify sub-group color.

        """
        _Graphic3d.Graphic3d_ArrayOfPolylines_swiginit(self, _Graphic3d.new_Graphic3d_ArrayOfPolylines(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_ArrayOfPolylines

# Register Graphic3d_ArrayOfPolylines in _Graphic3d:
_Graphic3d.Graphic3d_ArrayOfPolylines_swigregister(Graphic3d_ArrayOfPolylines)
class Graphic3d_ArrayOfQuadrangleStrips(Graphic3d_ArrayOfPrimitives):
    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"""

        Parameters
        ----------
        theMaxVertexs: int
        theMaxStrips: int
        theArrayFlags: int

        Return
        -------
        None

        Description
        -----------
        Creates an array of quadrangle strips (Graphic3d_TOPA_QUADRANGLESTRIPS), a polygon can be filled as: 1) Creating a single strip defined with his vertexes, i.e: @code myArray = Graphic3d_ArrayOfQuadrangleStrips (7); myArray->AddVertex (x1, y1, z1); .... myArray->AddVertex (x7, y7, z7); @endcode 2) Creating separate strips defined with a predefined number of strips and the number of vertex per strip, i.e: @code myArray = Graphic3d_ArrayOfQuadrangleStrips (8, 2); myArray->AddBound (4); myArray->AddVertex (x1, y1, z1); .... myArray->AddVertex (x4, y4, z4); myArray->AddBound (4); myArray->AddVertex (x5, y5, z5); .... myArray->AddVertex (x8, y8, z8); @endcode The number of quadrangle really drawn is: VertexNumber()/2 - Min(1, BoundNumber()). 
        Parameter theMaxVertexs defines the maximum allowed vertex number in the array 
        Parameter theMaxStrips defines the maximum allowed strip number in the array 
        Parameter theArrayFlags array flags.

        Parameters
        ----------
        theMaxVertexs: int
        theMaxStrips: int (optional, default to 0)
        theHasVNormals: bool (optional, default to Standard_False)
        theHasVColors: bool (optional, default to Standard_False)
        theHasSColors: bool (optional, default to Standard_False)
        theHasVTexels: bool (optional, default to Standard_False)

        Return
        -------
        None

        Description
        -----------
        Creates an array of quadrangle strips (Graphic3d_TOPA_QUADRANGLESTRIPS). 
        Parameter theMaxVertexs defines the maximum allowed vertex number in the array 
        Parameter theMaxStrips defines the maximum allowed strip number in the array.

        """
        _Graphic3d.Graphic3d_ArrayOfQuadrangleStrips_swiginit(self, _Graphic3d.new_Graphic3d_ArrayOfQuadrangleStrips(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_ArrayOfQuadrangleStrips

# Register Graphic3d_ArrayOfQuadrangleStrips in _Graphic3d:
_Graphic3d.Graphic3d_ArrayOfQuadrangleStrips_swigregister(Graphic3d_ArrayOfQuadrangleStrips)
class Graphic3d_ArrayOfQuadrangles(Graphic3d_ArrayOfPrimitives):
    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"""

        Parameters
        ----------
        theMaxVertexs: int
        theMaxEdges: int
        theArrayFlags: int

        Return
        -------
        None

        Description
        -----------
        Creates an array of quadrangles (Graphic3d_TOPA_QUADRANGLES), a quadrangle can be filled as: 1) Creating a set of quadrangles defined with his vertexes, i.e: @code myArray = Graphic3d_ArrayOfQuadrangles (8); myArray->AddVertex (x1, y1, z1); .... myArray->AddVertex (x8, y8, z8); @endcode 2) Creating a set of indexed quadrangles defined with his vertex ans edges, i.e: @code myArray = Graphic3d_ArrayOfQuadrangles (6, 8); myArray->AddVertex (x1, y1, z1); .... myArray->AddVertex (x6, y6, z6); myArray->AddEdges (1, 2, 3, 4); myArray->AddEdges (3, 4, 5, 6); @endcode 
        Parameter theMaxVertexs defines the maximum allowed vertex number in the array 
        Parameter theMaxEdges defines the maximum allowed edge number in the array (for indexed array) 
        Parameter theArrayFlags array flags.

        Parameters
        ----------
        theMaxVertexs: int
        theMaxEdges: int (optional, default to 0)
        theHasVNormals: bool (optional, default to Standard_False)
        theHasVColors: bool (optional, default to Standard_False)
        theHasVTexels: bool (optional, default to Standard_False)

        Return
        -------
        None

        Description
        -----------
        Creates an array of quadrangles (Graphic3d_TOPA_QUADRANGLES). 
        Parameter theMaxVertexs defines the maximum allowed vertex number in the array 
        Parameter theMaxEdges defines the maximum allowed edge number in the array (for indexed array).

        """
        _Graphic3d.Graphic3d_ArrayOfQuadrangles_swiginit(self, _Graphic3d.new_Graphic3d_ArrayOfQuadrangles(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_ArrayOfQuadrangles

# Register Graphic3d_ArrayOfQuadrangles in _Graphic3d:
_Graphic3d.Graphic3d_ArrayOfQuadrangles_swigregister(Graphic3d_ArrayOfQuadrangles)
class Graphic3d_ArrayOfSegments(Graphic3d_ArrayOfPrimitives):
    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"""

        Parameters
        ----------
        theMaxVertexs: int
        theMaxEdges: int
        theArrayFlags: int

        Return
        -------
        None

        Description
        -----------
        Creates an array of segments (Graphic3d_TOPA_SEGMENTS), a segment can be filled as: 1) Creating a set of segments defined with his vertexes, i.e: @code myArray = Graphic3d_ArrayOfSegments (4); myArray->AddVertex (x1, y1, z1); .... myArray->AddVertex (x4, y4, z4); @endcode 2) Creating a set of indexed segments defined with his vertex and edges, i.e: @code myArray = Graphic3d_ArrayOfSegments (4, 8); myArray->AddVertex (x1, y1, z1); .... myArray->AddVertex (x4, y4, z4); myArray->AddEdges (1, 2); myArray->AddEdges (3, 4); myArray->AddEdges (2, 4); myArray->AddEdges (1, 3); @endcode 
        Parameter theMaxVertexs defines the maximum allowed vertex number in the array 
        Parameter theMaxEdges defines the maximum allowed edge number in the array 
        Parameter theArrayFlags array flags.

        Parameters
        ----------
        theMaxVertexs: int
        theMaxEdges: int (optional, default to 0)
        theHasVColors: bool (optional, default to Standard_False)

        Return
        -------
        None

        Description
        -----------
        Creates an array of segments (Graphic3d_TOPA_SEGMENTS). 
        Parameter theMaxVertexs defines the maximum allowed vertex number in the array 
        Parameter theMaxEdges defines the maximum allowed edge number in the array 
        Parameter theHasVColors when True, AddVertex(Point,Color) should be used for specifying vertex color.

        """
        _Graphic3d.Graphic3d_ArrayOfSegments_swiginit(self, _Graphic3d.new_Graphic3d_ArrayOfSegments(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_ArrayOfSegments

# Register Graphic3d_ArrayOfSegments in _Graphic3d:
_Graphic3d.Graphic3d_ArrayOfSegments_swigregister(Graphic3d_ArrayOfSegments)
class Graphic3d_ArrayOfTriangleFans(Graphic3d_ArrayOfPrimitives):
    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"""

        Parameters
        ----------
        theMaxVertexs: int
        theMaxFans: int
        theArrayFlags: int

        Return
        -------
        None

        Description
        -----------
        Creates an array of triangle fans (Graphic3d_TOPA_TRIANGLEFANS), a polygon can be filled as: 1) Creating a single fan defined with his vertexes, i.e: @code myArray = Graphic3d_ArrayOfTriangleFans (7); myArray->AddVertex (x1, y1, z1); .... myArray->AddVertex (x7, y7, z7); @endcode 2) creating separate fans defined with a predefined number of fans and the number of vertex per fan, i.e: @code myArray = Graphic3d_ArrayOfTriangleFans (8, 2); myArray->AddBound (4); myArray->AddVertex (x1, y1, z1); .... myArray->AddVertex (x4, y4, z4); myArray->AddBound (4); myArray->AddVertex (x5, y5, z5); .... myArray->AddVertex (x8, y8, z8); @endcode The number of triangle really drawn is: VertexNumber() - 2 * Min(1, BoundNumber()) 
        Parameter theMaxVertexs defines the maximum allowed vertex number in the array 
        Parameter theMaxFans defines the maximum allowed fan number in the array 
        Parameter theArrayFlags array flags.

        Parameters
        ----------
        theMaxVertexs: int
        theMaxFans: int (optional, default to 0)
        theHasVNormals: bool (optional, default to Standard_False)
        theHasVColors: bool (optional, default to Standard_False)
        theHasBColors: bool (optional, default to Standard_False)
        theHasVTexels: bool (optional, default to Standard_False)

        Return
        -------
        None

        Description
        -----------
        Creates an array of triangle fans (Graphic3d_TOPA_TRIANGLEFANS). 
        Parameter theMaxVertexs defines the maximum allowed vertex number in the array 
        Parameter theMaxFans defines the maximum allowed fan number in the array.

        """
        _Graphic3d.Graphic3d_ArrayOfTriangleFans_swiginit(self, _Graphic3d.new_Graphic3d_ArrayOfTriangleFans(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_ArrayOfTriangleFans

# Register Graphic3d_ArrayOfTriangleFans in _Graphic3d:
_Graphic3d.Graphic3d_ArrayOfTriangleFans_swigregister(Graphic3d_ArrayOfTriangleFans)
class Graphic3d_ArrayOfTriangleStrips(Graphic3d_ArrayOfPrimitives):
    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"""

        Parameters
        ----------
        theMaxVertexs: int
        theMaxStrips: int
        theArrayFlags: int

        Return
        -------
        None

        Description
        -----------
        Creates an array of triangle strips (Graphic3d_TOPA_TRIANGLESTRIPS), a polygon can be filled as: 1) Creating a single strip defined with his vertexes, i.e: @code myArray = Graphic3d_ArrayOfTriangleStrips (7); myArray->AddVertex (x1, y1, z1); .... myArray->AddVertex (x7, y7, z7); @endcode 2) Creating separate strips defined with a predefined number of strips and the number of vertex per strip, i.e: @code myArray = Graphic3d_ArrayOfTriangleStrips (8, 2); myArray->AddBound (4); myArray->AddVertex (x1, y1, z1); .... myArray->AddVertex (x4, y4, z4); myArray->AddBound (4); myArray->AddVertex (x5, y5, z5); .... myArray->AddVertex (x8, y8, z8); @endcode 
        Parameter theMaxVertexs defines the maximum allowed vertex number in the array 
        Parameter theMaxStrips defines the maximum allowed strip number in the array;  the number of triangle really drawn is: VertexNumber() - 2 * Min(1,  BoundNumber()) 
        Parameter theArrayFlags array flags.

        Parameters
        ----------
        theMaxVertexs: int
        theMaxStrips: int (optional, default to 0)
        theHasVNormals: bool (optional, default to Standard_False)
        theHasVColors: bool (optional, default to Standard_False)
        theHasBColors: bool (optional, default to Standard_False)
        theHasVTexels: bool (optional, default to Standard_False)

        Return
        -------
        None

        Description
        -----------
        Creates an array of triangle strips (Graphic3d_TOPA_TRIANGLESTRIPS). 
        Parameter theMaxVertexs defines the maximum allowed vertex number in the array 
        Parameter theMaxStrips defines the maximum allowed strip number in the array;  the number of triangle really drawn is: VertexNumber() - 2 * Min(1,  BoundNumber()) 
        Parameter theHasVNormals when True, AddVertex(Point,Normal), AddVertex(Point,Normal,Color) or AddVertex(Point,Normal,Texel) should be used to specify vertex normal;  vertex normals should be specified coherent to triangle orientation  (defined by order of vertexes within triangle) for proper rendering 
        Parameter theHasVColors when True, AddVertex(Point,Color) or AddVertex(Point,Normal,Color) should be used to specify vertex color 
        Parameter theHasBColors when True, AddBound(number,Color) should be used to specify sub-group color 
        Parameter theHasVTexels when True, AddVertex(Point,Texel) or AddVertex(Point,Normal,Texel) should be used to specify vertex UV coordinates.

        """
        _Graphic3d.Graphic3d_ArrayOfTriangleStrips_swiginit(self, _Graphic3d.new_Graphic3d_ArrayOfTriangleStrips(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_ArrayOfTriangleStrips

# Register Graphic3d_ArrayOfTriangleStrips in _Graphic3d:
_Graphic3d.Graphic3d_ArrayOfTriangleStrips_swigregister(Graphic3d_ArrayOfTriangleStrips)
class Graphic3d_ArrayOfTriangles(Graphic3d_ArrayOfPrimitives):
    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"""

        Parameters
        ----------
        theMaxVertexs: int
        theMaxEdges: int
        theArrayFlags: int

        Return
        -------
        None

        Description
        -----------
        Creates an array of triangles (Graphic3d_TOPA_TRIANGLES), a triangle can be filled as: 1) Creating a set of triangles defined with his vertexes, i.e: @code myArray = Graphic3d_ArrayOfTriangles (6); myArray->AddVertex (x1, y1, z1); .... myArray->AddVertex (x6, y6, z6); @endcode 3) Creating a set of indexed triangles defined with his vertex and edges, i.e: @code myArray = Graphic3d_ArrayOfTriangles (4, 6); myArray->AddVertex (x1, y1, z1); .... myArray->AddVertex (x4, y4, z4); myArray->AddEdges (1, 2, 3); myArray->AddEdges (2, 3, 4); @endcode 
        Parameter theMaxVertexs defines the maximum allowed vertex number in the array 
        Parameter theMaxEdges defines the maximum allowed edge number in the array 
        Parameter theArrayFlags array flags.

        Parameters
        ----------
        theMaxVertexs: int
        theMaxEdges: int (optional, default to 0)
        theHasVNormals: bool (optional, default to Standard_False)
        theHasVColors: bool (optional, default to Standard_False)
        theHasVTexels: bool (optional, default to Standard_False)

        Return
        -------
        None

        Description
        -----------
        Creates an array of triangles (Graphic3d_TOPA_TRIANGLES). 
        Parameter theMaxVertexs defines the maximum allowed vertex number in the array 
        Parameter theMaxEdges defines the maximum allowed edge number in the array 
        Parameter theHasVNormals when True, AddVertex(Point,Normal), AddVertex(Point,Normal,Color) or AddVertex(Point,Normal,Texel) should be used to specify vertex normal;  vertex normals should be specified coherent to triangle orientation  (defined by order of vertexes within triangle) for proper rendering 
        Parameter theHasVColors when True, AddVertex(Point,Color) or AddVertex(Point,Normal,Color) should be used to specify vertex color 
        Parameter theHasVTexels when True, AddVertex(Point,Texel) or AddVertex(Point,Normal,Texel) should be used to specify vertex UV coordinates.

        """
        _Graphic3d.Graphic3d_ArrayOfTriangles_swiginit(self, _Graphic3d.new_Graphic3d_ArrayOfTriangles(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_ArrayOfTriangles

# Register Graphic3d_ArrayOfTriangles in _Graphic3d:
_Graphic3d.Graphic3d_ArrayOfTriangles_swigregister(Graphic3d_ArrayOfTriangles)
class Graphic3d_AspectFillArea3d(Graphic3d_Aspects):
    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"""
        Return
        -------
        None

        Description
        -----------
        Creates a context table for fill area primitives defined with the following default values: //! InteriorStyle: Aspect_IS_EMPTY InteriorColor: Quantity_NOC_CYAN1 EdgeColor: Quantity_NOC_WHITE EdgeLineType: Aspect_TOL_SOLID EdgeWidth: 1.0 FrontMaterial: NOM_BRASS BackMaterial: NOM_BRASS HatchStyle: Aspect_HS_SOLID //! Display of back-facing filled polygons. No distinction between external and internal faces of FillAreas. The edges are not drawn. Polygon offset parameters: mode = Aspect_POM_None, factor = 1., units = 0.

        Parameters
        ----------
        theInterior: Aspect_InteriorStyle
        theInteriorColor: Quantity_Color
        theEdgeColor: Quantity_Color
        theEdgeLineType: Aspect_TypeOfLine
        theEdgeWidth: float
        theFrontMaterial: Graphic3d_MaterialAspect
        theBackMaterial: Graphic3d_MaterialAspect

        Return
        -------
        None

        Description
        -----------
        Creates a context table for fill area primitives defined with the specified values. Display of back-facing filled polygons. No distinction between external and internal faces of FillAreas. The edges are not drawn. Polygon offset parameters: mode = Aspect_POM_None, factor = 1., units = 0.

        """
        _Graphic3d.Graphic3d_AspectFillArea3d_swiginit(self, _Graphic3d.new_Graphic3d_AspectFillArea3d(*args))

    def Edge(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_AspectFillArea3d_Edge(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_AspectFillArea3d

# Register Graphic3d_AspectFillArea3d in _Graphic3d:
_Graphic3d.Graphic3d_AspectFillArea3d_swigregister(Graphic3d_AspectFillArea3d)
class Graphic3d_AspectLine3d(Graphic3d_Aspects):
    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"""
        Return
        -------
        None

        Description
        -----------
        Creates a context table for line primitives defined with the following default values: //! Color = Quantity_NOC_YELLOW; Type = Aspect_TOL_SOLID; Width = 1.0;.

        Parameters
        ----------
        theColor: Quantity_Color
        theType: Aspect_TypeOfLine
        theWidth: float

        Return
        -------
        None

        Description
        -----------
        Creates a context table for line primitives defined with the specified values. Warning: theWidth is the 'line width scale factor'. The nominal line width is 1 pixel. The width of the line is determined by applying the line width scale factor to this nominal line width. The supported line widths vary by 1-pixel units.

        """
        _Graphic3d.Graphic3d_AspectLine3d_swiginit(self, _Graphic3d.new_Graphic3d_AspectLine3d(*args))

    def SetType(self, *args):
        r"""

        Parameters
        ----------
        theType: Aspect_TypeOfLine

        Return
        -------
        None

        Description
        -----------
        Modifies the type of line.

        """
        return _Graphic3d.Graphic3d_AspectLine3d_SetType(self, *args)

    def SetWidth(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Modifies the line thickness. Warning: Raises Standard_OutOfRange if the width is a negative value.

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

        Return
        -------
        None

        Description
        -----------
        Modifies the line thickness. Warning: Raises Standard_OutOfRange if the width is a negative value.

        """
        return _Graphic3d.Graphic3d_AspectLine3d_SetWidth(self, *args)

    def Type(self, *args):
        r"""
        Return
        -------
        Aspect_TypeOfLine

        Description
        -----------
        Return line type.

        """
        return _Graphic3d.Graphic3d_AspectLine3d_Type(self, *args)

    def Width(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Return line width.

        """
        return _Graphic3d.Graphic3d_AspectLine3d_Width(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_AspectLine3d

# Register Graphic3d_AspectLine3d in _Graphic3d:
_Graphic3d.Graphic3d_AspectLine3d_swigregister(Graphic3d_AspectLine3d)
class Graphic3d_AspectMarker3d(Graphic3d_Aspects):
    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"""
        Return
        -------
        None

        Description
        -----------
        Creates a context table for marker primitives defined with the following default values: //! Marker type: TOM_X Color: YELLOW Scale factor: 1.0.

        Parameters
        ----------
        theType: Aspect_TypeOfMarker
        theColor: Quantity_Color
        theScale: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        Parameters
        ----------
        theColor: Quantity_Color
        theWidth: int
        theHeight: int
        theTextureBitmap: TColStd_HArray1OfByte

        Return
        -------
        None

        Description
        -----------
        Creates a context table for marker primitives defined with the specified values.

        Parameters
        ----------
        theTextureImage: Image_PixMap

        Return
        -------
        None

        Description
        -----------
        Creates a context table for marker primitives defined with the specified values.

        """
        _Graphic3d.Graphic3d_AspectMarker3d_swiginit(self, _Graphic3d.new_Graphic3d_AspectMarker3d(*args))

    def GetMarkerImage(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_MarkerImage>

        Description
        -----------
        Returns marker's image texture. Could be null handle if marker aspect has been initialized as default type of marker.

        """
        return _Graphic3d.Graphic3d_AspectMarker3d_GetMarkerImage(self, *args)

    def GetTextureSize(self, *args):
        r"""

        Parameters
        ----------

        Return
        -------
        theWidth: int
        theHeight: int

        Description
        -----------
        Returns marker's texture size.

        """
        return _Graphic3d.Graphic3d_AspectMarker3d_GetTextureSize(self, *args)

    def Scale(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Return scale factor.

        """
        return _Graphic3d.Graphic3d_AspectMarker3d_Scale(self, *args)

    def SetBitMap(self, *args):
        r"""

        Parameters
        ----------
        theWidth: int
        theHeight: int
        theTexture: TColStd_HArray1OfByte

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _Graphic3d.Graphic3d_AspectMarker3d_SetBitMap(self, *args)

    def SetScale(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Modifies the scale factor. Marker type Aspect_TOM_POINT is not affected by the marker size scale factor. It is always the smallest displayable dot. Warning: Raises Standard_OutOfRange if the scale is a negative value.

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

        Return
        -------
        None

        Description
        -----------
        Assign scale factor.

        """
        return _Graphic3d.Graphic3d_AspectMarker3d_SetScale(self, *args)

    def SetType(self, *args):
        r"""

        Parameters
        ----------
        theType: Aspect_TypeOfMarker

        Return
        -------
        None

        Description
        -----------
        Modifies the type of marker.

        """
        return _Graphic3d.Graphic3d_AspectMarker3d_SetType(self, *args)

    def Type(self, *args):
        r"""
        Return
        -------
        Aspect_TypeOfMarker

        Description
        -----------
        Return marker type.

        """
        return _Graphic3d.Graphic3d_AspectMarker3d_Type(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_AspectMarker3d

# Register Graphic3d_AspectMarker3d in _Graphic3d:
_Graphic3d.Graphic3d_AspectMarker3d_swigregister(Graphic3d_AspectMarker3d)
class Graphic3d_AspectText3d(Graphic3d_Aspects):
    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"""
        Return
        -------
        None

        Description
        -----------
        Creates a context table for text primitives defined with the following default values: Color: Quantity_NOC_YELLOW Font: Font_NOF_ASCII_MONO The style: Aspect_TOST_NORMAL The display type: Aspect_TODT_NORMAL.

        Parameters
        ----------
        theColor: Quantity_Color
        theFont: str
        theExpansionFactor: float
        theSpace: float
        theStyle: Aspect_TypeOfStyleText (optional, default to Aspect_TOST_NORMAL)
        theDisplayType: Aspect_TypeOfDisplayText (optional, default to Aspect_TODT_NORMAL)

        Return
        -------
        None

        Description
        -----------
        Creates a context table for text primitives defined with the specified values. 
        Input parameter: theColor text color 
        Input parameter: theFont font family name or alias like Font_NOF_ASCII_MONO 
        Input parameter: theExpansionFactor deprecated parameter, has no effect 
        Input parameter: theSpace deprecated parameter, has no effect 
        Input parameter: theStyle font style 
        Input parameter: theDisplayType display mode.

        """
        _Graphic3d.Graphic3d_AspectText3d_swiginit(self, _Graphic3d.new_Graphic3d_AspectText3d(*args))

    def Color(self, *args):
        r"""
        Return
        -------
        Quantity_Color

        Description
        -----------
        Return the text color.

        """
        return _Graphic3d.Graphic3d_AspectText3d_Color(self, *args)

    def ColorRGBA(self, *args):
        r"""
        Return
        -------
        Quantity_ColorRGBA

        Description
        -----------
        Return the text color.

        """
        return _Graphic3d.Graphic3d_AspectText3d_ColorRGBA(self, *args)

    def DisplayType(self, *args):
        r"""
        Return
        -------
        Aspect_TypeOfDisplayText

        Description
        -----------
        Return display type.

        """
        return _Graphic3d.Graphic3d_AspectText3d_DisplayType(self, *args)

    def DumpJson(self, depth=-1):
        r"""

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        """
        return _Graphic3d.Graphic3d_AspectText3d_DumpJson(self, depth)

    def Font(self, *args):
        r"""
        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        Return the font.

        """
        return _Graphic3d.Graphic3d_AspectText3d_Font(self, *args)

    def GetTextAngle(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Returns Angle of degree.

        """
        return _Graphic3d.Graphic3d_AspectText3d_GetTextAngle(self, *args)

    def GetTextFontAspect(self, *args):
        r"""
        Return
        -------
        Font_FontAspect

        Description
        -----------
        Returns text FontAspect.

        """
        return _Graphic3d.Graphic3d_AspectText3d_GetTextFontAspect(self, *args)

    def GetTextZoomable(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns True when the Text Zoomable is on.

        """
        return _Graphic3d.Graphic3d_AspectText3d_GetTextZoomable(self, *args)

    def SetColor(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Modifies the color.

        Parameters
        ----------
        theColor: Quantity_ColorRGBA

        Return
        -------
        None

        Description
        -----------
        Modifies the color.

        """
        return _Graphic3d.Graphic3d_AspectText3d_SetColor(self, *args)

    def SetDisplayType(self, *args):
        r"""

        Parameters
        ----------
        theDisplayType: Aspect_TypeOfDisplayText

        Return
        -------
        None

        Description
        -----------
        Define the display type of the text.

        """
        return _Graphic3d.Graphic3d_AspectText3d_SetDisplayType(self, *args)

    def SetFont(self, *args):
        r"""

        Parameters
        ----------
        theFont: str

        Return
        -------
        None

        Description
        -----------
        Modifies the font.

        Parameters
        ----------
        theFont: str

        Return
        -------
        None

        Description
        -----------
        Modifies the font.

        """
        return _Graphic3d.Graphic3d_AspectText3d_SetFont(self, *args)

    def SetStyle(self, *args):
        r"""

        Parameters
        ----------
        theStyle: Aspect_TypeOfStyleText

        Return
        -------
        None

        Description
        -----------
        Modifies the style of the text.

        """
        return _Graphic3d.Graphic3d_AspectText3d_SetStyle(self, *args)

    def SetTextAngle(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Turns usage of text rotated.

        """
        return _Graphic3d.Graphic3d_AspectText3d_SetTextAngle(self, *args)

    def Style(self, *args):
        r"""
        Return
        -------
        Aspect_TypeOfStyleText

        Description
        -----------
        Return the text style.

        """
        return _Graphic3d.Graphic3d_AspectText3d_Style(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_AspectText3d

# Register Graphic3d_AspectText3d in _Graphic3d:
_Graphic3d.Graphic3d_AspectText3d_swigregister(Graphic3d_AspectText3d)
class Graphic3d_AttribBuffer(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"""

        Parameters
        ----------
        theAlloc: NCollection_BaseAllocator

        Return
        -------
        None

        Description
        -----------
        Empty constructor.

        """
        _Graphic3d.Graphic3d_AttribBuffer_swiginit(self, _Graphic3d.new_Graphic3d_AttribBuffer(*args))

    def Init(self, *args):
        r"""

        Parameters
        ----------
        theNbElems: int
        theAttribs: Graphic3d_Attribute *
        theNbAttribs: int

        Return
        -------
        bool

        Description
        -----------
        Allocates new empty array.

        Parameters
        ----------
        theNbElems: int
        theAttribs: Graphic3d_Array1OfAttribute

        Return
        -------
        bool

        Description
        -----------
        Allocates new empty array.

        """
        return _Graphic3d.Graphic3d_AttribBuffer_Init(self, *args)

    def Invalidate(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Invalidate the entire buffer data.

        Parameters
        ----------
        theAttributeIndex: int

        Return
        -------
        None

        Description
        -----------
        Invalidate the entire attribute data.

        Parameters
        ----------
        theAttributeIndex: int
        theVertexLower: int
        theVertexUpper: int

        Return
        -------
        None

        Description
        -----------
        Invalidate attribute data within specified sub-range (starting from 0).

        Parameters
        ----------
        theVertexLower: int
        theVertexUpper: int

        Return
        -------
        None

        Description
        -----------
        Invalidate all attribute data within specified vertex sub-range (starting from 0).

        """
        return _Graphic3d.Graphic3d_AttribBuffer_Invalidate(self, *args)

    def InvalidatedRange(self, *args):
        r"""
        Return
        -------
        Graphic3d_BufferRange

        Description
        -----------
        Return invalidated range.

        """
        return _Graphic3d.Graphic3d_AttribBuffer_InvalidatedRange(self, *args)

    def IsInterleaved(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return True for interleaved array; True by default.

        """
        return _Graphic3d.Graphic3d_AttribBuffer_IsInterleaved(self, *args)

    def IsMutable(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return True if data can be invalidated; False by default.

        """
        return _Graphic3d.Graphic3d_AttribBuffer_IsMutable(self, *args)

    def SetInterleaved(self, *args):
        r"""

        Parameters
        ----------
        theIsInterleaved: bool

        Return
        -------
        None

        Description
        -----------
        Setup interleaved/non-interleaved array. WARNING! Filling non-interleaved buffer should be implemented on user side without Graphic3d_Buffer auxiliary methods designed for interleaved data.

        """
        return _Graphic3d.Graphic3d_AttribBuffer_SetInterleaved(self, *args)

    def SetMutable(self, *args):
        r"""

        Parameters
        ----------
        theMutable: bool

        Return
        -------
        None

        Description
        -----------
        Set if data can be invalidated.

        """
        return _Graphic3d.Graphic3d_AttribBuffer_SetMutable(self, *args)

    def Validate(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Reset invalidated range.

        """
        return _Graphic3d.Graphic3d_AttribBuffer_Validate(self, *args)

    def invalidate(self, *args):
        r"""

        Parameters
        ----------
        theRange: Graphic3d_BufferRange

        Return
        -------
        None

        Description
        -----------
        Invalidate specified sub-range of data (as byte offsets).

        """
        return _Graphic3d.Graphic3d_AttribBuffer_invalidate(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_AttribBuffer

# Register Graphic3d_AttribBuffer in _Graphic3d:
_Graphic3d.Graphic3d_AttribBuffer_swigregister(Graphic3d_AttribBuffer)
class Graphic3d_CView(Graphic3d_DataStructureManager):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

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

    def Activate(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Activates the view. Maps presentations defined within structure manager onto this view.

        """
        return _Graphic3d.Graphic3d_CView_Activate(self, *args)

    def AddSubview(self, *args):
        r"""

        Parameters
        ----------
        theView: Graphic3d_CView

        Return
        -------
        None

        Description
        -----------
        Add subview to the list.

        """
        return _Graphic3d.Graphic3d_CView_AddSubview(self, *args)

    def BackfacingModel(self, *args):
        r"""
        Return
        -------
        Graphic3d_TypeOfBackfacingModel

        Description
        -----------
        Return backfacing model used for the view; Graphic3d_TypeOfBackfacingModel_Auto by default, which means that backface culling is defined by each presentation.

        """
        return _Graphic3d.Graphic3d_CView_BackfacingModel(self, *args)

    def Background(self, *args):
        r"""
        Return
        -------
        Aspect_Background

        Description
        -----------
        Returns background fill color.

        """
        return _Graphic3d.Graphic3d_CView_Background(self, *args)

    def BackgroundCubeMap(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_CubeMap>

        Description
        -----------
        Returns cubemap being set last time on background.

        """
        return _Graphic3d.Graphic3d_CView_BackgroundCubeMap(self, *args)

    def BackgroundImage(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_TextureMap>

        Description
        -----------
        Returns background image texture map.

        """
        return _Graphic3d.Graphic3d_CView_BackgroundImage(self, *args)

    def BackgroundImageStyle(self, *args):
        r"""
        Return
        -------
        Aspect_FillMethod

        Description
        -----------
        Returns background image fill style.

        """
        return _Graphic3d.Graphic3d_CView_BackgroundImageStyle(self, *args)

    def BackgroundSkydome(self, *args):
        r"""
        Return
        -------
        Aspect_SkydomeBackground

        Description
        -----------
        Returns skydome aspect;.

        """
        return _Graphic3d.Graphic3d_CView_BackgroundSkydome(self, *args)

    def BackgroundType(self, *args):
        r"""
        Return
        -------
        Graphic3d_TypeOfBackground

        Description
        -----------
        Returns background type.

        """
        return _Graphic3d.Graphic3d_CView_BackgroundType(self, *args)

    def BaseXRCamera(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_Camera>

        Description
        -----------
        Returns anchor camera definition (without tracked head orientation).

        """
        return _Graphic3d.Graphic3d_CView_BaseXRCamera(self, *args)

    def BufferDump(self, *args):
        r"""

        Parameters
        ----------
        theImage: Image_PixMap
        theBufferType: Graphic3d_BufferType

        Return
        -------
        bool

        Description
        -----------
        Dump active rendering buffer into specified memory buffer.

        """
        return _Graphic3d.Graphic3d_CView_BufferDump(self, *args)

    def Camera(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_Camera>

        Description
        -----------
        Returns camera object of the view.

        """
        return _Graphic3d.Graphic3d_CView_Camera(self, *args)

    def ChangeRenderingParams(self, *args):
        r"""
        Return
        -------
        Graphic3d_RenderingParams

        Description
        -----------
        Returns reference to current rendering parameters and effect settings.

        """
        return _Graphic3d.Graphic3d_CView_ChangeRenderingParams(self, *args)

    def ClipPlanes(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_SequenceOfHClipPlane>

        Description
        -----------
        Returns list of clip planes set for the view.

        """
        return _Graphic3d.Graphic3d_CView_ClipPlanes(self, *args)

    def Compute(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Computes the new presentation of the structures displayed in this view with the type Graphic3d_TOS_COMPUTED.

        """
        return _Graphic3d.Graphic3d_CView_Compute(self, *args)

    def ComputeXRBaseCameraFromPosed(self, *args):
        r"""

        Parameters
        ----------
        theCamPosed: Graphic3d_Camera
        thePoseTrsf: gp_Trsf

        Return
        -------
        None

        Description
        -----------
        Update based camera from posed camera by applying reversed transformation.

        """
        return _Graphic3d.Graphic3d_CView_ComputeXRBaseCameraFromPosed(self, *args)

    def ComputeXRPosedCameraFromBase(self, *args):
        r"""

        Parameters
        ----------
        theCam: Graphic3d_Camera
        theXRTrsf: gp_Trsf

        Return
        -------
        None

        Description
        -----------
        Compute camera position based on XR pose.

        """
        return _Graphic3d.Graphic3d_CView_ComputeXRPosedCameraFromBase(self, *args)

    def ComputedMode(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns the computed HLR mode state.

        """
        return _Graphic3d.Graphic3d_CView_ComputedMode(self, *args)

    def ConsiderZoomPersistenceObjects(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Returns zoom-scale factor.

        """
        return _Graphic3d.Graphic3d_CView_ConsiderZoomPersistenceObjects(self, *args)

    def CopySettings(self, *args):
        r"""

        Parameters
        ----------
        theOther: Graphic3d_CView

        Return
        -------
        None

        Description
        -----------
        Copy visualization settings from another view. Method is used for cloning views in viewer when its required to create view with same view properties.

        """
        return _Graphic3d.Graphic3d_CView_CopySettings(self, *args)

    def Deactivate(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Deactivates the view. Unmaps presentations defined within structure manager. The view in deactivated state will ignore actions on structures such as Display().

        """
        return _Graphic3d.Graphic3d_CView_Deactivate(self, *args)

    def DiagnosticInformation(self, *args):
        r"""

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

        Return
        -------
        None

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

        """
        return _Graphic3d.Graphic3d_CView_DiagnosticInformation(self, *args)

    def DisplayedStructures(self, *args):
        r"""

        Parameters
        ----------
        theStructures: Graphic3d_MapOfStructure

        Return
        -------
        None

        Description
        -----------
        Returns the set of structures displayed in this view.

        """
        return _Graphic3d.Graphic3d_CView_DisplayedStructures(self, *args)

    def DumpJson(self, depth=-1):
        r"""

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        Parameters
        ----------
        depth: int, default=-1

        Return
        -------
        str

        Description
        -----------
        Dump the object to JSON string.

        """
        return _Graphic3d.Graphic3d_CView_DumpJson(self, depth)

    def FBO(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Standard_Transient>

        Description
        -----------
        Returns pointer to an assigned framebuffer object.

        """
        return _Graphic3d.Graphic3d_CView_FBO(self, *args)

    def FBOChangeViewport(self, *args):
        r"""

        Parameters
        ----------
        theFbo: Standard_Transient
        theWidth: int
        theHeight: int

        Return
        -------
        None

        Description
        -----------
        Change offscreen FBO viewport.

        """
        return _Graphic3d.Graphic3d_CView_FBOChangeViewport(self, *args)

    def FBOCreate(self, *args):
        r"""

        Parameters
        ----------
        theWidth: int
        theHeight: int

        Return
        -------
        opencascade::handle<Standard_Transient>

        Description
        -----------
        Generate offscreen FBO in the graphic library. If not supported on hardware returns NULL.

        """
        return _Graphic3d.Graphic3d_CView_FBOCreate(self, *args)

    def FBOGetDimensions(self, *args):
        r"""

        Parameters
        ----------
        theFbo: Standard_Transient

        Return
        -------
        theWidth: int
        theHeight: int
        theWidthMax: int
        theHeightMax: int

        Description
        -----------
        Read offscreen FBO configuration.

        """
        return _Graphic3d.Graphic3d_CView_FBOGetDimensions(self, *args)

    def FBORelease(self, *args):
        r"""

        Parameters
        ----------
        theFbo: Standard_Transient

        Return
        -------
        None

        Description
        -----------
        Remove offscreen FBO from the graphic library.

        """
        return _Graphic3d.Graphic3d_CView_FBORelease(self, *args)

    def GetGraduatedTrihedron(self, *args):
        r"""
        Return
        -------
        Graphic3d_GraduatedTrihedron

        Description
        -----------
        Returns data of a graduated trihedron.

        """
        return _Graphic3d.Graphic3d_CView_GetGraduatedTrihedron(self, *args)

    def GradientBackground(self, *args):
        r"""
        Return
        -------
        Aspect_GradientBackground

        Description
        -----------
        Returns gradient background fill colors.

        """
        return _Graphic3d.Graphic3d_CView_GradientBackground(self, *args)

    def GraduatedTrihedronDisplay(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Displays Graduated Trihedron.

        """
        return _Graphic3d.Graphic3d_CView_GraduatedTrihedronDisplay(self, *args)

    def GraduatedTrihedronErase(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Erases Graduated Trihedron.

        """
        return _Graphic3d.Graphic3d_CView_GraduatedTrihedronErase(self, *args)

    def GraduatedTrihedronMinMaxValues(self, *args):
        r"""

        Parameters
        ----------
        theMin: Graphic3d_Vec3
        theMax: Graphic3d_Vec3

        Return
        -------
        None

        Description
        -----------
        Sets minimum and maximum points of scene bounding box for Graduated Trihedron stored in graphic view object. 
        Input parameter: theMin the minimum point of scene. 
        Input parameter: theMax the maximum point of scene.

        """
        return _Graphic3d.Graphic3d_CView_GraduatedTrihedronMinMaxValues(self, *args)

    def IBLCubeMap(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_CubeMap>

        Description
        -----------
        Returns cubemap being set last time on background.

        """
        return _Graphic3d.Graphic3d_CView_IBLCubeMap(self, *args)

    def Identification(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Returns the identification number of the view.

        """
        return _Graphic3d.Graphic3d_CView_Identification(self, *args)

    def InitXR(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Initialize XR session.

        """
        return _Graphic3d.Graphic3d_CView_InitXR(self, *args)

    def InsertLayerAfter(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Add a layer to the view. 
        Input parameter: theNewLayerId id of new layer, should be > 0 (negative values are reserved for default layers). 
        Input parameter: theSettings new layer settings 
        Input parameter: theLayerBefore id of layer to append new layer after.

        """
        return _Graphic3d.Graphic3d_CView_InsertLayerAfter(self, *args)

    def InsertLayerBefore(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Add a layer to the view. 
        Input parameter: theNewLayerId id of new layer, should be > 0 (negative values are reserved for default layers). 
        Input parameter: theSettings new layer settings 
        Input parameter: theLayerAfter id of layer to append new layer before.

        """
        return _Graphic3d.Graphic3d_CView_InsertLayerBefore(self, *args)

    def Invalidate(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Invalidates content of the view but does not redraw it.

        """
        return _Graphic3d.Graphic3d_CView_Invalidate(self, *args)

    def InvalidateBVHData(self, *args):
        r"""

        Parameters
        ----------
        theLayerId: int

        Return
        -------
        None

        Description
        -----------
        Marks BVH tree and the set of BVH primitives of correspondent priority list with id theLayerId as outdated.

        """
        return _Graphic3d.Graphic3d_CView_InvalidateBVHData(self, *args)

    def InvalidateZLayerBoundingBox(self, *args):
        r"""

        Parameters
        ----------
        theLayerId: int

        Return
        -------
        None

        Description
        -----------
        Returns the bounding box of all structures displayed in the Z layer.

        """
        return _Graphic3d.Graphic3d_CView_InvalidateZLayerBoundingBox(self, *args)

    def IsActive(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns the activity flag of the view.

        """
        return _Graphic3d.Graphic3d_CView_IsActive(self, *args)

    def IsActiveXR(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return True if there is active XR session.

        """
        return _Graphic3d.Graphic3d_CView_IsActiveXR(self, *args)

    def IsComputed(self, *args):
        r"""

        Parameters
        ----------
        theStructId: int
        theComputedStruct: Graphic3d_Structure

        Return
        -------
        bool

        Description
        -----------
        Returns Standard_True in case if the structure with the given <theStructId> is in list of structures to be computed and stores computed struct to <theComputedStruct>.

        """
        return _Graphic3d.Graphic3d_CView_IsComputed(self, *args)

    def IsDefined(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns True if the window associated to the view is defined.

        """
        return _Graphic3d.Graphic3d_CView_IsDefined(self, *args)

    def IsInvalidated(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return true if view content cache has been invalidated.

        """
        return _Graphic3d.Graphic3d_CView_IsInvalidated(self, *args)

    def IsRemoved(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns true if the view was removed.

        """
        return _Graphic3d.Graphic3d_CView_IsRemoved(self, *args)

    def IsSubViewRelativeSize(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return True if subview size is set as proportions relative to parent view.

        """
        return _Graphic3d.Graphic3d_CView_IsSubViewRelativeSize(self, *args)

    def IsSubview(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return True if this is a subview of another view.

        """
        return _Graphic3d.Graphic3d_CView_IsSubview(self, *args)

    def IsSubviewComposer(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return True if this is view performs rendering of subviews and nothing else; False by default. By default, view with subviews will render main scene and blit subviews on top of it. Rendering of main scene might become redundant in case if subviews cover entire window of parent view. This flag allows to disable rendering of the main scene in such scenarios without creation of a dedicated V3d_Viewer instance just for composing subviews.

        """
        return _Graphic3d.Graphic3d_CView_IsSubviewComposer(self, *args)

    def Layer(self, *args):
        r"""

        Parameters
        ----------
        theLayerId: int

        Return
        -------
        opencascade::handle<Graphic3d_Layer>

        Description
        -----------
        Returns layer with given ID or NULL if undefined.

        """
        return _Graphic3d.Graphic3d_CView_Layer(self, *args)

    def Layers(self, *args):
        r"""
        Return
        -------
        NCollection_List<opencascade::handle<Graphic3d_Layer>>

        Description
        -----------
        Returns the list of layers.

        """
        return _Graphic3d.Graphic3d_CView_Layers(self, *args)

    def Lights(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_LightSet>

        Description
        -----------
        Returns list of lights of the view.

        """
        return _Graphic3d.Graphic3d_CView_Lights(self, *args)

    def MinMaxValues(self, *args):
        r"""

        Parameters
        ----------
        theToIncludeAuxiliary: bool (optional, default to Standard_False)

        Return
        -------
        Bnd_Box

        Description
        -----------
        Returns the bounding box of all structures displayed in the view. If theToIncludeAuxiliary is True, then the boundary box also includes minimum and maximum limits of graphical elements forming parts of infinite and other auxiliary structures. 
        Parameter theToIncludeAuxiliary consider also auxiliary presentations (with infinite flag or with trihedron transformation persistence) 
        Return: computed bounding box.

        Parameters
        ----------
        theSet: Graphic3d_MapOfStructure
        theToIncludeAuxiliary: bool (optional, default to Standard_False)

        Return
        -------
        Bnd_Box

        Description
        -----------
        Returns the coordinates of the boundary box of all structures in the set <theSet>. If <theToIgnoreInfiniteFlag> is True, then the boundary box also includes minimum and maximum limits of graphical elements forming parts of infinite structures.

        """
        return _Graphic3d.Graphic3d_CView_MinMaxValues(self, *args)

    def NumberOfDisplayedStructures(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Returns number of displayed structures in the view.

        """
        return _Graphic3d.Graphic3d_CView_NumberOfDisplayedStructures(self, *args)

    def ParentView(self, *args):
        r"""
        Return
        -------
        Graphic3d_CView *

        Description
        -----------
        Return parent View or NULL if this is not a subview.

        """
        return _Graphic3d.Graphic3d_CView_ParentView(self, *args)

    def PoseXRToWorld(self, *args):
        r"""

        Parameters
        ----------
        thePoseXR: gp_Trsf

        Return
        -------
        gp_Trsf

        Description
        -----------
        Convert XR pose to world space. 
        Input parameter: thePoseXR transformation defined in VR local coordinate system,  oriented as Y-up, X-right and -Z-forward 
        Return: transformation defining orientation of XR pose in world space.

        """
        return _Graphic3d.Graphic3d_CView_PoseXRToWorld(self, *args)

    def PosedXRCamera(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_Camera>

        Description
        -----------
        Returns transient XR camera position with tracked head orientation applied.

        """
        return _Graphic3d.Graphic3d_CView_PosedXRCamera(self, *args)

    def ProcessXRInput(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Process input.

        """
        return _Graphic3d.Graphic3d_CView_ProcessXRInput(self, *args)

    def ReCompute(self, *args):
        r"""

        Parameters
        ----------
        theStructure: Graphic3d_Structure

        Return
        -------
        None

        Description
        -----------
        Computes the new presentation of the structure displayed in this view with the type Graphic3d_TOS_COMPUTED.

        """
        return _Graphic3d.Graphic3d_CView_ReCompute(self, *args)

    def Redraw(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Redraw content of the view.

        """
        return _Graphic3d.Graphic3d_CView_Redraw(self, *args)

    def RedrawImmediate(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Redraw immediate content of the view.

        """
        return _Graphic3d.Graphic3d_CView_RedrawImmediate(self, *args)

    def ReleaseXR(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Release XR session.

        """
        return _Graphic3d.Graphic3d_CView_ReleaseXR(self, *args)

    def Remove(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Erases the view and removes from graphic driver. No more graphic operations are allowed in this view after the call.

        """
        return _Graphic3d.Graphic3d_CView_Remove(self, *args)

    def RemoveSubview(self, *args):
        r"""

        Parameters
        ----------
        theView: Graphic3d_CView *

        Return
        -------
        bool

        Description
        -----------
        Remove subview from the list.

        """
        return _Graphic3d.Graphic3d_CView_RemoveSubview(self, *args)

    def RemoveZLayer(self, *args):
        r"""

        Parameters
        ----------
        theLayerId: int

        Return
        -------
        None

        Description
        -----------
        Remove Z layer from the specified view. All structures displayed at the moment in layer will be displayed in default layer ( the bottom-level z layer ). To unset layer ID from associated structures use method UnsetZLayer (...).

        """
        return _Graphic3d.Graphic3d_CView_RemoveZLayer(self, *args)

    def RenderingParams(self, *args):
        r"""
        Return
        -------
        Graphic3d_RenderingParams

        Description
        -----------
        Returns current rendering parameters and effect settings.

        """
        return _Graphic3d.Graphic3d_CView_RenderingParams(self, *args)

    def Resized(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Handle changing size of the rendering window.

        """
        return _Graphic3d.Graphic3d_CView_Resized(self, *args)

    def SetBackfacingModel(self, *args):
        r"""

        Parameters
        ----------
        theModel: Graphic3d_TypeOfBackfacingModel

        Return
        -------
        None

        Description
        -----------
        Sets backfacing model for the view.

        """
        return _Graphic3d.Graphic3d_CView_SetBackfacingModel(self, *args)

    def SetBackground(self, *args):
        r"""

        Parameters
        ----------
        theBackground: Aspect_Background

        Return
        -------
        None

        Description
        -----------
        Sets background fill color.

        """
        return _Graphic3d.Graphic3d_CView_SetBackground(self, *args)

    def SetBackgroundImage(self, *args):
        r"""

        Parameters
        ----------
        theTextureMap: Graphic3d_TextureMap
        theToUpdatePBREnv: bool (optional, default to Standard_True)

        Return
        -------
        None

        Description
        -----------
        Sets image texture or environment cubemap as background. 
        Input parameter: theTextureMap source to set a background;  should be either Graphic3d_Texture2D or Graphic3d_CubeMap 
        Input parameter: theToUpdatePBREnv defines whether IBL maps will be generated or not  (see GeneratePBREnvironment()).

        """
        return _Graphic3d.Graphic3d_CView_SetBackgroundImage(self, *args)

    def SetBackgroundImageStyle(self, *args):
        r"""

        Parameters
        ----------
        theFillStyle: Aspect_FillMethod

        Return
        -------
        None

        Description
        -----------
        Sets background image fill style.

        """
        return _Graphic3d.Graphic3d_CView_SetBackgroundImageStyle(self, *args)

    def SetBackgroundSkydome(self, *args):
        r"""

        Parameters
        ----------
        theAspect: Aspect_SkydomeBackground
        theToUpdatePBREnv: bool (optional, default to Standard_True)

        Return
        -------
        None

        Description
        -----------
        Sets skydome aspect.

        """
        return _Graphic3d.Graphic3d_CView_SetBackgroundSkydome(self, *args)

    def SetBackgroundType(self, *args):
        r"""

        Parameters
        ----------
        theType: Graphic3d_TypeOfBackground

        Return
        -------
        None

        Description
        -----------
        Sets background type.

        """
        return _Graphic3d.Graphic3d_CView_SetBackgroundType(self, *args)

    def SetBaseXRCamera(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Sets anchor camera definition.

        """
        return _Graphic3d.Graphic3d_CView_SetBaseXRCamera(self, *args)

    def SetCamera(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Sets camera used by the view.

        """
        return _Graphic3d.Graphic3d_CView_SetCamera(self, *args)

    def SetClipPlanes(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Sets list of clip planes for the view.

        """
        return _Graphic3d.Graphic3d_CView_SetClipPlanes(self, *args)

    def SetComputedMode(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Switches computed HLR mode in the view.

        """
        return _Graphic3d.Graphic3d_CView_SetComputedMode(self, *args)

    def SetFBO(self, *args):
        r"""

        Parameters
        ----------
        theFbo: Standard_Transient

        Return
        -------
        None

        Description
        -----------
        Sets framebuffer object for offscreen rendering.

        """
        return _Graphic3d.Graphic3d_CView_SetFBO(self, *args)

    def SetGradientBackground(self, *args):
        r"""

        Parameters
        ----------
        theBackground: Aspect_GradientBackground

        Return
        -------
        None

        Description
        -----------
        Sets gradient background fill colors.

        """
        return _Graphic3d.Graphic3d_CView_SetGradientBackground(self, *args)

    def SetImageBasedLighting(self, *args):
        r"""

        Parameters
        ----------
        theToEnableIBL: bool

        Return
        -------
        None

        Description
        -----------
        Enables or disables IBL (Image Based Lighting) from background cubemap. Has no effect if PBR is not used. 
        Input parameter: theToEnableIBL enable or disable IBL from background cubemap.

        """
        return _Graphic3d.Graphic3d_CView_SetImageBasedLighting(self, *args)

    def SetImmediateModeDrawToFront(self, *args):
        r"""

        Parameters
        ----------
        theDrawToFrontBuffer: bool

        Return
        -------
        bool

        Description
        -----------
        Parameter theDrawToFrontBuffer Advanced option to modify rendering mode: 1. True. Drawing immediate mode structures directly to the front buffer over the scene image. Fast, so preferred for interactive work (used by default). However these extra drawings will be missed in image dump since it is performed from back buffer. Notice that since no pre-buffering used the V-Sync will be ignored and rendering could be seen in run-time (in case of slow hardware) and/or tearing may appear. So this is strongly recommended to draw only simple (fast) structures. 2. False. Drawing immediate mode structures to the back buffer. The complete scene is redrawn first, so this mode is slower if scene contains complex data and/or V-Sync is turned on. But it works in any case and is especially useful for view dump because the dump image is read from the back buffer. 
        Return: previous mode.

        """
        return _Graphic3d.Graphic3d_CView_SetImmediateModeDrawToFront(self, *args)

    def SetLights(self, *args):
        r"""

        Parameters
        ----------
        theLights: Graphic3d_LightSet

        Return
        -------
        None

        Description
        -----------
        Sets list of lights for the view.

        """
        return _Graphic3d.Graphic3d_CView_SetLights(self, *args)

    def SetPosedXRCamera(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Sets transient XR camera position with tracked head orientation applied.

        """
        return _Graphic3d.Graphic3d_CView_SetPosedXRCamera(self, *args)

    def SetShadingModel(self, *args):
        r"""

        Parameters
        ----------
        theModel: Graphic3d_TypeOfShadingModel

        Return
        -------
        None

        Description
        -----------
        Sets default Shading Model of the view. Will throw an exception on attempt to set Graphic3d_TypeOfShadingModel_DEFAULT.

        """
        return _Graphic3d.Graphic3d_CView_SetShadingModel(self, *args)

    def SetSubviewComposer(self, *args):
        r"""

        Parameters
        ----------
        theIsComposer: bool

        Return
        -------
        None

        Description
        -----------
        Set if this view should perform composing of subviews and nothing else.

        """
        return _Graphic3d.Graphic3d_CView_SetSubviewComposer(self, *args)

    def SetSubviewCorner(self, *args):
        r"""

        Parameters
        ----------
        thePos: Aspect_TypeOfTriedronPosition

        Return
        -------
        None

        Description
        -----------
        Set subview position within parent view.

        """
        return _Graphic3d.Graphic3d_CView_SetSubviewCorner(self, *args)

    def SetSubviewMargins(self, *args):
        r"""

        Parameters
        ----------
        theMargins: Graphic3d_Vec2i

        Return
        -------
        None

        Description
        -----------
        Set subview margins in pixels.

        """
        return _Graphic3d.Graphic3d_CView_SetSubviewMargins(self, *args)

    def SetSubviewOffset(self, *args):
        r"""

        Parameters
        ----------
        theOffset: Graphic3d_Vec2d

        Return
        -------
        None

        Description
        -----------
        Set corner offset within parent view.

        """
        return _Graphic3d.Graphic3d_CView_SetSubviewOffset(self, *args)

    def SetSubviewSize(self, *args):
        r"""

        Parameters
        ----------
        theSize: Graphic3d_Vec2d

        Return
        -------
        None

        Description
        -----------
        Set subview size relative to parent view.

        """
        return _Graphic3d.Graphic3d_CView_SetSubviewSize(self, *args)

    def SetTextureEnv(self, *args):
        r"""

        Parameters
        ----------
        theTextureEnv: Graphic3d_TextureEnv

        Return
        -------
        None

        Description
        -----------
        Sets environment texture for the view.

        """
        return _Graphic3d.Graphic3d_CView_SetTextureEnv(self, *args)

    def SetToFlipOutput(self, *args):
        r"""

        Parameters
        ----------
        Standard_Boolean: 

        Return
        -------
        None

        Description
        -----------
        Sets state of flip OY necessity in projection matrix.

        """
        return _Graphic3d.Graphic3d_CView_SetToFlipOutput(self, *args)

    def SetUnitFactor(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Set unit scale factor.

        """
        return _Graphic3d.Graphic3d_CView_SetUnitFactor(self, *args)

    def SetVisualizationType(self, *args):
        r"""

        Parameters
        ----------
        theType: Graphic3d_TypeOfVisualization

        Return
        -------
        None

        Description
        -----------
        Sets visualization type of the view.

        """
        return _Graphic3d.Graphic3d_CView_SetVisualizationType(self, *args)

    def SetWindow(self, *args):
        r"""

        Parameters
        ----------
        theParentVIew: Graphic3d_CView
        theWindow: Aspect_Window
        theContext: Aspect_RenderingContext

        Return
        -------
        None

        Description
        -----------
        Creates and maps rendering window to the view. 
        Input parameter: theParentVIew parent view or NULL 
        Input parameter: theWindow the window 
        Input parameter: theContext the rendering context; if NULL the context will be created internally.

        """
        return _Graphic3d.Graphic3d_CView_SetWindow(self, *args)

    def SetXRSession(self, *args):
        r"""

        Parameters
        ----------
        theSession: Aspect_XRSession

        Return
        -------
        None

        Description
        -----------
        Set XR session.

        """
        return _Graphic3d.Graphic3d_CView_SetXRSession(self, *args)

    def SetZLayerRedrawMode(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Sets ZLayerId redraw mode.

        """
        return _Graphic3d.Graphic3d_CView_SetZLayerRedrawMode(self, *args)

    def SetZLayerSettings(self, *args):
        r"""

        Parameters
        ----------
        theLayerId: int
        theSettings: Graphic3d_ZLayerSettings

        Return
        -------
        None

        Description
        -----------
        Sets the settings for a single Z layer of specified view.

        """
        return _Graphic3d.Graphic3d_CView_SetZLayerSettings(self, *args)

    def SetZLayerTarget(self, *args):
        r"""

        Parameters
        ----------
        theTarget: int

        Return
        -------
        None

        Description
        -----------
        Sets ZLayerId target.

        """
        return _Graphic3d.Graphic3d_CView_SetZLayerTarget(self, *args)

    def SetupXRPosedCamera(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Compute PosedXRCamera() based on current XR head pose and make it active.

        """
        return _Graphic3d.Graphic3d_CView_SetupXRPosedCamera(self, *args)

    def ShadingModel(self, *args):
        r"""
        Return
        -------
        Graphic3d_TypeOfShadingModel

        Description
        -----------
        Returns default Shading Model of the view; Graphic3d_TypeOfShadingModel_Phong by default.

        """
        return _Graphic3d.Graphic3d_CView_ShadingModel(self, *args)

    def ShadowMapDump(self, *args):
        r"""

        Parameters
        ----------
        theImage: Image_PixMap
        theLightName: str

        Return
        -------
        bool

        Description
        -----------
        Dumps the graphical contents of a shadowmap framebuffer into an image. 
        Parameter theImage the image to store the shadow map. 
        Input parameter: theLightName name of the light used to generate the shadow map.

        """
        return _Graphic3d.Graphic3d_CView_ShadowMapDump(self, *args)

    def StatisticInformation(self, *args):
        r"""
        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        Returns string with statistic performance info.

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

        Return
        -------
        None

        Description
        -----------
        Fills in the dictionary with statistic performance info.

        """
        return _Graphic3d.Graphic3d_CView_StatisticInformation(self, *args)

    def StructureManager(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_StructureManager>

        Description
        -----------
        Returns the structure manager handle which manage structures associated with this view.

        """
        return _Graphic3d.Graphic3d_CView_StructureManager(self, *args)

    def SubviewCorner(self, *args):
        r"""
        Return
        -------
        Aspect_TypeOfTriedronPosition

        Description
        -----------
        Return subview position within parent view; Aspect_TOTP_LEFT_UPPER by default.

        """
        return _Graphic3d.Graphic3d_CView_SubviewCorner(self, *args)

    def SubviewMargins(self, *args):
        r"""
        Return
        -------
        Graphic3d_Vec2i

        Description
        -----------
        Return subview margins in pixels; (0,0) by default.

        """
        return _Graphic3d.Graphic3d_CView_SubviewMargins(self, *args)

    def SubviewOffset(self, *args):
        r"""
        Return
        -------
        Graphic3d_Vec2d

        Description
        -----------
        Return corner offset within parent view; (0.0,0.0) by default. Values >= 2 define offset in pixels; Values <= 1.0 define offset as fraction of parent view dimensions.

        """
        return _Graphic3d.Graphic3d_CView_SubviewOffset(self, *args)

    def SubviewResized(self, *args):
        r"""

        Parameters
        ----------
        theWindow: Aspect_NeutralWindow

        Return
        -------
        None

        Description
        -----------
        Update subview position and dimensions.

        """
        return _Graphic3d.Graphic3d_CView_SubviewResized(self, *args)

    def SubviewSize(self, *args):
        r"""
        Return
        -------
        Graphic3d_Vec2d

        Description
        -----------
        Return subview dimensions; (1.0, 1.0) by default. Values >= 2 define size in pixels; Values <= 1.0 define size as fraction of parent view.

        """
        return _Graphic3d.Graphic3d_CView_SubviewSize(self, *args)

    def SubviewTopLeft(self, *args):
        r"""
        Return
        -------
        Graphic3d_Vec2i

        Description
        -----------
        Return subview top-left position relative to parent view in pixels.

        """
        return _Graphic3d.Graphic3d_CView_SubviewTopLeft(self, *args)

    def Subviews(self, *args):
        r"""
        Return
        -------
        NCollection_Sequence<opencascade::handle<Graphic3d_CView>>

        Description
        -----------
        Return subview list.

        """
        return _Graphic3d.Graphic3d_CView_Subviews(self, *args)

    def SynchronizeXRBaseToPosedCamera(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Recomputes PosedXRCamera() based on BaseXRCamera() and head orientation.

        """
        return _Graphic3d.Graphic3d_CView_SynchronizeXRBaseToPosedCamera(self, *args)

    def SynchronizeXRPosedToBaseCamera(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Checks if PosedXRCamera() has been modified since SetupXRPosedCamera() and copies these modifications to BaseXRCamera().

        """
        return _Graphic3d.Graphic3d_CView_SynchronizeXRPosedToBaseCamera(self, *args)

    def TextureEnv(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_TextureEnv>

        Description
        -----------
        Returns environment texture set for the view.

        """
        return _Graphic3d.Graphic3d_CView_TextureEnv(self, *args)

    def ToFlipOutput(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns necessity to flip OY in projection matrix.

        """
        return _Graphic3d.Graphic3d_CView_ToFlipOutput(self, *args)

    def TurnViewXRCamera(self, *args):
        r"""

        Parameters
        ----------
        theTrsfTurn: gp_Trsf

        Return
        -------
        None

        Description
        -----------
        Turn XR camera direction using current (head) eye position as anchor.

        """
        return _Graphic3d.Graphic3d_CView_TurnViewXRCamera(self, *args)

    def UnitFactor(self, *args):
        r"""
        Return
        -------
        float

        Description
        -----------
        Return unit scale factor defined as scale factor for m (meters); 1.0 by default. Normally, view definition is unitless, however some operations like VR input requires proper units mapping.

        """
        return _Graphic3d.Graphic3d_CView_UnitFactor(self, *args)

    def UnsetXRPosedCamera(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Set current camera back to BaseXRCamera() and copy temporary modifications of PosedXRCamera(). Calls SynchronizeXRPosedToBaseCamera() beforehand.

        """
        return _Graphic3d.Graphic3d_CView_UnsetXRPosedCamera(self, *args)

    def Update(self, *args):
        r"""

        Parameters
        ----------
        theLayerId: int (optional, default to Graphic3d_ZLayerId_UNKNOWN)

        Return
        -------
        None

        Description
        -----------
        Invalidates bounding box of specified ZLayerId.

        """
        return _Graphic3d.Graphic3d_CView_Update(self, *args)

    def ViewAxisInWorld(self, *args):
        r"""

        Parameters
        ----------
        thePoseXR: gp_Trsf

        Return
        -------
        gp_Ax1

        Description
        -----------
        Returns view direction in the world space based on XR pose. 
        Input parameter: thePoseXR transformation defined in VR local coordinate system,  oriented as Y-up, X-right and -Z-forward.

        """
        return _Graphic3d.Graphic3d_CView_ViewAxisInWorld(self, *args)

    def VisualizationType(self, *args):
        r"""
        Return
        -------
        Graphic3d_TypeOfVisualization

        Description
        -----------
        Returns visualization type of the view.

        """
        return _Graphic3d.Graphic3d_CView_VisualizationType(self, *args)

    def Window(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Aspect_Window>

        Description
        -----------
        Returns the window associated to the view.

        """
        return _Graphic3d.Graphic3d_CView_Window(self, *args)

    def XRSession(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Aspect_XRSession>

        Description
        -----------
        Return XR session.

        """
        return _Graphic3d.Graphic3d_CView_XRSession(self, *args)

    def ZLayerMax(self, *args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Returns the maximum Z layer ID. First layer ID is Graphic3d_ZLayerId_Default, last ID is ZLayerMax().

        """
        return _Graphic3d.Graphic3d_CView_ZLayerMax(self, *args)

    def ZLayerRedrawMode(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns ZLayerId redraw mode.

        """
        return _Graphic3d.Graphic3d_CView_ZLayerRedrawMode(self, *args)

    def ZLayerTarget(self, *args):
        r"""
        Return
        -------
        Graphic3d_ZLayerId

        Description
        -----------
        Returns ZLayerId target.

        """
        return _Graphic3d.Graphic3d_CView_ZLayerTarget(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_CView

# Register Graphic3d_CView in _Graphic3d:
_Graphic3d.Graphic3d_CView_swigregister(Graphic3d_CView)
class Graphic3d_FrameStatsDataTmp(Graphic3d_FrameStatsData):
    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"""
        Return
        -------
        None

        Description
        -----------
        Empty constructor.

        """
        _Graphic3d.Graphic3d_FrameStatsDataTmp_swiginit(self, _Graphic3d.new_Graphic3d_FrameStatsDataTmp(*args))

    def ChangeCounterValue(self, *args):
        r"""

        Parameters
        ----------
        theIndex: Graphic3d_FrameStatsCounter

        Return
        -------
        Standard_Size

        Description
        -----------
        Get counter value.

        """
        return _Graphic3d.Graphic3d_FrameStatsDataTmp_ChangeCounterValue(self, *args)

    def GetChangeFrameRate(self):
        r"""GetChangeFrameRate(Graphic3d_FrameStatsDataTmp self) -> Standard_Real"""
        return _Graphic3d.Graphic3d_FrameStatsDataTmp_GetChangeFrameRate(self)

    def SetChangeFrameRate(self, value):
        r"""SetChangeFrameRate(Graphic3d_FrameStatsDataTmp self, Standard_Real value)"""
        return _Graphic3d.Graphic3d_FrameStatsDataTmp_SetChangeFrameRate(self, value)

    def GetChangeFrameRateCpu(self):
        r"""GetChangeFrameRateCpu(Graphic3d_FrameStatsDataTmp self) -> Standard_Real"""
        return _Graphic3d.Graphic3d_FrameStatsDataTmp_GetChangeFrameRateCpu(self)

    def SetChangeFrameRateCpu(self, value):
        r"""SetChangeFrameRateCpu(Graphic3d_FrameStatsDataTmp self, Standard_Real value)"""
        return _Graphic3d.Graphic3d_FrameStatsDataTmp_SetChangeFrameRateCpu(self, value)

    def GetChangeImmediateFrameRate(self):
        r"""GetChangeImmediateFrameRate(Graphic3d_FrameStatsDataTmp self) -> Standard_Real"""
        return _Graphic3d.Graphic3d_FrameStatsDataTmp_GetChangeImmediateFrameRate(self)

    def SetChangeImmediateFrameRate(self, value):
        r"""SetChangeImmediateFrameRate(Graphic3d_FrameStatsDataTmp self, Standard_Real value)"""
        return _Graphic3d.Graphic3d_FrameStatsDataTmp_SetChangeImmediateFrameRate(self, value)

    def GetChangeImmediateFrameRateCpu(self):
        r"""GetChangeImmediateFrameRateCpu(Graphic3d_FrameStatsDataTmp self) -> Standard_Real"""
        return _Graphic3d.Graphic3d_FrameStatsDataTmp_GetChangeImmediateFrameRateCpu(self)

    def SetChangeImmediateFrameRateCpu(self, value):
        r"""SetChangeImmediateFrameRateCpu(Graphic3d_FrameStatsDataTmp self, Standard_Real value)"""
        return _Graphic3d.Graphic3d_FrameStatsDataTmp_SetChangeImmediateFrameRateCpu(self, value)

    def ChangeTimer(self, *args):
        r"""

        Parameters
        ----------
        theTimer: Graphic3d_FrameStatsTimer

        Return
        -------
        OSD_Timer

        Description
        -----------
        Return a timer object for time measurements.

        """
        return _Graphic3d.Graphic3d_FrameStatsDataTmp_ChangeTimer(self, *args)

    def GetChangeTimerValue(self, theIndex):
        r"""GetChangeTimerValue(Graphic3d_FrameStatsDataTmp self, Graphic3d_FrameStatsTimer theIndex) -> Standard_Real"""
        return _Graphic3d.Graphic3d_FrameStatsDataTmp_GetChangeTimerValue(self, theIndex)

    def SetChangeTimerValue(self, theIndex, value):
        r"""SetChangeTimerValue(Graphic3d_FrameStatsDataTmp self, Graphic3d_FrameStatsTimer theIndex, Standard_Real value)"""
        return _Graphic3d.Graphic3d_FrameStatsDataTmp_SetChangeTimerValue(self, theIndex, value)

    def FlushTimers(self, *args):
        r"""

        Parameters
        ----------
        theNbFrames: Standard_Size
        theIsFinal: bool

        Return
        -------
        None

        Description
        -----------
        Compute average data considering the amount of rendered frames.

        """
        return _Graphic3d.Graphic3d_FrameStatsDataTmp_FlushTimers(self, *args)

    def Reset(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Reset data.

        """
        return _Graphic3d.Graphic3d_FrameStatsDataTmp_Reset(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_FrameStatsDataTmp

# Register Graphic3d_FrameStatsDataTmp in _Graphic3d:
_Graphic3d.Graphic3d_FrameStatsDataTmp_swigregister(Graphic3d_FrameStatsDataTmp)
class Graphic3d_MediaTextureSet(OCC.Core.Media.Media_IFrameQueue):
    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"""
        Return
        -------
        None

        Description
        -----------
        Empty constructor.

        """
        _Graphic3d.Graphic3d_MediaTextureSet_swiginit(self, _Graphic3d.new_Graphic3d_MediaTextureSet(*args))

    def Duration(self, *args):
        r"""
        Return
        -------
        double

        Description
        -----------
        Return duration in seconds.

        """
        return _Graphic3d.Graphic3d_MediaTextureSet_Duration(self, *args)

    def FrameSize(self, *args):
        r"""
        Return
        -------
        Graphic3d_Vec2i

        Description
        -----------
        Return front frame dimensions.

        """
        return _Graphic3d.Graphic3d_MediaTextureSet_FrameSize(self, *args)

    def Input(self, *args):
        r"""
        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        Return input media.

        """
        return _Graphic3d.Graphic3d_MediaTextureSet_Input(self, *args)

    def IsFullRangeYUV(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return True if YUV range is full.

        """
        return _Graphic3d.Graphic3d_MediaTextureSet_IsFullRangeYUV(self, *args)

    def IsPlanarYUV(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return True if texture set defined 3 YUV planes.

        """
        return _Graphic3d.Graphic3d_MediaTextureSet_IsPlanarYUV(self, *args)

    def Notify(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Call callback.

        """
        return _Graphic3d.Graphic3d_MediaTextureSet_Notify(self, *args)

    def OpenInput(self, *args):
        r"""

        Parameters
        ----------
        thePath: str
        theToWait: bool

        Return
        -------
        None

        Description
        -----------
        Open specified file. Passing an empty path would close current input.

        """
        return _Graphic3d.Graphic3d_MediaTextureSet_OpenInput(self, *args)

    def PlayerContext(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Media_PlayerContext>

        Description
        -----------
        Return player context; it can be NULL until first OpenInput().

        """
        return _Graphic3d.Graphic3d_MediaTextureSet_PlayerContext(self, *args)

    def Progress(self, *args):
        r"""
        Return
        -------
        double

        Description
        -----------
        Return playback progress in seconds.

        """
        return _Graphic3d.Graphic3d_MediaTextureSet_Progress(self, *args)

    def ShaderProgram(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Graphic3d_ShaderProgram>

        Description
        -----------
        Return shader program for displaying texture set.

        """
        return _Graphic3d.Graphic3d_MediaTextureSet_ShaderProgram(self, *args)

    def SwapFrames(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Swap front/back frames.

        """
        return _Graphic3d.Graphic3d_MediaTextureSet_SwapFrames(self, *args)


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


    __repr__ = _dumps_object

    @methodnotwrapped
    def SetCallback(self):
    	pass

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_MediaTextureSet

# Register Graphic3d_MediaTextureSet in _Graphic3d:
_Graphic3d.Graphic3d_MediaTextureSet_swigregister(Graphic3d_MediaTextureSet)
class Graphic3d_TextureEnv(Graphic3d_TextureRoot):
    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"""

        Parameters
        ----------
        theFileName: str

        Return
        -------
        None

        Description
        -----------
        Creates an environment texture from a file.

        Parameters
        ----------
        theName: Graphic3d_NameOfTextureEnv

        Return
        -------
        None

        Description
        -----------
        Creates an environment texture from a predefined texture name set.

        Parameters
        ----------
        thePixMap: Image_PixMap

        Return
        -------
        None

        Description
        -----------
        Creates an environment texture from the pixmap.

        """
        _Graphic3d.Graphic3d_TextureEnv_swiginit(self, _Graphic3d.new_Graphic3d_TextureEnv(*args))

    def Name(self, *args):
        r"""
        Return
        -------
        Graphic3d_NameOfTextureEnv

        Description
        -----------
        Returns the name of the predefined textures or NOT_ENV_UNKNOWN when the name is given as a filename.

        """
        return _Graphic3d.Graphic3d_TextureEnv_Name(self, *args)

    @staticmethod
    def NumberOfTextures(*args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Returns the number of predefined textures.

        """
        return _Graphic3d.Graphic3d_TextureEnv_NumberOfTextures(*args)

    @staticmethod
    def TextureName(*args):
        r"""

        Parameters
        ----------
        theRank: int

        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        Returns the name of the predefined texture of rank <aRank>.

        """
        return _Graphic3d.Graphic3d_TextureEnv_TextureName(*args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_TextureEnv

# Register Graphic3d_TextureEnv in _Graphic3d:
_Graphic3d.Graphic3d_TextureEnv_swigregister(Graphic3d_TextureEnv)
class Graphic3d_TextureMap(Graphic3d_TextureRoot):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

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

    def AnisoFilter(self, *args):
        r"""
        Return
        -------
        Graphic3d_LevelOfTextureAnisotropy

        Description
        -----------
        Return: level of anisotropy texture filter. Default value is Graphic3d_LOTA_OFF.

        """
        return _Graphic3d.Graphic3d_TextureMap_AnisoFilter(self, *args)

    def DisableModulate(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        disable texture modulate mode. the image is directly decal on the surface.

        """
        return _Graphic3d.Graphic3d_TextureMap_DisableModulate(self, *args)

    def DisableRepeat(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        use this methods if you want to disable texture repetition on your objects.

        """
        return _Graphic3d.Graphic3d_TextureMap_DisableRepeat(self, *args)

    def DisableSmooth(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        disable texture smoothing.

        """
        return _Graphic3d.Graphic3d_TextureMap_DisableSmooth(self, *args)

    def EnableModulate(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        enable texture modulate mode. the image is modulate with the shading of the surface.

        """
        return _Graphic3d.Graphic3d_TextureMap_EnableModulate(self, *args)

    def EnableRepeat(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        use this methods if you want to enable texture repetition on your objects.

        """
        return _Graphic3d.Graphic3d_TextureMap_EnableRepeat(self, *args)

    def EnableSmooth(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        enable texture smoothing.

        """
        return _Graphic3d.Graphic3d_TextureMap_EnableSmooth(self, *args)

    def IsModulate(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns True if the texture is modulate.

        """
        return _Graphic3d.Graphic3d_TextureMap_IsModulate(self, *args)

    def IsRepeat(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns True if the texture repeat is enable.

        """
        return _Graphic3d.Graphic3d_TextureMap_IsRepeat(self, *args)

    def IsSmoothed(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns True if the texture is smoothed.

        """
        return _Graphic3d.Graphic3d_TextureMap_IsSmoothed(self, *args)

    def SetAnisoFilter(self, *args):
        r"""

        Parameters
        ----------
        theLevel: Graphic3d_LevelOfTextureAnisotropy

        Return
        -------
        None

        Description
        -----------
        Parameter theLevel level of anisotropy texture filter.

        """
        return _Graphic3d.Graphic3d_TextureMap_SetAnisoFilter(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_TextureMap

# Register Graphic3d_TextureMap in _Graphic3d:
_Graphic3d.Graphic3d_TextureMap_swigregister(Graphic3d_TextureMap)
class Graphic3d_TransformPersScaledAbove(Graphic3d_TransformPers):
    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"""

        Parameters
        ----------
        theScale: float
        thePnt: gp_Pnt

        Return
        -------
        None

        Description
        -----------
        Create a Zoom transformation persistence with an anchor 3D point and a scale value.

        """
        _Graphic3d.Graphic3d_TransformPersScaledAbove_swiginit(self, _Graphic3d.new_Graphic3d_TransformPersScaledAbove(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_TransformPersScaledAbove

# Register Graphic3d_TransformPersScaledAbove in _Graphic3d:
_Graphic3d.Graphic3d_TransformPersScaledAbove_swigregister(Graphic3d_TransformPersScaledAbove)
class Graphic3d_CubeMap(Graphic3d_TextureMap):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

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

    def CompressedValue(self, *args):
        r"""

        Parameters
        ----------
        theSupported: Image_SupportedFormats

        Return
        -------
        opencascade::handle<Image_CompressedPixMap>

        Description
        -----------
        Returns current cubemap side as compressed PixMap. Returns null handle if current side is invalid or if image is not in supported compressed format.

        """
        return _Graphic3d.Graphic3d_CubeMap_CompressedValue(self, *args)

    def CurrentSide(self, *args):
        r"""
        Return
        -------
        Graphic3d_CubeMapSide

        Description
        -----------
        Returns current cubemap side (iterator state).

        """
        return _Graphic3d.Graphic3d_CubeMap_CurrentSide(self, *args)

    def HasMipmaps(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns whether mipmaps of cubemap will be generated or not.

        """
        return _Graphic3d.Graphic3d_CubeMap_HasMipmaps(self, *args)

    def More(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns whether the iterator has reached the end (true if it hasn't).

        """
        return _Graphic3d.Graphic3d_CubeMap_More(self, *args)

    def Next(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Moves iterator to the next cubemap side. Uses OpenGL cubemap sides order +X -> -X -> +Y -> -Y -> +Z -> -Z.

        """
        return _Graphic3d.Graphic3d_CubeMap_Next(self, *args)

    def Reset(self, *args):
        r"""
        Return
        -------
        Graphic3d_CubeMap

        Description
        -----------
        Sets iterator state to +X cubemap side.

        """
        return _Graphic3d.Graphic3d_CubeMap_Reset(self, *args)

    def SetMipmapsGeneration(self, *args):
        r"""

        Parameters
        ----------
        theToGenerateMipmaps: bool

        Return
        -------
        None

        Description
        -----------
        Sets whether to generate mipmaps of cubemap or not.

        """
        return _Graphic3d.Graphic3d_CubeMap_SetMipmapsGeneration(self, *args)

    def SetZInversion(self, *args):
        r"""

        Parameters
        ----------
        theZIsInverted: bool

        Return
        -------
        None

        Description
        -----------
        Sets Z axis inversion (vertical flipping).

        """
        return _Graphic3d.Graphic3d_CubeMap_SetZInversion(self, *args)

    def Value(self, *args):
        r"""

        Parameters
        ----------
        theSupported: Image_SupportedFormats

        Return
        -------
        opencascade::handle<Image_PixMap>

        Description
        -----------
        Returns PixMap containing current side of cubemap. Returns null handle if current side is invalid.

        """
        return _Graphic3d.Graphic3d_CubeMap_Value(self, *args)

    def ZIsInverted(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Returns whether Z axis is inverted.

        """
        return _Graphic3d.Graphic3d_CubeMap_ZIsInverted(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_CubeMap

# Register Graphic3d_CubeMap in _Graphic3d:
_Graphic3d.Graphic3d_CubeMap_swigregister(Graphic3d_CubeMap)
class Graphic3d_MutableIndexBuffer(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"""

        Parameters
        ----------
        theAlloc: NCollection_BaseAllocator

        Return
        -------
        None

        Description
        -----------
        Empty constructor.

        """
        _Graphic3d.Graphic3d_MutableIndexBuffer_swiginit(self, _Graphic3d.new_Graphic3d_MutableIndexBuffer(*args))

    def Invalidate(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Invalidate the entire buffer data.

        Parameters
        ----------
        theIndexLower: int
        theIndexUpper: int

        Return
        -------
        None

        Description
        -----------
        Invalidate the given indexes (starting from 0).

        """
        return _Graphic3d.Graphic3d_MutableIndexBuffer_Invalidate(self, *args)

    def InvalidatedRange(self, *args):
        r"""
        Return
        -------
        Graphic3d_BufferRange

        Description
        -----------
        Return invalidated range.

        """
        return _Graphic3d.Graphic3d_MutableIndexBuffer_InvalidatedRange(self, *args)

    def IsMutable(self, *args):
        r"""
        Return
        -------
        bool

        Description
        -----------
        Return True if data can be invalidated.

        """
        return _Graphic3d.Graphic3d_MutableIndexBuffer_IsMutable(self, *args)

    def Validate(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Reset invalidated range.

        """
        return _Graphic3d.Graphic3d_MutableIndexBuffer_Validate(self, *args)

    def invalidate(self, *args):
        r"""

        Parameters
        ----------
        theRange: Graphic3d_BufferRange

        Return
        -------
        None

        Description
        -----------
        Invalidate specified sub-range of data (as byte offsets).

        """
        return _Graphic3d.Graphic3d_MutableIndexBuffer_invalidate(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_MutableIndexBuffer

# Register Graphic3d_MutableIndexBuffer in _Graphic3d:
_Graphic3d.Graphic3d_MutableIndexBuffer_swigregister(Graphic3d_MutableIndexBuffer)
class Graphic3d_Texture1D(Graphic3d_TextureMap):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")

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

    def Name(self, *args):
        r"""
        Return
        -------
        Graphic3d_NameOfTexture1D

        Description
        -----------
        Returns the name of the predefined textures or NOT_1D_UNKNOWN when the name is given as a filename.

        """
        return _Graphic3d.Graphic3d_Texture1D_Name(self, *args)

    @staticmethod
    def NumberOfTextures(*args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Returns the number of predefined textures.

        """
        return _Graphic3d.Graphic3d_Texture1D_NumberOfTextures(*args)

    @staticmethod
    def TextureName(*args):
        r"""

        Parameters
        ----------
        aRank: int

        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        Returns the name of the predefined texture of rank <aRank>.

        """
        return _Graphic3d.Graphic3d_Texture1D_TextureName(*args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_Texture1D

# Register Graphic3d_Texture1D in _Graphic3d:
_Graphic3d.Graphic3d_Texture1D_swigregister(Graphic3d_Texture1D)
class Graphic3d_Texture2D(Graphic3d_TextureMap):
    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"""

        Parameters
        ----------
        theFileName: str

        Return
        -------
        None

        Description
        -----------
        Creates a texture from a file. MipMaps levels will be automatically generated if needed.

        Parameters
        ----------
        theNOT: Graphic3d_NameOfTexture2D

        Return
        -------
        None

        Description
        -----------
        Creates a texture from a predefined texture name set. MipMaps levels will be automatically generated if needed.

        Parameters
        ----------
        thePixMap: Image_PixMap

        Return
        -------
        None

        Description
        -----------
        Creates a texture from the pixmap. MipMaps levels will be automatically generated if needed.

        """
        _Graphic3d.Graphic3d_Texture2D_swiginit(self, _Graphic3d.new_Graphic3d_Texture2D(*args))

    def Name(self, *args):
        r"""
        Return
        -------
        Graphic3d_NameOfTexture2D

        Description
        -----------
        Returns the name of the predefined textures or NOT_2D_UNKNOWN when the name is given as a filename.

        """
        return _Graphic3d.Graphic3d_Texture2D_Name(self, *args)

    @staticmethod
    def NumberOfTextures(*args):
        r"""
        Return
        -------
        int

        Description
        -----------
        Returns the number of predefined textures.

        """
        return _Graphic3d.Graphic3d_Texture2D_NumberOfTextures(*args)

    def SetImage(self, *args):
        r"""

        Parameters
        ----------
        thePixMap: Image_PixMap

        Return
        -------
        None

        Description
        -----------
        Assign new image to the texture. Note that this method does not invalidate already uploaded resources - consider calling ::UpdateRevision() if needed.

        """
        return _Graphic3d.Graphic3d_Texture2D_SetImage(self, *args)

    @staticmethod
    def TextureName(*args):
        r"""

        Parameters
        ----------
        theRank: int

        Return
        -------
        TCollection_AsciiString

        Description
        -----------
        Returns the name of the predefined texture of rank <aRank>.

        """
        return _Graphic3d.Graphic3d_Texture2D_TextureName(*args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_Texture2D

# Register Graphic3d_Texture2D in _Graphic3d:
_Graphic3d.Graphic3d_Texture2D_swigregister(Graphic3d_Texture2D)
class Graphic3d_Texture3D(Graphic3d_TextureMap):
    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"""

        Parameters
        ----------
        theFileName: str

        Return
        -------
        None

        Description
        -----------
        Creates a texture from a file.

        Parameters
        ----------
        thePixMap: Image_PixMap

        Return
        -------
        None

        Description
        -----------
        Creates a texture from the pixmap.

        Parameters
        ----------
        theFiles: NCollection_Array1<TCollection_AsciiString>

        Return
        -------
        None

        Description
        -----------
        Creates a texture from a file.

        """
        _Graphic3d.Graphic3d_Texture3D_swiginit(self, _Graphic3d.new_Graphic3d_Texture3D(*args))

    def SetImage(self, *args):
        r"""

        Parameters
        ----------
        thePixMap: Image_PixMap

        Return
        -------
        None

        Description
        -----------
        Assign new image to the texture. Note that this method does not invalidate already uploaded resources - consider calling ::UpdateRevision() if needed.

        """
        return _Graphic3d.Graphic3d_Texture3D_SetImage(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_Texture3D

# Register Graphic3d_Texture3D in _Graphic3d:
_Graphic3d.Graphic3d_Texture3D_swigregister(Graphic3d_Texture3D)
class Graphic3d_CubeMapSeparate(Graphic3d_CubeMap):
    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"""

        Parameters
        ----------
        thePaths: NCollection_Array1<TCollection_AsciiString>

        Return
        -------
        None

        Description
        -----------
        Initializes cubemap to be loaded from file. @thePaths - array of paths to separate image files (has to have size equal 6).

        Parameters
        ----------
        theImages: Image_PixMap

        Return
        -------
        None

        Description
        -----------
        Initializes cubemap to be set directly from PixMaps. @theImages - array if PixMaps (has to have size equal 6).

        """
        _Graphic3d.Graphic3d_CubeMapSeparate_swiginit(self, _Graphic3d.new_Graphic3d_CubeMapSeparate(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_CubeMapSeparate

# Register Graphic3d_CubeMapSeparate in _Graphic3d:
_Graphic3d.Graphic3d_CubeMapSeparate_swigregister(Graphic3d_CubeMapSeparate)
class Graphic3d_MediaTexture(Graphic3d_Texture2D):
    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"""

        Parameters
        ----------
        theMutex: Standard_HMutex
        thePlane: int (optional, default to -1)

        Return
        -------
        None

        Description
        -----------
        Main constructor.

        """
        _Graphic3d.Graphic3d_MediaTexture_swiginit(self, _Graphic3d.new_Graphic3d_MediaTexture(*args))

    def Frame(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Media_Frame>

        Description
        -----------
        Return the frame.

        """
        return _Graphic3d.Graphic3d_MediaTexture_Frame(self, *args)

    def GenerateNewId(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Regenerate a new texture id.

        """
        return _Graphic3d.Graphic3d_MediaTexture_GenerateNewId(self, *args)

    def SetFrame(self, *args):
        r"""

        Parameters
        ----------
        theFrame: Media_Frame

        Return
        -------
        None

        Description
        -----------
        Set the frame.

        """
        return _Graphic3d.Graphic3d_MediaTexture_SetFrame(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_MediaTexture

# Register Graphic3d_MediaTexture in _Graphic3d:
_Graphic3d.Graphic3d_MediaTexture_swigregister(Graphic3d_MediaTexture)
class Graphic3d_Texture1Dmanual(Graphic3d_Texture1D):
    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"""

        Parameters
        ----------
        theFileName: str

        Return
        -------
        None

        Description
        -----------
        Creates a texture from the file FileName.

        Parameters
        ----------
        theNOT: Graphic3d_NameOfTexture1D

        Return
        -------
        None

        Description
        -----------
        Create a texture from a predefined texture name set.

        Parameters
        ----------
        thePixMap: Image_PixMap

        Return
        -------
        None

        Description
        -----------
        Creates a texture from the pixmap.

        """
        _Graphic3d.Graphic3d_Texture1Dmanual_swiginit(self, _Graphic3d.new_Graphic3d_Texture1Dmanual(*args))


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_Texture1Dmanual

# Register Graphic3d_Texture1Dmanual in _Graphic3d:
_Graphic3d.Graphic3d_Texture1Dmanual_swigregister(Graphic3d_Texture1Dmanual)
class Graphic3d_Texture1Dsegment(Graphic3d_Texture1D):
    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"""

        Parameters
        ----------
        theFileName: str

        Return
        -------
        None

        Description
        -----------
        Creates a texture from a file.

        Parameters
        ----------
        theNOT: Graphic3d_NameOfTexture1D

        Return
        -------
        None

        Description
        -----------
        Creates a texture from a predefined texture name set.

        Parameters
        ----------
        thePixMap: Image_PixMap

        Return
        -------
        None

        Description
        -----------
        Creates a texture from the pixmap.

        """
        _Graphic3d.Graphic3d_Texture1Dsegment_swiginit(self, _Graphic3d.new_Graphic3d_Texture1Dsegment(*args))

    def Segment(self, *args):
        r"""

        Parameters
        ----------

        Return
        -------
        theX1: float
        theY1: float
        theZ1: float
        theX2: float
        theY2: float
        theZ2: float

        Description
        -----------
        Returns the values of the current segment X1, Y1, Z1 , X2, Y2, Z2.

        """
        return _Graphic3d.Graphic3d_Texture1Dsegment_Segment(self, *args)

    def SetSegment(self, *args):
        r"""

        Parameters
        ----------
        theX1: float
        theY1: float
        theZ1: float
        theX2: float
        theY2: float
        theZ2: float

        Return
        -------
        None

        Description
        -----------
        Sets the texture application bounds. Defines the way the texture is stretched across facets. Default values are <0.0, 0.0, 0.0> , <0.0, 0.0, 1.0>.

        """
        return _Graphic3d.Graphic3d_Texture1Dsegment_SetSegment(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_Texture1Dsegment

# Register Graphic3d_Texture1Dsegment in _Graphic3d:
_Graphic3d.Graphic3d_Texture1Dsegment_swigregister(Graphic3d_Texture1Dsegment)
class Graphic3d_Texture2Dplane(Graphic3d_Texture2D):
    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"""

        Parameters
        ----------
        theFileName: str

        Return
        -------
        None

        Description
        -----------
        Creates a texture from a file.

        Parameters
        ----------
        theNOT: Graphic3d_NameOfTexture2D

        Return
        -------
        None

        Description
        -----------
        Creates a texture from a predefined texture name set.

        Parameters
        ----------
        thePixMap: Image_PixMap

        Return
        -------
        None

        Description
        -----------
        Creates a texture from the pixmap.

        """
        _Graphic3d.Graphic3d_Texture2Dplane_swiginit(self, _Graphic3d.new_Graphic3d_Texture2Dplane(*args))

    def Plane(self, *args):
        r"""
        Return
        -------
        Graphic3d_NameOfTexturePlane

        Description
        -----------
        Returns the current texture plane name or NOTP_UNKNOWN when the plane is user defined.

        """
        return _Graphic3d.Graphic3d_Texture2Dplane_Plane(self, *args)

    def PlaneS(self, *args):
        r"""

        Parameters
        ----------

        Return
        -------
        A: float
        B: float
        C: float
        D: float

        Description
        -----------
        Returns the current texture plane S equation.

        """
        return _Graphic3d.Graphic3d_Texture2Dplane_PlaneS(self, *args)

    def PlaneT(self, *args):
        r"""

        Parameters
        ----------

        Return
        -------
        A: float
        B: float
        C: float
        D: float

        Description
        -----------
        Returns the current texture plane T equation.

        """
        return _Graphic3d.Graphic3d_Texture2Dplane_PlaneT(self, *args)

    def Rotation(self, *args):
        r"""

        Parameters
        ----------

        Return
        -------
        theVal: float

        Description
        -----------
        Returns the current texture rotation angle.

        """
        return _Graphic3d.Graphic3d_Texture2Dplane_Rotation(self, *args)

    def ScaleS(self, *args):
        r"""

        Parameters
        ----------

        Return
        -------
        theVal: float

        Description
        -----------
        Returns the current texture S scale value.

        """
        return _Graphic3d.Graphic3d_Texture2Dplane_ScaleS(self, *args)

    def ScaleT(self, *args):
        r"""

        Parameters
        ----------

        Return
        -------
        theVal: float

        Description
        -----------
        Returns the current texture T scale value.

        """
        return _Graphic3d.Graphic3d_Texture2Dplane_ScaleT(self, *args)

    def SetPlane(self, *args):
        r"""

        Parameters
        ----------
        thePlane: Graphic3d_NameOfTexturePlane

        Return
        -------
        None

        Description
        -----------
        Defines the texture projection plane for both S and T texture coordinate default is NOTP_XY meaning: <1.0, 0.0, 0.0, 0.0> for S and <0.0, 1.0, 0.0, 0.0> for T.

        """
        return _Graphic3d.Graphic3d_Texture2Dplane_SetPlane(self, *args)

    def SetPlaneS(self, *args):
        r"""

        Parameters
        ----------
        A: float
        B: float
        C: float
        D: float

        Return
        -------
        None

        Description
        -----------
        Defines the texture projection plane for texture coordinate S default is <1.0, 0.0, 0.0, 0.0>.

        """
        return _Graphic3d.Graphic3d_Texture2Dplane_SetPlaneS(self, *args)

    def SetPlaneT(self, *args):
        r"""

        Parameters
        ----------
        A: float
        B: float
        C: float
        D: float

        Return
        -------
        None

        Description
        -----------
        Defines the texture projection plane for texture coordinate T default is <0.0, 1.0, 0.0, 0.0>.

        """
        return _Graphic3d.Graphic3d_Texture2Dplane_SetPlaneT(self, *args)

    def SetRotation(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Sets the rotation angle of the whole texture. the same result might be achieved by recomputing the S and T plane equation but it's not the easiest way... the angle is expressed in degrees default is 0.0.

        """
        return _Graphic3d.Graphic3d_Texture2Dplane_SetRotation(self, *args)

    def SetScaleS(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Defines the texture scale for the S texture coordinate much easier than recomputing the S plane equation but the result is the same default to 1.0.

        """
        return _Graphic3d.Graphic3d_Texture2Dplane_SetScaleS(self, *args)

    def SetScaleT(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Defines the texture scale for the T texture coordinate much easier than recompution the T plane equation but the result is the same default to 1.0.

        """
        return _Graphic3d.Graphic3d_Texture2Dplane_SetScaleT(self, *args)

    def SetTranslateS(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Defines the texture translation for the S texture coordinate you can obtain the same effect by modifying the S plane equation but its not easier. default to 0.0.

        """
        return _Graphic3d.Graphic3d_Texture2Dplane_SetTranslateS(self, *args)

    def SetTranslateT(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Defines the texture translation for the T texture coordinate you can obtain the same effect by modifying the T plane equation but its not easier. default to 0.0.

        """
        return _Graphic3d.Graphic3d_Texture2Dplane_SetTranslateT(self, *args)

    def TranslateS(self, *args):
        r"""

        Parameters
        ----------

        Return
        -------
        theVal: float

        Description
        -----------
        Returns the current texture S translation value.

        """
        return _Graphic3d.Graphic3d_Texture2Dplane_TranslateS(self, *args)

    def TranslateT(self, *args):
        r"""

        Parameters
        ----------

        Return
        -------
        theVal: float

        Description
        -----------
        Returns the current texture T translation value.

        """
        return _Graphic3d.Graphic3d_Texture2Dplane_TranslateT(self, *args)


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


    __repr__ = _dumps_object

    __swig_destroy__ = _Graphic3d.delete_Graphic3d_Texture2Dplane

# Register Graphic3d_Texture2Dplane in _Graphic3d:
_Graphic3d.Graphic3d_Texture2Dplane_swigregister(Graphic3d_Texture2Dplane)

@classnotwrapped
class Graphic3d_UniformValue:
	pass

@classnotwrapped
class Graphic3d_UniformValueType:
	pass

@classnotwrapped
class Graphic3d_UniformValueTypeID:
	pass

@classnotwrapped
class Graphic3d_Buffer:
	pass

@classnotwrapped
class Graphic3d_IndexBuffer:
	pass

@classnotwrapped
class Graphic3d_TextureSet:
	pass

@classnotwrapped
class Graphic3d_CubeMapOrder:
	pass

@classnotwrapped
class Graphic3d_CubeMapPacked:
	pass

@classnotwrapped
class Graphic3d_BvhCStructureSetTrsfPers:
	pass



Graphic3d_Texture2Dmanual=Graphic3d_Texture2D


@deprecated
def Graphic3d_ArrayOfPrimitives_CreateArray(*args):
	return Graphic3d_ArrayOfPrimitives.CreateArray(*args)

@deprecated
def Graphic3d_ArrayOfPrimitives_CreateArray(*args):
	return Graphic3d_ArrayOfPrimitives.CreateArray(*args)

@deprecated
def Graphic3d_Aspects_DefaultLinePatternForType(*args):
	return Graphic3d_Aspects.DefaultLinePatternForType(*args)

@deprecated
def Graphic3d_Aspects_DefaultLineTypeForPattern(*args):
	return Graphic3d_Aspects.DefaultLineTypeForPattern(*args)

@deprecated
def Graphic3d_Attribute_Stride(*args):
	return Graphic3d_Attribute.Stride(*args)

@deprecated
def Graphic3d_BSDF_CreateDiffuse(*args):
	return Graphic3d_BSDF.CreateDiffuse(*args)

@deprecated
def Graphic3d_BSDF_CreateGlass(*args):
	return Graphic3d_BSDF.CreateGlass(*args)

@deprecated
def Graphic3d_BSDF_CreateMetallic(*args):
	return Graphic3d_BSDF.CreateMetallic(*args)

@deprecated
def Graphic3d_BSDF_CreateMetallicRoughness(*args):
	return Graphic3d_BSDF.CreateMetallicRoughness(*args)

@deprecated
def Graphic3d_BSDF_CreateTransparent(*args):
	return Graphic3d_BSDF.CreateTransparent(*args)

@deprecated
def Graphic3d_Camera_Interpolate(*args):
	return Graphic3d_Camera.Interpolate(*args)

@deprecated
def Graphic3d_Fresnel_CreateConductor(*args):
	return Graphic3d_Fresnel.CreateConductor(*args)

@deprecated
def Graphic3d_Fresnel_CreateConductor(*args):
	return Graphic3d_Fresnel.CreateConductor(*args)

@deprecated
def Graphic3d_Fresnel_CreateConstant(*args):
	return Graphic3d_Fresnel.CreateConstant(*args)

@deprecated
def Graphic3d_Fresnel_CreateDielectric(*args):
	return Graphic3d_Fresnel.CreateDielectric(*args)

@deprecated
def Graphic3d_Fresnel_CreateSchlick(*args):
	return Graphic3d_Fresnel.CreateSchlick(*args)

@deprecated
def Graphic3d_GraphicDriverFactory_DefaultDriverFactory(*args):
	return Graphic3d_GraphicDriverFactory.DefaultDriverFactory(*args)

@deprecated
def Graphic3d_GraphicDriverFactory_DriverFactories(*args):
	return Graphic3d_GraphicDriverFactory.DriverFactories(*args)

@deprecated
def Graphic3d_GraphicDriverFactory_RegisterFactory(*args):
	return Graphic3d_GraphicDriverFactory.RegisterFactory(*args)

@deprecated
def Graphic3d_GraphicDriverFactory_UnregisterFactory(*args):
	return Graphic3d_GraphicDriverFactory.UnregisterFactory(*args)

@deprecated
def Graphic3d_MarkerImage_StandardMarker(*args):
	return Graphic3d_MarkerImage.StandardMarker(*args)

@deprecated
def Graphic3d_MaterialAspect_MaterialFromName(*args):
	return Graphic3d_MaterialAspect.MaterialFromName(*args)

@deprecated
def Graphic3d_MaterialAspect_MaterialFromName(*args):
	return Graphic3d_MaterialAspect.MaterialFromName(*args)

@deprecated
def Graphic3d_MaterialAspect_MaterialName(*args):
	return Graphic3d_MaterialAspect.MaterialName(*args)

@deprecated
def Graphic3d_MaterialAspect_MaterialType(*args):
	return Graphic3d_MaterialAspect.MaterialType(*args)

@deprecated
def Graphic3d_MaterialAspect_NumberOfMaterials(*args):
	return Graphic3d_MaterialAspect.NumberOfMaterials(*args)

@deprecated
def Graphic3d_PBRMaterial_GenerateEnvLUT(*args):
	return Graphic3d_PBRMaterial.GenerateEnvLUT(*args)

@deprecated
def Graphic3d_PBRMaterial_MetallicFromSpecular(*args):
	return Graphic3d_PBRMaterial.MetallicFromSpecular(*args)

@deprecated
def Graphic3d_PBRMaterial_MinRoughness(*args):
	return Graphic3d_PBRMaterial.MinRoughness(*args)

@deprecated
def Graphic3d_PBRMaterial_Roughness(*args):
	return Graphic3d_PBRMaterial.Roughness(*args)

@deprecated
def Graphic3d_PBRMaterial_RoughnessFromSpecular(*args):
	return Graphic3d_PBRMaterial.RoughnessFromSpecular(*args)

@deprecated
def Graphic3d_PBRMaterial_SpecIBLMapSamplesFactor(*args):
	return Graphic3d_PBRMaterial.SpecIBLMapSamplesFactor(*args)

@deprecated
def Graphic3d_ShaderObject_CreateFromFile(*args):
	return Graphic3d_ShaderObject.CreateFromFile(*args)

@deprecated
def Graphic3d_ShaderObject_CreateFromSource(*args):
	return Graphic3d_ShaderObject.CreateFromSource(*args)

@deprecated
def Graphic3d_ShaderProgram_ShadersFolder(*args):
	return Graphic3d_ShaderProgram.ShadersFolder(*args)

@deprecated
def Graphic3d_Structure_AcceptConnection(*args):
	return Graphic3d_Structure.AcceptConnection(*args)

@deprecated
def Graphic3d_Structure_Network(*args):
	return Graphic3d_Structure.Network(*args)

@deprecated
def Graphic3d_Structure_PrintNetwork(*args):
	return Graphic3d_Structure.PrintNetwork(*args)

@deprecated
def Graphic3d_Structure_Transforms(*args):
	return Graphic3d_Structure.Transforms(*args)

@deprecated
def Graphic3d_TextureRoot_TexturesFolder(*args):
	return Graphic3d_TextureRoot.TexturesFolder(*args)

@deprecated
def Graphic3d_TransformPers_IsAxial(*args):
	return Graphic3d_TransformPers.IsAxial(*args)

@deprecated
def Graphic3d_TransformPers_IsOrthoPers(*args):
	return Graphic3d_TransformPers.IsOrthoPers(*args)

@deprecated
def Graphic3d_TransformPers_IsTrihedronOr2d(*args):
	return Graphic3d_TransformPers.IsTrihedronOr2d(*args)

@deprecated
def Graphic3d_TransformPers_IsZoomOrRotate(*args):
	return Graphic3d_TransformPers.IsZoomOrRotate(*args)

@deprecated
def Graphic3d_TextureEnv_NumberOfTextures(*args):
	return Graphic3d_TextureEnv.NumberOfTextures(*args)

@deprecated
def Graphic3d_TextureEnv_TextureName(*args):
	return Graphic3d_TextureEnv.TextureName(*args)

@deprecated
def Graphic3d_Texture1D_NumberOfTextures(*args):
	return Graphic3d_Texture1D.NumberOfTextures(*args)

@deprecated
def Graphic3d_Texture1D_TextureName(*args):
	return Graphic3d_Texture1D.TextureName(*args)

@deprecated
def Graphic3d_Texture2D_NumberOfTextures(*args):
	return Graphic3d_Texture2D.NumberOfTextures(*args)

@deprecated
def Graphic3d_Texture2D_TextureName(*args):
	return Graphic3d_Texture2D.TextureName(*args)



