"""
This type stub file was generated by pyright.
"""

import vtkmodules.vtkCommonExecutionModel as __vtkmodules_vtkCommonExecutionModel

class vtkProjectedTexture(__vtkmodules_vtkCommonExecutionModel.vtkDataSetAlgorithm):
    """
    vtkProjectedTexture - assign texture coordinates for a projected
    texture
    
    Superclass: vtkDataSetAlgorithm
    
    vtkProjectedTexture assigns texture coordinates to a dataset as if
    the texture was projected from a slide projected located somewhere in
    the scene.  Methods are provided to position the projector and aim it
    at a location, to set the width of the projector's frustum, and to
    set the range of texture coordinates assigned to the dataset.
    
    Objects in the scene that appear behind the projector are also
    assigned texture coordinates; the projected image is left-right and
    top-bottom flipped, much as a lens' focus flips the rays of light
    that pass through it.  A warning is issued if a point in the dataset
    falls at the focus of the projector.
    """
    def GetAspectRatio(self):
        """
        V.GetAspectRatio() -> (float, float, float)
        C++: virtual double *GetAspectRatio()
        
        Set/Get the aspect ratio of a perpendicular cross-section of the
        the projector's frustum.  The aspect ratio consists of three
        numbers:  (x, y, z), where x is the width of the frustum, y is
        the height, and z is the perpendicular distance from the focus of
        the projector.
        
        * For example, if the source of the image is a pinhole camera
          with
        * view angle A, then you could set x=1, y=1, z=1/tan(A).
        """
        ...
    
    def GetCameraMode(self):
        """
        V.GetCameraMode() -> int
        C++: virtual int GetCameraMode()
        
        Set/Get the camera mode of the projection -- pinhole projection
        or two mirror projection.
        """
        ...
    
    def GetFocalPoint(self):
        """
        V.GetFocalPoint() -> (float, float, float)
        C++: virtual double *GetFocalPoint()
        
        Set/Get the focal point of the projector (a point that lies along
        the center axis of the projector's frustum).
        """
        ...
    
    def GetMirrorSeparation(self):
        """
        V.GetMirrorSeparation() -> float
        C++: virtual double GetMirrorSeparation()
        
        Set/Get the mirror separation for the two mirror system.
        """
        ...
    
    def GetNumberOfGenerationsFromBase(self, string):
        """
        V.GetNumberOfGenerationsFromBase(string) -> int
        C++: vtkIdType GetNumberOfGenerationsFromBase(const char *type)
            override;
        
        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.
        """
        ...
    
    def GetNumberOfGenerationsFromBaseType(self, string):
        """
        V.GetNumberOfGenerationsFromBaseType(string) -> 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.
        """
        ...
    
    def GetOrientation(self):
        """
        V.GetOrientation() -> (float, float, float)
        C++: virtual double *GetOrientation()
        
        Get the normalized orientation vector of the projector.
        """
        ...
    
    def GetPosition(self):
        """
        V.GetPosition() -> (float, float, float)
        C++: virtual double *GetPosition()
        
        Set/Get the position of the focus of the projector.
        """
        ...
    
    def GetSRange(self):
        """
        V.GetSRange() -> (float, float)
        C++: virtual double *GetSRange()
        
        Specify s-coordinate range for texture s-t coordinate pair.
        """
        ...
    
    def GetTRange(self):
        """
        V.GetTRange() -> (float, float)
        C++: virtual double *GetTRange()
        
        Specify t-coordinate range for texture s-t coordinate pair.
        """
        ...
    
    def GetUp(self):
        """
        V.GetUp() -> (float, float, float)
        C++: virtual double *GetUp()
        
        Set/Get the up vector of the projector.
        """
        ...
    
    def IsA(self, string):
        """
        V.IsA(string) -> 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.
        """
        ...
    
    def IsTypeOf(self, string):
        """
        V.IsTypeOf(string) -> 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.
        """
        ...
    
    def NewInstance(self):
        """
        V.NewInstance() -> vtkProjectedTexture
        C++: vtkProjectedTexture *NewInstance()
        """
        ...
    
    def SafeDownCast(self, vtkObjectBase):
        """
        V.SafeDownCast(vtkObjectBase) -> vtkProjectedTexture
        C++: static vtkProjectedTexture *SafeDownCast(vtkObjectBase *o)
        """
        ...
    
    def SetAspectRatio(self, p_float, p_float_1, p_float_2):
        """
        V.SetAspectRatio(float, float, float)
        C++: virtual void SetAspectRatio(double _arg1, double _arg2,
            double _arg3)
        V.SetAspectRatio((float, float, float))
        C++: virtual void SetAspectRatio(const double _arg[3])
        
        Set/Get the aspect ratio of a perpendicular cross-section of the
        the projector's frustum.  The aspect ratio consists of three
        numbers:  (x, y, z), where x is the width of the frustum, y is
        the height, and z is the perpendicular distance from the focus of
        the projector.
        
        * For example, if the source of the image is a pinhole camera
          with
        * view angle A, then you could set x=1, y=1, z=1/tan(A).
        """
        ...
    
    def SetCameraMode(self, p_int):
        """
        V.SetCameraMode(int)
        C++: virtual void SetCameraMode(int _arg)
        
        Set/Get the camera mode of the projection -- pinhole projection
        or two mirror projection.
        """
        ...
    
    def SetCameraModeToPinhole(self):
        """
        V.SetCameraModeToPinhole()
        C++: void SetCameraModeToPinhole()
        
        Set/Get the camera mode of the projection -- pinhole projection
        or two mirror projection.
        """
        ...
    
    def SetCameraModeToTwoMirror(self):
        """
        V.SetCameraModeToTwoMirror()
        C++: void SetCameraModeToTwoMirror()
        
        Set/Get the camera mode of the projection -- pinhole projection
        or two mirror projection.
        """
        ...
    
    def SetFocalPoint(self, p_float=..., p_float=..., p_float=...):
        """
        V.SetFocalPoint([float, float, float])
        C++: void SetFocalPoint(double focalPoint[3])
        V.SetFocalPoint(float, float, float)
        C++: void SetFocalPoint(double x, double y, double z)
        
        Set/Get the focal point of the projector (a point that lies along
        the center axis of the projector's frustum).
        """
        ...
    
    def SetMirrorSeparation(self, p_float):
        """
        V.SetMirrorSeparation(float)
        C++: virtual void SetMirrorSeparation(double _arg)
        
        Set/Get the mirror separation for the two mirror system.
        """
        ...
    
    def SetPosition(self, p_float, p_float_1, p_float_2):
        """
        V.SetPosition(float, float, float)
        C++: virtual void SetPosition(double _arg1, double _arg2,
            double _arg3)
        V.SetPosition((float, float, float))
        C++: virtual void SetPosition(const double _arg[3])
        
        Set/Get the position of the focus of the projector.
        """
        ...
    
    def SetSRange(self, p_float, p_float_1):
        """
        V.SetSRange(float, float)
        C++: virtual void SetSRange(double _arg1, double _arg2)
        V.SetSRange((float, float))
        C++: void SetSRange(const double _arg[2])
        
        Specify s-coordinate range for texture s-t coordinate pair.
        """
        ...
    
    def SetTRange(self, p_float, p_float_1):
        """
        V.SetTRange(float, float)
        C++: virtual void SetTRange(double _arg1, double _arg2)
        V.SetTRange((float, float))
        C++: void SetTRange(const double _arg[2])
        
        Specify t-coordinate range for texture s-t coordinate pair.
        """
        ...
    
    def SetUp(self, p_float, p_float_1, p_float_2):
        """
        V.SetUp(float, float, float)
        C++: virtual void SetUp(double _arg1, double _arg2, double _arg3)
        V.SetUp((float, float, float))
        C++: virtual void SetUp(const double _arg[3])
        
        Set/Get the up vector of the projector.
        """
        ...
    
    def __delattr__(self, *args, **kwargs):
        """ Implement delattr(self, name). """
        ...
    
    def __getattribute__(self, *args, **kwargs):
        """ Return getattr(self, name). """
        ...
    
    def __init__(self, *args, **kwargs) -> None:
        ...
    
    @staticmethod
    def __new__(*args, **kwargs):
        """ Create and return a new object.  See help(type) for accurate signature. """
        ...
    
    def __repr__(self, *args, **kwargs):
        """ Return repr(self). """
        ...
    
    def __setattr__(self, *args, **kwargs):
        """ Implement setattr(self, name, value). """
        ...
    
    def __str__(self, *args, **kwargs) -> str:
        """ Return str(self). """
        ...
    
    __this__ = ...
    __dict__ = ...
    __vtkname__ = ...


