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

import vtkmodules.vtkCommonExecutionModel as __vtkmodules_vtkCommonExecutionModel

class vtkPolyDataPointSampler(__vtkmodules_vtkCommonExecutionModel.vtkPolyDataAlgorithm):
    """
    vtkPolyDataPointSampler - generate points from vtkPolyData
    
    Superclass: vtkPolyDataAlgorithm
    
    vtkPolyDataPointSampler generates points from input vtkPolyData. The
    points are placed approximately a specified distance apart.
    Optionally, the points attributes can be interpolated from the
    generating vertices, edges, and polygons.
    
    This filter functions as follows. First, it regurgitates all input
    points, then it samples all lines, plus edges associated with the
    input polygons and triangle strips to produce edge points. Finally,
    the interiors of polygons and triangle strips are subsampled to
    produce points. All of these operations can be enabled or disabled
    separately. Note that this algorithm only approximately generates
    points the specified distance apart. Generally the point density is
    finer than requested.
    
    @warning
    While this algorithm processes general polygons. it does so by
    performing a fan triangulation. This may produce poor results,
    especially for convave polygons. For better results, use a triangle
    filter to pre-tesselate polygons.
    
    @warning
    Point generation can be useful in a variety of applications. For
    example, generating seed points for glyphing or streamline
    generation. Another useful application is generating points for
    implicit modeling. In many cases implicit models can be more
    efficiently generated from points than from polygons or other
    primitives.
    
    @warning
    When sampling polygons of 5 sides or more, the polygon is
    triangulated. This can result in variations in point density near
    tesselation boudaries.
    
    @sa
    vtkTriangleFilter vtkImplicitModeller
    """
    def GenerateEdgePointsOff(self):
        """
        V.GenerateEdgePointsOff()
        C++: virtual void GenerateEdgePointsOff()
        
        Specify/retrieve a boolean flag indicating whether cell edges
        should be sampled to produce output points. The default is true.
        """
        ...
    
    def GenerateEdgePointsOn(self):
        """
        V.GenerateEdgePointsOn()
        C++: virtual void GenerateEdgePointsOn()
        
        Specify/retrieve a boolean flag indicating whether cell edges
        should be sampled to produce output points. The default is true.
        """
        ...
    
    def GenerateInteriorPointsOff(self):
        """
        V.GenerateInteriorPointsOff()
        C++: virtual void GenerateInteriorPointsOff()
        
        Specify/retrieve a boolean flag indicating whether cell interiors
        should be sampled to produce output points. The default is true.
        """
        ...
    
    def GenerateInteriorPointsOn(self):
        """
        V.GenerateInteriorPointsOn()
        C++: virtual void GenerateInteriorPointsOn()
        
        Specify/retrieve a boolean flag indicating whether cell interiors
        should be sampled to produce output points. The default is true.
        """
        ...
    
    def GenerateVertexPointsOff(self):
        """
        V.GenerateVertexPointsOff()
        C++: virtual void GenerateVertexPointsOff()
        
        Specify/retrieve a boolean flag indicating whether cell vertex
        points should be output.
        """
        ...
    
    def GenerateVertexPointsOn(self):
        """
        V.GenerateVertexPointsOn()
        C++: virtual void GenerateVertexPointsOn()
        
        Specify/retrieve a boolean flag indicating whether cell vertex
        points should be output.
        """
        ...
    
    def GenerateVerticesOff(self):
        """
        V.GenerateVerticesOff()
        C++: virtual void GenerateVerticesOff()
        
        Specify/retrieve a boolean flag indicating whether cell vertices
        should be generated. Cell vertices are useful if you actually
        want to display the points (that is, for each point generated, a
        vertex is generated). Recall that VTK only renders vertices and
        not points.  The default is true.
        """
        ...
    
    def GenerateVerticesOn(self):
        """
        V.GenerateVerticesOn()
        C++: virtual void GenerateVerticesOn()
        
        Specify/retrieve a boolean flag indicating whether cell vertices
        should be generated. Cell vertices are useful if you actually
        want to display the points (that is, for each point generated, a
        vertex is generated). Recall that VTK only renders vertices and
        not points.  The default is true.
        """
        ...
    
    def GetDistance(self):
        """
        V.GetDistance() -> float
        C++: virtual double GetDistance()
        
        Set/Get the approximate distance between points. This is an
        absolute distance measure. The default is 0.01.
        """
        ...
    
    def GetDistanceMaxValue(self):
        """
        V.GetDistanceMaxValue() -> float
        C++: virtual double GetDistanceMaxValue()
        
        Set/Get the approximate distance between points. This is an
        absolute distance measure. The default is 0.01.
        """
        ...
    
    def GetDistanceMinValue(self):
        """
        V.GetDistanceMinValue() -> float
        C++: virtual double GetDistanceMinValue()
        
        Set/Get the approximate distance between points. This is an
        absolute distance measure. The default is 0.01.
        """
        ...
    
    def GetGenerateEdgePoints(self):
        """
        V.GetGenerateEdgePoints() -> bool
        C++: virtual bool GetGenerateEdgePoints()
        
        Specify/retrieve a boolean flag indicating whether cell edges
        should be sampled to produce output points. The default is true.
        """
        ...
    
    def GetGenerateInteriorPoints(self):
        """
        V.GetGenerateInteriorPoints() -> bool
        C++: virtual bool GetGenerateInteriorPoints()
        
        Specify/retrieve a boolean flag indicating whether cell interiors
        should be sampled to produce output points. The default is true.
        """
        ...
    
    def GetGenerateVertexPoints(self):
        """
        V.GetGenerateVertexPoints() -> bool
        C++: virtual bool GetGenerateVertexPoints()
        
        Specify/retrieve a boolean flag indicating whether cell vertex
        points should be output.
        """
        ...
    
    def GetGenerateVertices(self):
        """
        V.GetGenerateVertices() -> bool
        C++: virtual bool GetGenerateVertices()
        
        Specify/retrieve a boolean flag indicating whether cell vertices
        should be generated. Cell vertices are useful if you actually
        want to display the points (that is, for each point generated, a
        vertex is generated). Recall that VTK only renders vertices and
        not points.  The default is true.
        """
        ...
    
    def GetInterpolatePointData(self):
        """
        V.GetInterpolatePointData() -> bool
        C++: virtual bool GetInterpolatePointData()
        
        Specify/retrieve a boolean flag indicating whether point data
        should be interpolated onto the newly generated points. If
        enabled, points generated from existing vertices will carry the
        vertex point data; points generated from edges will interpolate
        point data along each edge; and interior point data (inside
        triangles, polygons cells) will be interpolated from the cell
        vertices. By default this is off.
        """
        ...
    
    def GetNumberOfGenerationsFromBase(self, string):
        """
        V.GetNumberOfGenerationsFromBase(string) -> int
        C++: vtkIdType GetNumberOfGenerationsFromBase(const char *type)
            override;
        
        Standard macros for type information and printing.
        """
        ...
    
    def GetNumberOfGenerationsFromBaseType(self, string):
        """
        V.GetNumberOfGenerationsFromBaseType(string) -> int
        C++: static vtkIdType GetNumberOfGenerationsFromBaseType(
            const char *type)
        
        Standard macros for type information and printing.
        """
        ...
    
    def InterpolatePointDataOff(self):
        """
        V.InterpolatePointDataOff()
        C++: virtual void InterpolatePointDataOff()
        
        Specify/retrieve a boolean flag indicating whether point data
        should be interpolated onto the newly generated points. If
        enabled, points generated from existing vertices will carry the
        vertex point data; points generated from edges will interpolate
        point data along each edge; and interior point data (inside
        triangles, polygons cells) will be interpolated from the cell
        vertices. By default this is off.
        """
        ...
    
    def InterpolatePointDataOn(self):
        """
        V.InterpolatePointDataOn()
        C++: virtual void InterpolatePointDataOn()
        
        Specify/retrieve a boolean flag indicating whether point data
        should be interpolated onto the newly generated points. If
        enabled, points generated from existing vertices will carry the
        vertex point data; points generated from edges will interpolate
        point data along each edge; and interior point data (inside
        triangles, polygons cells) will be interpolated from the cell
        vertices. By default this is off.
        """
        ...
    
    def IsA(self, string):
        """
        V.IsA(string) -> int
        C++: vtkTypeBool IsA(const char *type) override;
        
        Standard macros for type information and printing.
        """
        ...
    
    def IsTypeOf(self, string):
        """
        V.IsTypeOf(string) -> int
        C++: static vtkTypeBool IsTypeOf(const char *type)
        
        Standard macros for type information and printing.
        """
        ...
    
    def NewInstance(self):
        """
        V.NewInstance() -> vtkPolyDataPointSampler
        C++: vtkPolyDataPointSampler *NewInstance()
        
        Standard macros for type information and printing.
        """
        ...
    
    def SafeDownCast(self, vtkObjectBase):
        """
        V.SafeDownCast(vtkObjectBase) -> vtkPolyDataPointSampler
        C++: static vtkPolyDataPointSampler *SafeDownCast(
            vtkObjectBase *o)
        
        Standard macros for type information and printing.
        """
        ...
    
    def SetDistance(self, p_float):
        """
        V.SetDistance(float)
        C++: virtual void SetDistance(double _arg)
        
        Set/Get the approximate distance between points. This is an
        absolute distance measure. The default is 0.01.
        """
        ...
    
    def SetGenerateEdgePoints(self, bool):
        """
        V.SetGenerateEdgePoints(bool)
        C++: virtual void SetGenerateEdgePoints(bool _arg)
        
        Specify/retrieve a boolean flag indicating whether cell edges
        should be sampled to produce output points. The default is true.
        """
        ...
    
    def SetGenerateInteriorPoints(self, bool):
        """
        V.SetGenerateInteriorPoints(bool)
        C++: virtual void SetGenerateInteriorPoints(bool _arg)
        
        Specify/retrieve a boolean flag indicating whether cell interiors
        should be sampled to produce output points. The default is true.
        """
        ...
    
    def SetGenerateVertexPoints(self, bool):
        """
        V.SetGenerateVertexPoints(bool)
        C++: virtual void SetGenerateVertexPoints(bool _arg)
        
        Specify/retrieve a boolean flag indicating whether cell vertex
        points should be output.
        """
        ...
    
    def SetGenerateVertices(self, bool):
        """
        V.SetGenerateVertices(bool)
        C++: virtual void SetGenerateVertices(bool _arg)
        
        Specify/retrieve a boolean flag indicating whether cell vertices
        should be generated. Cell vertices are useful if you actually
        want to display the points (that is, for each point generated, a
        vertex is generated). Recall that VTK only renders vertices and
        not points.  The default is true.
        """
        ...
    
    def SetInterpolatePointData(self, bool):
        """
        V.SetInterpolatePointData(bool)
        C++: virtual void SetInterpolatePointData(bool _arg)
        
        Specify/retrieve a boolean flag indicating whether point data
        should be interpolated onto the newly generated points. If
        enabled, points generated from existing vertices will carry the
        vertex point data; points generated from edges will interpolate
        point data along each edge; and interior point data (inside
        triangles, polygons cells) will be interpolated from the cell
        vertices. By default this is off.
        """
        ...
    
    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__ = ...
    __dict__ = ...
    __vtkname__ = ...


