# encoding: utf-8
# module vtkmodules.vtkCommonDataModel
# from C:\Users\xukai\Downloads\发票2\venv\Lib\site-packages\vtkmodules\vtkCommonDataModel.cp311-win_amd64.pyd
# by generator 1.147
# no doc

# imports
import vtkmodules.vtkCommonCore as __vtkmodules_vtkCommonCore
import vtkmodules.vtkCommonMath as __vtkmodules_vtkCommonMath
import vtkmodules.vtkCommonTransforms as __vtkmodules_vtkCommonTransforms


from .vtkPointLocator import vtkPointLocator

class vtkMergePoints(vtkPointLocator):
    """
    vtkMergePoints - merge exactly coincident points
    
    Superclass: vtkPointLocator
    
    vtkMergePoints is a locator object to quickly locate points in 3D.
    The primary difference between vtkMergePoints and its superclass
    vtkPointLocator is that vtkMergePoints merges precisely coincident
    points and is therefore much faster.
    @sa
    vtkCleanPolyData
    """
    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 InsertUniquePoint(self, x, *args, **kwargs): # real signature unknown; NOTE: unreliably restored from __doc__ 
        """
        InsertUniquePoint(self, x:(float, float, float), ptId:int) -> int
        C++: int InsertUniquePoint(const double x[3], vtkIdType &ptId)
            override;
        
        Determine whether point given by x[3] has been inserted into
        points list. Return 0 if point was already in the list, otherwise
        return 1. If the point was not in the list, it will be ADDED.  In
        either case, the id of the point (newly inserted or not) is
        returned in the ptId argument. Note this combines the
        functionality of IsInsertedPoint() followed by a call to
        InsertNextPoint().
        """
        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 IsInsertedPoint(self, x, *args, **kwargs): # real signature unknown; NOTE: unreliably restored from __doc__ 
        """
        IsInsertedPoint(self, x:(float, float, float)) -> int
        C++: vtkIdType IsInsertedPoint(const double x[3]) override;
        IsInsertedPoint(self, x:float, y:float, z:float) -> int
        C++: vtkIdType IsInsertedPoint(double x, double y, double z)
            override;
        
        Determine whether point given by x[3] has been inserted into
        points list. Return id of previously inserted point if this is
        true, otherwise return
        -1.
        """
        pass

    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) -> vtkMergePoints
        C++: vtkMergePoints *NewInstance()
        """
        return vtkMergePoints

    def SafeDownCast(self, o): # real signature unknown; restored from __doc__
        """
        SafeDownCast(o:vtkObjectBase) -> vtkMergePoints
        C++: static vtkMergePoints *SafeDownCast(vtkObjectBase *o)
        """
        return vtkMergePoints

    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__': 'vtkMergePoints', 'IsTypeOf': <method 'IsTypeOf' of 'vtkmodules.vtkCommonDataModel.vtkMergePoints' objects>, 'IsA': <method 'IsA' of 'vtkmodules.vtkCommonDataModel.vtkMergePoints' objects>, 'SafeDownCast': <method 'SafeDownCast' of 'vtkmodules.vtkCommonDataModel.vtkMergePoints' objects>, 'NewInstance': <method 'NewInstance' of 'vtkmodules.vtkCommonDataModel.vtkMergePoints' objects>, 'GetNumberOfGenerationsFromBaseType': <method 'GetNumberOfGenerationsFromBaseType' of 'vtkmodules.vtkCommonDataModel.vtkMergePoints' objects>, 'GetNumberOfGenerationsFromBase': <method 'GetNumberOfGenerationsFromBase' of 'vtkmodules.vtkCommonDataModel.vtkMergePoints' objects>, 'IsInsertedPoint': <method 'IsInsertedPoint' of 'vtkmodules.vtkCommonDataModel.vtkMergePoints' objects>, 'InsertUniquePoint': <method 'InsertUniquePoint' of 'vtkmodules.vtkCommonDataModel.vtkMergePoints' objects>, '__new__': <built-in method __new__ of type object at 0x00007FF81D639700>, '__repr__': <slot wrapper '__repr__' of 'vtkmodules.vtkCommonDataModel.vtkMergePoints' objects>, '__str__': <slot wrapper '__str__' of 'vtkmodules.vtkCommonDataModel.vtkMergePoints' objects>, '__getattribute__': <slot wrapper '__getattribute__' of 'vtkmodules.vtkCommonDataModel.vtkMergePoints' objects>, '__setattr__': <slot wrapper '__setattr__' of 'vtkmodules.vtkCommonDataModel.vtkMergePoints' objects>, '__delattr__': <slot wrapper '__delattr__' of 'vtkmodules.vtkCommonDataModel.vtkMergePoints' objects>, '__dict__': <attribute '__dict__' of 'vtkmodules.vtkCommonDataModel.vtkMergePoints' objects>, '__this__': <attribute '__this__' of 'vtkmodules.vtkCommonDataModel.vtkMergePoints' objects>, '__doc__': 'vtkMergePoints - merge exactly coincident points\\n\\nSuperclass: vtkPointLocator\\n\\nvtkMergePoints is a locator object to quickly locate points in 3D.\\nThe primary difference between vtkMergePoints and its superclass\\nvtkPointLocator is that vtkMergePoints merges precisely coincident\\npoints and is therefore much faster.\\n@sa\\nvtkCleanPolyData\\n\\n'})"
    __vtkname__ = 'vtkMergePoints'


