# encoding: utf-8
# module vtkmodules.vtkInteractionWidgets
# from C:\Users\xukai\Downloads\发票2\venv\Lib\site-packages\vtkmodules\vtkInteractionWidgets.cp311-win_amd64.pyd
# by generator 1.147
# no doc

# imports
import vtkmodules.vtkCommonCore as __vtkmodules_vtkCommonCore
import vtkmodules.vtkCommonExecutionModel as __vtkmodules_vtkCommonExecutionModel
import vtkmodules.vtkFiltersSources as __vtkmodules_vtkFiltersSources
import vtkmodules.vtkRenderingContext2D as __vtkmodules_vtkRenderingContext2D
import vtkmodules.vtkRenderingCore as __vtkmodules_vtkRenderingCore


class vtk3DWidget(__vtkmodules_vtkRenderingCore.vtkInteractorObserver):
    """
    vtk3DWidget - an abstract superclass for 3D widgets
    
    Superclass: vtkInteractorObserver
    
    vtk3DWidget is an abstract superclass for 3D interactor observers.
    These 3D widgets represent themselves in the scene, and have special
    callbacks associated with them that allows interactive manipulation
    of the widget. Inparticular, the difference between a vtk3DWidget and
    its abstract superclass vtkInteractorObserver is that vtk3DWidgets
    are "placed" in 3D space.  vtkInteractorObservers have no notion of
    where they are placed, and may not exist in 3D space at all.  3D
    widgets also provide auxiliary functions like producing a
    transformation, creating polydata (for seeding streamlines, probes,
    etc.) or creating implicit functions. See the concrete subclasses for
    particulars.
    
    Typically the widget is used by specifying a vtkProp3D or VTK dataset
    as input, and then invoking the "On" method to activate it. (You can
    also specify a bounding box to help position the widget.) Prior to
    invoking the On() method, the user may also wish to use the
    PlaceWidget() to initially position it. The 'i' (for "interactor")
    keypresses also can be used to turn the widgets on and off (methods
    exist to change the key value and enable keypress activiation).
    
    To support interactive manipulation of objects, this class (and
    subclasses) invoke the events StartInteractionEvent,
    InteractionEvent, and EndInteractionEvent.  These events are invoked
    when the vtk3DWidget enters a state where rapid response is desired:
    mouse motion, etc. The events can be used, for example, to set the
    desired update frame rate (StartInteractionEvent), operate on the
    vtkProp3D or other object (InteractionEvent), and set the desired
    frame rate back to normal values (EndInteractionEvent).
    
    Note that the Priority attribute inherited from vtkInteractorObserver
    has a new default value which is now 0.5 so that all 3D widgets have
    a higher priority than the usual interactor styles.
    
    @sa
    vtkBoxWidget vtkPlaneWidget vtkLineWidget vtkPointWidget
    vtkSphereWidget vtkImplicitPlaneWidget
    """
    def GetHandleSize(self): # real signature unknown; restored from __doc__
        """
        GetHandleSize(self) -> float
        C++: virtual double GetHandleSize()
        """
        return 0.0

    def GetHandleSizeMaxValue(self): # real signature unknown; restored from __doc__
        """
        GetHandleSizeMaxValue(self) -> float
        C++: virtual double GetHandleSizeMaxValue()
        """
        return 0.0

    def GetHandleSizeMinValue(self): # real signature unknown; restored from __doc__
        """
        GetHandleSizeMinValue(self) -> float
        C++: virtual double GetHandleSizeMinValue()
        """
        return 0.0

    def GetInput(self): # real signature unknown; restored from __doc__
        """
        GetInput(self) -> vtkDataSet
        C++: virtual vtkDataSet *GetInput()
        """
        pass

    def GetNumberOfGenerationsFromBase(self, type): # real signature unknown; restored from __doc__
        """
        GetNumberOfGenerationsFromBase(self, type:str) -> int
        C++: vtkIdType GetNumberOfGenerationsFromBase(const char *type)
            override;
        
        Given the name of a base class of this class type, return the
        distance of inheritance between this class type and the named
        class (how many generations of inheritance are there between this
        class and the named class). If the named class is not in this
        class's inheritance tree, return a negative value. Valid
        responses will always be nonnegative. This method works in
        combination with vtkTypeMacro found in vtkSetGet.h.
        """
        return 0

    def GetNumberOfGenerationsFromBaseType(self, type): # real signature unknown; restored from __doc__
        """
        GetNumberOfGenerationsFromBaseType(type:str) -> int
        C++: static vtkIdType GetNumberOfGenerationsFromBaseType(
            const char *type)
        
        Given a the name of a base class of this class type, return the
        distance of inheritance between this class type and the named
        class (how many generations of inheritance are there between this
        class and the named class). If the named class is not in this
        class's inheritance tree, return a negative value. Valid
        responses will always be nonnegative. This method works in
        combination with vtkTypeMacro found in vtkSetGet.h.
        """
        return 0

    def GetPlaceFactor(self): # real signature unknown; restored from __doc__
        """
        GetPlaceFactor(self) -> float
        C++: virtual double GetPlaceFactor()
        """
        return 0.0

    def GetPlaceFactorMaxValue(self): # real signature unknown; restored from __doc__
        """
        GetPlaceFactorMaxValue(self) -> float
        C++: virtual double GetPlaceFactorMaxValue()
        """
        return 0.0

    def GetPlaceFactorMinValue(self): # real signature unknown; restored from __doc__
        """
        GetPlaceFactorMinValue(self) -> float
        C++: virtual double GetPlaceFactorMinValue()
        """
        return 0.0

    def GetProp3D(self): # real signature unknown; restored from __doc__
        """
        GetProp3D(self) -> vtkProp3D
        C++: virtual vtkProp3D *GetProp3D()
        """
        pass

    def IsA(self, type): # real signature unknown; restored from __doc__
        """
        IsA(self, type:str) -> int
        C++: vtkTypeBool IsA(const char *type) override;
        
        Return 1 if this class is the same type of (or a subclass of) the
        named class. Returns 0 otherwise. This method works in
        combination with vtkTypeMacro found in vtkSetGet.h.
        """
        return 0

    def IsTypeOf(self, type): # real signature unknown; restored from __doc__
        """
        IsTypeOf(type:str) -> int
        C++: static vtkTypeBool IsTypeOf(const char *type)
        
        Return 1 if this class type is the same type of (or a subclass
        of) the named class. Returns 0 otherwise. This method works in
        combination with vtkTypeMacro found in vtkSetGet.h.
        """
        return 0

    def NewInstance(self): # real signature unknown; restored from __doc__
        """
        NewInstance(self) -> vtk3DWidget
        C++: vtk3DWidget *NewInstance()
        """
        return vtk3DWidget

    def PlaceWidget(self, bounds, *args, **kwargs): # real signature unknown; NOTE: unreliably restored from __doc__ 
        """
        PlaceWidget(self, bounds:[float, float, float, float, float,
            float]) -> None
        C++: virtual void PlaceWidget(double bounds[6])
        PlaceWidget(self) -> None
        C++: virtual void PlaceWidget()
        PlaceWidget(self, xmin:float, xmax:float, ymin:float, ymax:float,
            zmin:float, zmax:float) -> None
        C++: virtual void PlaceWidget(double xmin, double xmax,
            double ymin, double ymax, double zmin, double zmax)
        
        This method is used to initially place the widget.  The placement
        of the widget depends on whether a Prop3D or input dataset is
        provided. If one of these two is provided, they will be used to
        obtain a bounding box, around which the widget is placed.
        Otherwise, you can manually specify a bounds with the
        PlaceWidget(bounds) method. Note: PlaceWidget(bounds) is required
        by all subclasses; the other methods are provided as convenience
        methods.
        """
        pass

    def SafeDownCast(self, o): # real signature unknown; restored from __doc__
        """
        SafeDownCast(o:vtkObjectBase) -> vtk3DWidget
        C++: static vtk3DWidget *SafeDownCast(vtkObjectBase *o)
        """
        return vtk3DWidget

    def SetHandleSize(self, _arg): # real signature unknown; restored from __doc__
        """
        SetHandleSize(self, _arg:float) -> None
        C++: virtual void SetHandleSize(double _arg)
        
        Set/Get the factor that controls the size of the handles that
        appear as part of the widget. These handles (like spheres, etc.)
        are used to manipulate the widget, and are sized as a fraction of
        the screen diagonal.
        """
        pass

    def SetInputConnection(self, __a): # real signature unknown; restored from __doc__
        """
        SetInputConnection(self, __a:vtkAlgorithmOutput) -> None
        C++: virtual void SetInputConnection(vtkAlgorithmOutput *)
        """
        pass

    def SetInputData(self, __a): # real signature unknown; restored from __doc__
        """
        SetInputData(self, __a:vtkDataSet) -> None
        C++: virtual void SetInputData(vtkDataSet *)
        
        Specify the input dataset. This is not required, but if supplied,
        and no vtkProp3D is specified, it is used to initially position
        the widget.
        """
        pass

    def SetPlaceFactor(self, _arg): # real signature unknown; restored from __doc__
        """
        SetPlaceFactor(self, _arg:float) -> None
        C++: virtual void SetPlaceFactor(double _arg)
        
        Set/Get a factor representing the scaling of the widget upon
        placement (via the PlaceWidget() method). Normally the widget is
        placed so that it just fits within the bounding box defined in
        PlaceWidget(bounds). The PlaceFactor will make the widget larger
        (PlaceFactor > 1) or smaller (PlaceFactor < 1). By default,
        PlaceFactor is set to 0.5.
        """
        pass

    def SetProp3D(self, __a): # real signature unknown; restored from __doc__
        """
        SetProp3D(self, __a:vtkProp3D) -> None
        C++: virtual void SetProp3D(vtkProp3D *)
        
        Specify a vtkProp3D around which to place the widget. This is not
        required, but if supplied, it is used to initially position the
        widget.
        """
        pass

    def __delattr__(self, *args, **kwargs): # real signature unknown
        """ Implement delattr(self, name). """
        pass

    def __getattribute__(self, *args, **kwargs): # real signature unknown
        """ Return getattr(self, name). """
        pass

    def __init__(self, *args, **kwargs): # real signature unknown
        pass

    @staticmethod # known case of __new__
    def __new__(*args, **kwargs): # real signature unknown
        """ Create and return a new object.  See help(type) for accurate signature. """
        pass

    def __repr__(self, *args, **kwargs): # real signature unknown
        """ Return repr(self). """
        pass

    def __setattr__(self, *args, **kwargs): # real signature unknown
        """ Implement setattr(self, name, value). """
        pass

    def __str__(self, *args, **kwargs): # real signature unknown
        """ Return str(self). """
        pass

    __this__ = property(lambda self: object(), lambda self, v: None, lambda self: None)  # default
    """Pointer to the C++ object."""


    __dict__ = None # (!) real value is 'mappingproxy({\'__vtkname__\': \'vtk3DWidget\', \'IsTypeOf\': <method \'IsTypeOf\' of \'vtkmodules.vtkInteractionWidgets.vtk3DWidget\' objects>, \'IsA\': <method \'IsA\' of \'vtkmodules.vtkInteractionWidgets.vtk3DWidget\' objects>, \'SafeDownCast\': <method \'SafeDownCast\' of \'vtkmodules.vtkInteractionWidgets.vtk3DWidget\' objects>, \'NewInstance\': <method \'NewInstance\' of \'vtkmodules.vtkInteractionWidgets.vtk3DWidget\' objects>, \'GetNumberOfGenerationsFromBaseType\': <method \'GetNumberOfGenerationsFromBaseType\' of \'vtkmodules.vtkInteractionWidgets.vtk3DWidget\' objects>, \'GetNumberOfGenerationsFromBase\': <method \'GetNumberOfGenerationsFromBase\' of \'vtkmodules.vtkInteractionWidgets.vtk3DWidget\' objects>, \'PlaceWidget\': <method \'PlaceWidget\' of \'vtkmodules.vtkInteractionWidgets.vtk3DWidget\' objects>, \'SetProp3D\': <method \'SetProp3D\' of \'vtkmodules.vtkInteractionWidgets.vtk3DWidget\' objects>, \'GetProp3D\': <method \'GetProp3D\' of \'vtkmodules.vtkInteractionWidgets.vtk3DWidget\' objects>, \'SetInputData\': <method \'SetInputData\' of \'vtkmodules.vtkInteractionWidgets.vtk3DWidget\' objects>, \'SetInputConnection\': <method \'SetInputConnection\' of \'vtkmodules.vtkInteractionWidgets.vtk3DWidget\' objects>, \'GetInput\': <method \'GetInput\' of \'vtkmodules.vtkInteractionWidgets.vtk3DWidget\' objects>, \'SetPlaceFactor\': <method \'SetPlaceFactor\' of \'vtkmodules.vtkInteractionWidgets.vtk3DWidget\' objects>, \'GetPlaceFactorMinValue\': <method \'GetPlaceFactorMinValue\' of \'vtkmodules.vtkInteractionWidgets.vtk3DWidget\' objects>, \'GetPlaceFactorMaxValue\': <method \'GetPlaceFactorMaxValue\' of \'vtkmodules.vtkInteractionWidgets.vtk3DWidget\' objects>, \'GetPlaceFactor\': <method \'GetPlaceFactor\' of \'vtkmodules.vtkInteractionWidgets.vtk3DWidget\' objects>, \'SetHandleSize\': <method \'SetHandleSize\' of \'vtkmodules.vtkInteractionWidgets.vtk3DWidget\' objects>, \'GetHandleSizeMinValue\': <method \'GetHandleSizeMinValue\' of \'vtkmodules.vtkInteractionWidgets.vtk3DWidget\' objects>, \'GetHandleSizeMaxValue\': <method \'GetHandleSizeMaxValue\' of \'vtkmodules.vtkInteractionWidgets.vtk3DWidget\' objects>, \'GetHandleSize\': <method \'GetHandleSize\' of \'vtkmodules.vtkInteractionWidgets.vtk3DWidget\' objects>, \'__new__\': <built-in method __new__ of type object at 0x00007FF81D6322B0>, \'__repr__\': <slot wrapper \'__repr__\' of \'vtkmodules.vtkInteractionWidgets.vtk3DWidget\' objects>, \'__str__\': <slot wrapper \'__str__\' of \'vtkmodules.vtkInteractionWidgets.vtk3DWidget\' objects>, \'__getattribute__\': <slot wrapper \'__getattribute__\' of \'vtkmodules.vtkInteractionWidgets.vtk3DWidget\' objects>, \'__setattr__\': <slot wrapper \'__setattr__\' of \'vtkmodules.vtkInteractionWidgets.vtk3DWidget\' objects>, \'__delattr__\': <slot wrapper \'__delattr__\' of \'vtkmodules.vtkInteractionWidgets.vtk3DWidget\' objects>, \'__dict__\': <attribute \'__dict__\' of \'vtkmodules.vtkInteractionWidgets.vtk3DWidget\' objects>, \'__this__\': <attribute \'__this__\' of \'vtkmodules.vtkInteractionWidgets.vtk3DWidget\' objects>, \'__doc__\': \'vtk3DWidget - an abstract superclass for 3D widgets\\n\\nSuperclass: vtkInteractorObserver\\n\\nvtk3DWidget is an abstract superclass for 3D interactor observers.\\nThese 3D widgets represent themselves in the scene, and have special\\ncallbacks associated with them that allows interactive manipulation\\nof the widget. Inparticular, the difference between a vtk3DWidget and\\nits abstract superclass vtkInteractorObserver is that vtk3DWidgets\\nare "placed" in 3D space.  vtkInteractorObservers have no notion of\\nwhere they are placed, and may not exist in 3D space at all.  3D\\nwidgets also provide auxiliary functions like producing a\\ntransformation, creating polydata (for seeding streamlines, probes,\\netc.) or creating implicit functions. See the concrete subclasses for\\nparticulars.\\n\\nTypically the widget is used by specifying a vtkProp3D or VTK dataset\\nas input, and then invoking the "On" method to activate it. (You can\\nalso specify a bounding box to help position the widget.) Prior to\\ninvoking the On() method, the user may also wish to use the\\nPlaceWidget() to initially position it. The \\\'i\\\' (for "interactor")\\nkeypresses also can be used to turn the widgets on and off (methods\\nexist to change the key value and enable keypress activiation).\\n\\nTo support interactive manipulation of objects, this class (and\\nsubclasses) invoke the events StartInteractionEvent,\\nInteractionEvent, and EndInteractionEvent.  These events are invoked\\nwhen the vtk3DWidget enters a state where rapid response is desired:\\nmouse motion, etc. The events can be used, for example, to set the\\ndesired update frame rate (StartInteractionEvent), operate on the\\nvtkProp3D or other object (InteractionEvent), and set the desired\\nframe rate back to normal values (EndInteractionEvent).\\n\\nNote that the Priority attribute inherited from vtkInteractorObserver\\nhas a new default value which is now 0.5 so that all 3D widgets have\\na higher priority than the usual interactor styles.\\n\\n@sa\\nvtkBoxWidget vtkPlaneWidget vtkLineWidget vtkPointWidget\\nvtkSphereWidget vtkImplicitPlaneWidget\\n\\n\'})'
    __vtkname__ = 'vtk3DWidget'


