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

import vtkmodules.vtkRenderingCore as __vtkmodules_vtkRenderingCore

VTKIS_ACTOR = ...
VTKIS_CAMERA = ...
VTKIS_IMAGE2D = ...
VTKIS_IMAGE3D = ...
VTKIS_IMAGE_SLICING = ...
VTKIS_JOYSTICK = ...
VTKIS_SLICE = ...
VTKIS_TRACKBALL = ...
VTKIS_USERINTERACTION = ...
VTKIS_WINDOW_LEVEL = ...
VTK_UNICAM_BUTTON_LEFT = ...
VTK_UNICAM_BUTTON_MIDDLE = ...
VTK_UNICAM_BUTTON_RIGHT = ...
VTK_UNICAM_CAM_INT_CHOOSE = ...
VTK_UNICAM_CAM_INT_DOLLY = ...
VTK_UNICAM_CAM_INT_PAN = ...
VTK_UNICAM_CAM_INT_ROT = ...
VTK_UNICAM_NONE = ...
class vtkInteractorStyleDrawPolygon(__vtkmodules_vtkRenderingCore.vtkInteractorStyle):
    """
    vtkInteractorStyleDrawPolygon - draw polygon during mouse move
    
    Superclass: vtkInteractorStyle
    
    This interactor style allows the user to draw a polygon in the render
    window using the left mouse button while mouse is moving. When the
    mouse button is released, a SelectionChangedEvent will be fired.
    """
    def DrawPolygonPixelsOff(self):
        """
        V.DrawPolygonPixelsOff()
        C++: virtual void DrawPolygonPixelsOff()
        
        Whether to draw polygon in screen pixels. Default is ON
        """
        ...
    
    def DrawPolygonPixelsOn(self):
        """
        V.DrawPolygonPixelsOn()
        C++: virtual void DrawPolygonPixelsOn()
        
        Whether to draw polygon in screen pixels. Default is ON
        """
        ...
    
    def GetDrawPolygonPixels(self):
        """
        V.GetDrawPolygonPixels() -> bool
        C++: virtual bool GetDrawPolygonPixels()
        
        Whether to draw polygon in screen pixels. Default is ON
        """
        ...
    
    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 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() -> vtkInteractorStyleDrawPolygon
        C++: vtkInteractorStyleDrawPolygon *NewInstance()
        """
        ...
    
    def OnLeftButtonDown(self):
        """
        V.OnLeftButtonDown()
        C++: void OnLeftButtonDown() override;
        
        Event bindings
        """
        ...
    
    def OnLeftButtonUp(self):
        """
        V.OnLeftButtonUp()
        C++: void OnLeftButtonUp() override;
        
        Event bindings
        """
        ...
    
    def OnMouseMove(self):
        """
        V.OnMouseMove()
        C++: void OnMouseMove() override;
        
        Event bindings
        """
        ...
    
    def SafeDownCast(self, vtkObjectBase):
        """
        V.SafeDownCast(vtkObjectBase) -> vtkInteractorStyleDrawPolygon
        C++: static vtkInteractorStyleDrawPolygon *SafeDownCast(
            vtkObjectBase *o)
        """
        ...
    
    def SetDrawPolygonPixels(self, bool):
        """
        V.SetDrawPolygonPixels(bool)
        C++: virtual void SetDrawPolygonPixels(bool _arg)
        
        Whether to draw polygon in screen pixels. Default is ON
        """
        ...
    
    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__ = ...


class vtkInteractorStyleFlight(__vtkmodules_vtkRenderingCore.vtkInteractorStyle):
    """
    vtkInteractorStyleFlight - provides flight motion routines
    
    Superclass: vtkInteractorStyle
    
    Left  mouse button press produces forward motion. Right mouse button
    press produces reverse motion. Moving mouse during motion steers user
    in desired direction. Keyboard controls are: Left/Right/Up/Down
    Arrows for steering direction 'A' forward, 'Z' reverse motion Ctrl
    Key causes sidestep instead of steering in mouse and key modes Shift
    key is accelerator in mouse and key modes Ctrl and Shift together
    causes Roll in mouse and key modes
    
    By default, one "step" of motion corresponds to 1/250th of the
    diagonal of bounding box of visible actors, '+' and '-' keys allow
    user to increase or decrease step size.
    """
    def DisableMotionOff(self):
        """
        V.DisableMotionOff()
        C++: virtual void DisableMotionOff()
        
        Disable motion (temporarily - for viewing etc)
        """
        ...
    
    def DisableMotionOn(self):
        """
        V.DisableMotionOn()
        C++: virtual void DisableMotionOn()
        
        Disable motion (temporarily - for viewing etc)
        """
        ...
    
    def EndForwardFly(self):
        """
        V.EndForwardFly()
        C++: virtual void EndForwardFly()
        """
        ...
    
    def EndReverseFly(self):
        """
        V.EndReverseFly()
        C++: virtual void EndReverseFly()
        """
        ...
    
    def ForwardFly(self):
        """
        V.ForwardFly()
        C++: virtual void ForwardFly()
        """
        ...
    
    def GetAngleAccelerationFactor(self):
        """
        V.GetAngleAccelerationFactor() -> float
        C++: virtual double GetAngleAccelerationFactor()
        
        Set angular acceleration when shift key is applied : default 5
        """
        ...
    
    def GetAngleStepSize(self):
        """
        V.GetAngleStepSize() -> float
        C++: virtual double GetAngleStepSize()
        
        Set the basic angular unit for turning : default 1 degree
        """
        ...
    
    def GetDefaultUpVector(self):
        """
        V.GetDefaultUpVector() -> (float, float, float)
        C++: virtual double *GetDefaultUpVector()
        """
        ...
    
    def GetDisableMotion(self):
        """
        V.GetDisableMotion() -> int
        C++: virtual vtkTypeBool GetDisableMotion()
        
        Disable motion (temporarily - for viewing etc)
        """
        ...
    
    def GetMotionAccelerationFactor(self):
        """
        V.GetMotionAccelerationFactor() -> float
        C++: virtual double GetMotionAccelerationFactor()
        
        Set acceleration factor when shift key is applied : default 10
        """
        ...
    
    def GetMotionStepSize(self):
        """
        V.GetMotionStepSize() -> float
        C++: virtual double GetMotionStepSize()
        
        Set the basic unit step size : by default 1/250 of bounding
        diagonal
        """
        ...
    
    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 GetRestoreUpVector(self):
        """
        V.GetRestoreUpVector() -> int
        C++: virtual vtkTypeBool GetRestoreUpVector()
        
        When flying, apply a restorative force to the "Up" vector. This
        is activated when the current 'up' is close to the actual 'up'
        (as defined in DefaultUpVector). This prevents excessive twisting
        forces when viewing from arbitrary angles, but keep the horizon
        level when the user is flying over terrain.
        """
        ...
    
    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 JumpTo(self, p_float=..., p_float=..., p_float=..., *args, **kwargs):
        """
        V.JumpTo([float, float, float], [float, float, float])
        C++: void JumpTo(double campos[3], double focpos[3])
        
        Move the Eye/Camera to a specific location (no intermediate steps
        are taken
        """
        ...
    
    def NewInstance(self):
        """
        V.NewInstance() -> vtkInteractorStyleFlight
        C++: vtkInteractorStyleFlight *NewInstance()
        """
        ...
    
    def OnChar(self):
        """
        V.OnChar()
        C++: void OnChar() override;
        
        Concrete implementation of Keyboard event bindings for flight
        """
        ...
    
    def OnKeyDown(self):
        """
        V.OnKeyDown()
        C++: void OnKeyDown() override;
        
        Concrete implementation of Keyboard event bindings for flight
        """
        ...
    
    def OnKeyUp(self):
        """
        V.OnKeyUp()
        C++: void OnKeyUp() override;
        
        Concrete implementation of Keyboard event bindings for flight
        """
        ...
    
    def OnLeftButtonDown(self):
        """
        V.OnLeftButtonDown()
        C++: void OnLeftButtonDown() override;
        
        Concrete implementation of Mouse event bindings for flight
        """
        ...
    
    def OnLeftButtonUp(self):
        """
        V.OnLeftButtonUp()
        C++: void OnLeftButtonUp() override;
        
        Concrete implementation of Mouse event bindings for flight
        """
        ...
    
    def OnMiddleButtonDown(self):
        """
        V.OnMiddleButtonDown()
        C++: void OnMiddleButtonDown() override;
        
        Concrete implementation of Mouse event bindings for flight
        """
        ...
    
    def OnMiddleButtonUp(self):
        """
        V.OnMiddleButtonUp()
        C++: void OnMiddleButtonUp() override;
        
        Concrete implementation of Mouse event bindings for flight
        """
        ...
    
    def OnMouseMove(self):
        """
        V.OnMouseMove()
        C++: void OnMouseMove() override;
        
        Concrete implementation of Mouse event bindings for flight
        """
        ...
    
    def OnRightButtonDown(self):
        """
        V.OnRightButtonDown()
        C++: void OnRightButtonDown() override;
        
        Concrete implementation of Mouse event bindings for flight
        """
        ...
    
    def OnRightButtonUp(self):
        """
        V.OnRightButtonUp()
        C++: void OnRightButtonUp() override;
        
        Concrete implementation of Mouse event bindings for flight
        """
        ...
    
    def OnTimer(self):
        """
        V.OnTimer()
        C++: void OnTimer() override;
        
        Concrete implementation of Keyboard event bindings for flight
        """
        ...
    
    def RestoreUpVectorOff(self):
        """
        V.RestoreUpVectorOff()
        C++: virtual void RestoreUpVectorOff()
        
        When flying, apply a restorative force to the "Up" vector. This
        is activated when the current 'up' is close to the actual 'up'
        (as defined in DefaultUpVector). This prevents excessive twisting
        forces when viewing from arbitrary angles, but keep the horizon
        level when the user is flying over terrain.
        """
        ...
    
    def RestoreUpVectorOn(self):
        """
        V.RestoreUpVectorOn()
        C++: virtual void RestoreUpVectorOn()
        
        When flying, apply a restorative force to the "Up" vector. This
        is activated when the current 'up' is close to the actual 'up'
        (as defined in DefaultUpVector). This prevents excessive twisting
        forces when viewing from arbitrary angles, but keep the horizon
        level when the user is flying over terrain.
        """
        ...
    
    def ReverseFly(self):
        """
        V.ReverseFly()
        C++: virtual void ReverseFly()
        """
        ...
    
    def SafeDownCast(self, vtkObjectBase):
        """
        V.SafeDownCast(vtkObjectBase) -> vtkInteractorStyleFlight
        C++: static vtkInteractorStyleFlight *SafeDownCast(
            vtkObjectBase *o)
        """
        ...
    
    def SetAngleAccelerationFactor(self, p_float):
        """
        V.SetAngleAccelerationFactor(float)
        C++: virtual void SetAngleAccelerationFactor(double _arg)
        
        Set angular acceleration when shift key is applied : default 5
        """
        ...
    
    def SetAngleStepSize(self, p_float):
        """
        V.SetAngleStepSize(float)
        C++: virtual void SetAngleStepSize(double _arg)
        
        Set the basic angular unit for turning : default 1 degree
        """
        ...
    
    def SetDefaultUpVector(self, float_tuple):
        """
        V.SetDefaultUpVector((float, ...))
        C++: virtual void SetDefaultUpVector(const double data[])
        """
        ...
    
    def SetDisableMotion(self, p_int):
        """
        V.SetDisableMotion(int)
        C++: virtual void SetDisableMotion(vtkTypeBool _arg)
        
        Disable motion (temporarily - for viewing etc)
        """
        ...
    
    def SetMotionAccelerationFactor(self, p_float):
        """
        V.SetMotionAccelerationFactor(float)
        C++: virtual void SetMotionAccelerationFactor(double _arg)
        
        Set acceleration factor when shift key is applied : default 10
        """
        ...
    
    def SetMotionStepSize(self, p_float):
        """
        V.SetMotionStepSize(float)
        C++: virtual void SetMotionStepSize(double _arg)
        
        Set the basic unit step size : by default 1/250 of bounding
        diagonal
        """
        ...
    
    def SetRestoreUpVector(self, p_int):
        """
        V.SetRestoreUpVector(int)
        C++: virtual void SetRestoreUpVector(vtkTypeBool _arg)
        
        When flying, apply a restorative force to the "Up" vector. This
        is activated when the current 'up' is close to the actual 'up'
        (as defined in DefaultUpVector). This prevents excessive twisting
        forces when viewing from arbitrary angles, but keep the horizon
        level when the user is flying over terrain.
        """
        ...
    
    def StartForwardFly(self):
        """
        V.StartForwardFly()
        C++: virtual void StartForwardFly()
        """
        ...
    
    def StartReverseFly(self):
        """
        V.StartReverseFly()
        C++: virtual void StartReverseFly()
        """
        ...
    
    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__ = ...


class vtkInteractorStyleTrackballCamera(__vtkmodules_vtkRenderingCore.vtkInteractorStyle):
    """
    vtkInteractorStyleTrackballCamera - interactive manipulation of the
    camera
    
    Superclass: vtkInteractorStyle
    
    vtkInteractorStyleTrackballCamera allows the user to interactively
    manipulate (rotate, pan, etc.) the camera, the viewpoint of the
    scene.  In trackball interaction, the magnitude of the mouse motion
    is proportional to the camera motion associated with a particular
    mouse binding. For example, small left-button motions cause small
    changes in the rotation of the camera around its focal point. For a
    3-button mouse, the left button is for rotation, the right button for
    zooming, the middle button for panning, ctrl + left button for
    spinning, and shift + right button for environment rotation. (With
    fewer mouse buttons, ctrl + shift + left button is for zooming, and
    shift + left button is for panning.)
    
    @sa
    vtkInteractorStyleTrackballActor vtkInteractorStyleJoystickCamera
    vtkInteractorStyleJoystickActor
    """
    def Dolly(self):
        """
        V.Dolly()
        C++: void Dolly() override;
        """
        ...
    
    def EnvironmentRotate(self):
        """
        V.EnvironmentRotate()
        C++: void EnvironmentRotate() override;
        """
        ...
    
    def GetMotionFactor(self):
        """
        V.GetMotionFactor() -> float
        C++: virtual double GetMotionFactor()
        
        Set the apparent sensitivity of the interactor style to mouse
        motion.
        """
        ...
    
    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 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() -> vtkInteractorStyleTrackballCamera
        C++: vtkInteractorStyleTrackballCamera *NewInstance()
        """
        ...
    
    def OnLeftButtonDown(self):
        """
        V.OnLeftButtonDown()
        C++: void OnLeftButtonDown() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnLeftButtonUp(self):
        """
        V.OnLeftButtonUp()
        C++: void OnLeftButtonUp() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnMiddleButtonDown(self):
        """
        V.OnMiddleButtonDown()
        C++: void OnMiddleButtonDown() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnMiddleButtonUp(self):
        """
        V.OnMiddleButtonUp()
        C++: void OnMiddleButtonUp() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnMouseMove(self):
        """
        V.OnMouseMove()
        C++: void OnMouseMove() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnMouseWheelBackward(self):
        """
        V.OnMouseWheelBackward()
        C++: void OnMouseWheelBackward() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnMouseWheelForward(self):
        """
        V.OnMouseWheelForward()
        C++: void OnMouseWheelForward() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnRightButtonDown(self):
        """
        V.OnRightButtonDown()
        C++: void OnRightButtonDown() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnRightButtonUp(self):
        """
        V.OnRightButtonUp()
        C++: void OnRightButtonUp() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def Pan(self):
        """
        V.Pan()
        C++: void Pan() override;
        """
        ...
    
    def Rotate(self):
        """
        V.Rotate()
        C++: void Rotate() override;
        
        These methods for the different interactions in different modes
        are overridden in subclasses to perform the correct motion. Since
        they might be called from OnTimer, they do not have mouse coord
        parameters (use interactor's GetEventPosition and
        GetLastEventPosition)
        """
        ...
    
    def SafeDownCast(self, vtkObjectBase):
        """
        V.SafeDownCast(vtkObjectBase) -> vtkInteractorStyleTrackballCamera
        C++: static vtkInteractorStyleTrackballCamera *SafeDownCast(
            vtkObjectBase *o)
        """
        ...
    
    def SetMotionFactor(self, p_float):
        """
        V.SetMotionFactor(float)
        C++: virtual void SetMotionFactor(double _arg)
        
        Set the apparent sensitivity of the interactor style to mouse
        motion.
        """
        ...
    
    def Spin(self):
        """
        V.Spin()
        C++: void Spin() override;
        """
        ...
    
    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__ = ...


class vtkInteractorStyleImage(vtkInteractorStyleTrackballCamera):
    """
    vtkInteractorStyleImage - interactive manipulation of the camera
    specialized for images
    
    Superclass: vtkInteractorStyleTrackballCamera
    
    vtkInteractorStyleImage allows the user to interactively manipulate
    (rotate, pan, zoom etc.) the camera. vtkInteractorStyleImage is
    specially designed to work with images that are being rendered with
    vtkImageActor. Several events are overloaded from its superclass
    vtkInteractorStyle, hence the mouse bindings are different. (The
    bindings keep the camera's view plane normal perpendicular to the x-y
    plane.) In summary the mouse events for 2D image interaction are as
    follows:
    - Left Mouse button triggers window level events
    - CTRL Left Mouse spins the camera around its view plane normal
    - SHIFT Left Mouse pans the camera
    - CTRL SHIFT Left Mouse dollys (a positional zoom) the camera
    - Middle mouse button pans the camera
    - Right mouse button dollys the camera.
    - SHIFT Right Mouse triggers pick events
    
    If SetInteractionModeToImageSlicing() is called, then some of the
    mouse events are changed as follows:
    - CTRL Left Mouse slices through the image
    - SHIFT Middle Mouse slices through the image
    - CTRL Right Mouse spins the camera
    
    If SetInteractionModeToImage3D() is called, then some of the mouse
    events are changed as follows:
    - SHIFT Left Mouse rotates the camera for oblique slicing
    - SHIFT Middle Mouse slices through the image
    - CTRL Right Mouse also slices through the image
    
    In all modes, the following key bindings are in effect:
    - R Reset the Window/Level
    - X Reset to a sagittal view
    - Y Reset to a coronal view
    - Z Reset to an axial view
    
    Note that the renderer's actors are not moved; instead the camera is
    moved.
    
    @sa
    vtkInteractorStyle vtkInteractorStyleTrackballActor
    vtkInteractorStyleJoystickCamera vtkInteractorStyleJoystickActor
    """
    def EndPick(self):
        """
        V.EndPick()
        C++: virtual void EndPick()
        """
        ...
    
    def EndSlice(self):
        """
        V.EndSlice()
        C++: virtual void EndSlice()
        """
        ...
    
    def EndWindowLevel(self):
        """
        V.EndWindowLevel()
        C++: virtual void EndWindowLevel()
        """
        ...
    
    def GetCurrentImageNumber(self):
        """
        V.GetCurrentImageNumber() -> int
        C++: int GetCurrentImageNumber()
        """
        ...
    
    def GetCurrentImageProperty(self):
        """
        V.GetCurrentImageProperty() -> vtkImageProperty
        C++: vtkImageProperty *GetCurrentImageProperty()
        
        Get the current image property, which is set when
        StartWindowLevel is called immediately before
        StartWindowLevelEvent is generated. This is the image property of
        the topmost vtkImageSlice in the renderer or nullptr if no image
        actors are present.
        """
        ...
    
    def GetInteractionMode(self):
        """
        V.GetInteractionMode() -> int
        C++: virtual int GetInteractionMode()
        
        Set/Get current mode to 2D or 3D.  The default is 2D.  In 3D
        mode, it is possible to rotate the camera to view oblique slices.
         In Slicing mode, it is possible to slice through the data, but
        not to generate oblique views by rotating the camera.
        """
        ...
    
    def GetInteractionModeMaxValue(self):
        """
        V.GetInteractionModeMaxValue() -> int
        C++: virtual int GetInteractionModeMaxValue()
        
        Set/Get current mode to 2D or 3D.  The default is 2D.  In 3D
        mode, it is possible to rotate the camera to view oblique slices.
         In Slicing mode, it is possible to slice through the data, but
        not to generate oblique views by rotating the camera.
        """
        ...
    
    def GetInteractionModeMinValue(self):
        """
        V.GetInteractionModeMinValue() -> int
        C++: virtual int GetInteractionModeMinValue()
        
        Set/Get current mode to 2D or 3D.  The default is 2D.  In 3D
        mode, it is possible to rotate the camera to view oblique slices.
         In Slicing mode, it is possible to slice through the data, but
        not to generate oblique views by rotating the camera.
        """
        ...
    
    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 GetWindowLevelCurrentPosition(self):
        """
        V.GetWindowLevelCurrentPosition() -> (int, int)
        C++: virtual int *GetWindowLevelCurrentPosition()
        
        Some useful information for handling window level
        """
        ...
    
    def GetWindowLevelStartPosition(self):
        """
        V.GetWindowLevelStartPosition() -> (int, int)
        C++: virtual int *GetWindowLevelStartPosition()
        
        Some useful information for handling window level
        """
        ...
    
    def GetXViewRightVector(self):
        """
        V.GetXViewRightVector() -> (float, float, float)
        C++: virtual double *GetXViewRightVector()
        
        Set the orientations that will be used when the X, Y, or Z keys
        are pressed.  See SetImageOrientation for more information.
        """
        ...
    
    def GetXViewUpVector(self):
        """
        V.GetXViewUpVector() -> (float, float, float)
        C++: virtual double *GetXViewUpVector()
        
        Set the orientations that will be used when the X, Y, or Z keys
        are pressed.  See SetImageOrientation for more information.
        """
        ...
    
    def GetYViewRightVector(self):
        """
        V.GetYViewRightVector() -> (float, float, float)
        C++: virtual double *GetYViewRightVector()
        
        Set the orientations that will be used when the X, Y, or Z keys
        are pressed.  See SetImageOrientation for more information.
        """
        ...
    
    def GetYViewUpVector(self):
        """
        V.GetYViewUpVector() -> (float, float, float)
        C++: virtual double *GetYViewUpVector()
        
        Set the orientations that will be used when the X, Y, or Z keys
        are pressed.  See SetImageOrientation for more information.
        """
        ...
    
    def GetZViewRightVector(self):
        """
        V.GetZViewRightVector() -> (float, float, float)
        C++: virtual double *GetZViewRightVector()
        
        Set the orientations that will be used when the X, Y, or Z keys
        are pressed.  See SetImageOrientation for more information.
        """
        ...
    
    def GetZViewUpVector(self):
        """
        V.GetZViewUpVector() -> (float, float, float)
        C++: virtual double *GetZViewUpVector()
        
        Set the orientations that will be used when the X, Y, or Z keys
        are pressed.  See SetImageOrientation for more information.
        """
        ...
    
    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() -> vtkInteractorStyleImage
        C++: vtkInteractorStyleImage *NewInstance()
        """
        ...
    
    def OnChar(self):
        """
        V.OnChar()
        C++: void OnChar() override;
        
        Override the "fly-to" (f keypress) for images.
        """
        ...
    
    def OnLeftButtonDown(self):
        """
        V.OnLeftButtonDown()
        C++: void OnLeftButtonDown() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnLeftButtonUp(self):
        """
        V.OnLeftButtonUp()
        C++: void OnLeftButtonUp() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnMiddleButtonDown(self):
        """
        V.OnMiddleButtonDown()
        C++: void OnMiddleButtonDown() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnMiddleButtonUp(self):
        """
        V.OnMiddleButtonUp()
        C++: void OnMiddleButtonUp() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnMouseMove(self):
        """
        V.OnMouseMove()
        C++: void OnMouseMove() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnRightButtonDown(self):
        """
        V.OnRightButtonDown()
        C++: void OnRightButtonDown() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnRightButtonUp(self):
        """
        V.OnRightButtonUp()
        C++: void OnRightButtonUp() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def Pick(self):
        """
        V.Pick()
        C++: virtual void Pick()
        """
        ...
    
    def SafeDownCast(self, vtkObjectBase):
        """
        V.SafeDownCast(vtkObjectBase) -> vtkInteractorStyleImage
        C++: static vtkInteractorStyleImage *SafeDownCast(
            vtkObjectBase *o)
        """
        ...
    
    def SetCurrentImageNumber(self, p_int):
        """
        V.SetCurrentImageNumber(int)
        C++: virtual void SetCurrentImageNumber(int i)
        
        Set the image to use for WindowLevel interaction. Any images for
        which the Pickable flag is off are ignored. Images are counted
        back-to-front, so 0 is the rearmost image. Negative values can be
        used to count front-to-back, so -1 is the frontmost image, -2 is
        the image behind that one, etc. The default is to use the
        frontmost image for interaction. If the specified image does not
        exist, then no WindowLevel interaction will take place.
        """
        ...
    
    def SetImageOrientation(self, , ):
        """
        V.SetImageOrientation((float, float, float), (float, float, float)
            )
        C++: void SetImageOrientation(const double leftToRight[3],
            const double bottomToTop[3])
        
        Set the view orientation, in terms of the horizontal and vertical
        directions of the computer screen.  The first vector gives the
        direction that will correspond to moving horizontally
        left-to-right across the screen, and the second vector gives the
        direction that will correspond to moving bottom-to-top up the
        screen.  This method changes the position of the camera to
        provide the desired view.
        """
        ...
    
    def SetInteractionMode(self, p_int):
        """
        V.SetInteractionMode(int)
        C++: virtual void SetInteractionMode(int _arg)
        
        Set/Get current mode to 2D or 3D.  The default is 2D.  In 3D
        mode, it is possible to rotate the camera to view oblique slices.
         In Slicing mode, it is possible to slice through the data, but
        not to generate oblique views by rotating the camera.
        """
        ...
    
    def SetInteractionModeToImage2D(self):
        """
        V.SetInteractionModeToImage2D()
        C++: void SetInteractionModeToImage2D()
        
        Set/Get current mode to 2D or 3D.  The default is 2D.  In 3D
        mode, it is possible to rotate the camera to view oblique slices.
         In Slicing mode, it is possible to slice through the data, but
        not to generate oblique views by rotating the camera.
        """
        ...
    
    def SetInteractionModeToImage3D(self):
        """
        V.SetInteractionModeToImage3D()
        C++: void SetInteractionModeToImage3D()
        
        Set/Get current mode to 2D or 3D.  The default is 2D.  In 3D
        mode, it is possible to rotate the camera to view oblique slices.
         In Slicing mode, it is possible to slice through the data, but
        not to generate oblique views by rotating the camera.
        """
        ...
    
    def SetInteractionModeToImageSlicing(self):
        """
        V.SetInteractionModeToImageSlicing()
        C++: void SetInteractionModeToImageSlicing()
        
        Set/Get current mode to 2D or 3D.  The default is 2D.  In 3D
        mode, it is possible to rotate the camera to view oblique slices.
         In Slicing mode, it is possible to slice through the data, but
        not to generate oblique views by rotating the camera.
        """
        ...
    
    def SetXViewRightVector(self, p_float, p_float_1, p_float_2):
        """
        V.SetXViewRightVector(float, float, float)
        C++: virtual void SetXViewRightVector(double _arg1, double _arg2,
            double _arg3)
        V.SetXViewRightVector((float, float, float))
        C++: virtual void SetXViewRightVector(const double _arg[3])
        
        Set the orientations that will be used when the X, Y, or Z keys
        are pressed.  See SetImageOrientation for more information.
        """
        ...
    
    def SetXViewUpVector(self, p_float, p_float_1, p_float_2):
        """
        V.SetXViewUpVector(float, float, float)
        C++: virtual void SetXViewUpVector(double _arg1, double _arg2,
            double _arg3)
        V.SetXViewUpVector((float, float, float))
        C++: virtual void SetXViewUpVector(const double _arg[3])
        
        Set the orientations that will be used when the X, Y, or Z keys
        are pressed.  See SetImageOrientation for more information.
        """
        ...
    
    def SetYViewRightVector(self, p_float, p_float_1, p_float_2):
        """
        V.SetYViewRightVector(float, float, float)
        C++: virtual void SetYViewRightVector(double _arg1, double _arg2,
            double _arg3)
        V.SetYViewRightVector((float, float, float))
        C++: virtual void SetYViewRightVector(const double _arg[3])
        
        Set the orientations that will be used when the X, Y, or Z keys
        are pressed.  See SetImageOrientation for more information.
        """
        ...
    
    def SetYViewUpVector(self, p_float, p_float_1, p_float_2):
        """
        V.SetYViewUpVector(float, float, float)
        C++: virtual void SetYViewUpVector(double _arg1, double _arg2,
            double _arg3)
        V.SetYViewUpVector((float, float, float))
        C++: virtual void SetYViewUpVector(const double _arg[3])
        
        Set the orientations that will be used when the X, Y, or Z keys
        are pressed.  See SetImageOrientation for more information.
        """
        ...
    
    def SetZViewRightVector(self, p_float, p_float_1, p_float_2):
        """
        V.SetZViewRightVector(float, float, float)
        C++: virtual void SetZViewRightVector(double _arg1, double _arg2,
            double _arg3)
        V.SetZViewRightVector((float, float, float))
        C++: virtual void SetZViewRightVector(const double _arg[3])
        
        Set the orientations that will be used when the X, Y, or Z keys
        are pressed.  See SetImageOrientation for more information.
        """
        ...
    
    def SetZViewUpVector(self, p_float, p_float_1, p_float_2):
        """
        V.SetZViewUpVector(float, float, float)
        C++: virtual void SetZViewUpVector(double _arg1, double _arg2,
            double _arg3)
        V.SetZViewUpVector((float, float, float))
        C++: virtual void SetZViewUpVector(const double _arg[3])
        
        Set the orientations that will be used when the X, Y, or Z keys
        are pressed.  See SetImageOrientation for more information.
        """
        ...
    
    def Slice(self):
        """
        V.Slice()
        C++: virtual void Slice()
        """
        ...
    
    def StartPick(self):
        """
        V.StartPick()
        C++: virtual void StartPick()
        """
        ...
    
    def StartSlice(self):
        """
        V.StartSlice()
        C++: virtual void StartSlice()
        """
        ...
    
    def StartWindowLevel(self):
        """
        V.StartWindowLevel()
        C++: virtual void StartWindowLevel()
        """
        ...
    
    def WindowLevel(self):
        """
        V.WindowLevel()
        C++: virtual void WindowLevel()
        """
        ...
    
    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__ = ...


class vtkInteractorStyleJoystickActor(__vtkmodules_vtkRenderingCore.vtkInteractorStyle):
    """
    vtkInteractorStyleJoystickActor - manipulate objects in the scene
    independently of one another
    
    Superclass: vtkInteractorStyle
    
    The class vtkInteractorStyleJoystickActor allows the user to interact
    with (rotate, zoom, etc.) separate objects in the scene independent
    of each other.  The position of the mouse relative to the center of
    the object determines the speed of the object's motion.  The mouse's
    velocity determines the acceleration of the object's motion, so the
    object will continue moving even when the mouse is not moving. For a
    3-button mouse, the left button is for rotation, the right button for
    zooming, the middle button for panning, and ctrl + left button for
    spinning.  (With fewer mouse buttons, ctrl + shift + left button is
    for zooming, and shift + left button is for panning.)
    @sa
    vtkInteractorStyleJoystickCamera vtkInteractorStyleTrackballActor
    vtkInteractorStyleTrackballCamera
    """
    def Dolly(self):
        """
        V.Dolly()
        C++: void Dolly() override;
        """
        ...
    
    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 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() -> vtkInteractorStyleJoystickActor
        C++: vtkInteractorStyleJoystickActor *NewInstance()
        """
        ...
    
    def OnLeftButtonDown(self):
        """
        V.OnLeftButtonDown()
        C++: void OnLeftButtonDown() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnLeftButtonUp(self):
        """
        V.OnLeftButtonUp()
        C++: void OnLeftButtonUp() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnMiddleButtonDown(self):
        """
        V.OnMiddleButtonDown()
        C++: void OnMiddleButtonDown() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnMiddleButtonUp(self):
        """
        V.OnMiddleButtonUp()
        C++: void OnMiddleButtonUp() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnMouseMove(self):
        """
        V.OnMouseMove()
        C++: void OnMouseMove() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnRightButtonDown(self):
        """
        V.OnRightButtonDown()
        C++: void OnRightButtonDown() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnRightButtonUp(self):
        """
        V.OnRightButtonUp()
        C++: void OnRightButtonUp() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def Pan(self):
        """
        V.Pan()
        C++: void Pan() override;
        """
        ...
    
    def Rotate(self):
        """
        V.Rotate()
        C++: void Rotate() override;
        
        These methods for the different interactions in different modes
        are overridden in subclasses to perform the correct motion. Since
        they might be called from OnTimer, they do not have mouse coord
        parameters (use interactor's GetEventPosition and
        GetLastEventPosition)
        """
        ...
    
    def SafeDownCast(self, vtkObjectBase):
        """
        V.SafeDownCast(vtkObjectBase) -> vtkInteractorStyleJoystickActor
        C++: static vtkInteractorStyleJoystickActor *SafeDownCast(
            vtkObjectBase *o)
        """
        ...
    
    def Spin(self):
        """
        V.Spin()
        C++: void Spin() override;
        """
        ...
    
    def UniformScale(self):
        """
        V.UniformScale()
        C++: void UniformScale() override;
        """
        ...
    
    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__ = ...


class vtkInteractorStyleJoystickCamera(__vtkmodules_vtkRenderingCore.vtkInteractorStyle):
    """
    vtkInteractorStyleJoystickCamera - interactive manipulation of the
    camera
    
    Superclass: vtkInteractorStyle
    
    vtkInteractorStyleJoystickCamera allows the user to move (rotate,
    pan, etc.) the camera, the point of view for the scene.  The position
    of the mouse relative to the center of the scene determines the speed
    at which the camera moves, and the speed of the mouse movement
    determines the acceleration of the camera, so the camera continues to
    move even if the mouse if not moving. For a 3-button mouse, the left
    button is for rotation, the right button for zooming, the middle
    button for panning, and ctrl + left button for spinning.  (With fewer
    mouse buttons, ctrl + shift + left button is for zooming, and shift +
    left button is for panning.)
    
    @sa
    vtkInteractorStyleJoystickActor vtkInteractorStyleTrackballCamera
    vtkInteractorStyleTrackballActor
    """
    def Dolly(self):
        """
        V.Dolly()
        C++: void Dolly() override;
        """
        ...
    
    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 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() -> vtkInteractorStyleJoystickCamera
        C++: vtkInteractorStyleJoystickCamera *NewInstance()
        """
        ...
    
    def OnLeftButtonDown(self):
        """
        V.OnLeftButtonDown()
        C++: void OnLeftButtonDown() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnLeftButtonUp(self):
        """
        V.OnLeftButtonUp()
        C++: void OnLeftButtonUp() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnMiddleButtonDown(self):
        """
        V.OnMiddleButtonDown()
        C++: void OnMiddleButtonDown() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnMiddleButtonUp(self):
        """
        V.OnMiddleButtonUp()
        C++: void OnMiddleButtonUp() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnMouseMove(self):
        """
        V.OnMouseMove()
        C++: void OnMouseMove() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnMouseWheelBackward(self):
        """
        V.OnMouseWheelBackward()
        C++: void OnMouseWheelBackward() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnMouseWheelForward(self):
        """
        V.OnMouseWheelForward()
        C++: void OnMouseWheelForward() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnRightButtonDown(self):
        """
        V.OnRightButtonDown()
        C++: void OnRightButtonDown() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnRightButtonUp(self):
        """
        V.OnRightButtonUp()
        C++: void OnRightButtonUp() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def Pan(self):
        """
        V.Pan()
        C++: void Pan() override;
        """
        ...
    
    def Rotate(self):
        """
        V.Rotate()
        C++: void Rotate() override;
        
        These methods for the different interactions in different modes
        are overridden in subclasses to perform the correct motion. Since
        they might be called from OnTimer, they do not have mouse coord
        parameters (use interactor's GetEventPosition and
        GetLastEventPosition)
        """
        ...
    
    def SafeDownCast(self, vtkObjectBase):
        """
        V.SafeDownCast(vtkObjectBase) -> vtkInteractorStyleJoystickCamera
        C++: static vtkInteractorStyleJoystickCamera *SafeDownCast(
            vtkObjectBase *o)
        """
        ...
    
    def Spin(self):
        """
        V.Spin()
        C++: void Spin() override;
        """
        ...
    
    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__ = ...


class vtkInteractorStyleMultiTouchCamera(vtkInteractorStyleTrackballCamera):
    """
    vtkInteractorStyleMultiTouchCamera - multitouch manipulation of the
    camera
    
    Superclass: vtkInteractorStyleTrackballCamera
    
    vtkInteractorStyleMultiTouchCamera allows the user to interactively
    manipulate (rotate, pan, etc.) the camera, the viewpoint of the scene
    using multitouch gestures in addition to regular gestures
    
    @sa
    vtkInteractorStyleTrackballActor vtkInteractorStyleJoystickCamera
    vtkInteractorStyleJoystickActor
    """
    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 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() -> vtkInteractorStyleMultiTouchCamera
        C++: vtkInteractorStyleMultiTouchCamera *NewInstance()
        """
        ...
    
    def OnEndPan(self):
        """
        V.OnEndPan()
        C++: void OnEndPan() override;
        
        Event bindings for gestures
        """
        ...
    
    def OnEndPinch(self):
        """
        V.OnEndPinch()
        C++: void OnEndPinch() override;
        
        Event bindings for gestures
        """
        ...
    
    def OnEndRotate(self):
        """
        V.OnEndRotate()
        C++: void OnEndRotate() override;
        
        Event bindings for gestures
        """
        ...
    
    def OnPan(self):
        """
        V.OnPan()
        C++: void OnPan() override;
        
        Event bindings for gestures
        """
        ...
    
    def OnPinch(self):
        """
        V.OnPinch()
        C++: void OnPinch() override;
        
        Event bindings for gestures
        """
        ...
    
    def OnRotate(self):
        """
        V.OnRotate()
        C++: void OnRotate() override;
        
        Event bindings for gestures
        """
        ...
    
    def OnStartPan(self):
        """
        V.OnStartPan()
        C++: void OnStartPan() override;
        
        Event bindings for gestures
        """
        ...
    
    def OnStartPinch(self):
        """
        V.OnStartPinch()
        C++: void OnStartPinch() override;
        
        Event bindings for gestures
        """
        ...
    
    def OnStartRotate(self):
        """
        V.OnStartRotate()
        C++: void OnStartRotate() override;
        
        Event bindings for gestures
        """
        ...
    
    def SafeDownCast(self, vtkObjectBase):
        """
        V.SafeDownCast(vtkObjectBase)
            -> vtkInteractorStyleMultiTouchCamera
        C++: static vtkInteractorStyleMultiTouchCamera *SafeDownCast(
            vtkObjectBase *o)
        """
        ...
    
    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__ = ...


class vtkInteractorStyleRubberBand2D(__vtkmodules_vtkRenderingCore.vtkInteractorStyle):
    """
    vtkInteractorStyleRubberBand2D - A rubber band interactor for a 2D
    view
    
    Superclass: vtkInteractorStyle
    
    vtkInteractorStyleRubberBand2D manages interaction in a 2D view.
    Camera rotation is not allowed with this interactor style. Zooming
    affects the camera's parallel scale only, and assumes that the camera
    is in parallel projection mode. The style also allows draws a rubber
    band using the left button. All camera changes invoke
    StartInteractionEvent when the button is pressed, InteractionEvent
    when the mouse (or wheel) is moved, and EndInteractionEvent when the
    button is released.  The bindings are as follows: Left mouse - Select
    (invokes a SelectionChangedEvent). Right mouse - Zoom. Middle mouse -
    Pan. Scroll wheel - Zoom.
    """
    def GetEndPosition(self):
        """
        V.GetEndPosition() -> (int, int)
        C++: virtual int *GetEndPosition()
        
        Access to the start and end positions (display coordinates) of
        the rubber band pick area. This is a convenience method for the
        wrapped languages since the event callData is lost when using
        those wrappings.
        """
        ...
    
    def GetInteraction(self):
        """
        V.GetInteraction() -> int
        C++: virtual int GetInteraction()
        
        Current interaction state
        """
        ...
    
    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 GetRenderOnMouseMove(self):
        """
        V.GetRenderOnMouseMove() -> bool
        C++: virtual bool GetRenderOnMouseMove()
        
        Whether to invoke a render when the mouse moves.
        """
        ...
    
    def GetStartPosition(self):
        """
        V.GetStartPosition() -> (int, int)
        C++: virtual int *GetStartPosition()
        
        Access to the start and end positions (display coordinates) of
        the rubber band pick area. This is a convenience method for the
        wrapped languages since the event callData is lost when using
        those wrappings.
        """
        ...
    
    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() -> vtkInteractorStyleRubberBand2D
        C++: vtkInteractorStyleRubberBand2D *NewInstance()
        """
        ...
    
    def OnLeftButtonDown(self):
        """
        V.OnLeftButtonDown()
        C++: void OnLeftButtonDown() override;
        """
        ...
    
    def OnLeftButtonUp(self):
        """
        V.OnLeftButtonUp()
        C++: void OnLeftButtonUp() override;
        """
        ...
    
    def OnMiddleButtonDown(self):
        """
        V.OnMiddleButtonDown()
        C++: void OnMiddleButtonDown() override;
        """
        ...
    
    def OnMiddleButtonUp(self):
        """
        V.OnMiddleButtonUp()
        C++: void OnMiddleButtonUp() override;
        """
        ...
    
    def OnMouseMove(self):
        """
        V.OnMouseMove()
        C++: void OnMouseMove() override;
        
        Generic event bindings can be overridden in subclasses
        """
        ...
    
    def OnMouseWheelBackward(self):
        """
        V.OnMouseWheelBackward()
        C++: void OnMouseWheelBackward() override;
        """
        ...
    
    def OnMouseWheelForward(self):
        """
        V.OnMouseWheelForward()
        C++: void OnMouseWheelForward() override;
        """
        ...
    
    def OnRightButtonDown(self):
        """
        V.OnRightButtonDown()
        C++: void OnRightButtonDown() override;
        """
        ...
    
    def OnRightButtonUp(self):
        """
        V.OnRightButtonUp()
        C++: void OnRightButtonUp() override;
        """
        ...
    
    def RenderOnMouseMoveOff(self):
        """
        V.RenderOnMouseMoveOff()
        C++: virtual void RenderOnMouseMoveOff()
        
        Whether to invoke a render when the mouse moves.
        """
        ...
    
    def RenderOnMouseMoveOn(self):
        """
        V.RenderOnMouseMoveOn()
        C++: virtual void RenderOnMouseMoveOn()
        
        Whether to invoke a render when the mouse moves.
        """
        ...
    
    def SafeDownCast(self, vtkObjectBase):
        """
        V.SafeDownCast(vtkObjectBase) -> vtkInteractorStyleRubberBand2D
        C++: static vtkInteractorStyleRubberBand2D *SafeDownCast(
            vtkObjectBase *o)
        """
        ...
    
    def SetRenderOnMouseMove(self, bool):
        """
        V.SetRenderOnMouseMove(bool)
        C++: virtual void SetRenderOnMouseMove(bool _arg)
        
        Whether to invoke a render when the mouse moves.
        """
        ...
    
    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__ = ...
    NONE = ...
    PANNING = ...
    SELECTING = ...
    SELECT_NORMAL = ...
    SELECT_UNION = ...
    ZOOMING = ...
    __dict__ = ...
    __vtkname__ = ...


class vtkInteractorStyleRubberBand3D(vtkInteractorStyleTrackballCamera):
    """
    vtkInteractorStyleRubberBand3D - A rubber band interactor for a 3D
    view
    
    Superclass: vtkInteractorStyleTrackballCamera
    
    vtkInteractorStyleRubberBand3D manages interaction in a 3D view. The
    style also allows draws a rubber band using the left button. All
    camera changes invoke StartInteractionEvent when the button is
    pressed, InteractionEvent when the mouse (or wheel) is moved, and
    EndInteractionEvent when the button is released.  The bindings are as
    follows: Left mouse - Select (invokes a SelectionChangedEvent). Right
    mouse - Rotate. Shift + right mouse - Zoom. Middle mouse - Pan.
    Scroll wheel - Zoom.
    """
    def GetEndPosition(self):
        """
        V.GetEndPosition() -> (int, int)
        C++: virtual int *GetEndPosition()
        
        Access to the start and end positions (display coordinates) of
        the rubber band pick area. This is a convenience method for the
        wrapped languages since the event callData is lost when using
        those wrappings.
        """
        ...
    
    def GetInteraction(self):
        """
        V.GetInteraction() -> int
        C++: virtual int GetInteraction()
        
        Current interaction state
        """
        ...
    
    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 GetRenderOnMouseMove(self):
        """
        V.GetRenderOnMouseMove() -> bool
        C++: virtual bool GetRenderOnMouseMove()
        
        Whether to invoke a render when the mouse moves.
        """
        ...
    
    def GetStartPosition(self):
        """
        V.GetStartPosition() -> (int, int)
        C++: virtual int *GetStartPosition()
        
        Access to the start and end positions (display coordinates) of
        the rubber band pick area. This is a convenience method for the
        wrapped languages since the event callData is lost when using
        those wrappings.
        """
        ...
    
    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() -> vtkInteractorStyleRubberBand3D
        C++: vtkInteractorStyleRubberBand3D *NewInstance()
        """
        ...
    
    def OnLeftButtonDown(self):
        """
        V.OnLeftButtonDown()
        C++: void OnLeftButtonDown() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnLeftButtonUp(self):
        """
        V.OnLeftButtonUp()
        C++: void OnLeftButtonUp() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnMiddleButtonDown(self):
        """
        V.OnMiddleButtonDown()
        C++: void OnMiddleButtonDown() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnMiddleButtonUp(self):
        """
        V.OnMiddleButtonUp()
        C++: void OnMiddleButtonUp() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnMouseMove(self):
        """
        V.OnMouseMove()
        C++: void OnMouseMove() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnMouseWheelBackward(self):
        """
        V.OnMouseWheelBackward()
        C++: void OnMouseWheelBackward() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnMouseWheelForward(self):
        """
        V.OnMouseWheelForward()
        C++: void OnMouseWheelForward() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnRightButtonDown(self):
        """
        V.OnRightButtonDown()
        C++: void OnRightButtonDown() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnRightButtonUp(self):
        """
        V.OnRightButtonUp()
        C++: void OnRightButtonUp() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def RenderOnMouseMoveOff(self):
        """
        V.RenderOnMouseMoveOff()
        C++: virtual void RenderOnMouseMoveOff()
        
        Whether to invoke a render when the mouse moves.
        """
        ...
    
    def RenderOnMouseMoveOn(self):
        """
        V.RenderOnMouseMoveOn()
        C++: virtual void RenderOnMouseMoveOn()
        
        Whether to invoke a render when the mouse moves.
        """
        ...
    
    def SafeDownCast(self, vtkObjectBase):
        """
        V.SafeDownCast(vtkObjectBase) -> vtkInteractorStyleRubberBand3D
        C++: static vtkInteractorStyleRubberBand3D *SafeDownCast(
            vtkObjectBase *o)
        """
        ...
    
    def SetRenderOnMouseMove(self, bool):
        """
        V.SetRenderOnMouseMove(bool)
        C++: virtual void SetRenderOnMouseMove(bool _arg)
        
        Whether to invoke a render when the mouse moves.
        """
        ...
    
    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__ = ...
    NONE = ...
    PANNING = ...
    ROTATING = ...
    SELECTING = ...
    SELECT_NORMAL = ...
    SELECT_UNION = ...
    ZOOMING = ...
    __dict__ = ...
    __vtkname__ = ...


class vtkInteractorStyleRubberBandPick(vtkInteractorStyleTrackballCamera):
    """
    vtkInteractorStyleRubberBandPick - Like TrackBallCamera, but this can
    pick props underneath a rubber band selection rectangle.
    
    Superclass: vtkInteractorStyleTrackballCamera
    
    This interactor style allows the user to draw a rectangle in the
    render window by hitting 'r' and then using the left mouse button.
    When the mouse button is released, the attached picker operates on
    the pixel in the center of the selection rectangle. If the picker
    happens to be a vtkAreaPicker it will operate on the entire selection
    rectangle. When the 'p' key is hit the above pick operation occurs on
    a 1x1 rectangle. In other respects it behaves the same as its parent
    class.
    
    @sa
    vtkAreaPicker
    """
    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 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() -> vtkInteractorStyleRubberBandPick
        C++: vtkInteractorStyleRubberBandPick *NewInstance()
        """
        ...
    
    def OnChar(self):
        """
        V.OnChar()
        C++: void OnChar() override;
        
        Event bindings
        """
        ...
    
    def OnLeftButtonDown(self):
        """
        V.OnLeftButtonDown()
        C++: void OnLeftButtonDown() override;
        
        Event bindings
        """
        ...
    
    def OnLeftButtonUp(self):
        """
        V.OnLeftButtonUp()
        C++: void OnLeftButtonUp() override;
        
        Event bindings
        """
        ...
    
    def OnMouseMove(self):
        """
        V.OnMouseMove()
        C++: void OnMouseMove() override;
        
        Event bindings
        """
        ...
    
    def SafeDownCast(self, vtkObjectBase):
        """
        V.SafeDownCast(vtkObjectBase) -> vtkInteractorStyleRubberBandPick
        C++: static vtkInteractorStyleRubberBandPick *SafeDownCast(
            vtkObjectBase *o)
        """
        ...
    
    def StartSelect(self):
        """
        V.StartSelect()
        C++: void StartSelect()
        """
        ...
    
    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__ = ...


class vtkInteractorStyleRubberBandZoom(__vtkmodules_vtkRenderingCore.vtkInteractorStyle):
    """
    vtkInteractorStyleRubberBandZoom - zoom in by amount indicated by
    rubber band box
    
    Superclass: vtkInteractorStyle
    
    This interactor style allows the user to draw a rectangle in the
    render window using the left mouse button.  When the mouse button is
    released, the current camera zooms by an amount determined from the
    shorter side of the drawn rectangle.
    """
    def CenterAtStartPositionOff(self):
        """
        V.CenterAtStartPositionOff()
        C++: virtual void CenterAtStartPositionOff()
        
        When set to true (default, false), the position where the user
        starts the interaction is treated as the center of the box rather
        that one of the corners of the box.
        
        During interaction, modifier keys `Shift` or `Control` can be
        used to toggle this flag temporarily. In other words, if `Shift`
        or `Control` key is pressed, this class will act as if
        CenterAtStartPosition was opposite of what it is set to.
        """
        ...
    
    def CenterAtStartPositionOn(self):
        """
        V.CenterAtStartPositionOn()
        C++: virtual void CenterAtStartPositionOn()
        
        When set to true (default, false), the position where the user
        starts the interaction is treated as the center of the box rather
        that one of the corners of the box.
        
        During interaction, modifier keys `Shift` or `Control` can be
        used to toggle this flag temporarily. In other words, if `Shift`
        or `Control` key is pressed, this class will act as if
        CenterAtStartPosition was opposite of what it is set to.
        """
        ...
    
    def GetCenterAtStartPosition(self):
        """
        V.GetCenterAtStartPosition() -> bool
        C++: virtual bool GetCenterAtStartPosition()
        
        When set to true (default, false), the position where the user
        starts the interaction is treated as the center of the box rather
        that one of the corners of the box.
        
        During interaction, modifier keys `Shift` or `Control` can be
        used to toggle this flag temporarily. In other words, if `Shift`
        or `Control` key is pressed, this class will act as if
        CenterAtStartPosition was opposite of what it is set to.
        """
        ...
    
    def GetLockAspectToViewport(self):
        """
        V.GetLockAspectToViewport() -> bool
        C++: virtual bool GetLockAspectToViewport()
        
        When set to true (default, false), the interactor will lock the
        rendered box to the viewport's aspect ratio.
        """
        ...
    
    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 GetUseDollyForPerspectiveProjection(self):
        """
        V.GetUseDollyForPerspectiveProjection() -> bool
        C++: virtual bool GetUseDollyForPerspectiveProjection()
        
        If camera is in perspective projection mode, this interactor
        style uses vtkCamera::Dolly to dolly the camera ahead for
        zooming. However, that can have unintended consequences such as
        the camera entering into the data. Another option is to use
        vtkCamera::Zoom instead. In that case, the camera position is
        left unchanged, instead the focal point is changed to the center
        of the target box and then the view angle is changed to zoom in.
        To use this approach, set this parameter to false (default,
        true).
        """
        ...
    
    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 LockAspectToViewportOff(self):
        """
        V.LockAspectToViewportOff()
        C++: virtual void LockAspectToViewportOff()
        
        When set to true (default, false), the interactor will lock the
        rendered box to the viewport's aspect ratio.
        """
        ...
    
    def LockAspectToViewportOn(self):
        """
        V.LockAspectToViewportOn()
        C++: virtual void LockAspectToViewportOn()
        
        When set to true (default, false), the interactor will lock the
        rendered box to the viewport's aspect ratio.
        """
        ...
    
    def NewInstance(self):
        """
        V.NewInstance() -> vtkInteractorStyleRubberBandZoom
        C++: vtkInteractorStyleRubberBandZoom *NewInstance()
        """
        ...
    
    def OnLeftButtonDown(self):
        """
        V.OnLeftButtonDown()
        C++: void OnLeftButtonDown() override;
        
        Event bindings
        """
        ...
    
    def OnLeftButtonUp(self):
        """
        V.OnLeftButtonUp()
        C++: void OnLeftButtonUp() override;
        
        Event bindings
        """
        ...
    
    def OnMouseMove(self):
        """
        V.OnMouseMove()
        C++: void OnMouseMove() override;
        
        Event bindings
        """
        ...
    
    def SafeDownCast(self, vtkObjectBase):
        """
        V.SafeDownCast(vtkObjectBase) -> vtkInteractorStyleRubberBandZoom
        C++: static vtkInteractorStyleRubberBandZoom *SafeDownCast(
            vtkObjectBase *o)
        """
        ...
    
    def SetCenterAtStartPosition(self, bool):
        """
        V.SetCenterAtStartPosition(bool)
        C++: virtual void SetCenterAtStartPosition(bool _arg)
        
        When set to true (default, false), the position where the user
        starts the interaction is treated as the center of the box rather
        that one of the corners of the box.
        
        During interaction, modifier keys `Shift` or `Control` can be
        used to toggle this flag temporarily. In other words, if `Shift`
        or `Control` key is pressed, this class will act as if
        CenterAtStartPosition was opposite of what it is set to.
        """
        ...
    
    def SetLockAspectToViewport(self, bool):
        """
        V.SetLockAspectToViewport(bool)
        C++: virtual void SetLockAspectToViewport(bool _arg)
        
        When set to true (default, false), the interactor will lock the
        rendered box to the viewport's aspect ratio.
        """
        ...
    
    def SetUseDollyForPerspectiveProjection(self, bool):
        """
        V.SetUseDollyForPerspectiveProjection(bool)
        C++: virtual void SetUseDollyForPerspectiveProjection(bool _arg)
        
        If camera is in perspective projection mode, this interactor
        style uses vtkCamera::Dolly to dolly the camera ahead for
        zooming. However, that can have unintended consequences such as
        the camera entering into the data. Another option is to use
        vtkCamera::Zoom instead. In that case, the camera position is
        left unchanged, instead the focal point is changed to the center
        of the target box and then the view angle is changed to zoom in.
        To use this approach, set this parameter to false (default,
        true).
        """
        ...
    
    def UseDollyForPerspectiveProjectionOff(self):
        """
        V.UseDollyForPerspectiveProjectionOff()
        C++: virtual void UseDollyForPerspectiveProjectionOff()
        
        If camera is in perspective projection mode, this interactor
        style uses vtkCamera::Dolly to dolly the camera ahead for
        zooming. However, that can have unintended consequences such as
        the camera entering into the data. Another option is to use
        vtkCamera::Zoom instead. In that case, the camera position is
        left unchanged, instead the focal point is changed to the center
        of the target box and then the view angle is changed to zoom in.
        To use this approach, set this parameter to false (default,
        true).
        """
        ...
    
    def UseDollyForPerspectiveProjectionOn(self):
        """
        V.UseDollyForPerspectiveProjectionOn()
        C++: virtual void UseDollyForPerspectiveProjectionOn()
        
        If camera is in perspective projection mode, this interactor
        style uses vtkCamera::Dolly to dolly the camera ahead for
        zooming. However, that can have unintended consequences such as
        the camera entering into the data. Another option is to use
        vtkCamera::Zoom instead. In that case, the camera position is
        left unchanged, instead the focal point is changed to the center
        of the target box and then the view angle is changed to zoom in.
        To use this approach, set this parameter to false (default,
        true).
        """
        ...
    
    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__ = ...


class vtkInteractorStyleSwitch(__vtkmodules_vtkRenderingCore.vtkInteractorStyleSwitchBase):
    """
    vtkInteractorStyleSwitch - class to swap between interactory styles
    
    Superclass: vtkInteractorStyleSwitchBase
    
    The class vtkInteractorStyleSwitch allows handles interactively
    switching between four interactor styles -- joystick actor, joystick
    camera, trackball actor, and trackball camera.  Type 'j' or 't' to
    select joystick or trackball, and type 'c' or 'a' to select camera or
    actor. The default interactor style is joystick camera.
    @sa
    vtkInteractorStyleJoystickActor vtkInteractorStyleJoystickCamera
    vtkInteractorStyleTrackballActor vtkInteractorStyleTrackballCamera
    """
    def GetCurrentStyle(self):
        """
        V.GetCurrentStyle() -> vtkInteractorStyle
        C++: virtual vtkInteractorStyle *GetCurrentStyle()
        
        Set/Get current style
        """
        ...
    
    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 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() -> vtkInteractorStyleSwitch
        C++: vtkInteractorStyleSwitch *NewInstance()
        """
        ...
    
    def OnChar(self):
        """
        V.OnChar()
        C++: void OnChar() override;
        
        Only care about the char event, which is used to switch between
        different styles.
        """
        ...
    
    def SafeDownCast(self, vtkObjectBase):
        """
        V.SafeDownCast(vtkObjectBase) -> vtkInteractorStyleSwitch
        C++: static vtkInteractorStyleSwitch *SafeDownCast(
            vtkObjectBase *o)
        """
        ...
    
    def SetAutoAdjustCameraClippingRange(self, p_int):
        """
        V.SetAutoAdjustCameraClippingRange(int)
        C++: void SetAutoAdjustCameraClippingRange(vtkTypeBool value)
            override;
        
        We must override this method in order to pass the setting down to
        the underlying styles
        """
        ...
    
    def SetCurrentRenderer(self, vtkRenderer):
        """
        V.SetCurrentRenderer(vtkRenderer)
        C++: void SetCurrentRenderer(vtkRenderer *) override;
        
        Overridden from vtkInteractorObserver because the interactor
        styles used by this class must also be updated.
        """
        ...
    
    def SetCurrentStyleToJoystickActor(self):
        """
        V.SetCurrentStyleToJoystickActor()
        C++: void SetCurrentStyleToJoystickActor()
        
        Set/Get current style
        """
        ...
    
    def SetCurrentStyleToJoystickCamera(self):
        """
        V.SetCurrentStyleToJoystickCamera()
        C++: void SetCurrentStyleToJoystickCamera()
        
        Set/Get current style
        """
        ...
    
    def SetCurrentStyleToMultiTouchCamera(self):
        """
        V.SetCurrentStyleToMultiTouchCamera()
        C++: void SetCurrentStyleToMultiTouchCamera()
        
        Set/Get current style
        """
        ...
    
    def SetCurrentStyleToTrackballActor(self):
        """
        V.SetCurrentStyleToTrackballActor()
        C++: void SetCurrentStyleToTrackballActor()
        
        Set/Get current style
        """
        ...
    
    def SetCurrentStyleToTrackballCamera(self):
        """
        V.SetCurrentStyleToTrackballCamera()
        C++: void SetCurrentStyleToTrackballCamera()
        
        Set/Get current style
        """
        ...
    
    def SetDefaultRenderer(self, vtkRenderer):
        """
        V.SetDefaultRenderer(vtkRenderer)
        C++: void SetDefaultRenderer(vtkRenderer *) override;
        
        Overridden from vtkInteractorObserver because the interactor
        styles used by this class must also be updated.
        """
        ...
    
    def SetInteractor(self, vtkRenderWindowInteractor):
        """
        V.SetInteractor(vtkRenderWindowInteractor)
        C++: void SetInteractor(vtkRenderWindowInteractor *iren) override;
        
        The sub styles need the interactor too.
        """
        ...
    
    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__ = ...


class vtkInteractorStyleTerrain(__vtkmodules_vtkRenderingCore.vtkInteractorStyle):
    """
    vtkInteractorStyleTerrain - manipulate camera in scene with natural
    view up (e.g., terrain)
    
    Superclass: vtkInteractorStyle
    
    vtkInteractorStyleTerrain is used to manipulate a camera which is
    viewing a scene with a natural view up, e.g., terrain. The camera in
    such a scene is manipulated by specifying azimuth (angle around the
    view up vector) and elevation (the angle from the horizon).
    
    The mouse binding for this class is as follows. Left mouse click
    followed rotates the camera around the focal point using both
    elevation and azimuth invocations on the camera. Left mouse motion in
    the horizontal direction results in azimuth motion; left mouse motion
    in the vertical direction results in elevation motion. Therefore,
    diagonal motion results in a combination of azimuth and elevation.
    (If the shift key is held during motion, then only one of elevation
    or azimuth is invoked, depending on the whether the mouse motion is
    primarily horizontal or vertical.) Middle mouse button pans the
    camera across the scene (again the shift key has a similar effect on
    limiting the motion to the vertical or horizontal direction. The
    right mouse is used to dolly (e.g., a type of zoom) towards or away
    from the focal point.
    
    The class also supports some keypress events. The "r" key resets the
    camera.  The "e" key invokes the exit callback and by default exits
    the program. The "f" key sets a new camera focal point and flys
    towards that point. The "u" key invokes the user event. The "3" key
    toggles between stereo and non-stero mode. The "l" key toggles on/off
    a latitude/longitude markers that can be used to estimate/control
    position.
    
    @sa
    vtkInteractorObserver vtkInteractorStyle vtk3DWidget
    """
    def Dolly(self):
        """
        V.Dolly()
        C++: void Dolly() override;
        """
        ...
    
    def GetLatLongLines(self):
        """
        V.GetLatLongLines() -> int
        C++: virtual vtkTypeBool GetLatLongLines()
        
        Turn on/off the latitude/longitude lines.
        """
        ...
    
    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 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 LatLongLinesOff(self):
        """
        V.LatLongLinesOff()
        C++: virtual void LatLongLinesOff()
        
        Turn on/off the latitude/longitude lines.
        """
        ...
    
    def LatLongLinesOn(self):
        """
        V.LatLongLinesOn()
        C++: virtual void LatLongLinesOn()
        
        Turn on/off the latitude/longitude lines.
        """
        ...
    
    def NewInstance(self):
        """
        V.NewInstance() -> vtkInteractorStyleTerrain
        C++: vtkInteractorStyleTerrain *NewInstance()
        """
        ...
    
    def OnChar(self):
        """
        V.OnChar()
        C++: void OnChar() override;
        
        Override the "fly-to" (f keypress) for images.
        """
        ...
    
    def OnLeftButtonDown(self):
        """
        V.OnLeftButtonDown()
        C++: void OnLeftButtonDown() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnLeftButtonUp(self):
        """
        V.OnLeftButtonUp()
        C++: void OnLeftButtonUp() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnMiddleButtonDown(self):
        """
        V.OnMiddleButtonDown()
        C++: void OnMiddleButtonDown() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnMiddleButtonUp(self):
        """
        V.OnMiddleButtonUp()
        C++: void OnMiddleButtonUp() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnMouseMove(self):
        """
        V.OnMouseMove()
        C++: void OnMouseMove() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnRightButtonDown(self):
        """
        V.OnRightButtonDown()
        C++: void OnRightButtonDown() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnRightButtonUp(self):
        """
        V.OnRightButtonUp()
        C++: void OnRightButtonUp() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def Pan(self):
        """
        V.Pan()
        C++: void Pan() override;
        """
        ...
    
    def Rotate(self):
        """
        V.Rotate()
        C++: void Rotate() override;
        
        These methods for the different interactions in different modes
        are overridden in subclasses to perform the correct motion. Since
        they might be called from OnTimer, they do not have mouse coord
        parameters (use interactor's GetEventPosition and
        GetLastEventPosition)
        """
        ...
    
    def SafeDownCast(self, vtkObjectBase):
        """
        V.SafeDownCast(vtkObjectBase) -> vtkInteractorStyleTerrain
        C++: static vtkInteractorStyleTerrain *SafeDownCast(
            vtkObjectBase *o)
        """
        ...
    
    def SetLatLongLines(self, p_int):
        """
        V.SetLatLongLines(int)
        C++: virtual void SetLatLongLines(vtkTypeBool _arg)
        
        Turn on/off the latitude/longitude lines.
        """
        ...
    
    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__ = ...


class vtkInteractorStyleTrackball(vtkInteractorStyleSwitch):
    """
    vtkInteractorStyleTrackball - provides trackball motion control
    
    Superclass: vtkInteractorStyleSwitch
    
    vtkInteractorStyleTrackball is an implementation of
    vtkInteractorStyle that defines the trackball style. It is now
    deprecated and as such a subclass of vtkInteractorStyleSwitch
    
    @sa
    vtkInteractorStyleSwitch vtkInteractorStyleTrackballActor
    vtkInteractorStyleJoystickCamera
    """
    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 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() -> vtkInteractorStyleTrackball
        C++: vtkInteractorStyleTrackball *NewInstance()
        """
        ...
    
    def SafeDownCast(self, vtkObjectBase):
        """
        V.SafeDownCast(vtkObjectBase) -> vtkInteractorStyleTrackball
        C++: static vtkInteractorStyleTrackball *SafeDownCast(
            vtkObjectBase *o)
        """
        ...
    
    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__ = ...


class vtkInteractorStyleTrackballActor(__vtkmodules_vtkRenderingCore.vtkInteractorStyle):
    """
    vtkInteractorStyleTrackballActor - manipulate objects in the scene
    independent of each other
    
    Superclass: vtkInteractorStyle
    
    vtkInteractorStyleTrackballActor allows the user to interact with
    (rotate, pan, etc.) objects in the scene indendent of each other.  In
    trackball interaction, the magnitude of the mouse motion is
    proportional to the actor motion associated with a particular mouse
    binding. For example, small left-button motions cause small changes
    in the rotation of the actor around its center point.
    
    The mouse bindings are as follows. For a 3-button mouse, the left
    button is for rotation, the right button for zooming, the middle
    button for panning, and ctrl + left button for spinning.  (With fewer
    mouse buttons, ctrl + shift + left button is for zooming, and shift +
    left button is for panning.)
    
    @sa
    vtkInteractorStyleTrackballCamera vtkInteractorStyleJoystickActor
    vtkInteractorStyleJoystickCamera
    """
    def Dolly(self):
        """
        V.Dolly()
        C++: void Dolly() override;
        """
        ...
    
    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 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() -> vtkInteractorStyleTrackballActor
        C++: vtkInteractorStyleTrackballActor *NewInstance()
        """
        ...
    
    def OnLeftButtonDown(self):
        """
        V.OnLeftButtonDown()
        C++: void OnLeftButtonDown() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnLeftButtonUp(self):
        """
        V.OnLeftButtonUp()
        C++: void OnLeftButtonUp() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnMiddleButtonDown(self):
        """
        V.OnMiddleButtonDown()
        C++: void OnMiddleButtonDown() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnMiddleButtonUp(self):
        """
        V.OnMiddleButtonUp()
        C++: void OnMiddleButtonUp() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnMouseMove(self):
        """
        V.OnMouseMove()
        C++: void OnMouseMove() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnRightButtonDown(self):
        """
        V.OnRightButtonDown()
        C++: void OnRightButtonDown() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnRightButtonUp(self):
        """
        V.OnRightButtonUp()
        C++: void OnRightButtonUp() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def Pan(self):
        """
        V.Pan()
        C++: void Pan() override;
        """
        ...
    
    def Rotate(self):
        """
        V.Rotate()
        C++: void Rotate() override;
        
        These methods for the different interactions in different modes
        are overridden in subclasses to perform the correct motion. Since
        they might be called from OnTimer, they do not have mouse coord
        parameters (use interactor's GetEventPosition and
        GetLastEventPosition)
        """
        ...
    
    def SafeDownCast(self, vtkObjectBase):
        """
        V.SafeDownCast(vtkObjectBase) -> vtkInteractorStyleTrackballActor
        C++: static vtkInteractorStyleTrackballActor *SafeDownCast(
            vtkObjectBase *o)
        """
        ...
    
    def Spin(self):
        """
        V.Spin()
        C++: void Spin() override;
        """
        ...
    
    def UniformScale(self):
        """
        V.UniformScale()
        C++: void UniformScale() override;
        """
        ...
    
    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__ = ...


class vtkInteractorStyleUnicam(__vtkmodules_vtkRenderingCore.vtkInteractorStyle):
    """
    vtkInteractorStyleUnicam - provides Unicam navigation style
    
    Superclass: vtkInteractorStyle
    
    UniCam is a camera interactor.  Here, just the primary features of
    the UniCam technique are implemented.  UniCam requires just one mouse
    button and supports context sensitive dollying, panning, and
    rotation.  (In this implementation, it uses the right mouse button,
    leaving the middle and left available for other functions.) For more
    information, see the paper at:
    
    
       ftp://ftp.cs.brown.edu/pub/papers/graphics/research/unicam.pdf
    
    The following is a brief description of the UniCam Camera Controls. 
    You can perform 3 operations on the camera: rotate, pan, and dolly
    the camera. All operations are reached through the right mouse button
    & mouse movements.
    
    IMPORTANT: UniCam assumes there is an axis that makes sense as a "up"
    vector for the world.  By default, this axis is defined to be the
    vector <0,0,1>.  You can set it explicitly for the data you are
    viewing with the 'SetWorldUpVector(..)' method.
    
    1. ROTATE:
    
    Position the cursor over the point you wish to rotate around and
    press and release the left mouse button.  A 'focus dot' appears
    indicating the point that will be the center of rotation.  To rotate,
    press and hold the left mouse button and drag the mouse.. release the
    button to complete the rotation.
    
    Rotations can be done without placing a focus dot first by moving the
    mouse cursor to within 10% of the window border & pressing and
    holding the left button followed by dragging the mouse.  The last
    focus dot position will be re-used.
    
    2. PAN:
    
    Click and hold the left mouse button, and initially move the mouse
    left or right.  The point under the initial pick will pick correlate
    w/ the mouse tip-- (i.e., direct manipulation).
    
    3. DOLLY (+ PAN):
    
    Click and hold the left mouse button, and initially move the mouse up
    or down.  Moving the mouse down will dolly towards the picked point,
    and moving the mouse up will dolly away from it.  Dollying occurs
    relative to the picked point which simplifies the task of dollying
    towards a region of interest. Left and right mouse movements will pan
    the camera left and right.
    
    @warning
    (NOTE: This implementation of Unicam assumes a perspective camera. 
    It could be modified relatively easily to also support an
    orthographic projection.)
    """
    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 GetWorldUpVector(self):
        """
        V.GetWorldUpVector() -> (float, float, float)
        C++: virtual double *GetWorldUpVector()
        """
        ...
    
    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() -> vtkInteractorStyleUnicam
        C++: vtkInteractorStyleUnicam *NewInstance()
        """
        ...
    
    def OnLeftButtonDown(self):
        """
        V.OnLeftButtonDown()
        C++: void OnLeftButtonDown() override;
        
        Concrete implementation of event bindings
        """
        ...
    
    def OnLeftButtonMove(self):
        """
        V.OnLeftButtonMove()
        C++: virtual void OnLeftButtonMove()
        
        Concrete implementation of event bindings
        """
        ...
    
    def OnLeftButtonUp(self):
        """
        V.OnLeftButtonUp()
        C++: void OnLeftButtonUp() override;
        
        Concrete implementation of event bindings
        """
        ...
    
    def OnMouseMove(self):
        """
        V.OnMouseMove()
        C++: void OnMouseMove() override;
        
        Concrete implementation of event bindings
        """
        ...
    
    def OnTimer(self):
        """
        V.OnTimer()
        C++: void OnTimer() override;
        
        OnTimer calls RotateCamera, RotateActor etc which should be
        overridden by style subclasses.
        """
        ...
    
    def SafeDownCast(self, vtkObjectBase):
        """
        V.SafeDownCast(vtkObjectBase) -> vtkInteractorStyleUnicam
        C++: static vtkInteractorStyleUnicam *SafeDownCast(
            vtkObjectBase *o)
        """
        ...
    
    def SetWorldUpVector(self, p_float=..., p_float=..., p_float=...):
        """
        V.SetWorldUpVector([float, float, float])
        C++: void SetWorldUpVector(double a[3])
        V.SetWorldUpVector(float, float, float)
        C++: void SetWorldUpVector(double x, double y, double z)
        """
        ...
    
    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__ = ...


class vtkInteractorStyleUser(__vtkmodules_vtkRenderingCore.vtkInteractorStyle):
    """
    vtkInteractorStyleUser - provides customizable interaction routines
    
    Superclass: vtkInteractorStyle
    
    The most common way to customize user interaction is to write a
    subclass of vtkInteractorStyle: vtkInteractorStyleUser allows you to
    customize the interaction to without subclassing vtkInteractorStyle. 
    This is particularly useful for setting up custom interaction modes
    in scripting languages such as Python.  This class allows you to hook
    into the MouseMove, ButtonPress/Release, KeyPress/Release, etc.
    events.  If you want to hook into just a single mouse button, but
    leave the interaction modes for the others unchanged, you must use
    e.g. SetMiddleButtonPressMethod() instead of the more general
    SetButtonPressMethod().
    """
    def GetButton(self):
        """
        V.GetButton() -> int
        C++: virtual int GetButton()
        
        Get the mouse button that was last pressed inside the window
        (returns zero when the button is released).
        """
        ...
    
    def GetChar(self):
        """
        V.GetChar() -> int
        C++: virtual int GetChar()
        
        Get the character for a Char event.
        """
        ...
    
    def GetCtrlKey(self):
        """
        V.GetCtrlKey() -> int
        C++: virtual int GetCtrlKey()
        
        Test whether modifiers were held down when mouse button or key
        was pressed.
        """
        ...
    
    def GetKeySym(self):
        """
        V.GetKeySym() -> string
        C++: virtual char *GetKeySym()
        
        Get the KeySym (in the same format as vtkRenderWindowInteractor
        KeySyms) for a KeyPress or KeyRelease method.
        """
        ...
    
    def GetLastPos(self):
        """
        V.GetLastPos() -> (int, int)
        C++: virtual int *GetLastPos()
        
        Get the most recent mouse position during mouse motion. In your
        user interaction method, you must use this to track the mouse
        movement.  Do not use GetEventPosition(), which records the last
        position where a mouse button was pressed.
        """
        ...
    
    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 GetOldPos(self):
        """
        V.GetOldPos() -> (int, int)
        C++: virtual int *GetOldPos()
        
        Get the previous mouse position during mouse motion, or after a
        key press.  This can be used to calculate the relative
        displacement of the mouse.
        """
        ...
    
    def GetShiftKey(self):
        """
        V.GetShiftKey() -> int
        C++: virtual int GetShiftKey()
        
        Test whether modifiers were held down when mouse button or key
        was pressed.
        """
        ...
    
    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() -> vtkInteractorStyleUser
        C++: vtkInteractorStyleUser *NewInstance()
        """
        ...
    
    def OnChar(self):
        """
        V.OnChar()
        C++: void OnChar() override;
        
        Keyboard functions
        """
        ...
    
    def OnConfigure(self):
        """
        V.OnConfigure()
        C++: void OnConfigure() override;
        
        These are more esoteric events, but are useful in some cases.
        """
        ...
    
    def OnEnter(self):
        """
        V.OnEnter()
        C++: void OnEnter() override;
        
        These are more esoteric events, but are useful in some cases.
        """
        ...
    
    def OnExpose(self):
        """
        V.OnExpose()
        C++: void OnExpose() override;
        
        These are more esoteric events, but are useful in some cases.
        """
        ...
    
    def OnKeyPress(self):
        """
        V.OnKeyPress()
        C++: void OnKeyPress() override;
        
        Keyboard functions
        """
        ...
    
    def OnKeyRelease(self):
        """
        V.OnKeyRelease()
        C++: void OnKeyRelease() override;
        
        Keyboard functions
        """
        ...
    
    def OnLeave(self):
        """
        V.OnLeave()
        C++: void OnLeave() override;
        
        These are more esoteric events, but are useful in some cases.
        """
        ...
    
    def OnLeftButtonDown(self):
        """
        V.OnLeftButtonDown()
        C++: void OnLeftButtonDown() override;
        
        Generic event bindings
        """
        ...
    
    def OnLeftButtonUp(self):
        """
        V.OnLeftButtonUp()
        C++: void OnLeftButtonUp() override;
        
        Generic event bindings
        """
        ...
    
    def OnMiddleButtonDown(self):
        """
        V.OnMiddleButtonDown()
        C++: void OnMiddleButtonDown() override;
        
        Generic event bindings
        """
        ...
    
    def OnMiddleButtonUp(self):
        """
        V.OnMiddleButtonUp()
        C++: void OnMiddleButtonUp() override;
        
        Generic event bindings
        """
        ...
    
    def OnMouseMove(self):
        """
        V.OnMouseMove()
        C++: void OnMouseMove() override;
        
        Generic event bindings
        """
        ...
    
    def OnMouseWheelBackward(self):
        """
        V.OnMouseWheelBackward()
        C++: void OnMouseWheelBackward() override;
        
        Generic event bindings
        """
        ...
    
    def OnMouseWheelForward(self):
        """
        V.OnMouseWheelForward()
        C++: void OnMouseWheelForward() override;
        
        Generic event bindings
        """
        ...
    
    def OnRightButtonDown(self):
        """
        V.OnRightButtonDown()
        C++: void OnRightButtonDown() override;
        
        Generic event bindings
        """
        ...
    
    def OnRightButtonUp(self):
        """
        V.OnRightButtonUp()
        C++: void OnRightButtonUp() override;
        
        Generic event bindings
        """
        ...
    
    def OnTimer(self):
        """
        V.OnTimer()
        C++: void OnTimer() override;
        
        OnTimer calls Rotate, Rotate etc which should be overridden by
        style subclasses.
        """
        ...
    
    def SafeDownCast(self, vtkObjectBase):
        """
        V.SafeDownCast(vtkObjectBase) -> vtkInteractorStyleUser
        C++: static vtkInteractorStyleUser *SafeDownCast(vtkObjectBase *o)
        """
        ...
    
    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__ = ...


class vtkParallelCoordinatesInteractorStyle(vtkInteractorStyleTrackballCamera):
    """
    vtkParallelCoordinatesInteractorStyle - interactive manipulation of
    the camera specialized for parallel coordinates
    
    Superclass: vtkInteractorStyleTrackballCamera
    
    vtkParallelCoordinatesInteractorStyle allows the user to
    interactively manipulate (rotate, pan, zoom etc.) the camera. Several
    events are overloaded from its superclass
    vtkInteractorStyleTrackballCamera, hence the mouse bindings are
    different. (The bindings keep the camera's view plane normal
    perpendicular to the x-y plane.) In summary, the mouse events are as
    follows: + Left Mouse button triggers window level events + CTRL Left
    Mouse spins the camera around its view plane normal + SHIFT Left
    Mouse pans the camera + CTRL SHIFT Left Mouse dollys (a positional
    zoom) the camera + Middle mouse button pans the camera + Right mouse
    button dollys the camera. + SHIFT Right Mouse triggers pick events
    
    Note that the renderer's actors are not moved; instead the camera is
    moved.
    
    @sa
    vtkInteractorStyle vtkInteractorStyleTrackballActor
    vtkInteractorStyleJoystickCamera vtkInteractorStyleJoystickActor
    """
    def EndInspect(self):
        """
        V.EndInspect()
        C++: virtual void EndInspect()
        """
        ...
    
    def EndPan(self):
        """
        V.EndPan()
        C++: void EndPan() override;
        
        Interaction mode entry points used internally.
        """
        ...
    
    def EndZoom(self):
        """
        V.EndZoom()
        C++: void EndZoom() override;
        
        Interaction mode entry points used internally.
        """
        ...
    
    def GetCursorCurrentPosition(self):
        """
        V.GetCursorCurrentPosition() -> (int, int)
        C++: virtual int *GetCursorCurrentPosition()
        V.GetCursorCurrentPosition(vtkViewport, [float, float])
        C++: void GetCursorCurrentPosition(vtkViewport *viewport,
            double pos[2])
        
        Get the cursor positions in pixel coords
        """
        ...
    
    def GetCursorLastPosition(self):
        """
        V.GetCursorLastPosition() -> (int, int)
        C++: virtual int *GetCursorLastPosition()
        V.GetCursorLastPosition(vtkViewport, [float, float])
        C++: void GetCursorLastPosition(vtkViewport *viewport,
            double pos[2])
        
        Get the cursor positions in pixel coords
        """
        ...
    
    def GetCursorStartPosition(self):
        """
        V.GetCursorStartPosition() -> (int, int)
        C++: virtual int *GetCursorStartPosition()
        V.GetCursorStartPosition(vtkViewport, [float, float])
        C++: void GetCursorStartPosition(vtkViewport *viewport,
            double pos[2])
        
        Get the cursor positions in pixel coords
        """
        ...
    
    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 Inspect(self, p_int, p_int_1):
        """
        V.Inspect(int, int)
        C++: virtual void Inspect(int x, int y)
        """
        ...
    
    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() -> vtkParallelCoordinatesInteractorStyle
        C++: vtkParallelCoordinatesInteractorStyle *NewInstance()
        """
        ...
    
    def OnChar(self):
        """
        V.OnChar()
        C++: void OnChar() override;
        
        Override the "fly-to" (f keypress) for images.
        """
        ...
    
    def OnLeave(self):
        """
        V.OnLeave()
        C++: void OnLeave() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnLeftButtonDown(self):
        """
        V.OnLeftButtonDown()
        C++: void OnLeftButtonDown() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnLeftButtonUp(self):
        """
        V.OnLeftButtonUp()
        C++: void OnLeftButtonUp() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnMiddleButtonDown(self):
        """
        V.OnMiddleButtonDown()
        C++: void OnMiddleButtonDown() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnMiddleButtonUp(self):
        """
        V.OnMiddleButtonUp()
        C++: void OnMiddleButtonUp() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnMouseMove(self):
        """
        V.OnMouseMove()
        C++: void OnMouseMove() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnRightButtonDown(self):
        """
        V.OnRightButtonDown()
        C++: void OnRightButtonDown() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def OnRightButtonUp(self):
        """
        V.OnRightButtonUp()
        C++: void OnRightButtonUp() override;
        
        Event bindings controlling the effects of pressing mouse buttons
        or moving the mouse.
        """
        ...
    
    def Pan(self):
        """
        V.Pan()
        C++: void Pan() override;
        """
        ...
    
    def SafeDownCast(self, vtkObjectBase):
        """
        V.SafeDownCast(vtkObjectBase)
            -> vtkParallelCoordinatesInteractorStyle
        C++: static vtkParallelCoordinatesInteractorStyle *SafeDownCast(
            vtkObjectBase *o)
        """
        ...
    
    def StartInspect(self, p_int, p_int_1):
        """
        V.StartInspect(int, int)
        C++: virtual void StartInspect(int x, int y)
        """
        ...
    
    def StartPan(self):
        """
        V.StartPan()
        C++: void StartPan() override;
        
        Interaction mode entry points used internally.
        """
        ...
    
    def StartZoom(self):
        """
        V.StartZoom()
        C++: void StartZoom() override;
        
        Interaction mode entry points used internally.
        """
        ...
    
    def Zoom(self):
        """
        V.Zoom()
        C++: void Zoom() override;
        """
        ...
    
    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__ = ...
    INTERACT_HOVER = ...
    INTERACT_INSPECT = ...
    INTERACT_PAN = ...
    INTERACT_ZOOM = ...
    __dict__ = ...
    __vtkname__ = ...


__loader__ = ...
__spec__ = ...
