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

"""
VrmlAPI module, see official documentation at
https://dev.opencascade.org/doc/occt-7.9.0/refman/html/package_vrmlapi.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 _VrmlAPI
else:
    import _VrmlAPI

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

# Register SwigPyIterator in _VrmlAPI:
_VrmlAPI.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 _VrmlAPI.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 = _VrmlAPI.ios_base_erase_event
    imbue_event = _VrmlAPI.ios_base_imbue_event
    copyfmt_event = _VrmlAPI.ios_base_copyfmt_event

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

# Register ios in _VrmlAPI:
_VrmlAPI.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):
        _VrmlAPI.ostream_swiginit(self, _VrmlAPI.new_ostream(__sb))
    __swig_destroy__ = _VrmlAPI.delete_ostream

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

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

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

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

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

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

# Register ostream in _VrmlAPI:
_VrmlAPI.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):
        _VrmlAPI.istream_swiginit(self, _VrmlAPI.new_istream(__sb))
    __swig_destroy__ = _VrmlAPI.delete_istream

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

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

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

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

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

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

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

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

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

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

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

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

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

# Register istream in _VrmlAPI:
_VrmlAPI.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):
        _VrmlAPI.iostream_swiginit(self, _VrmlAPI.new_iostream(__sb))
    __swig_destroy__ = _VrmlAPI.delete_iostream

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

endl_cb_ptr = _VrmlAPI.endl_cb_ptr
endl = _VrmlAPI.endl
ends_cb_ptr = _VrmlAPI.ends_cb_ptr
ends = _VrmlAPI.ends
flush_cb_ptr = _VrmlAPI.flush_cb_ptr
flush = _VrmlAPI.flush
import OCC.Core.Standard
import OCC.Core.NCollection
import OCC.Core.TopoDS
import OCC.Core.Message
import OCC.Core.TCollection
import OCC.Core.OSD
import OCC.Core.TColStd
import OCC.Core.TopAbs
import OCC.Core.TopLoc
import OCC.Core.gp
import OCC.Core.RWMesh
import OCC.Core.TDF
import OCC.Core.TDocStd
import OCC.Core.CDF
import OCC.Core.CDM
import OCC.Core.Resource
import OCC.Core.PCDM
import OCC.Core.Storage
import OCC.Core.Graphic3d
import OCC.Core.BVH
import OCC.Core.Quantity
import OCC.Core.Aspect
import OCC.Core.Image
import OCC.Core.Bnd
import OCC.Core.TColgp
import OCC.Core.Media
import OCC.Core.XCAFPrs
import OCC.Core.AIS
import OCC.Core.SelectMgr
import OCC.Core.Select3D
import OCC.Core.SelectBasics
import OCC.Core.Geom
import OCC.Core.GeomAbs
import OCC.Core.PrsMgr
import OCC.Core.Prs3d
import OCC.Core.Poly
import OCC.Core.TShort
import OCC.Core.V3d
import OCC.Core.StdSelect
import OCC.Core.TopTools
import OCC.Core.XCAFDoc
import OCC.Core.TDataStd
import OCC.Core.XCAFDimTolObjects
import OCC.Core.UnitsMethods
import OCC.Core.XCAFNoteObjects
import OCC.Core.XCAFView
import OCC.Core.TPrsStd
import OCC.Core.TDataXtd
import OCC.Core.TNaming
import OCC.Core.VrmlConverter
import OCC.Core.Adaptor3d
import OCC.Core.Adaptor2d
import OCC.Core.Geom2d
import OCC.Core.math
import OCC.Core.Vrml
import OCC.Core.HLRAlgo
import OCC.Core.BRepAdaptor
import OCC.Core.Geom2dAdaptor
import OCC.Core.GeomAdaptor

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

VrmlAPI_ShadedRepresentation = _VrmlAPI.VrmlAPI_ShadedRepresentation
VrmlAPI_WireFrameRepresentation = _VrmlAPI.VrmlAPI_WireFrameRepresentation
VrmlAPI_BothRepresentation = _VrmlAPI.VrmlAPI_BothRepresentation


class VrmlAPI_RepresentationOfShape(IntEnum):
	VrmlAPI_ShadedRepresentation = 0
	VrmlAPI_WireFrameRepresentation = 1
	VrmlAPI_BothRepresentation = 2
VrmlAPI_ShadedRepresentation = VrmlAPI_RepresentationOfShape.VrmlAPI_ShadedRepresentation
VrmlAPI_WireFrameRepresentation = VrmlAPI_RepresentationOfShape.VrmlAPI_WireFrameRepresentation
VrmlAPI_BothRepresentation = VrmlAPI_RepresentationOfShape.VrmlAPI_BothRepresentation


def Handle_VrmlAPI_CafReader_Create():
    return _VrmlAPI.Handle_VrmlAPI_CafReader_Create()

def Handle_VrmlAPI_CafReader_DownCast(t):
    return _VrmlAPI.Handle_VrmlAPI_CafReader_DownCast(t)

def Handle_VrmlAPI_CafReader_IsNull(t):
    return _VrmlAPI.Handle_VrmlAPI_CafReader_IsNull(t)
class vrmlapi(object):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr

    @staticmethod
    def Write(*args):
        r"""

        Parameters
        ----------
        aShape: TopoDS_Shape
        aFileName: str
        aVersion: int (optional, default to 2)

        Return
        -------
        bool

        Description
        -----------
        With help of this class user can change parameters of writing. Converts the shape aShape to VRML format of the passed version and writes it to the file identified by aFileName using default parameters.

        """
        return _VrmlAPI.vrmlapi_Write(*args)

    __repr__ = _dumps_object


    def __init__(self):
        _VrmlAPI.vrmlapi_swiginit(self, _VrmlAPI.new_vrmlapi())
    __swig_destroy__ = _VrmlAPI.delete_vrmlapi

# Register vrmlapi in _VrmlAPI:
_VrmlAPI.vrmlapi_swigregister(vrmlapi)
class VrmlAPI_CafReader(OCC.Core.RWMesh.RWMesh_CafReader):
    thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
    __repr__ = _swig_repr


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


    __repr__ = _dumps_object


    def __init__(self):
        _VrmlAPI.VrmlAPI_CafReader_swiginit(self, _VrmlAPI.new_VrmlAPI_CafReader())
    __swig_destroy__ = _VrmlAPI.delete_VrmlAPI_CafReader

# Register VrmlAPI_CafReader in _VrmlAPI:
_VrmlAPI.VrmlAPI_CafReader_swigregister(VrmlAPI_CafReader)
class VrmlAPI_Writer(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 writer object with default parameters.

        """
        _VrmlAPI.VrmlAPI_Writer_swiginit(self, _VrmlAPI.new_VrmlAPI_Writer(*args))

    def Drawer(self, *args):
        r"""
        Return
        -------
        opencascade::handle<VrmlConverter_Drawer>

        Description
        -----------
        Returns drawer object.

        """
        return _VrmlAPI.VrmlAPI_Writer_Drawer(self, *args)

    def GetFreeBoundsMaterial(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Vrml_Material>

        Description
        -----------
        No available documentation.

        """
        return _VrmlAPI.VrmlAPI_Writer_GetFreeBoundsMaterial(self, *args)

    def GetFrontMaterial(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Vrml_Material>

        Description
        -----------
        No available documentation.

        """
        return _VrmlAPI.VrmlAPI_Writer_GetFrontMaterial(self, *args)

    def GetLineMaterial(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Vrml_Material>

        Description
        -----------
        No available documentation.

        """
        return _VrmlAPI.VrmlAPI_Writer_GetLineMaterial(self, *args)

    def GetPointsMaterial(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Vrml_Material>

        Description
        -----------
        No available documentation.

        """
        return _VrmlAPI.VrmlAPI_Writer_GetPointsMaterial(self, *args)

    def GetRepresentation(self, *args):
        r"""
        Return
        -------
        VrmlAPI_RepresentationOfShape

        Description
        -----------
        Returns the representation of the shape which is written to the VRML file. Types of representation are set through the VrmlAPI_RepresentationOfShape enumeration.

        """
        return _VrmlAPI.VrmlAPI_Writer_GetRepresentation(self, *args)

    def GetUisoMaterial(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Vrml_Material>

        Description
        -----------
        No available documentation.

        """
        return _VrmlAPI.VrmlAPI_Writer_GetUisoMaterial(self, *args)

    def GetUnfreeBoundsMaterial(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Vrml_Material>

        Description
        -----------
        No available documentation.

        """
        return _VrmlAPI.VrmlAPI_Writer_GetUnfreeBoundsMaterial(self, *args)

    def GetVisoMaterial(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Vrml_Material>

        Description
        -----------
        No available documentation.

        """
        return _VrmlAPI.VrmlAPI_Writer_GetVisoMaterial(self, *args)

    def GetWireMaterial(self, *args):
        r"""
        Return
        -------
        opencascade::handle<Vrml_Material>

        Description
        -----------
        No available documentation.

        """
        return _VrmlAPI.VrmlAPI_Writer_GetWireMaterial(self, *args)

    def ResetToDefaults(self, *args):
        r"""
        Return
        -------
        None

        Description
        -----------
        Resets all parameters (representation, deflection) to their default values..

        """
        return _VrmlAPI.VrmlAPI_Writer_ResetToDefaults(self, *args)

    def SetAmbientColorToMaterial(self, *args):
        r"""

        Parameters
        ----------
        aMaterial: Vrml_Material
        Color: Quantity_HArray1OfColor

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _VrmlAPI.VrmlAPI_Writer_SetAmbientColorToMaterial(self, *args)

    def SetDeflection(self, *args):
        r"""

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

        Return
        -------
        None

        Description
        -----------
        Sets the deflection aDef of the mesh algorithm which is used to compute the shaded representation of the translated shape. The default value is -1. When the deflection value is less than 0, the deflection is calculated from the relative size of the shaped.

        """
        return _VrmlAPI.VrmlAPI_Writer_SetDeflection(self, *args)

    def SetDiffuseColorToMaterial(self, *args):
        r"""

        Parameters
        ----------
        aMaterial: Vrml_Material
        Color: Quantity_HArray1OfColor

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _VrmlAPI.VrmlAPI_Writer_SetDiffuseColorToMaterial(self, *args)

    def SetEmissiveColorToMaterial(self, *args):
        r"""

        Parameters
        ----------
        aMaterial: Vrml_Material
        Color: Quantity_HArray1OfColor

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _VrmlAPI.VrmlAPI_Writer_SetEmissiveColorToMaterial(self, *args)

    def SetRepresentation(self, *args):
        r"""

        Parameters
        ----------
        aRep: VrmlAPI_RepresentationOfShape

        Return
        -------
        None

        Description
        -----------
        Sets the representation of the shape aRep which is written to the VRML file. The three options are: - shaded - wireframe - both shaded and wireframe (default) defined through the VrmlAPI_RepresentationOfShape enumeration.

        """
        return _VrmlAPI.VrmlAPI_Writer_SetRepresentation(self, *args)

    def SetShininessToMaterial(self, *args):
        r"""

        Parameters
        ----------
        aMaterial: Vrml_Material
        aShininess: float

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _VrmlAPI.VrmlAPI_Writer_SetShininessToMaterial(self, *args)

    def SetSpecularColorToMaterial(self, *args):
        r"""

        Parameters
        ----------
        aMaterial: Vrml_Material
        Color: Quantity_HArray1OfColor

        Return
        -------
        None

        Description
        -----------
        No available documentation.

        """
        return _VrmlAPI.VrmlAPI_Writer_SetSpecularColorToMaterial(self, *args)

    def SetTransparencyToMaterial(self, *args):
        r"""

        Parameters
        ----------
        aMaterial: Vrml_Material
        aTransparency: float

        Return
        -------
        None

        Description
        -----------
        Set transparency to given material.

        """
        return _VrmlAPI.VrmlAPI_Writer_SetTransparencyToMaterial(self, *args)

    def Write(self, *args):
        r"""

        Parameters
        ----------
        aShape: TopoDS_Shape
        aFile: str
        aVersion: int (optional, default to 2)

        Return
        -------
        bool

        Description
        -----------
        Converts the shape aShape to VRML format of the passed version and writes it to the file identified by aFile.

        """
        return _VrmlAPI.VrmlAPI_Writer_Write(self, *args)

    def WriteDoc(self, *args):
        r"""

        Parameters
        ----------
        theDoc: TDocStd_Document
        theFile: str
        theScale: float

        Return
        -------
        bool

        Description
        -----------
        Converts the document to VRML format of the passed version and writes it to the file identified by aFile.

        """
        return _VrmlAPI.VrmlAPI_Writer_WriteDoc(self, *args)

    __repr__ = _dumps_object

    __swig_destroy__ = _VrmlAPI.delete_VrmlAPI_Writer

# Register VrmlAPI_Writer in _VrmlAPI:
_VrmlAPI.VrmlAPI_Writer_swigregister(VrmlAPI_Writer)



@deprecated
def vrmlapi_Write(*args):
	return vrmlapi.Write(*args)



