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

import vtkmodules.vtkCommonExecutionModel as __vtkmodules_vtkCommonExecutionModel

class vtkProbePolyhedron(__vtkmodules_vtkCommonExecutionModel.vtkDataSetAlgorithm):
    """
    vtkProbePolyhedron - probe/interpolate data values in the interior,
    exterior or of the surface of a closed, manifold polyhedron
    
    Superclass: vtkDataSetAlgorithm
    
    vtkProbePolyhedron is a filter that computes point attributes (e.g.,
    scalars, vectors, etc.) at specified point positions. The filter has
    two inputs: the Input and Source. The Source geometric structure is
    passed through the filter. The point attributes are computed at the
    Input point positions by interpolating into the source data. In this
    filter, the Source is always a closed, non-self-intersecting,
    polyhedral mesh. For example, we can compute data values on a plane
    (plane specified as Input) from a triangle mesh (e.g., output of
    marching cubes).
    
    This filter can be used to resample data from a mesh onto a different
    dataset type. For example, a polyhedral mesh (vtkPolyData) can be
    probed with a volume (three-dimensional vtkImageData), and then
    volume rendering techniques can be used to visualize the results.
    Another example: a line or curve can be used to probe a mesh to
    produce x-y plots along that line or curve.
    
    @warning
    Note that cell data is not interpolated from the source. If you need
    cell data, you can always use vtkPointDataToCellData and/or
    vtkCellDataToPointData in various combinations.
    
    @warning
    Note that the filter interpolates from a mesh to points interior,
    exterior or on the surface of the mesh. This process is necessarily
    an approximation. Currently the approach of Mean Value Coordinates is
    used, but this filter may be extended in the future to use other
    methods.
    
    @sa
    vtkProbeFilter vtkMeanValueCoordinatesInterpolator vtkPolyhedron
    """
    def GetNumberOfGenerationsFromBase(self, string):
        """
        V.GetNumberOfGenerationsFromBase(string) -> int
        C++: vtkIdType GetNumberOfGenerationsFromBase(const char *type)
            override;
        
        Standard methods for instantiable (i.e., concrete) class.
        """
        ...
    
    def GetNumberOfGenerationsFromBaseType(self, string):
        """
        V.GetNumberOfGenerationsFromBaseType(string) -> int
        C++: static vtkIdType GetNumberOfGenerationsFromBaseType(
            const char *type)
        
        Standard methods for instantiable (i.e., concrete) class.
        """
        ...
    
    def GetProbeCellData(self):
        """
        V.GetProbeCellData() -> int
        C++: virtual vtkTypeBool GetProbeCellData()
        
        Specify whether to probe (and hence produce) cell data. The
        interpolated point data of the source will produce the output
        cell data (output cells are passed from the input cells). Note
        that the probing of the input uses the centers of the cells as
        the probe position.
        """
        ...
    
    def GetProbePointData(self):
        """
        V.GetProbePointData() -> int
        C++: virtual vtkTypeBool GetProbePointData()
        
        Specify whether to probe (and hence produce) point data. The
        interpolated point data of the source will produce the output
        point data (output points are passed from the input points).
        """
        ...
    
    def GetSource(self):
        """
        V.GetSource() -> vtkPolyData
        C++: vtkPolyData *GetSource()
        
        Specify the point locations used to probe input. Any geometry can
        be used.
        """
        ...
    
    def IsA(self, string):
        """
        V.IsA(string) -> int
        C++: vtkTypeBool IsA(const char *type) override;
        
        Standard methods for instantiable (i.e., concrete) class.
        """
        ...
    
    def IsTypeOf(self, string):
        """
        V.IsTypeOf(string) -> int
        C++: static vtkTypeBool IsTypeOf(const char *type)
        
        Standard methods for instantiable (i.e., concrete) class.
        """
        ...
    
    def NewInstance(self):
        """
        V.NewInstance() -> vtkProbePolyhedron
        C++: vtkProbePolyhedron *NewInstance()
        
        Standard methods for instantiable (i.e., concrete) class.
        """
        ...
    
    def ProbeCellDataOff(self):
        """
        V.ProbeCellDataOff()
        C++: virtual void ProbeCellDataOff()
        
        Specify whether to probe (and hence produce) cell data. The
        interpolated point data of the source will produce the output
        cell data (output cells are passed from the input cells). Note
        that the probing of the input uses the centers of the cells as
        the probe position.
        """
        ...
    
    def ProbeCellDataOn(self):
        """
        V.ProbeCellDataOn()
        C++: virtual void ProbeCellDataOn()
        
        Specify whether to probe (and hence produce) cell data. The
        interpolated point data of the source will produce the output
        cell data (output cells are passed from the input cells). Note
        that the probing of the input uses the centers of the cells as
        the probe position.
        """
        ...
    
    def ProbePointDataOff(self):
        """
        V.ProbePointDataOff()
        C++: virtual void ProbePointDataOff()
        
        Specify whether to probe (and hence produce) point data. The
        interpolated point data of the source will produce the output
        point data (output points are passed from the input points).
        """
        ...
    
    def ProbePointDataOn(self):
        """
        V.ProbePointDataOn()
        C++: virtual void ProbePointDataOn()
        
        Specify whether to probe (and hence produce) point data. The
        interpolated point data of the source will produce the output
        point data (output points are passed from the input points).
        """
        ...
    
    def SafeDownCast(self, vtkObjectBase):
        """
        V.SafeDownCast(vtkObjectBase) -> vtkProbePolyhedron
        C++: static vtkProbePolyhedron *SafeDownCast(vtkObjectBase *o)
        
        Standard methods for instantiable (i.e., concrete) class.
        """
        ...
    
    def SetProbeCellData(self, p_int):
        """
        V.SetProbeCellData(int)
        C++: virtual void SetProbeCellData(vtkTypeBool _arg)
        
        Specify whether to probe (and hence produce) cell data. The
        interpolated point data of the source will produce the output
        cell data (output cells are passed from the input cells). Note
        that the probing of the input uses the centers of the cells as
        the probe position.
        """
        ...
    
    def SetProbePointData(self, p_int):
        """
        V.SetProbePointData(int)
        C++: virtual void SetProbePointData(vtkTypeBool _arg)
        
        Specify whether to probe (and hence produce) point data. The
        interpolated point data of the source will produce the output
        point data (output points are passed from the input points).
        """
        ...
    
    def SetSourceConnection(self, vtkAlgorithmOutput):
        """
        V.SetSourceConnection(vtkAlgorithmOutput)
        C++: void SetSourceConnection(vtkAlgorithmOutput *algOutput)
        
        Specify the point locations used to probe input. Any geometry can
        be used. New style. Equivalent to SetInputConnection(1,
        algOutput).
        """
        ...
    
    def SetSourceData(self, vtkPolyData):
        """
        V.SetSourceData(vtkPolyData)
        C++: void SetSourceData(vtkPolyData *source)
        
        Specify the point locations used to probe input. Any geometry can
        be used.
        """
        ...
    
    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__ = ...


