# encoding: utf-8
# module vtkmodules.vtkInfovisLayout
# from C:\Users\xukai\Downloads\发票2\venv\Lib\site-packages\vtkmodules\vtkInfovisLayout.cp311-win_amd64.pyd
# by generator 1.147
# no doc

# imports
import vtkmodules.vtkCommonCore as __vtkmodules_vtkCommonCore
import vtkmodules.vtkCommonExecutionModel as __vtkmodules_vtkCommonExecutionModel


from .vtkGraphLayoutStrategy import vtkGraphLayoutStrategy

class vtkConeLayoutStrategy(vtkGraphLayoutStrategy):
    """
    vtkConeLayoutStrategy - produce a cone-tree layout for a forest
    
    Superclass: vtkGraphLayoutStrategy
    
    vtkConeLayoutStrategy positions the nodes of a tree(forest) in 3D
    space based on the cone-tree approach first described by Robertson,
    Mackinlay and Card in Proc. CHI'91.  This implementation incorporates
    refinements to the layout developed by Carriere and Kazman, and by
    Auber.
    
    The input graph must be a forest (i.e. a set of trees, or a single
    tree); in the case of a forest, the input will be converted to a
    single tree by introducing a new root node, and connecting each root
    in the input forest to the meta-root. The tree is then laid out,
    after which the meta-root is removed.
    
    The cones are positioned so that children lie in planes parallel to
    the X-Y plane, with the axis of cones parallel to Z, and with Z
    coordinate increasing with distance of nodes from the root.
    
    @par Thanks: Thanks to David Duke from the University of Leeds for
    providing this implementation.
    """
    def CompressionOff(self): # real signature unknown; restored from __doc__
        """
        CompressionOff(self) -> None
        C++: virtual void CompressionOff()
        """
        pass

    def CompressionOn(self): # real signature unknown; restored from __doc__
        """
        CompressionOn(self) -> None
        C++: virtual void CompressionOn()
        """
        pass

    def GetCompactness(self): # real signature unknown; restored from __doc__
        """
        GetCompactness(self) -> float
        C++: virtual float GetCompactness()
        """
        return 0.0

    def GetCompression(self): # real signature unknown; restored from __doc__
        """
        GetCompression(self) -> int
        C++: virtual vtkTypeBool GetCompression()
        """
        return 0

    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 GetSpacing(self): # real signature unknown; restored from __doc__
        """
        GetSpacing(self) -> float
        C++: virtual float GetSpacing()
        """
        return 0.0

    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 Layout(self): # real signature unknown; restored from __doc__
        """
        Layout(self) -> None
        C++: void Layout() override;
        
        Perform the layout.
        """
        pass

    def NewInstance(self): # real signature unknown; restored from __doc__
        """
        NewInstance(self) -> vtkConeLayoutStrategy
        C++: vtkConeLayoutStrategy *NewInstance()
        """
        return vtkConeLayoutStrategy

    def SafeDownCast(self, o): # real signature unknown; restored from __doc__
        """
        SafeDownCast(o:vtkObjectBase) -> vtkConeLayoutStrategy
        C++: static vtkConeLayoutStrategy *SafeDownCast(vtkObjectBase *o)
        """
        return vtkConeLayoutStrategy

    def SetCompactness(self, _arg): # real signature unknown; restored from __doc__
        """
        SetCompactness(self, _arg:float) -> None
        C++: virtual void SetCompactness(float _arg)
        
        Determine the compactness, the ratio between the average width of
        a cone in the tree, and the height of the cone.  The default
        setting is 0.75 which (empirically) seems reasonable, but this
        will need adapting depending on the data.
        """
        pass

    def SetCompression(self, _arg): # real signature unknown; restored from __doc__
        """
        SetCompression(self, _arg:int) -> None
        C++: virtual void SetCompression(vtkTypeBool _arg)
        
        Determine if layout should be compressed, i.e. the layout puts
        children closer together, possibly allowing sub-trees to overlap.
         This is useful if the tree is actually the spanning tree of a
        graph.  For "real" trees, non-compressed layout is best, and is
        the default.
        """
        pass

    def SetSpacing(self, _arg): # real signature unknown; restored from __doc__
        """
        SetSpacing(self, _arg:float) -> None
        C++: virtual void SetSpacing(float _arg)
        
        Set the spacing parameter that affects space between layers of
        the tree.  If compression is on, Spacing is the actual distance
        between layers.  If compression is off, actual distance also
        includes a factor of the compactness and maximum cone radius.
        """
        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__\': \'vtkConeLayoutStrategy\', \'IsTypeOf\': <method \'IsTypeOf\' of \'vtkmodules.vtkInfovisLayout.vtkConeLayoutStrategy\' objects>, \'IsA\': <method \'IsA\' of \'vtkmodules.vtkInfovisLayout.vtkConeLayoutStrategy\' objects>, \'SafeDownCast\': <method \'SafeDownCast\' of \'vtkmodules.vtkInfovisLayout.vtkConeLayoutStrategy\' objects>, \'NewInstance\': <method \'NewInstance\' of \'vtkmodules.vtkInfovisLayout.vtkConeLayoutStrategy\' objects>, \'GetNumberOfGenerationsFromBaseType\': <method \'GetNumberOfGenerationsFromBaseType\' of \'vtkmodules.vtkInfovisLayout.vtkConeLayoutStrategy\' objects>, \'GetNumberOfGenerationsFromBase\': <method \'GetNumberOfGenerationsFromBase\' of \'vtkmodules.vtkInfovisLayout.vtkConeLayoutStrategy\' objects>, \'SetCompactness\': <method \'SetCompactness\' of \'vtkmodules.vtkInfovisLayout.vtkConeLayoutStrategy\' objects>, \'GetCompactness\': <method \'GetCompactness\' of \'vtkmodules.vtkInfovisLayout.vtkConeLayoutStrategy\' objects>, \'SetCompression\': <method \'SetCompression\' of \'vtkmodules.vtkInfovisLayout.vtkConeLayoutStrategy\' objects>, \'GetCompression\': <method \'GetCompression\' of \'vtkmodules.vtkInfovisLayout.vtkConeLayoutStrategy\' objects>, \'CompressionOn\': <method \'CompressionOn\' of \'vtkmodules.vtkInfovisLayout.vtkConeLayoutStrategy\' objects>, \'CompressionOff\': <method \'CompressionOff\' of \'vtkmodules.vtkInfovisLayout.vtkConeLayoutStrategy\' objects>, \'SetSpacing\': <method \'SetSpacing\' of \'vtkmodules.vtkInfovisLayout.vtkConeLayoutStrategy\' objects>, \'GetSpacing\': <method \'GetSpacing\' of \'vtkmodules.vtkInfovisLayout.vtkConeLayoutStrategy\' objects>, \'Layout\': <method \'Layout\' of \'vtkmodules.vtkInfovisLayout.vtkConeLayoutStrategy\' objects>, \'__new__\': <built-in method __new__ of type object at 0x00007FF856253750>, \'__repr__\': <slot wrapper \'__repr__\' of \'vtkmodules.vtkInfovisLayout.vtkConeLayoutStrategy\' objects>, \'__str__\': <slot wrapper \'__str__\' of \'vtkmodules.vtkInfovisLayout.vtkConeLayoutStrategy\' objects>, \'__getattribute__\': <slot wrapper \'__getattribute__\' of \'vtkmodules.vtkInfovisLayout.vtkConeLayoutStrategy\' objects>, \'__setattr__\': <slot wrapper \'__setattr__\' of \'vtkmodules.vtkInfovisLayout.vtkConeLayoutStrategy\' objects>, \'__delattr__\': <slot wrapper \'__delattr__\' of \'vtkmodules.vtkInfovisLayout.vtkConeLayoutStrategy\' objects>, \'__dict__\': <attribute \'__dict__\' of \'vtkmodules.vtkInfovisLayout.vtkConeLayoutStrategy\' objects>, \'__this__\': <attribute \'__this__\' of \'vtkmodules.vtkInfovisLayout.vtkConeLayoutStrategy\' objects>, \'__doc__\': "vtkConeLayoutStrategy - produce a cone-tree layout for a forest\\n\\nSuperclass: vtkGraphLayoutStrategy\\n\\nvtkConeLayoutStrategy positions the nodes of a tree(forest) in 3D\\nspace based on the cone-tree approach first described by Robertson,\\nMackinlay and Card in Proc. CHI\'91.  This implementation incorporates\\nrefinements to the layout developed by Carriere and Kazman, and by\\nAuber.\\n\\nThe input graph must be a forest (i.e. a set of trees, or a single\\ntree); in the case of a forest, the input will be converted to a\\nsingle tree by introducing a new root node, and connecting each root\\nin the input forest to the meta-root. The tree is then laid out,\\nafter which the meta-root is removed.\\n\\nThe cones are positioned so that children lie in planes parallel to\\nthe X-Y plane, with the axis of cones parallel to Z, and with Z\\ncoordinate increasing with distance of nodes from the root.\\n\\n@par Thanks: Thanks to David Duke from the University of Leeds for\\nproviding this implementation.\\n\\n"})'
    __vtkname__ = 'vtkConeLayoutStrategy'


