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

from .vtkHandleRepresentation import vtkHandleRepresentation

class vtkAbstractPolygonalHandleRepresentation3D(vtkHandleRepresentation):
    """
    vtkAbstractPolygonalHandleRepresentation3D - represent a user defined
    handle geometry in 3D while maintaining a fixed orientation w.r.t the
    camera.
    
    Superclass: vtkHandleRepresentation
    
    This class serves as the geometrical representation of a
    vtkHandleWidget. The handle can be represented by an arbitrary
    polygonal data (vtkPolyData), set via SetHandle(vtkPolyData *). The
    actual position of the handle will be initially assumed to be
    (0,0,0). You can specify an offset from this position if desired.
    This class differs from vtkPolygonalHandleRepresentation3D in that
    the handle will always remain front facing, ie it maintains a fixed
    orientation with respect to the camera. This is done by using
    vtkFollowers internally to render the actors.
    @sa
    vtkPolygonalHandleRepresentation3D vtkHandleRepresentation
    vtkHandleWidget
    """
    def BuildRepresentation(self):
        """
        V.BuildRepresentation()
        C++: void BuildRepresentation() override;
        
        Methods to make this class properly act like a
        vtkWidgetRepresentation.
        """
        ...
    
    def ComputeInteractionState(self, p_int, p_int_1, p_int_2):
        """
        V.ComputeInteractionState(int, int, int) -> int
        C++: int ComputeInteractionState(int X, int Y, int modify=0)
            override;
        
        Methods to make this class properly act like a
        vtkWidgetRepresentation.
        """
        ...
    
    def DeepCopy(self, vtkProp):
        """
        V.DeepCopy(vtkProp)
        C++: void DeepCopy(vtkProp *prop) override;
        
        Methods to make this class behave as a vtkProp.
        """
        ...
    
    def GetActors(self, vtkPropCollection):
        """
        V.GetActors(vtkPropCollection)
        C++: void GetActors(vtkPropCollection *) override;
        
        Methods to make this class behave as a vtkProp.
        """
        ...
    
    def GetBounds(self):
        """
        V.GetBounds() -> (float, float, float, float, float, float)
        C++: double *GetBounds() override;
        
        Methods to make this class behave as a vtkProp.
        """
        ...
    
    def GetHandle(self):
        """
        V.GetHandle() -> vtkPolyData
        C++: vtkPolyData *GetHandle()
        
        Set/get the handle polydata.
        """
        ...
    
    def GetHandleVisibility(self):
        """
        V.GetHandleVisibility() -> int
        C++: virtual vtkTypeBool GetHandleVisibility()
        
        Toggle the visibility of the handle on and off
        """
        ...
    
    def GetLabelText(self):
        """
        V.GetLabelText() -> string
        C++: virtual char *GetLabelText()
        
        A label may be associated with the seed. The string can be set
        via SetLabelText. The visibility of the label can be turned on /
        off.
        """
        ...
    
    def GetLabelTextActor(self):
        """
        V.GetLabelTextActor() -> vtkFollower
        C++: virtual vtkFollower *GetLabelTextActor()
        
        Get the label text actor
        """
        ...
    
    def GetLabelTextScale(self):
        """
        V.GetLabelTextScale() -> (float, ...)
        C++: virtual double *GetLabelTextScale()
        
        Scale text (font size along each dimension).
        """
        ...
    
    def GetLabelVisibility(self):
        """
        V.GetLabelVisibility() -> int
        C++: virtual vtkTypeBool GetLabelVisibility()
        
        A label may be associated with the seed. The string can be set
        via SetLabelText. The visibility of the label can be turned on /
        off.
        """
        ...
    
    def GetNumberOfGenerationsFromBase(self, string):
        """
        V.GetNumberOfGenerationsFromBase(string) -> int
        C++: vtkIdType GetNumberOfGenerationsFromBase(const char *type)
            override;
        
        Standard methods for instances of this class.
        """
        ...
    
    def GetNumberOfGenerationsFromBaseType(self, string):
        """
        V.GetNumberOfGenerationsFromBaseType(string) -> int
        C++: static vtkIdType GetNumberOfGenerationsFromBaseType(
            const char *type)
        
        Standard methods for instances of this class.
        """
        ...
    
    def GetProperty(self):
        """
        V.GetProperty() -> vtkProperty
        C++: virtual vtkProperty *GetProperty()
        
        Set/Get the handle properties when unselected and selected.
        """
        ...
    
    def GetSelectedProperty(self):
        """
        V.GetSelectedProperty() -> vtkProperty
        C++: virtual vtkProperty *GetSelectedProperty()
        
        Set/Get the handle properties when unselected and selected.
        """
        ...
    
    def GetSmoothMotion(self):
        """
        V.GetSmoothMotion() -> int
        C++: virtual vtkTypeBool GetSmoothMotion()
        
        Turn on/off smooth motion of the handle. See the documentation of
        MoveFocusRequest for details. By default, SmoothMotion is ON.
        However, in certain applications the user may want to turn it
        off. For instance when using certain specific PointPlacer's with
        the representation such as the vtkCellCentersPointPlacer, which
        causes the representation to snap to the center of cells, or
        using a vtkPolygonalSurfacePointPlacer which constrains the
        widget to the surface of a mesh. In such cases, inherent
        restrictions on handle placement might conflict with a request
        for smooth motion of the handles.
        """
        ...
    
    def GetTransform(self):
        """
        V.GetTransform() -> vtkAbstractTransform
        C++: virtual vtkAbstractTransform *GetTransform()
        
        Get the transform used to transform the generic handle polydata
        before placing it in the render window
        """
        ...
    
    def HandleVisibilityOff(self):
        """
        V.HandleVisibilityOff()
        C++: virtual void HandleVisibilityOff()
        
        Toggle the visibility of the handle on and off
        """
        ...
    
    def HandleVisibilityOn(self):
        """
        V.HandleVisibilityOn()
        C++: virtual void HandleVisibilityOn()
        
        Toggle the visibility of the handle on and off
        """
        ...
    
    def HasTranslucentPolygonalGeometry(self):
        """
        V.HasTranslucentPolygonalGeometry() -> int
        C++: vtkTypeBool HasTranslucentPolygonalGeometry() override;
        
        Methods to make this class behave as a vtkProp.
        """
        ...
    
    def Highlight(self, p_int):
        """
        V.Highlight(int)
        C++: void Highlight(int highlight) override;
        """
        ...
    
    def IsA(self, string):
        """
        V.IsA(string) -> int
        C++: vtkTypeBool IsA(const char *type) override;
        
        Standard methods for instances of this class.
        """
        ...
    
    def IsTypeOf(self, string):
        """
        V.IsTypeOf(string) -> int
        C++: static vtkTypeBool IsTypeOf(const char *type)
        
        Standard methods for instances of this class.
        """
        ...
    
    def LabelVisibilityOff(self):
        """
        V.LabelVisibilityOff()
        C++: virtual void LabelVisibilityOff()
        
        A label may be associated with the seed. The string can be set
        via SetLabelText. The visibility of the label can be turned on /
        off.
        """
        ...
    
    def LabelVisibilityOn(self):
        """
        V.LabelVisibilityOn()
        C++: virtual void LabelVisibilityOn()
        
        A label may be associated with the seed. The string can be set
        via SetLabelText. The visibility of the label can be turned on /
        off.
        """
        ...
    
    def NewInstance(self):
        """
        V.NewInstance() -> vtkAbstractPolygonalHandleRepresentation3D
        C++: vtkAbstractPolygonalHandleRepresentation3D *NewInstance()
        
        Standard methods for instances of this class.
        """
        ...
    
    def RegisterPickers(self):
        """
        V.RegisterPickers()
        C++: void RegisterPickers() override;
        
        Register internal Pickers in the Picking Manager. Must be
        reimplemented by concrete widget representations to register
        their pickers.
        """
        ...
    
    def ReleaseGraphicsResources(self, vtkWindow):
        """
        V.ReleaseGraphicsResources(vtkWindow)
        C++: void ReleaseGraphicsResources(vtkWindow *) override;
        
        Methods to make this class behave as a vtkProp.
        """
        ...
    
    def RenderOpaqueGeometry(self, vtkViewport):
        """
        V.RenderOpaqueGeometry(vtkViewport) -> int
        C++: int RenderOpaqueGeometry(vtkViewport *viewport) override;
        
        Methods to make this class behave as a vtkProp.
        """
        ...
    
    def RenderTranslucentPolygonalGeometry(self, vtkViewport):
        """
        V.RenderTranslucentPolygonalGeometry(vtkViewport) -> int
        C++: int RenderTranslucentPolygonalGeometry(vtkViewport *viewport)
             override;
        
        Methods to make this class behave as a vtkProp.
        """
        ...
    
    def SafeDownCast(self, vtkObjectBase):
        """
        V.SafeDownCast(vtkObjectBase)
            -> vtkAbstractPolygonalHandleRepresentation3D
        C++: static vtkAbstractPolygonalHandleRepresentation3D *SafeDownCast(
            vtkObjectBase *o)
        
        Standard methods for instances of this class.
        """
        ...
    
    def SetDisplayPosition(self, p_float=..., p_float=..., p_float=...):
        """
        V.SetDisplayPosition([float, float, float])
        C++: void SetDisplayPosition(double p[3]) override;
        
        Set the position of the point in world and display coordinates.
        """
        ...
    
    def SetHandle(self, vtkPolyData):
        """
        V.SetHandle(vtkPolyData)
        C++: void SetHandle(vtkPolyData *)
        
        Set/get the handle polydata.
        """
        ...
    
    def SetHandleVisibility(self, p_int):
        """
        V.SetHandleVisibility(int)
        C++: virtual void SetHandleVisibility(vtkTypeBool _arg)
        
        Toggle the visibility of the handle on and off
        """
        ...
    
    def SetLabelText(self, string):
        """
        V.SetLabelText(string)
        C++: virtual void SetLabelText(const char *label)
        
        A label may be associated with the seed. The string can be set
        via SetLabelText. The visibility of the label can be turned on /
        off.
        """
        ...
    
    def SetLabelTextScale(self, p_float=..., p_float=..., p_float=...):
        """
        V.SetLabelTextScale([float, float, float])
        C++: virtual void SetLabelTextScale(double scale[3])
        V.SetLabelTextScale(float, float, float)
        C++: void SetLabelTextScale(double x, double y, double z)
        
        Scale text (font size along each dimension).
        """
        ...
    
    def SetLabelVisibility(self, p_int):
        """
        V.SetLabelVisibility(int)
        C++: virtual void SetLabelVisibility(vtkTypeBool _arg)
        
        A label may be associated with the seed. The string can be set
        via SetLabelText. The visibility of the label can be turned on /
        off.
        """
        ...
    
    def SetProperty(self, vtkProperty):
        """
        V.SetProperty(vtkProperty)
        C++: void SetProperty(vtkProperty *)
        
        Set/Get the handle properties when unselected and selected.
        """
        ...
    
    def SetSelectedProperty(self, vtkProperty):
        """
        V.SetSelectedProperty(vtkProperty)
        C++: void SetSelectedProperty(vtkProperty *)
        
        Set/Get the handle properties when unselected and selected.
        """
        ...
    
    def SetSmoothMotion(self, p_int):
        """
        V.SetSmoothMotion(int)
        C++: virtual void SetSmoothMotion(vtkTypeBool _arg)
        
        Turn on/off smooth motion of the handle. See the documentation of
        MoveFocusRequest for details. By default, SmoothMotion is ON.
        However, in certain applications the user may want to turn it
        off. For instance when using certain specific PointPlacer's with
        the representation such as the vtkCellCentersPointPlacer, which
        causes the representation to snap to the center of cells, or
        using a vtkPolygonalSurfacePointPlacer which constrains the
        widget to the surface of a mesh. In such cases, inherent
        restrictions on handle placement might conflict with a request
        for smooth motion of the handles.
        """
        ...
    
    def SetUniformScale(self, p_float):
        """
        V.SetUniformScale(float)
        C++: virtual void SetUniformScale(double scale)
        
        The handle may be scaled uniformly in all three dimensions using
        this API. The handle can also be scaled interactively using the
        right mouse button.
        """
        ...
    
    def SetWorldPosition(self, p_float=..., p_float=..., p_float=...):
        """
        V.SetWorldPosition([float, float, float])
        C++: void SetWorldPosition(double p[3]) override;
        
        Set the position of the point in world and display coordinates.
        """
        ...
    
    def ShallowCopy(self, vtkProp):
        """
        V.ShallowCopy(vtkProp)
        C++: void ShallowCopy(vtkProp *prop) override;
        
        Methods to make this class behave as a vtkProp.
        """
        ...
    
    def SmoothMotionOff(self):
        """
        V.SmoothMotionOff()
        C++: virtual void SmoothMotionOff()
        
        Turn on/off smooth motion of the handle. See the documentation of
        MoveFocusRequest for details. By default, SmoothMotion is ON.
        However, in certain applications the user may want to turn it
        off. For instance when using certain specific PointPlacer's with
        the representation such as the vtkCellCentersPointPlacer, which
        causes the representation to snap to the center of cells, or
        using a vtkPolygonalSurfacePointPlacer which constrains the
        widget to the surface of a mesh. In such cases, inherent
        restrictions on handle placement might conflict with a request
        for smooth motion of the handles.
        """
        ...
    
    def SmoothMotionOn(self):
        """
        V.SmoothMotionOn()
        C++: virtual void SmoothMotionOn()
        
        Turn on/off smooth motion of the handle. See the documentation of
        MoveFocusRequest for details. By default, SmoothMotion is ON.
        However, in certain applications the user may want to turn it
        off. For instance when using certain specific PointPlacer's with
        the representation such as the vtkCellCentersPointPlacer, which
        causes the representation to snap to the center of cells, or
        using a vtkPolygonalSurfacePointPlacer which constrains the
        widget to the surface of a mesh. In such cases, inherent
        restrictions on handle placement might conflict with a request
        for smooth motion of the handles.
        """
        ...
    
    def StartWidgetInteraction(self, p_float=..., p_float=...):
        """
        V.StartWidgetInteraction([float, float])
        C++: void StartWidgetInteraction(double eventPos[2]) override;
        
        Methods to make this class properly act like a
        vtkWidgetRepresentation.
        """
        ...
    
    def Translate(self, float_tuple):
        """
        V.Translate((float, ...))
        C++: virtual void Translate(const double *v)
        
        Translates world position by vector v projected on the constraint
        axis if any.
        """
        ...
    
    def WidgetInteraction(self, p_float=..., p_float=...):
        """
        V.WidgetInteraction([float, float])
        C++: void WidgetInteraction(double eventPos[2]) override;
        
        Methods to make this class properly act like a
        vtkWidgetRepresentation.
        """
        ...
    
    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__ = ...


