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

from .vtkWidgetRepresentation import vtkWidgetRepresentation

class vtkImplicitPlaneRepresentation(vtkWidgetRepresentation):
    """
    vtkImplicitPlaneRepresentation - a class defining the representation
    for a vtkImplicitPlaneWidget2
    
    Superclass: vtkWidgetRepresentation
    
    This class is a concrete representation for the
    vtkImplicitPlaneWidget2. It represents an infinite plane defined by a
    normal and point in the context of a bounding box. Through
    interaction with the widget, the plane can be manipulated by
    adjusting the plane normal or moving the origin point.
    
    To use this representation, you normally define a (plane) origin and
    (plane) normal. The PlaceWidget() method is also used to initially
    position the representation.
    
    @warning
    This class, and vtkImplicitPlaneWidget2, are next generation VTK
    widgets. An earlier version of this functionality was defined in the
    class vtkImplicitPlaneWidget.
    
    @sa
    vtkImplicitPlaneWidget2 vtkImplicitPlaneWidget
    """
    def BuildRepresentation(self):
        """
        V.BuildRepresentation()
        C++: void BuildRepresentation() override;
        
        Methods to interface with the vtkImplicitPlaneWidget2.
        """
        ...
    
    def BumpPlane(self, p_int, p_float):
        """
        V.BumpPlane(int, float)
        C++: void BumpPlane(int dir, double factor)
        
        Translate the plane in the direction of the normal by the
        specified BumpDistance.  The dir parameter controls which
        direction the pushing occurs, either in the same direction as the
        normal, or when negative, in the opposite direction. The factor
        controls whether what percentage of the bump is used.
        """
        ...
    
    def ComplexInteraction(self, vtkRenderWindowInteractor, vtkAbstractWidget, p_int, void):
        """
        V.ComplexInteraction(vtkRenderWindowInteractor, vtkAbstractWidget,
             int, void)
        C++: void ComplexInteraction(vtkRenderWindowInteractor *iren,
            vtkAbstractWidget *widget, unsigned long event,
            void *calldata) override;
        
        Methods to interface with the vtkImplicitPlaneWidget2.
        """
        ...
    
    def ComputeComplexInteractionState(self, vtkRenderWindowInteractor, vtkAbstractWidget, p_int, void, p_int_1):
        """
        V.ComputeComplexInteractionState(vtkRenderWindowInteractor,
            vtkAbstractWidget, int, void, int) -> int
        C++: int ComputeComplexInteractionState(
            vtkRenderWindowInteractor *iren, vtkAbstractWidget *widget,
            unsigned long event, void *calldata, int modify=0) override;
        
        Methods to interface with the vtkImplicitPlaneWidget2.
        """
        ...
    
    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 interface with the vtkImplicitPlaneWidget2.
        """
        ...
    
    def ConstrainToWidgetBoundsOff(self):
        """
        V.ConstrainToWidgetBoundsOff()
        C++: virtual void ConstrainToWidgetBoundsOff()
        
        Turn on/off whether the plane should be constrained to the widget
        bounds. If on, the origin will not be allowed to move outside the
        set widget bounds. This is the default behaviour. If off, the
        origin can be freely moved and the widget outline will change
        accordingly.
        """
        ...
    
    def ConstrainToWidgetBoundsOn(self):
        """
        V.ConstrainToWidgetBoundsOn()
        C++: virtual void ConstrainToWidgetBoundsOn()
        
        Turn on/off whether the plane should be constrained to the widget
        bounds. If on, the origin will not be allowed to move outside the
        set widget bounds. This is the default behaviour. If off, the
        origin can be freely moved and the widget outline will change
        accordingly.
        """
        ...
    
    def CropPlaneToBoundingBoxOff(self):
        """
        V.CropPlaneToBoundingBoxOff()
        C++: virtual void CropPlaneToBoundingBoxOff()
        
        Control if the plane should be drawn cropped by the bounding box
        or without cropping. Defaults to on.
        """
        ...
    
    def CropPlaneToBoundingBoxOn(self):
        """
        V.CropPlaneToBoundingBoxOn()
        C++: virtual void CropPlaneToBoundingBoxOn()
        
        Control if the plane should be drawn cropped by the bounding box
        or without cropping. Defaults to on.
        """
        ...
    
    def DrawOutlineOff(self):
        """
        V.DrawOutlineOff()
        C++: virtual void DrawOutlineOff()
        
        Enable/disable the drawing of the outline.
        """
        ...
    
    def DrawOutlineOn(self):
        """
        V.DrawOutlineOn()
        C++: virtual void DrawOutlineOn()
        
        Enable/disable the drawing of the outline.
        """
        ...
    
    def DrawPlaneOff(self):
        """
        V.DrawPlaneOff()
        C++: virtual void DrawPlaneOff()
        
        Enable/disable the drawing of the plane. In some cases the plane
        interferes with the object that it is operating on (i.e., the
        plane interferes with the cut surface it produces producing
        z-buffer artifacts.)
        """
        ...
    
    def DrawPlaneOn(self):
        """
        V.DrawPlaneOn()
        C++: virtual void DrawPlaneOn()
        
        Enable/disable the drawing of the plane. In some cases the plane
        interferes with the object that it is operating on (i.e., the
        plane interferes with the cut surface it produces producing
        z-buffer artifacts.)
        """
        ...
    
    def EndComplexInteraction(self, vtkRenderWindowInteractor, vtkAbstractWidget, p_int, void):
        """
        V.EndComplexInteraction(vtkRenderWindowInteractor,
            vtkAbstractWidget, int, void)
        C++: void EndComplexInteraction(vtkRenderWindowInteractor *iren,
            vtkAbstractWidget *widget, unsigned long event,
            void *calldata) override;
        
        Methods to interface with the vtkImplicitPlaneWidget2.
        """
        ...
    
    def EndWidgetInteraction(self, p_float=..., p_float=...):
        """
        V.EndWidgetInteraction([float, float])
        C++: void EndWidgetInteraction(double newEventPos[2]) override;
        
        Methods to interface with the vtkImplicitPlaneWidget2.
        """
        ...
    
    def GetActors(self, vtkPropCollection):
        """
        V.GetActors(vtkPropCollection)
        C++: void GetActors(vtkPropCollection *pc) override;
        
        Methods supporting the rendering process.
        """
        ...
    
    def GetAlwaysSnapToNearestAxis(self):
        """
        V.GetAlwaysSnapToNearestAxis() -> bool
        C++: virtual bool GetAlwaysSnapToNearestAxis()
        
        Forces the plane's normal to be aligned with x, y or z axis. The
        alignment happens when calling SetNormal. It defers with
        SnapToAxes from it is always applicable, and SnapToAxes only
        snaps when the angle difference exceeds 16 degrees in complex
        interactions.
        """
        ...
    
    def GetBounds(self):
        """
        V.GetBounds() -> (float, float, float, float, float, float)
        C++: double *GetBounds() override;
        
        Methods supporting the rendering process.
        """
        ...
    
    def GetBumpDistance(self):
        """
        V.GetBumpDistance() -> float
        C++: virtual double GetBumpDistance()
        
        Specify a translation distance used by the BumpPlane() method.
        Note that the distance is normalized; it is the fraction of the
        length of the bounding box of the wire outline.
        """
        ...
    
    def GetBumpDistanceMaxValue(self):
        """
        V.GetBumpDistanceMaxValue() -> float
        C++: virtual double GetBumpDistanceMaxValue()
        
        Specify a translation distance used by the BumpPlane() method.
        Note that the distance is normalized; it is the fraction of the
        length of the bounding box of the wire outline.
        """
        ...
    
    def GetBumpDistanceMinValue(self):
        """
        V.GetBumpDistanceMinValue() -> float
        C++: virtual double GetBumpDistanceMinValue()
        
        Specify a translation distance used by the BumpPlane() method.
        Note that the distance is normalized; it is the fraction of the
        length of the bounding box of the wire outline.
        """
        ...
    
    def GetConstrainToWidgetBounds(self):
        """
        V.GetConstrainToWidgetBounds() -> int
        C++: virtual vtkTypeBool GetConstrainToWidgetBounds()
        
        Turn on/off whether the plane should be constrained to the widget
        bounds. If on, the origin will not be allowed to move outside the
        set widget bounds. This is the default behaviour. If off, the
        origin can be freely moved and the widget outline will change
        accordingly.
        """
        ...
    
    def GetCropPlaneToBoundingBox(self):
        """
        V.GetCropPlaneToBoundingBox() -> bool
        C++: virtual bool GetCropPlaneToBoundingBox()
        
        Control if the plane should be drawn cropped by the bounding box
        or without cropping. Defaults to on.
        """
        ...
    
    def GetDrawOutline(self):
        """
        V.GetDrawOutline() -> int
        C++: virtual vtkTypeBool GetDrawOutline()
        
        Enable/disable the drawing of the outline.
        """
        ...
    
    def GetDrawPlane(self):
        """
        V.GetDrawPlane() -> int
        C++: virtual vtkTypeBool GetDrawPlane()
        
        Enable/disable the drawing of the plane. In some cases the plane
        interferes with the object that it is operating on (i.e., the
        plane interferes with the cut surface it produces producing
        z-buffer artifacts.)
        """
        ...
    
    def GetEdgesProperty(self):
        """
        V.GetEdgesProperty() -> vtkProperty
        C++: virtual vtkProperty *GetEdgesProperty()
        
        Get the property of the intersection edges. (This property also
        applies to the edges when tubed.)
        """
        ...
    
    def GetInteractionStateMaxValue(self):
        """
        V.GetInteractionStateMaxValue() -> int
        C++: virtual int GetInteractionStateMaxValue()
        
        The interaction state may be set from a widget (e.g.,
        vtkImplicitPlaneWidget2) or other object. This controls how the
        interaction with the widget proceeds. Normally this method is
        used as part of a handshaking process with the widget: First
        ComputeInteractionState() is invoked that returns a state based
        on geometric considerations (i.e., cursor near a widget feature),
        then based on events, the widget may modify this further.
        """
        ...
    
    def GetInteractionStateMinValue(self):
        """
        V.GetInteractionStateMinValue() -> int
        C++: virtual int GetInteractionStateMinValue()
        
        The interaction state may be set from a widget (e.g.,
        vtkImplicitPlaneWidget2) or other object. This controls how the
        interaction with the widget proceeds. Normally this method is
        used as part of a handshaking process with the widget: First
        ComputeInteractionState() is invoked that returns a state based
        on geometric considerations (i.e., cursor near a widget feature),
        then based on events, the widget may modify this further.
        """
        ...
    
    def GetLockNormalToCamera(self):
        """
        V.GetLockNormalToCamera() -> int
        C++: virtual vtkTypeBool GetLockNormalToCamera()
        
        If enabled, and a vtkCamera is available through the renderer,
        then LockNormalToCamera will cause the normal to follow the
        camera's normal.
        """
        ...
    
    def GetNormal(self):
        """
        V.GetNormal() -> (float, float, float)
        C++: double *GetNormal()
        V.GetNormal([float, float, float])
        C++: void GetNormal(double xyz[3])
        
        Get the normal to the plane.
        """
        ...
    
    def GetNormalProperty(self):
        """
        V.GetNormalProperty() -> vtkProperty
        C++: virtual vtkProperty *GetNormalProperty()
        
        Get the properties on the normal (line and cone).
        """
        ...
    
    def GetNormalToXAxis(self):
        """
        V.GetNormalToXAxis() -> int
        C++: virtual vtkTypeBool GetNormalToXAxis()
        
        Force the plane widget to be aligned with one of the x-y-z axes.
        If one axis is set on, the other two will be set off. Remember
        that when the state changes, a ModifiedEvent is invoked. This can
        be used to snap the plane to the axes if it is originally not
        aligned.
        """
        ...
    
    def GetNormalToYAxis(self):
        """
        V.GetNormalToYAxis() -> int
        C++: virtual vtkTypeBool GetNormalToYAxis()
        
        Force the plane widget to be aligned with one of the x-y-z axes.
        If one axis is set on, the other two will be set off. Remember
        that when the state changes, a ModifiedEvent is invoked. This can
        be used to snap the plane to the axes if it is originally not
        aligned.
        """
        ...
    
    def GetNormalToZAxis(self):
        """
        V.GetNormalToZAxis() -> int
        C++: virtual vtkTypeBool GetNormalToZAxis()
        
        Force the plane widget to be aligned with one of the x-y-z axes.
        If one axis is set on, the other two will be set off. Remember
        that when the state changes, a ModifiedEvent is invoked. This can
        be used to snap the plane to the axes if it is originally not
        aligned.
        """
        ...
    
    def GetNumberOfGenerationsFromBase(self, string):
        """
        V.GetNumberOfGenerationsFromBase(string) -> int
        C++: vtkIdType GetNumberOfGenerationsFromBase(const char *type)
            override;
        
        Standard methods for the class.
        """
        ...
    
    def GetNumberOfGenerationsFromBaseType(self, string):
        """
        V.GetNumberOfGenerationsFromBaseType(string) -> int
        C++: static vtkIdType GetNumberOfGenerationsFromBaseType(
            const char *type)
        
        Standard methods for the class.
        """
        ...
    
    def GetOrigin(self):
        """
        V.GetOrigin() -> (float, float, float)
        C++: double *GetOrigin()
        V.GetOrigin([float, float, float])
        C++: void GetOrigin(double xyz[3])
        
        Get the origin of the plane.
        """
        ...
    
    def GetOutlineProperty(self):
        """
        V.GetOutlineProperty() -> vtkProperty
        C++: virtual vtkProperty *GetOutlineProperty()
        
        Get the property of the outline.
        """
        ...
    
    def GetOutlineTranslation(self):
        """
        V.GetOutlineTranslation() -> int
        C++: virtual vtkTypeBool GetOutlineTranslation()
        
        Turn on/off the ability to translate the bounding box by grabbing
        it with the left mouse button.
        """
        ...
    
    def GetOutsideBounds(self):
        """
        V.GetOutsideBounds() -> int
        C++: virtual vtkTypeBool GetOutsideBounds()
        
        Turn on/off the ability to move the widget outside of the bounds
        specified in the initial PlaceWidget() invocation.
        """
        ...
    
    def GetPlane(self, vtkPlane):
        """
        V.GetPlane(vtkPlane)
        C++: void GetPlane(vtkPlane *plane)
        
        Get the implicit function for the plane by copying the origin and
        normal of the cut plane into the provided vtkPlane. The user must
        provide the instance of the class vtkPlane. Note that vtkPlane is
        a subclass of vtkImplicitFunction, meaning that it can be used by
        a variety of filters to perform clipping, cutting, and selection
        of data.
        """
        ...
    
    def GetPlaneProperty(self):
        """
        V.GetPlaneProperty() -> vtkProperty
        C++: virtual vtkProperty *GetPlaneProperty()
        
        Get the plane properties. The properties of the plane when
        selected and unselected can be manipulated.
        """
        ...
    
    def GetPolyData(self, vtkPolyData):
        """
        V.GetPolyData(vtkPolyData)
        C++: void GetPolyData(vtkPolyData *pd)
        
        Grab the polydata that defines the plane. The polydata contains a
        single polygon that is clipped by the bounding box.
        """
        ...
    
    def GetPolyDataAlgorithm(self):
        """
        V.GetPolyDataAlgorithm() -> vtkPolyDataAlgorithm
        C++: vtkPolyDataAlgorithm *GetPolyDataAlgorithm()
        
        Satisfies superclass API.  This returns a pointer to the
        underlying PolyData (which represents the plane).
        """
        ...
    
    def GetRepresentationState(self):
        """
        V.GetRepresentationState() -> int
        C++: virtual int GetRepresentationState()
        
        Sets the visual appearance of the representation based on the
        state it is in. This state is usually the same as
        InteractionState.
        """
        ...
    
    def GetScaleEnabled(self):
        """
        V.GetScaleEnabled() -> int
        C++: virtual vtkTypeBool GetScaleEnabled()
        
        Turn on/off the ability to scale the widget with the mouse.
        """
        ...
    
    def GetSelectedNormalProperty(self):
        """
        V.GetSelectedNormalProperty() -> vtkProperty
        C++: virtual vtkProperty *GetSelectedNormalProperty()
        
        Get the properties on the normal (line and cone).
        """
        ...
    
    def GetSelectedOutlineProperty(self):
        """
        V.GetSelectedOutlineProperty() -> vtkProperty
        C++: virtual vtkProperty *GetSelectedOutlineProperty()
        
        Get the property of the outline.
        """
        ...
    
    def GetSelectedPlaneProperty(self):
        """
        V.GetSelectedPlaneProperty() -> vtkProperty
        C++: virtual vtkProperty *GetSelectedPlaneProperty()
        
        Get the plane properties. The properties of the plane when
        selected and unselected can be manipulated.
        """
        ...
    
    def GetSnapToAxes(self):
        """
        V.GetSnapToAxes() -> bool
        C++: virtual bool GetSnapToAxes()
        
        For complex events should we snap orientations to be aligned with
        the x y z axes
        """
        ...
    
    def GetTubing(self):
        """
        V.GetTubing() -> int
        C++: virtual vtkTypeBool GetTubing()
        
        Turn on/off tubing of the wire outline of the plane. The tube
        thickens the line by wrapping with a vtkTubeFilter.
        """
        ...
    
    def GetUnderlyingPlane(self):
        """
        V.GetUnderlyingPlane() -> vtkPlane
        C++: vtkPlane *GetUnderlyingPlane()
        """
        ...
    
    def GetWidgetBounds(self):
        """
        V.GetWidgetBounds() -> (float, float, float, float, float, float)
        C++: virtual double *GetWidgetBounds()
        
        Set/Get the bounds of the widget representation. PlaceWidget can
        also be used to set the bounds of the widget but it may also have
        other effects on the internal state of the representation. Use
        this function when only the widget bounds are needs to be
        modified.
        """
        ...
    
    def HasTranslucentPolygonalGeometry(self):
        """
        V.HasTranslucentPolygonalGeometry() -> int
        C++: vtkTypeBool HasTranslucentPolygonalGeometry() override;
        
        Methods supporting the rendering process.
        """
        ...
    
    def IsA(self, string):
        """
        V.IsA(string) -> int
        C++: vtkTypeBool IsA(const char *type) override;
        
        Standard methods for the class.
        """
        ...
    
    def IsTranslationConstrained(self):
        """
        V.IsTranslationConstrained() -> bool
        C++: bool IsTranslationConstrained()
        
        Returns true if ContrainedAxis
        """
        ...
    
    def IsTypeOf(self, string):
        """
        V.IsTypeOf(string) -> int
        C++: static vtkTypeBool IsTypeOf(const char *type)
        
        Standard methods for the class.
        """
        ...
    
    def LockNormalToCameraOff(self):
        """
        V.LockNormalToCameraOff()
        C++: virtual void LockNormalToCameraOff()
        
        If enabled, and a vtkCamera is available through the renderer,
        then LockNormalToCamera will cause the normal to follow the
        camera's normal.
        """
        ...
    
    def LockNormalToCameraOn(self):
        """
        V.LockNormalToCameraOn()
        C++: virtual void LockNormalToCameraOn()
        
        If enabled, and a vtkCamera is available through the renderer,
        then LockNormalToCamera will cause the normal to follow the
        camera's normal.
        """
        ...
    
    def NewInstance(self):
        """
        V.NewInstance() -> vtkImplicitPlaneRepresentation
        C++: vtkImplicitPlaneRepresentation *NewInstance()
        
        Standard methods for the class.
        """
        ...
    
    def NormalToXAxisOff(self):
        """
        V.NormalToXAxisOff()
        C++: virtual void NormalToXAxisOff()
        
        Force the plane widget to be aligned with one of the x-y-z axes.
        If one axis is set on, the other two will be set off. Remember
        that when the state changes, a ModifiedEvent is invoked. This can
        be used to snap the plane to the axes if it is originally not
        aligned.
        """
        ...
    
    def NormalToXAxisOn(self):
        """
        V.NormalToXAxisOn()
        C++: virtual void NormalToXAxisOn()
        
        Force the plane widget to be aligned with one of the x-y-z axes.
        If one axis is set on, the other two will be set off. Remember
        that when the state changes, a ModifiedEvent is invoked. This can
        be used to snap the plane to the axes if it is originally not
        aligned.
        """
        ...
    
    def NormalToYAxisOff(self):
        """
        V.NormalToYAxisOff()
        C++: virtual void NormalToYAxisOff()
        
        Force the plane widget to be aligned with one of the x-y-z axes.
        If one axis is set on, the other two will be set off. Remember
        that when the state changes, a ModifiedEvent is invoked. This can
        be used to snap the plane to the axes if it is originally not
        aligned.
        """
        ...
    
    def NormalToYAxisOn(self):
        """
        V.NormalToYAxisOn()
        C++: virtual void NormalToYAxisOn()
        
        Force the plane widget to be aligned with one of the x-y-z axes.
        If one axis is set on, the other two will be set off. Remember
        that when the state changes, a ModifiedEvent is invoked. This can
        be used to snap the plane to the axes if it is originally not
        aligned.
        """
        ...
    
    def NormalToZAxisOff(self):
        """
        V.NormalToZAxisOff()
        C++: virtual void NormalToZAxisOff()
        
        Force the plane widget to be aligned with one of the x-y-z axes.
        If one axis is set on, the other two will be set off. Remember
        that when the state changes, a ModifiedEvent is invoked. This can
        be used to snap the plane to the axes if it is originally not
        aligned.
        """
        ...
    
    def NormalToZAxisOn(self):
        """
        V.NormalToZAxisOn()
        C++: virtual void NormalToZAxisOn()
        
        Force the plane widget to be aligned with one of the x-y-z axes.
        If one axis is set on, the other two will be set off. Remember
        that when the state changes, a ModifiedEvent is invoked. This can
        be used to snap the plane to the axes if it is originally not
        aligned.
        """
        ...
    
    def OutlineTranslationOff(self):
        """
        V.OutlineTranslationOff()
        C++: virtual void OutlineTranslationOff()
        
        Turn on/off the ability to translate the bounding box by grabbing
        it with the left mouse button.
        """
        ...
    
    def OutlineTranslationOn(self):
        """
        V.OutlineTranslationOn()
        C++: virtual void OutlineTranslationOn()
        
        Turn on/off the ability to translate the bounding box by grabbing
        it with the left mouse button.
        """
        ...
    
    def OutsideBoundsOff(self):
        """
        V.OutsideBoundsOff()
        C++: virtual void OutsideBoundsOff()
        
        Turn on/off the ability to move the widget outside of the bounds
        specified in the initial PlaceWidget() invocation.
        """
        ...
    
    def OutsideBoundsOn(self):
        """
        V.OutsideBoundsOn()
        C++: virtual void OutsideBoundsOn()
        
        Turn on/off the ability to move the widget outside of the bounds
        specified in the initial PlaceWidget() invocation.
        """
        ...
    
    def PlaceWidget(self, p_float=..., p_float=..., p_float=..., p_float=..., p_float=..., p_float=...):
        """
        V.PlaceWidget([float, float, float, float, float, float])
        C++: void PlaceWidget(double bounds[6]) override;
        
        Methods to interface with the vtkImplicitPlaneWidget2.
        """
        ...
    
    def PushPlane(self, p_float):
        """
        V.PushPlane(float)
        C++: void PushPlane(double distance)
        
        Push the plane the distance specified along the normal. Positive
        values are in the direction of the normal; negative values are in
        the opposite direction of the normal. The distance value is
        expressed in world coordinates.
        """
        ...
    
    def ReleaseGraphicsResources(self, vtkWindow):
        """
        V.ReleaseGraphicsResources(vtkWindow)
        C++: void ReleaseGraphicsResources(vtkWindow *) override;
        
        Methods supporting the rendering process.
        """
        ...
    
    def RenderOpaqueGeometry(self, vtkViewport):
        """
        V.RenderOpaqueGeometry(vtkViewport) -> int
        C++: int RenderOpaqueGeometry(vtkViewport *) override;
        
        Methods supporting the rendering process.
        """
        ...
    
    def RenderTranslucentPolygonalGeometry(self, vtkViewport):
        """
        V.RenderTranslucentPolygonalGeometry(vtkViewport) -> int
        C++: int RenderTranslucentPolygonalGeometry(vtkViewport *)
            override;
        
        Methods supporting the rendering process.
        """
        ...
    
    def SafeDownCast(self, vtkObjectBase):
        """
        V.SafeDownCast(vtkObjectBase) -> vtkImplicitPlaneRepresentation
        C++: static vtkImplicitPlaneRepresentation *SafeDownCast(
            vtkObjectBase *o)
        
        Standard methods for the class.
        """
        ...
    
    def ScaleEnabledOff(self):
        """
        V.ScaleEnabledOff()
        C++: virtual void ScaleEnabledOff()
        
        Turn on/off the ability to scale the widget with the mouse.
        """
        ...
    
    def ScaleEnabledOn(self):
        """
        V.ScaleEnabledOn()
        C++: virtual void ScaleEnabledOn()
        
        Turn on/off the ability to scale the widget with the mouse.
        """
        ...
    
    def SetAlwaysSnapToNearestAxis(self, bool):
        """
        V.SetAlwaysSnapToNearestAxis(bool)
        C++: virtual void SetAlwaysSnapToNearestAxis(bool snap)
        
        Forces the plane's normal to be aligned with x, y or z axis. The
        alignment happens when calling SetNormal. It defers with
        SnapToAxes from it is always applicable, and SnapToAxes only
        snaps when the angle difference exceeds 16 degrees in complex
        interactions.
        """
        ...
    
    def SetBumpDistance(self, p_float):
        """
        V.SetBumpDistance(float)
        C++: virtual void SetBumpDistance(double _arg)
        
        Specify a translation distance used by the BumpPlane() method.
        Note that the distance is normalized; it is the fraction of the
        length of the bounding box of the wire outline.
        """
        ...
    
    def SetConstrainToWidgetBounds(self, p_int):
        """
        V.SetConstrainToWidgetBounds(int)
        C++: virtual void SetConstrainToWidgetBounds(vtkTypeBool _arg)
        
        Turn on/off whether the plane should be constrained to the widget
        bounds. If on, the origin will not be allowed to move outside the
        set widget bounds. This is the default behaviour. If off, the
        origin can be freely moved and the widget outline will change
        accordingly.
        """
        ...
    
    def SetCropPlaneToBoundingBox(self, bool):
        """
        V.SetCropPlaneToBoundingBox(bool)
        C++: virtual void SetCropPlaneToBoundingBox(bool)
        
        Control if the plane should be drawn cropped by the bounding box
        or without cropping. Defaults to on.
        """
        ...
    
    def SetDrawOutline(self, p_int):
        """
        V.SetDrawOutline(int)
        C++: void SetDrawOutline(vtkTypeBool plane)
        
        Enable/disable the drawing of the outline.
        """
        ...
    
    def SetDrawPlane(self, p_int):
        """
        V.SetDrawPlane(int)
        C++: void SetDrawPlane(vtkTypeBool plane)
        
        Enable/disable the drawing of the plane. In some cases the plane
        interferes with the object that it is operating on (i.e., the
        plane interferes with the cut surface it produces producing
        z-buffer artifacts.)
        """
        ...
    
    def SetEdgeColor(self, vtkLookupTable):
        """
        V.SetEdgeColor(vtkLookupTable)
        C++: void SetEdgeColor(vtkLookupTable *)
        V.SetEdgeColor(float, float, float)
        C++: void SetEdgeColor(double, double, double)
        V.SetEdgeColor([float, float, float])
        C++: void SetEdgeColor(double x[3])
        
        Set color to the edge
        """
        ...
    
    def SetInteractionState(self, p_int):
        """
        V.SetInteractionState(int)
        C++: virtual void SetInteractionState(int _arg)
        
        The interaction state may be set from a widget (e.g.,
        vtkImplicitPlaneWidget2) or other object. This controls how the
        interaction with the widget proceeds. Normally this method is
        used as part of a handshaking process with the widget: First
        ComputeInteractionState() is invoked that returns a state based
        on geometric considerations (i.e., cursor near a widget feature),
        then based on events, the widget may modify this further.
        """
        ...
    
    def SetLockNormalToCamera(self, p_int):
        """
        V.SetLockNormalToCamera(int)
        C++: virtual void SetLockNormalToCamera(vtkTypeBool)
        
        If enabled, and a vtkCamera is available through the renderer,
        then LockNormalToCamera will cause the normal to follow the
        camera's normal.
        """
        ...
    
    def SetNormal(self, p_float, p_float_1, p_float_2):
        """
        V.SetNormal(float, float, float)
        C++: void SetNormal(double x, double y, double z)
        V.SetNormal([float, float, float])
        C++: void SetNormal(double x[3])
        
        Get the normal to the plane.
        """
        ...
    
    def SetNormalToCamera(self):
        """
        V.SetNormalToCamera()
        C++: void SetNormalToCamera()
        
        Get the normal to the plane.
        """
        ...
    
    def SetNormalToXAxis(self, p_int):
        """
        V.SetNormalToXAxis(int)
        C++: void SetNormalToXAxis(vtkTypeBool)
        
        Force the plane widget to be aligned with one of the x-y-z axes.
        If one axis is set on, the other two will be set off. Remember
        that when the state changes, a ModifiedEvent is invoked. This can
        be used to snap the plane to the axes if it is originally not
        aligned.
        """
        ...
    
    def SetNormalToYAxis(self, p_int):
        """
        V.SetNormalToYAxis(int)
        C++: void SetNormalToYAxis(vtkTypeBool)
        
        Force the plane widget to be aligned with one of the x-y-z axes.
        If one axis is set on, the other two will be set off. Remember
        that when the state changes, a ModifiedEvent is invoked. This can
        be used to snap the plane to the axes if it is originally not
        aligned.
        """
        ...
    
    def SetNormalToZAxis(self, p_int):
        """
        V.SetNormalToZAxis(int)
        C++: void SetNormalToZAxis(vtkTypeBool)
        
        Force the plane widget to be aligned with one of the x-y-z axes.
        If one axis is set on, the other two will be set off. Remember
        that when the state changes, a ModifiedEvent is invoked. This can
        be used to snap the plane to the axes if it is originally not
        aligned.
        """
        ...
    
    def SetOrigin(self, p_float, p_float_1, p_float_2):
        """
        V.SetOrigin(float, float, float)
        C++: void SetOrigin(double x, double y, double z)
        V.SetOrigin([float, float, float])
        C++: void SetOrigin(double x[3])
        
        Get the origin of the plane.
        """
        ...
    
    def SetOutlineTranslation(self, p_int):
        """
        V.SetOutlineTranslation(int)
        C++: virtual void SetOutlineTranslation(vtkTypeBool _arg)
        
        Turn on/off the ability to translate the bounding box by grabbing
        it with the left mouse button.
        """
        ...
    
    def SetOutsideBounds(self, p_int):
        """
        V.SetOutsideBounds(int)
        C++: virtual void SetOutsideBounds(vtkTypeBool _arg)
        
        Turn on/off the ability to move the widget outside of the bounds
        specified in the initial PlaceWidget() invocation.
        """
        ...
    
    def SetPlane(self, vtkPlane):
        """
        V.SetPlane(vtkPlane)
        C++: void SetPlane(vtkPlane *plane)
        
        Alternative way to define the cutting plane. The normal and
        origin of the plane provided is copied into the internal instance
        of the class cutting vtkPlane.
        """
        ...
    
    def SetRepresentationState(self, p_int):
        """
        V.SetRepresentationState(int)
        C++: virtual void SetRepresentationState(int)
        
        Sets the visual appearance of the representation based on the
        state it is in. This state is usually the same as
        InteractionState.
        """
        ...
    
    def SetScaleEnabled(self, p_int):
        """
        V.SetScaleEnabled(int)
        C++: virtual void SetScaleEnabled(vtkTypeBool _arg)
        
        Turn on/off the ability to scale the widget with the mouse.
        """
        ...
    
    def SetSnapToAxes(self, bool):
        """
        V.SetSnapToAxes(bool)
        C++: virtual void SetSnapToAxes(bool _arg)
        
        For complex events should we snap orientations to be aligned with
        the x y z axes
        """
        ...
    
    def SetTranslationAxisOff(self):
        """
        V.SetTranslationAxisOff()
        C++: void SetTranslationAxisOff()
        
        Toggles constraint translation axis on/off.
        """
        ...
    
    def SetTubing(self, p_int):
        """
        V.SetTubing(int)
        C++: virtual void SetTubing(vtkTypeBool _arg)
        
        Turn on/off tubing of the wire outline of the plane. The tube
        thickens the line by wrapping with a vtkTubeFilter.
        """
        ...
    
    def SetWidgetBounds(self, p_float, p_float_1, p_float_2, p_float_3, p_float_4, p_float_5):
        """
        V.SetWidgetBounds(float, float, float, float, float, float)
        C++: virtual void SetWidgetBounds(double _arg1, double _arg2,
            double _arg3, double _arg4, double _arg5, double _arg6)
        V.SetWidgetBounds((float, float, float, float, float, float))
        C++: virtual void SetWidgetBounds(const double _arg[6])
        
        Set/Get the bounds of the widget representation. PlaceWidget can
        also be used to set the bounds of the widget but it may also have
        other effects on the internal state of the representation. Use
        this function when only the widget bounds are needs to be
        modified.
        """
        ...
    
    def SetXTranslationAxisOn(self):
        """
        V.SetXTranslationAxisOn()
        C++: void SetXTranslationAxisOn()
        
        Toggles constraint translation axis on/off.
        """
        ...
    
    def SetYTranslationAxisOn(self):
        """
        V.SetYTranslationAxisOn()
        C++: void SetYTranslationAxisOn()
        
        Toggles constraint translation axis on/off.
        """
        ...
    
    def SetZTranslationAxisOn(self):
        """
        V.SetZTranslationAxisOn()
        C++: void SetZTranslationAxisOn()
        
        Toggles constraint translation axis on/off.
        """
        ...
    
    def StartComplexInteraction(self, vtkRenderWindowInteractor, vtkAbstractWidget, p_int, void):
        """
        V.StartComplexInteraction(vtkRenderWindowInteractor,
            vtkAbstractWidget, int, void)
        C++: void StartComplexInteraction(vtkRenderWindowInteractor *iren,
             vtkAbstractWidget *widget, unsigned long event,
            void *calldata) override;
        
        Methods to interface with the vtkImplicitPlaneWidget2.
        """
        ...
    
    def StartWidgetInteraction(self, p_float=..., p_float=...):
        """
        V.StartWidgetInteraction([float, float])
        C++: void StartWidgetInteraction(double eventPos[2]) override;
        
        Methods to interface with the vtkImplicitPlaneWidget2.
        """
        ...
    
    def TubingOff(self):
        """
        V.TubingOff()
        C++: virtual void TubingOff()
        
        Turn on/off tubing of the wire outline of the plane. The tube
        thickens the line by wrapping with a vtkTubeFilter.
        """
        ...
    
    def TubingOn(self):
        """
        V.TubingOn()
        C++: virtual void TubingOn()
        
        Turn on/off tubing of the wire outline of the plane. The tube
        thickens the line by wrapping with a vtkTubeFilter.
        """
        ...
    
    def UpdatePlacement(self):
        """
        V.UpdatePlacement()
        C++: void UpdatePlacement(void)
        
        Satisfies the superclass API.  This will change the state of the
        widget to match changes that have been made to the underlying
        PolyDataSource
        """
        ...
    
    def WidgetInteraction(self, p_float=..., p_float=...):
        """
        V.WidgetInteraction([float, float])
        C++: void WidgetInteraction(double newEventPos[2]) override;
        
        Methods to interface with the vtkImplicitPlaneWidget2.
        """
        ...
    
    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__ = ...
    Moving = ...
    MovingOrigin = ...
    MovingOutline = ...
    Outside = ...
    Pushing = ...
    Rotating = ...
    Scaling = ...
    _InteractionState = ...
    __dict__ = ...
    __vtkname__ = ...


