# encoding: utf-8
# module vtkmodules.vtkRenderingOpenGL2
# from C:\Users\xukai\Downloads\发票2\venv\Lib\site-packages\vtkmodules\vtkRenderingOpenGL2.cp311-win_amd64.pyd
# by generator 1.147
# no doc

# imports
import vtkmodules.vtkCommonCore as __vtkmodules_vtkCommonCore
import vtkmodules.vtkRenderingCore as __vtkmodules_vtkRenderingCore
import vtkmodules.vtkRenderingHyperTreeGrid as __vtkmodules_vtkRenderingHyperTreeGrid


class vtkOpenGLRenderer(__vtkmodules_vtkRenderingCore.vtkRenderer):
    """
    vtkOpenGLRenderer - OpenGL renderer
    
    Superclass: vtkRenderer
    
    vtkOpenGLRenderer is a concrete implementation of the abstract class
    vtkRenderer. vtkOpenGLRenderer interfaces to the OpenGL graphics
    library.
    """
    def Clear(self): # real signature unknown; restored from __doc__
        """
        Clear(self) -> None
        C++: void Clear(void) override;
        
        Clear the image to the background color.
        """
        pass

    def DeviceRender(self): # real signature unknown; restored from __doc__
        """
        DeviceRender(self) -> None
        C++: void DeviceRender(void) override;
        
        Concrete open gl render method.
        """
        pass

    def DeviceRenderOpaqueGeometry(self, fbo, *args, **kwargs): # real signature unknown; NOTE: unreliably restored from __doc__ 
        """
        DeviceRenderOpaqueGeometry(self, fbo:vtkFrameBufferObjectBase=...)
             -> None
        C++: void DeviceRenderOpaqueGeometry(
            vtkFrameBufferObjectBase *fbo=nullptr) override;
        
        Overridden to support hidden line removal.
        """
        pass

    def DeviceRenderTranslucentPolygonalGeometry(self, fbo, *args, **kwargs): # real signature unknown; NOTE: unreliably restored from __doc__ 
        """
        DeviceRenderTranslucentPolygonalGeometry(self,
            fbo:vtkFrameBufferObjectBase=...) -> None
        C++: void DeviceRenderTranslucentPolygonalGeometry(
            vtkFrameBufferObjectBase *fbo=nullptr) override;
        
        Render translucent polygonal geometry. Default implementation
        just call UpdateTranslucentPolygonalGeometry(). Subclasses of
        vtkRenderer that can deal with depth peeling must override this
        method.
        """
        pass

    def GetDepthPeelingHigherLayer(self): # real signature unknown; restored from __doc__
        """
        GetDepthPeelingHigherLayer(self) -> int
        C++: int GetDepthPeelingHigherLayer()
        
        Is rendering at translucent geometry stage using depth peeling
        and rendering a layer other than the first one? (Boolean value)
        If so, the uniform variables UseTexture and Texture can be set.
        (Used by vtkOpenGLProperty or vtkOpenGLTexture)
        """
        return 0

    def GetEnvMapIrradiance(self): # real signature unknown; restored from __doc__
        """
        GetEnvMapIrradiance(self) -> vtkPBRIrradianceTexture
        C++: vtkPBRIrradianceTexture *GetEnvMapIrradiance()
        """
        return vtkPBRIrradianceTexture

    def GetEnvMapLookupTable(self): # real signature unknown; restored from __doc__
        """
        GetEnvMapLookupTable(self) -> vtkPBRLUTTexture
        C++: vtkPBRLUTTexture *GetEnvMapLookupTable()
        
        Get environment textures used for image based lighting.
        """
        return vtkPBRLUTTexture

    def GetEnvMapPrefiltered(self): # real signature unknown; restored from __doc__
        """
        GetEnvMapPrefiltered(self) -> vtkPBRPrefilterTexture
        C++: vtkPBRPrefilterTexture *GetEnvMapPrefiltered()
        """
        return vtkPBRPrefilterTexture

    def GetLightingComplexity(self): # real signature unknown; restored from __doc__
        """
        GetLightingComplexity(self) -> int
        C++: virtual int GetLightingComplexity()
        """
        return 0

    def GetLightingCount(self): # real signature unknown; restored from __doc__
        """
        GetLightingCount(self) -> int
        C++: virtual int GetLightingCount()
        """
        return 0

    def GetLightingUniforms(self): # real signature unknown; restored from __doc__
        """
        GetLightingUniforms(self) -> str
        C++: const char *GetLightingUniforms()
        """
        return ""

    def GetNumberOfGenerationsFromBase(self, type): # real signature unknown; restored from __doc__
        """
        GetNumberOfGenerationsFromBase(self, type:str) -> int
        C++: vtkIdType GetNumberOfGenerationsFromBase(const char *type)
            override;
        
        Given the name of a base class of this class type, return the
        distance of inheritance between this class type and the named
        class (how many generations of inheritance are there between this
        class and the named class). If the named class is not in this
        class's inheritance tree, return a negative value. Valid
        responses will always be nonnegative. This method works in
        combination with vtkTypeMacro found in vtkSetGet.h.
        """
        return 0

    def GetNumberOfGenerationsFromBaseType(self, type): # real signature unknown; restored from __doc__
        """
        GetNumberOfGenerationsFromBaseType(type:str) -> int
        C++: static vtkIdType GetNumberOfGenerationsFromBaseType(
            const char *type)
        
        Given a the name of a base class of this class type, return the
        distance of inheritance between this class type and the named
        class (how many generations of inheritance are there between this
        class and the named class). If the named class is not in this
        class's inheritance tree, return a negative value. Valid
        responses will always be nonnegative. This method works in
        combination with vtkTypeMacro found in vtkSetGet.h.
        """
        return 0

    def GetSphericalHarmonics(self): # real signature unknown; restored from __doc__
        """
        GetSphericalHarmonics(self) -> vtkFloatArray
        C++: vtkFloatArray *GetSphericalHarmonics()
        
        Get spherical harmonics coefficients used for irradiance
        """
        pass

    def GetState(self): # real signature unknown; restored from __doc__
        """
        GetState(self) -> vtkOpenGLState
        C++: vtkOpenGLState *GetState()
        """
        return vtkOpenGLState

    def GetUserLightTransform(self): # real signature unknown; restored from __doc__
        """
        GetUserLightTransform(self) -> vtkTransform
        C++: vtkTransform *GetUserLightTransform()
        """
        pass

    def GetUseSphericalHarmonics(self): # real signature unknown; restored from __doc__
        """
        GetUseSphericalHarmonics(self) -> bool
        C++: virtual bool GetUseSphericalHarmonics()
        """
        return False

    def HaveApplePrimitiveIdBug(self): # real signature unknown; restored from __doc__
        """
        HaveApplePrimitiveIdBug(self) -> bool
        C++: bool HaveApplePrimitiveIdBug()
        
        Indicate if this system is subject to the Apple/AMD bug of not
        having a working glPrimitiveId <rdar://20747550>. The bug is
        fixed on macOS 10.11 and later, and this method will return false
        when the OS is new enough.
        """
        return False

    def HaveAppleQueryAllocationBug(self): # real signature unknown; restored from __doc__
        """
        HaveAppleQueryAllocationBug() -> bool
        C++: static bool HaveAppleQueryAllocationBug()
        
        Indicate if this system is subject to the apple/NVIDIA bug that
        causes crashes in the driver when too many query objects are
        allocated.
        """
        return False

    def IsA(self, type): # real signature unknown; restored from __doc__
        """
        IsA(self, type:str) -> int
        C++: vtkTypeBool IsA(const char *type) override;
        
        Return 1 if this class is the same type of (or a subclass of) the
        named class. Returns 0 otherwise. This method works in
        combination with vtkTypeMacro found in vtkSetGet.h.
        """
        return 0

    def IsDualDepthPeelingSupported(self): # real signature unknown; restored from __doc__
        """
        IsDualDepthPeelingSupported(self) -> bool
        C++: bool IsDualDepthPeelingSupported()
        
        Dual depth peeling may be disabled for certain runtime
        configurations. This method returns true if
        vtkDualDepthPeelingPass will be used in place of
        vtkDepthPeelingPass.
        """
        return False

    def IsTypeOf(self, type): # real signature unknown; restored from __doc__
        """
        IsTypeOf(type:str) -> int
        C++: static vtkTypeBool IsTypeOf(const char *type)
        
        Return 1 if this class type is the same type of (or a subclass
        of) the named class. Returns 0 otherwise. This method works in
        combination with vtkTypeMacro found in vtkSetGet.h.
        """
        return 0

    def NewInstance(self): # real signature unknown; restored from __doc__
        """
        NewInstance(self) -> vtkOpenGLRenderer
        C++: vtkOpenGLRenderer *NewInstance()
        """
        return vtkOpenGLRenderer

    def ReleaseGraphicsResources(self, w): # real signature unknown; restored from __doc__
        """
        ReleaseGraphicsResources(self, w:vtkWindow) -> None
        C++: void ReleaseGraphicsResources(vtkWindow *w) override;
        """
        pass

    def SafeDownCast(self, o): # real signature unknown; restored from __doc__
        """
        SafeDownCast(o:vtkObjectBase) -> vtkOpenGLRenderer
        C++: static vtkOpenGLRenderer *SafeDownCast(vtkObjectBase *o)
        """
        return vtkOpenGLRenderer

    def SetEnvironmentTexture(self, texture, isSRGB=False): # real signature unknown; restored from __doc__
        """
        SetEnvironmentTexture(self, texture:vtkTexture, isSRGB:bool=False)
             -> None
        C++: void SetEnvironmentTexture(vtkTexture *texture,
            bool isSRGB=false) override;
        
        Overridden in order to connect the texture to the environment map
        textures.
        """
        pass

    def SetUserLightTransform(self, transform): # real signature unknown; restored from __doc__
        """
        SetUserLightTransform(self, transform:vtkTransform) -> None
        C++: void SetUserLightTransform(vtkTransform *transform)
        
        Set the user light transform applied after the camera transform.
        Can be null to disable it.
        """
        pass

    def SetUseSphericalHarmonics(self, _arg): # real signature unknown; restored from __doc__
        """
        SetUseSphericalHarmonics(self, _arg:bool) -> None
        C++: virtual void SetUseSphericalHarmonics(bool _arg)
        
        Use spherical harmonics instead of irradiance texture
        """
        pass

    def UpdateLightingUniforms(self, prog): # real signature unknown; restored from __doc__
        """
        UpdateLightingUniforms(self, prog:vtkShaderProgram) -> None
        C++: void UpdateLightingUniforms(vtkShaderProgram *prog)
        """
        pass

    def UpdateLights(self): # real signature unknown; restored from __doc__
        """
        UpdateLights(self) -> int
        C++: int UpdateLights(void) override;
        
        Ask lights to load themselves into graphics pipeline.
        """
        return 0

    def UseSphericalHarmonicsOff(self): # real signature unknown; restored from __doc__
        """
        UseSphericalHarmonicsOff(self) -> None
        C++: virtual void UseSphericalHarmonicsOff()
        """
        pass

    def UseSphericalHarmonicsOn(self): # real signature unknown; restored from __doc__
        """
        UseSphericalHarmonicsOn(self) -> None
        C++: virtual void UseSphericalHarmonicsOn()
        """
        pass

    def __delattr__(self, *args, **kwargs): # real signature unknown
        """ Implement delattr(self, name). """
        pass

    def __getattribute__(self, *args, **kwargs): # real signature unknown
        """ Return getattr(self, name). """
        pass

    def __init__(self, *args, **kwargs): # real signature unknown
        pass

    @staticmethod # known case of __new__
    def __new__(*args, **kwargs): # real signature unknown
        """ Create and return a new object.  See help(type) for accurate signature. """
        pass

    def __repr__(self, *args, **kwargs): # real signature unknown
        """ Return repr(self). """
        pass

    def __setattr__(self, *args, **kwargs): # real signature unknown
        """ Implement setattr(self, name, value). """
        pass

    def __str__(self, *args, **kwargs): # real signature unknown
        """ Return str(self). """
        pass

    __this__ = property(lambda self: object(), lambda self, v: None, lambda self: None)  # default
    """Pointer to the C++ object."""


    Directional = 2
    Headlight = 1
    LightingComplexityEnum = None # (!) real value is "<class 'vtkmodules.vtkRenderingOpenGL2.vtkOpenGLRenderer.LightingComplexityEnum'>"
    NoLighting = 0
    Positional = 3
    __dict__ = None # (!) real value is "mappingproxy({'__vtkname__': 'vtkOpenGLRenderer', 'IsTypeOf': <method 'IsTypeOf' of 'vtkmodules.vtkRenderingOpenGL2.vtkOpenGLRenderer' objects>, 'IsA': <method 'IsA' of 'vtkmodules.vtkRenderingOpenGL2.vtkOpenGLRenderer' objects>, 'SafeDownCast': <method 'SafeDownCast' of 'vtkmodules.vtkRenderingOpenGL2.vtkOpenGLRenderer' objects>, 'NewInstance': <method 'NewInstance' of 'vtkmodules.vtkRenderingOpenGL2.vtkOpenGLRenderer' objects>, 'GetNumberOfGenerationsFromBaseType': <method 'GetNumberOfGenerationsFromBaseType' of 'vtkmodules.vtkRenderingOpenGL2.vtkOpenGLRenderer' objects>, 'GetNumberOfGenerationsFromBase': <method 'GetNumberOfGenerationsFromBase' of 'vtkmodules.vtkRenderingOpenGL2.vtkOpenGLRenderer' objects>, 'DeviceRender': <method 'DeviceRender' of 'vtkmodules.vtkRenderingOpenGL2.vtkOpenGLRenderer' objects>, 'DeviceRenderOpaqueGeometry': <method 'DeviceRenderOpaqueGeometry' of 'vtkmodules.vtkRenderingOpenGL2.vtkOpenGLRenderer' objects>, 'DeviceRenderTranslucentPolygonalGeometry': <method 'DeviceRenderTranslucentPolygonalGeometry' of 'vtkmodules.vtkRenderingOpenGL2.vtkOpenGLRenderer' objects>, 'Clear': <method 'Clear' of 'vtkmodules.vtkRenderingOpenGL2.vtkOpenGLRenderer' objects>, 'UpdateLights': <method 'UpdateLights' of 'vtkmodules.vtkRenderingOpenGL2.vtkOpenGLRenderer' objects>, 'GetDepthPeelingHigherLayer': <method 'GetDepthPeelingHigherLayer' of 'vtkmodules.vtkRenderingOpenGL2.vtkOpenGLRenderer' objects>, 'HaveApplePrimitiveIdBug': <method 'HaveApplePrimitiveIdBug' of 'vtkmodules.vtkRenderingOpenGL2.vtkOpenGLRenderer' objects>, 'HaveAppleQueryAllocationBug': <method 'HaveAppleQueryAllocationBug' of 'vtkmodules.vtkRenderingOpenGL2.vtkOpenGLRenderer' objects>, 'IsDualDepthPeelingSupported': <method 'IsDualDepthPeelingSupported' of 'vtkmodules.vtkRenderingOpenGL2.vtkOpenGLRenderer' objects>, 'GetState': <method 'GetState' of 'vtkmodules.vtkRenderingOpenGL2.vtkOpenGLRenderer' objects>, 'GetLightingUniforms': <method 'GetLightingUniforms' of 'vtkmodules.vtkRenderingOpenGL2.vtkOpenGLRenderer' objects>, 'UpdateLightingUniforms': <method 'UpdateLightingUniforms' of 'vtkmodules.vtkRenderingOpenGL2.vtkOpenGLRenderer' objects>, 'GetLightingComplexity': <method 'GetLightingComplexity' of 'vtkmodules.vtkRenderingOpenGL2.vtkOpenGLRenderer' objects>, 'GetLightingCount': <method 'GetLightingCount' of 'vtkmodules.vtkRenderingOpenGL2.vtkOpenGLRenderer' objects>, 'SetUserLightTransform': <method 'SetUserLightTransform' of 'vtkmodules.vtkRenderingOpenGL2.vtkOpenGLRenderer' objects>, 'GetUserLightTransform': <method 'GetUserLightTransform' of 'vtkmodules.vtkRenderingOpenGL2.vtkOpenGLRenderer' objects>, 'GetEnvMapLookupTable': <method 'GetEnvMapLookupTable' of 'vtkmodules.vtkRenderingOpenGL2.vtkOpenGLRenderer' objects>, 'GetEnvMapIrradiance': <method 'GetEnvMapIrradiance' of 'vtkmodules.vtkRenderingOpenGL2.vtkOpenGLRenderer' objects>, 'GetEnvMapPrefiltered': <method 'GetEnvMapPrefiltered' of 'vtkmodules.vtkRenderingOpenGL2.vtkOpenGLRenderer' objects>, 'GetSphericalHarmonics': <method 'GetSphericalHarmonics' of 'vtkmodules.vtkRenderingOpenGL2.vtkOpenGLRenderer' objects>, 'SetUseSphericalHarmonics': <method 'SetUseSphericalHarmonics' of 'vtkmodules.vtkRenderingOpenGL2.vtkOpenGLRenderer' objects>, 'GetUseSphericalHarmonics': <method 'GetUseSphericalHarmonics' of 'vtkmodules.vtkRenderingOpenGL2.vtkOpenGLRenderer' objects>, 'UseSphericalHarmonicsOn': <method 'UseSphericalHarmonicsOn' of 'vtkmodules.vtkRenderingOpenGL2.vtkOpenGLRenderer' objects>, 'UseSphericalHarmonicsOff': <method 'UseSphericalHarmonicsOff' of 'vtkmodules.vtkRenderingOpenGL2.vtkOpenGLRenderer' objects>, 'SetEnvironmentTexture': <method 'SetEnvironmentTexture' of 'vtkmodules.vtkRenderingOpenGL2.vtkOpenGLRenderer' objects>, 'ReleaseGraphicsResources': <method 'ReleaseGraphicsResources' of 'vtkmodules.vtkRenderingOpenGL2.vtkOpenGLRenderer' objects>, 'LightingComplexityEnum': <class 'vtkmodules.vtkRenderingOpenGL2.vtkOpenGLRenderer.LightingComplexityEnum'>, 'NoLighting': 0, 'Headlight': 1, 'Directional': 2, 'Positional': 3, '__new__': <built-in method __new__ of type object at 0x00007FF8205FB9B0>, '__repr__': <slot wrapper '__repr__' of 'vtkmodules.vtkRenderingOpenGL2.vtkOpenGLRenderer' objects>, '__str__': <slot wrapper '__str__' of 'vtkmodules.vtkRenderingOpenGL2.vtkOpenGLRenderer' objects>, '__getattribute__': <slot wrapper '__getattribute__' of 'vtkmodules.vtkRenderingOpenGL2.vtkOpenGLRenderer' objects>, '__setattr__': <slot wrapper '__setattr__' of 'vtkmodules.vtkRenderingOpenGL2.vtkOpenGLRenderer' objects>, '__delattr__': <slot wrapper '__delattr__' of 'vtkmodules.vtkRenderingOpenGL2.vtkOpenGLRenderer' objects>, '__dict__': <attribute '__dict__' of 'vtkmodules.vtkRenderingOpenGL2.vtkOpenGLRenderer' objects>, '__this__': <attribute '__this__' of 'vtkmodules.vtkRenderingOpenGL2.vtkOpenGLRenderer' objects>, '__doc__': 'vtkOpenGLRenderer - OpenGL renderer\\n\\nSuperclass: vtkRenderer\\n\\nvtkOpenGLRenderer is a concrete implementation of the abstract class\\nvtkRenderer. vtkOpenGLRenderer interfaces to the OpenGL graphics\\nlibrary.\\n\\n'})"
    __vtkname__ = 'vtkOpenGLRenderer'


