# 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


from .vtkWidgetRepresentation import vtkWidgetRepresentation

class vtkBalloonRepresentation(vtkWidgetRepresentation):
    """
    vtkBalloonRepresentation - represent the vtkBalloonWidget
    
    Superclass: vtkWidgetRepresentation
    
    The vtkBalloonRepresentation is used to represent the
    vtkBalloonWidget. This representation is defined by two items: a text
    string and an image. At least one of these two items must be defined,
    but it is allowable to specify both, or just an image or just text.
    If both the text and image are specified, then methods are available
    for positioning the text and image with respect to each other.
    
    The balloon representation consists of three parts: text, a
    rectangular frame behind the text, and an image placed next to the
    frame and sized to match the frame.
    
    The size of the balloon is ultimately controlled by the text
    properties (i.e., font size). This representation uses a layout
    policy as follows.
    
    If there is just text and no image, then the text properties and
    padding are used to control the size of the balloon.
    
    If there is just an image and no text, then the ImageSize[2] member
    is used to control the image size. (The image will fit into this
    rectangle, but will not necessarily fill the whole rectangle, i.e.,
    the image is not stretched).
    
    If there is text and an image, the following approach ia used. First,
    based on the font size and other related properties (e.g., padding),
    determine the size of the frame. Second, depending on the layout of
    the image and text frame, control the size of the neighboring image
    (since the frame and image share a common edge). However, if this
    results in an image that is smaller than ImageSize[2], then the image
    size will be set to ImageSize[2] and the frame will be adjusted
    accordingly. The text is always placed in the center of the frame if
    the frame is resized.
    
    @sa
    vtkBalloonWidget
    """
    def BuildRepresentation(self): # real signature unknown; restored from __doc__
        """
        BuildRepresentation(self) -> None
        C++: void BuildRepresentation() override;
        """
        pass

    def ComputeInteractionState(self, X, Y, modify=0): # real signature unknown; restored from __doc__
        """
        ComputeInteractionState(self, X:int, Y:int, modify:int=0) -> int
        C++: int ComputeInteractionState(int X, int Y, int modify=0)
            override;
        """
        return 0

    def EndWidgetInteraction(self, e, *args, **kwargs): # real signature unknown; NOTE: unreliably restored from __doc__ 
        """
        EndWidgetInteraction(self, e:[float, float]) -> None
        C++: void EndWidgetInteraction(double e[2]) override;
        """
        pass

    def GetBalloonImage(self): # real signature unknown; restored from __doc__
        """
        GetBalloonImage(self) -> vtkImageData
        C++: virtual vtkImageData *GetBalloonImage()
        """
        pass

    def GetBalloonLayout(self): # real signature unknown; restored from __doc__
        """
        GetBalloonLayout(self) -> int
        C++: virtual int GetBalloonLayout()
        """
        return 0

    def GetBalloonText(self): # real signature unknown; restored from __doc__
        """
        GetBalloonText(self) -> str
        C++: virtual char *GetBalloonText()
        
        Specify/retrieve the text to display in the balloon.
        """
        return ""

    def GetFrameProperty(self): # real signature unknown; restored from __doc__
        """
        GetFrameProperty(self) -> vtkProperty2D
        C++: virtual vtkProperty2D *GetFrameProperty()
        """
        pass

    def GetImageProperty(self): # real signature unknown; restored from __doc__
        """
        GetImageProperty(self) -> vtkProperty2D
        C++: virtual vtkProperty2D *GetImageProperty()
        """
        pass

    def GetImageSize(self): # real signature unknown; restored from __doc__
        """
        GetImageSize(self) -> (int, int)
        C++: virtual int *GetImageSize()
        """
        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 GetOffset(self): # real signature unknown; restored from __doc__
        """
        GetOffset(self) -> (int, int)
        C++: virtual int *GetOffset()
        """
        pass

    def GetPadding(self): # real signature unknown; restored from __doc__
        """
        GetPadding(self) -> int
        C++: virtual int GetPadding()
        """
        return 0

    def GetPaddingMaxValue(self): # real signature unknown; restored from __doc__
        """
        GetPaddingMaxValue(self) -> int
        C++: virtual int GetPaddingMaxValue()
        """
        return 0

    def GetPaddingMinValue(self): # real signature unknown; restored from __doc__
        """
        GetPaddingMinValue(self) -> int
        C++: virtual int GetPaddingMinValue()
        """
        return 0

    def GetTextProperty(self): # real signature unknown; restored from __doc__
        """
        GetTextProperty(self) -> vtkTextProperty
        C++: virtual vtkTextProperty *GetTextProperty()
        """
        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) -> vtkBalloonRepresentation
        C++: vtkBalloonRepresentation *NewInstance()
        """
        return vtkBalloonRepresentation

    def ReleaseGraphicsResources(self, w): # real signature unknown; restored from __doc__
        """
        ReleaseGraphicsResources(self, w:vtkWindow) -> None
        C++: void ReleaseGraphicsResources(vtkWindow *w) override;
        
        Methods required by vtkProp superclass.
        """
        pass

    def RenderOverlay(self, viewport): # real signature unknown; restored from __doc__
        """
        RenderOverlay(self, viewport:vtkViewport) -> int
        C++: int RenderOverlay(vtkViewport *viewport) override;
        """
        return 0

    def SafeDownCast(self, o): # real signature unknown; restored from __doc__
        """
        SafeDownCast(o:vtkObjectBase) -> vtkBalloonRepresentation
        C++: static vtkBalloonRepresentation *SafeDownCast(
            vtkObjectBase *o)
        """
        return vtkBalloonRepresentation

    def SetBalloonImage(self, img): # real signature unknown; restored from __doc__
        """
        SetBalloonImage(self, img:vtkImageData) -> None
        C++: virtual void SetBalloonImage(vtkImageData *img)
        
        Specify/retrieve the image to display in the balloon.
        """
        pass

    def SetBalloonLayout(self, _arg): # real signature unknown; restored from __doc__
        """
        SetBalloonLayout(self, _arg:int) -> None
        C++: virtual void SetBalloonLayout(int _arg)
        
        Specify the layout of the image and text within the balloon. Note
        that there are reduncies in these methods, for example
        SetBalloonLayoutToImageLeft() results in the same effect as
        SetBalloonLayoutToTextRight(). If only text is specified, or only
        an image is specified, then it doesn't matter how the layout is
        specified.
        """
        pass

    def SetBalloonLayoutToImageBottom(self): # real signature unknown; restored from __doc__
        """
        SetBalloonLayoutToImageBottom(self) -> None
        C++: void SetBalloonLayoutToImageBottom()
        """
        pass

    def SetBalloonLayoutToImageLeft(self): # real signature unknown; restored from __doc__
        """
        SetBalloonLayoutToImageLeft(self) -> None
        C++: void SetBalloonLayoutToImageLeft()
        """
        pass

    def SetBalloonLayoutToImageRight(self): # real signature unknown; restored from __doc__
        """
        SetBalloonLayoutToImageRight(self) -> None
        C++: void SetBalloonLayoutToImageRight()
        """
        pass

    def SetBalloonLayoutToImageTop(self): # real signature unknown; restored from __doc__
        """
        SetBalloonLayoutToImageTop(self) -> None
        C++: void SetBalloonLayoutToImageTop()
        """
        pass

    def SetBalloonLayoutToTextBottom(self): # real signature unknown; restored from __doc__
        """
        SetBalloonLayoutToTextBottom(self) -> None
        C++: void SetBalloonLayoutToTextBottom()
        """
        pass

    def SetBalloonLayoutToTextLeft(self): # real signature unknown; restored from __doc__
        """
        SetBalloonLayoutToTextLeft(self) -> None
        C++: void SetBalloonLayoutToTextLeft()
        """
        pass

    def SetBalloonLayoutToTextRight(self): # real signature unknown; restored from __doc__
        """
        SetBalloonLayoutToTextRight(self) -> None
        C++: void SetBalloonLayoutToTextRight()
        """
        pass

    def SetBalloonLayoutToTextTop(self): # real signature unknown; restored from __doc__
        """
        SetBalloonLayoutToTextTop(self) -> None
        C++: void SetBalloonLayoutToTextTop()
        """
        pass

    def SetBalloonText(self, _arg): # real signature unknown; restored from __doc__
        """
        SetBalloonText(self, _arg:str) -> None
        C++: virtual void SetBalloonText(const char *_arg)
        """
        pass

    def SetFrameProperty(self, p): # real signature unknown; restored from __doc__
        """
        SetFrameProperty(self, p:vtkProperty2D) -> None
        C++: virtual void SetFrameProperty(vtkProperty2D *p)
        
        Set/get the frame property (relevant only if text is shown). The
        frame lies behind the text.
        """
        pass

    def SetImageProperty(self, p): # real signature unknown; restored from __doc__
        """
        SetImageProperty(self, p:vtkProperty2D) -> None
        C++: virtual void SetImageProperty(vtkProperty2D *p)
        
        Set/get the image property (relevant only if an image is shown).
        """
        pass

    def SetImageSize(self, _arg1, _arg2): # real signature unknown; restored from __doc__
        """
        SetImageSize(self, _arg1:int, _arg2:int) -> None
        C++: virtual void SetImageSize(int _arg1, int _arg2)
        SetImageSize(self, _arg:(int, int)) -> None
        C++: void SetImageSize(const int _arg[2])
        
        Specify the minimum size for the image. Note that this is a
        bounding rectangle, the image will fit inside of it. However, if
        the balloon consists of text plus an image, then the image may be
        bigger than ImageSize[2] to fit into the balloon frame.
        """
        pass

    def SetOffset(self, _arg1, _arg2): # real signature unknown; restored from __doc__
        """
        SetOffset(self, _arg1:int, _arg2:int) -> None
        C++: virtual void SetOffset(int _arg1, int _arg2)
        SetOffset(self, _arg:(int, int)) -> None
        C++: void SetOffset(const int _arg[2])
        
        Set/Get the offset from the mouse pointer from which to place the
        balloon. The representation will try and honor this offset unless
        there is a collision with the side of the renderer, in which case
        the balloon will be repositioned to lie within the rendering
        window.
        """
        pass

    def SetPadding(self, _arg): # real signature unknown; restored from __doc__
        """
        SetPadding(self, _arg:int) -> None
        C++: virtual void SetPadding(int _arg)
        
        Set/Get the padding (in pixels) that is used between the text and
        the frame.
        """
        pass

    def SetTextProperty(self, p): # real signature unknown; restored from __doc__
        """
        SetTextProperty(self, p:vtkTextProperty) -> None
        C++: virtual void SetTextProperty(vtkTextProperty *p)
        
        Set/get the text property (relevant only if text is shown).
        """
        pass

    def StartWidgetInteraction(self, e, *args, **kwargs): # real signature unknown; NOTE: unreliably restored from __doc__ 
        """
        StartWidgetInteraction(self, e:[float, float]) -> None
        C++: void StartWidgetInteraction(double e[2]) override;
        
        These are methods that satisfy vtkWidgetRepresentation's API.
        """
        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."""


    ImageBottom = 2
    ImageLeft = 0
    ImageRight = 1
    ImageTop = 3
    InteractionStateType = None # (!) real value is "<class 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation.InteractionStateType'>"
    OnImage = 2
    OnText = 1
    Outside = 0
    __dict__ = None # (!) real value is "mappingproxy({'__vtkname__': 'vtkBalloonRepresentation', 'IsTypeOf': <method 'IsTypeOf' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, 'IsA': <method 'IsA' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, 'SafeDownCast': <method 'SafeDownCast' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, 'NewInstance': <method 'NewInstance' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, 'GetNumberOfGenerationsFromBaseType': <method 'GetNumberOfGenerationsFromBaseType' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, 'GetNumberOfGenerationsFromBase': <method 'GetNumberOfGenerationsFromBase' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, 'SetBalloonImage': <method 'SetBalloonImage' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, 'GetBalloonImage': <method 'GetBalloonImage' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, 'GetBalloonText': <method 'GetBalloonText' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, 'SetBalloonText': <method 'SetBalloonText' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, 'SetImageSize': <method 'SetImageSize' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, 'GetImageSize': <method 'GetImageSize' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, 'SetTextProperty': <method 'SetTextProperty' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, 'GetTextProperty': <method 'GetTextProperty' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, 'SetFrameProperty': <method 'SetFrameProperty' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, 'GetFrameProperty': <method 'GetFrameProperty' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, 'SetImageProperty': <method 'SetImageProperty' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, 'GetImageProperty': <method 'GetImageProperty' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, 'SetBalloonLayout': <method 'SetBalloonLayout' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, 'GetBalloonLayout': <method 'GetBalloonLayout' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, 'SetBalloonLayoutToImageLeft': <method 'SetBalloonLayoutToImageLeft' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, 'SetBalloonLayoutToImageRight': <method 'SetBalloonLayoutToImageRight' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, 'SetBalloonLayoutToImageBottom': <method 'SetBalloonLayoutToImageBottom' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, 'SetBalloonLayoutToImageTop': <method 'SetBalloonLayoutToImageTop' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, 'SetBalloonLayoutToTextLeft': <method 'SetBalloonLayoutToTextLeft' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, 'SetBalloonLayoutToTextRight': <method 'SetBalloonLayoutToTextRight' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, 'SetBalloonLayoutToTextTop': <method 'SetBalloonLayoutToTextTop' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, 'SetBalloonLayoutToTextBottom': <method 'SetBalloonLayoutToTextBottom' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, 'SetOffset': <method 'SetOffset' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, 'GetOffset': <method 'GetOffset' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, 'SetPadding': <method 'SetPadding' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, 'GetPaddingMinValue': <method 'GetPaddingMinValue' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, 'GetPaddingMaxValue': <method 'GetPaddingMaxValue' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, 'GetPadding': <method 'GetPadding' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, 'StartWidgetInteraction': <method 'StartWidgetInteraction' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, 'EndWidgetInteraction': <method 'EndWidgetInteraction' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, 'BuildRepresentation': <method 'BuildRepresentation' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, 'ComputeInteractionState': <method 'ComputeInteractionState' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, 'ReleaseGraphicsResources': <method 'ReleaseGraphicsResources' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, 'RenderOverlay': <method 'RenderOverlay' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, 'InteractionStateType': <class 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation.InteractionStateType'>, 'ImageLeft': 0, 'ImageRight': 1, 'ImageBottom': 2, 'ImageTop': 3, 'Outside': 0, 'OnText': 1, 'OnImage': 2, '__new__': <built-in method __new__ of type object at 0x00007FF81D636840>, '__repr__': <slot wrapper '__repr__' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, '__str__': <slot wrapper '__str__' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, '__getattribute__': <slot wrapper '__getattribute__' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, '__setattr__': <slot wrapper '__setattr__' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, '__delattr__': <slot wrapper '__delattr__' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, '__dict__': <attribute '__dict__' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, '__this__': <attribute '__this__' of 'vtkmodules.vtkInteractionWidgets.vtkBalloonRepresentation' objects>, '__doc__': 'vtkBalloonRepresentation - represent the vtkBalloonWidget\\n\\nSuperclass: vtkWidgetRepresentation\\n\\nThe vtkBalloonRepresentation is used to represent the\\nvtkBalloonWidget. This representation is defined by two items: a text\\nstring and an image. At least one of these two items must be defined,\\nbut it is allowable to specify both, or just an image or just text.\\nIf both the text and image are specified, then methods are available\\nfor positioning the text and image with respect to each other.\\n\\nThe balloon representation consists of three parts: text, a\\nrectangular frame behind the text, and an image placed next to the\\nframe and sized to match the frame.\\n\\nThe size of the balloon is ultimately controlled by the text\\nproperties (i.e., font size). This representation uses a layout\\npolicy as follows.\\n\\nIf there is just text and no image, then the text properties and\\npadding are used to control the size of the balloon.\\n\\nIf there is just an image and no text, then the ImageSize[2] member\\nis used to control the image size. (The image will fit into this\\nrectangle, but will not necessarily fill the whole rectangle, i.e.,\\nthe image is not stretched).\\n\\nIf there is text and an image, the following approach ia used. First,\\nbased on the font size and other related properties (e.g., padding),\\ndetermine the size of the frame. Second, depending on the layout of\\nthe image and text frame, control the size of the neighboring image\\n(since the frame and image share a common edge). However, if this\\nresults in an image that is smaller than ImageSize[2], then the image\\nsize will be set to ImageSize[2] and the frame will be adjusted\\naccordingly. The text is always placed in the center of the frame if\\nthe frame is resized.\\n\\n@sa\\nvtkBalloonWidget\\n\\n'})"
    __vtkname__ = 'vtkBalloonRepresentation'


