# 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 .vtkPointSet import vtkPointSet

class vtkPolyData(vtkPointSet):
    """
    vtkPolyData - concrete dataset represents vertices, lines, polygons,
    and triangle strips
    
    Superclass: vtkPointSet
    
    vtkPolyData is a data object that is a concrete implementation of
    vtkDataSet. vtkPolyData represents a geometric structure consisting
    of vertices, lines, polygons, and/or triangle strips. Point and cell
    attribute values (e.g., scalars, vectors, etc.) also are represented.
    
    The actual cell types (vtkCellType.h) supported by vtkPolyData are:
    vtkVertex, vtkPolyVertex, vtkLine, vtkPolyLine, vtkTriangle, vtkQuad,
    vtkPolygon, and vtkTriangleStrip.
    
    One important feature of vtkPolyData objects is that special
    traversal and data manipulation methods are available to process
    data. These methods are generally more efficient than vtkDataSet
    methods and should be used whenever possible. For example, traversing
    the cells in a dataset we would use GetCell(). To traverse cells with
    vtkPolyData we would retrieve the cell array object representing
    polygons (for example using GetPolys()) and then use vtkCellArray's
    InitTraversal() and GetNextCell() methods.
    
    @warning
    Because vtkPolyData is implemented with four separate instances of
    vtkCellArray to represent 0D vertices, 1D lines, 2D polygons, and 2D
    triangle strips, it is possible to create vtkPolyData instances that
    consist of a mixture of cell types. Because of the design of the
    class, there are certain limitations on how mixed cell types are
    inserted into the vtkPolyData, and in turn the order in which they
    are processed and rendered. To preserve the consistency of cell ids,
    and to ensure that cells with cell data are rendered properly, users
    must insert mixed cells in the order of vertices (vtkVertex and
    vtkPolyVertex), lines (vtkLine and vtkPolyLine), polygons
    (vtkTriangle, vtkQuad, vtkPolygon), and triangle strips
    (vtkTriangleStrip).
    
    @warning
    Some filters when processing vtkPolyData with mixed cell types may
    process the cells in differing ways. Some will convert one type into
    another (e.g., vtkTriangleStrip into vtkTriangles) or expect a
    certain type (vtkDecimatePro expects triangles or triangle strips;
    vtkTubeFilter expects lines). Read the documentation for each filter
    carefully to understand how each part of vtkPolyData is processed.
    
    @warning
    Some of the methods specified here function properly only when the
    dataset has been specified as "Editable". They are documented as
    such.
    """
    def AddCellReference(self, cellId): # real signature unknown; restored from __doc__
        """
        AddCellReference(self, cellId:int) -> None
        C++: void AddCellReference(vtkIdType cellId)
        
        Add references to cell in cell structure. This means the links
        from the cell's points to the cell are modified. Memory is not
        extended. Use the method ResizeCellList() to resize the link list
        from a point to its using cells. (This operator assumes
        BuildLinks() has been called.) Use this method only when the
        dataset is set as Editable.
        """
        pass

    def AddReferenceToCell(self, ptId, cellId): # real signature unknown; restored from __doc__
        """
        AddReferenceToCell(self, ptId:int, cellId:int) -> None
        C++: void AddReferenceToCell(vtkIdType ptId, vtkIdType cellId)
        
        Add a reference to a cell in a particular point's link list. (You
        may also consider using AddCellReference() to add the references
        from all the cell's points to the cell.) This operator does not
        realloc memory; use the operator ResizeCellList() to do this if
        necessary. Use this method only when the dataset is set as
        Editable.
        """
        pass

    def Allocate(self, numCells=1000, extSize=1000): # real signature unknown; restored from __doc__
        """
        Allocate(self, numCells:int=1000, extSize:int=1000) -> None
        C++: void Allocate(vtkIdType numCells=1000, int extSize=1000)
        Allocate(self, inPolyData:vtkPolyData, numCells:int=1000,
            extSize:int=1000) -> None
        C++: void Allocate(vtkPolyData *inPolyData,
            vtkIdType numCells=1000, int extSize=1000)
        
        Method allocates initial storage for vertex, line, polygon, and
        triangle strip arrays. Use this method before the method
        PolyData::InsertNextCell(). (Or, provide vertex, line, polygon,
        and triangle strip cell arrays). extSize is no longer used.
        """
        pass

    def AllocateCopy(self, pd): # real signature unknown; restored from __doc__
        """
        AllocateCopy(self, pd:vtkPolyData) -> bool
        C++: bool AllocateCopy(vtkPolyData *pd)
        
        Preallocate memory for the internal cell arrays such that they
        are the same size as those in pd.
        
        Existing data is not preserved and the number of cells is set to
        zero.
        
        @return True if allocation succeeds.
        """
        return False

    def AllocateEstimate(self, numCells, maxCellSize): # real signature unknown; restored from __doc__
        """
        AllocateEstimate(self, numCells:int, maxCellSize:int) -> bool
        C++: bool AllocateEstimate(vtkIdType numCells,
            vtkIdType maxCellSize)
        AllocateEstimate(self, numVerts:int, maxVertSize:int,
            numLines:int, maxLineSize:int, numPolys:int, maxPolySize:int,
            numStrips:int, maxStripSize:int) -> bool
        C++: bool AllocateEstimate(vtkIdType numVerts,
            vtkIdType maxVertSize, vtkIdType numLines,
            vtkIdType maxLineSize, vtkIdType numPolys,
            vtkIdType maxPolySize, vtkIdType numStrips,
            vtkIdType maxStripSize)
        
        Preallocate memory for the internal cell arrays. Each of the
        internal cell arrays (verts, lines, polys, and strips) will be
        resized to holdnumCells cells of size maxCellSize.
        
        Existing data is not preserved and the number of cells is set to
        zero.
        
        @return True if allocation succeeds.
        """
        return False

    def AllocateExact(self, numCells, connectivitySize): # real signature unknown; restored from __doc__
        """
        AllocateExact(self, numCells:int, connectivitySize:int) -> bool
        C++: bool AllocateExact(vtkIdType numCells,
            vtkIdType connectivitySize)
        AllocateExact(self, numVerts:int, vertConnSize:int, numLines:int,
            lineConnSize:int, numPolys:int, polyConnSize:int,
            numStrips:int, stripConnSize:int) -> bool
        C++: bool AllocateExact(vtkIdType numVerts,
            vtkIdType vertConnSize, vtkIdType numLines,
            vtkIdType lineConnSize, vtkIdType numPolys,
            vtkIdType polyConnSize, vtkIdType numStrips,
            vtkIdType stripConnSize)
        
        Preallocate memory for the internal cell arrays. Each of the
        internal cell arrays (verts, lines, polys, and strips) will be
        resized to holdnumCells cells and connectivitySize pointIds.
        
        Existing data is not preserved and the number of cells is set to
        zero.
        
        @return True if allocation succeeds.
        """
        return False

    def AllocateProportional(self, pd, ratio): # real signature unknown; restored from __doc__
        """
        AllocateProportional(self, pd:vtkPolyData, ratio:float) -> bool
        C++: bool AllocateProportional(vtkPolyData *pd, double ratio)
        
        Preallocate memory for the internal cell arrays such that they
        are proportional to those in pd by a factor of ratio (for
        instance,ratio = 2 allocates twice as many cells).
        
        Existing data is not preserved and the number of cells is set to
        zero.
        
        @return True if allocation succeeds.
        """
        return False

    def BuildCells(self): # real signature unknown; restored from __doc__
        """
        BuildCells(self) -> None
        C++: void BuildCells()
        
        Create data structure that allows random access of cells.
        BuildCells is expensive but necessary to make use of the faster
        non-virtual implementations of GetCell/GetCellPoints. One may
        check if cells need to be built via NeedToBuilds before invoking.
        Cells always need to be built/re-built after low level direct
        modifications to verts, lines, polys or strips cell arrays.
        """
        pass

    def BuildLinks(self, initialSize=0): # real signature unknown; restored from __doc__
        """
        BuildLinks(self, initialSize:int=0) -> None
        C++: void BuildLinks(int initialSize=0)
        
        Create upward links from points to cells that use each point.
        Enables topologically complex queries. Normally the links array
        is allocated based on the number of points in the vtkPolyData.
        The optional initialSize parameter can be used to allocate a
        larger size initially.
        """
        pass

    def ComputeCellsBounds(self): # real signature unknown; restored from __doc__
        """
        ComputeCellsBounds(self) -> None
        C++: void ComputeCellsBounds()
        
        Compute the (X, Y, Z)  bounds of the data. Note that the method
        only considers points that are used by cells. This is done for
        usability and historical reasons.
        
        IMPORTANT
        
        Until vtk 9.0.1, vtkPolyData::ComputeBounds() used to ignore
        points that do not belong to any cell. That was not consistent
        with other vtkPointSet subclasses and thus was error prone. See
        this ParaView issue
        https://gitlab.kitware.com/paraview/paraview/-/issues/20354 Now
        it defers to vtkPointSet::ComputeBounds() so
        vtkPolyData::GetBounds() may not return the same bounds as
        before. This behavior is probably the one you want when using
        bounds.
        
        The previous behavior is still available through
        vtkPolyData::ComputeCellsBounds() and
        vtkPolyData::GetCellsBounds(). This is mainly used for rendering
        purpose.
        """
        pass

    def CopyCells(self, pd, idList, locator, *args, **kwargs): # real signature unknown; NOTE: unreliably restored from __doc__ 
        """
        CopyCells(self, pd:vtkPolyData, idList:vtkIdList,
            locator:vtkIncrementalPointLocator=...) -> None
        C++: void CopyCells(vtkPolyData *pd, vtkIdList *idList,
            vtkIncrementalPointLocator *locator=nullptr)
        
        Copy cells listed in idList from pd, including points, point
        data, and cell data.  This method assumes that point and cell
        data have been allocated.  If you pass in a point locator, then
        the points won't be duplicated in the output. This requires the
        use of an incremental point locator.
        """
        pass

    def CopyStructure(self, ds): # real signature unknown; restored from __doc__
        """
        CopyStructure(self, ds:vtkDataSet) -> None
        C++: void CopyStructure(vtkDataSet *ds) override;
        
        Copy the geometric and topological structure of an input poly
        data object.
        """
        pass

    def DeepCopy(self, src): # real signature unknown; restored from __doc__
        """
        DeepCopy(self, src:vtkDataObject) -> None
        C++: void DeepCopy(vtkDataObject *src) override;
        """
        pass

    def DeleteCell(self, cellId): # real signature unknown; restored from __doc__
        """
        DeleteCell(self, cellId:int) -> None
        C++: void DeleteCell(vtkIdType cellId)
        """
        pass

    def DeleteCells(self): # real signature unknown; restored from __doc__
        """
        DeleteCells(self) -> None
        C++: void DeleteCells()
        
        Release data structure that allows random access of the cells.
        This must be done before a 2nd call to BuildLinks(). DeleteCells
        implicitly deletes the links as well since they are no longer
        valid.
        """
        pass

    def DeleteLinks(self): # real signature unknown; restored from __doc__
        """
        DeleteLinks(self) -> None
        C++: void DeleteLinks()
        
        Release the upward links from point to cells that use each point.
        """
        pass

    def DeletePoint(self, ptId): # real signature unknown; restored from __doc__
        """
        DeletePoint(self, ptId:int) -> None
        C++: void DeletePoint(vtkIdType ptId)
        
        Mark a point/cell as deleted from this vtkPolyData. Use this
        method only when the dataset is set as Editable.
        """
        pass

    def ExtendedNew(self): # real signature unknown; restored from __doc__
        """
        ExtendedNew() -> vtkPolyData
        C++: static vtkPolyData *ExtendedNew()
        """
        return vtkPolyData

    def GetActualMemorySize(self): # real signature unknown; restored from __doc__
        """
        GetActualMemorySize(self) -> int
        C++: unsigned long GetActualMemorySize() override;
        
        Return the actual size of the data in kibibytes (1024 bytes).
        This number is valid only after the pipeline has updated. The
        memory size returned is guaranteed to be greater than or equal to
        the memory required to represent the data (e.g., extra space in
        arrays, etc. are not included in the return value). THIS METHOD
        IS THREAD SAFE.
        """
        return 0

    def GetCell(self, cellId): # real signature unknown; restored from __doc__
        """
        GetCell(self, cellId:int) -> vtkCell
        C++: vtkCell *GetCell(vtkIdType cellId) override;
        GetCell(self, cellId:int, cell:vtkGenericCell) -> None
        C++: void GetCell(vtkIdType cellId, vtkGenericCell *cell)
            override;
        GetCell(self, cellId:int, pts:(int, ...)) -> int
        C++: unsigned char GetCell(vtkIdType cellId,
            const vtkIdType *&pts)
        GetCell(self, i:int, j:int, k:int) -> vtkCell
        C++: virtual vtkCell *GetCell(int i, int j, int k)
        
        This method always return a `vtkEmptyCell`, as there is no cell
        in a `vtkPointSet`.
        """
        return vtkCell

    def GetCellBounds(self, cellId, bounds, *args, **kwargs): # real signature unknown; NOTE: unreliably restored from __doc__ 
        """
        GetCellBounds(self, cellId:int, bounds:[float, float, float,
            float, float, float]) -> None
        C++: void GetCellBounds(vtkIdType cellId, double bounds[6])
            override;
        
        Get the bounds of the cell with cellId such that: 0 <= cellId <
        NumberOfCells. A subclass may be able to determine the bounds of
        cell without using an expensive GetCell() method. A default
        implementation is provided that actually uses a GetCell() call. 
        This is to ensure the method is available to all datasets. 
        Subclasses should override this method to provide an efficient
        implementation. THIS METHOD IS THREAD SAFE IF FIRST CALLED FROM A
        SINGLE THREAD AND THE DATASET IS NOT MODIFIED
        """
        pass

    def GetCellEdgeNeighbors(self, cellId, p1, p2, cellIds): # real signature unknown; restored from __doc__
        """
        GetCellEdgeNeighbors(self, cellId:int, p1:int, p2:int,
            cellIds:vtkIdList) -> None
        C++: void GetCellEdgeNeighbors(vtkIdType cellId, vtkIdType p1,
            vtkIdType p2, vtkIdList *cellIds)
        
        Get the neighbors at an edge. More efficient than the general
        GetCellNeighbors(). Assumes links have been built (with
        BuildLinks()), and looks specifically for edge neighbors.
        """
        pass

    def GetCellIdRelativeToCellArray(self, cellId): # real signature unknown; restored from __doc__
        """
        GetCellIdRelativeToCellArray(self, cellId:int) -> int
        C++: vtkIdType GetCellIdRelativeToCellArray(vtkIdType cellId)
        
        Maps the cell at position `cellId` inside the `vtkPolyData` to
        its location in the corresponding cell array. For instance, if
        cell `cellId` is a line, then this method returns the position of
        this cell in the `Lines` cell array.
        """
        return 0

    def GetCellNeighbors(self, cellId, ptIds, cellIds): # real signature unknown; restored from __doc__
        """
        GetCellNeighbors(self, cellId:int, ptIds:vtkIdList,
            cellIds:vtkIdList) -> None
        C++: void GetCellNeighbors(vtkIdType cellId, vtkIdList *ptIds,
            vtkIdList *cellIds) override;
        
        Topological inquiry to get all cells using list of points
        exclusive of cell specified (e.g., cellId). Note that the list
        consists of only cells that use ALL the points provided. THIS
        METHOD IS THREAD SAFE IF FIRST CALLED FROM A SINGLE THREAD AND
        THE DATASET IS NOT MODIFIED
        """
        pass

    def GetCellPoints(self, cellId, ptIds): # real signature unknown; restored from __doc__
        """
        GetCellPoints(self, cellId:int, ptIds:vtkIdList) -> None
        C++: void GetCellPoints(vtkIdType cellId, vtkIdList *ptIds)
            override;
        GetCellPoints(self, cellId:int, npts:int, pts:(int, ...)) -> int
        C++: unsigned char GetCellPoints(vtkIdType cellId,
            vtkIdType &npts, vtkIdType const *&pts)
        GetCellPoints(self, cellId:int, npts:int, pts:(int, ...),
            ptIds:vtkIdList) -> None
        C++: void GetCellPoints(vtkIdType cellId, vtkIdType &npts,
            vtkIdType const *&pts, vtkIdList *ptIds) override;
        
        Copy a cells point ids into list provided. (Less efficient.)
        """
        pass

    def GetCellsBounds(self, bounds, *args, **kwargs): # real signature unknown; NOTE: unreliably restored from __doc__ 
        """
        GetCellsBounds(self, bounds:[float, float, float, float, float,
            float]) -> None
        C++: void GetCellsBounds(double bounds[6])
        
        Get the cells bounds. Internally calls ComputeCellsBounds().
        @sa ComputeCellsBounds()
        """
        pass

    def GetCellSize(self, cellId): # real signature unknown; restored from __doc__
        """
        GetCellSize(self, cellId:int) -> int
        C++: vtkIdType GetCellSize(vtkIdType cellId) override;
        
        This method always returns 1, as all cells are point in a pure
        `vtkPointSet`.
        """
        return 0

    def GetCellType(self, cellId): # real signature unknown; restored from __doc__
        """
        GetCellType(self, cellId:int) -> int
        C++: int GetCellType(vtkIdType cellId) override;
        
        This method always returns `VTK_EMPTY_CELL`, as there is no cell
        in a `vtkPointSet`.
        """
        return 0

    def GetData(self, info): # real signature unknown; restored from __doc__
        """
        GetData(info:vtkInformation) -> vtkPolyData
        C++: static vtkPolyData *GetData(vtkInformation *info)
        GetData(v:vtkInformationVector, i:int=0) -> vtkPolyData
        C++: static vtkPolyData *GetData(vtkInformationVector *v, int i=0)
        
        Retrieve an instance of this class from an information object.
        """
        return vtkPolyData

    def GetDataObjectType(self): # real signature unknown; restored from __doc__
        """
        GetDataObjectType(self) -> int
        C++: int GetDataObjectType() override;
        
        Return what type of dataset this is.
        """
        return 0

    def GetGhostLevel(self): # real signature unknown; restored from __doc__
        """
        GetGhostLevel(self) -> int
        C++: virtual int GetGhostLevel()
        
        Get the ghost level.
        """
        return 0

    def GetLines(self): # real signature unknown; restored from __doc__
        """
        GetLines(self) -> vtkCellArray
        C++: vtkCellArray *GetLines()
        
        Get the cell array defining lines. If there are no lines, an
        empty array will be returned (convenience to simplify traversal).
        """
        return vtkCellArray

    def GetLinks(self): # real signature unknown; restored from __doc__
        """
        GetLinks(self) -> vtkAbstractCellLinks
        C++: virtual vtkAbstractCellLinks *GetLinks()
        """
        return vtkAbstractCellLinks

    def GetMaxCellSize(self): # real signature unknown; restored from __doc__
        """
        GetMaxCellSize(self) -> int
        C++: int GetMaxCellSize() override;
        
        Return the maximum cell size in this poly data.
        """
        return 0

    def GetMeshMTime(self): # real signature unknown; restored from __doc__
        """
        GetMeshMTime(self) -> int
        C++: virtual vtkMTimeType GetMeshMTime()
        
        Return the mesh (geometry/topology) modification time. This time
        is different from the usual MTime which also takes into account
        the modification of data arrays. This function can be used to
        track the changes on the mesh separately from the data arrays
        (eg. static mesh over time with transient data).
        """
        return 0

    def GetMTime(self): # real signature unknown; restored from __doc__
        """
        GetMTime(self) -> int
        C++: vtkMTimeType GetMTime() override;
        
        Get MTime which also considers its cell array MTime.
        """
        return 0

    def GetNumberOfCells(self): # real signature unknown; restored from __doc__
        """
        GetNumberOfCells(self) -> int
        C++: vtkIdType GetNumberOfCells() override;
        
        Standard vtkDataSet interface.
        """
        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 GetNumberOfLines(self): # real signature unknown; restored from __doc__
        """
        GetNumberOfLines(self) -> int
        C++: vtkIdType GetNumberOfLines()
        """
        return 0

    def GetNumberOfPieces(self): # real signature unknown; restored from __doc__
        """
        GetNumberOfPieces(self) -> int
        C++: virtual int GetNumberOfPieces()
        """
        return 0

    def GetNumberOfPolys(self): # real signature unknown; restored from __doc__
        """
        GetNumberOfPolys(self) -> int
        C++: vtkIdType GetNumberOfPolys()
        """
        return 0

    def GetNumberOfStrips(self): # real signature unknown; restored from __doc__
        """
        GetNumberOfStrips(self) -> int
        C++: vtkIdType GetNumberOfStrips()
        """
        return 0

    def GetNumberOfVerts(self): # real signature unknown; restored from __doc__
        """
        GetNumberOfVerts(self) -> int
        C++: vtkIdType GetNumberOfVerts()
        
        Return the number of primitives of a particular type held.
        """
        return 0

    def GetPiece(self): # real signature unknown; restored from __doc__
        """
        GetPiece(self) -> int
        C++: virtual int GetPiece()
        
        Get the piece and the number of pieces. Similar to extent in 3D.
        """
        return 0

    def GetPointCells(self, ptId, cellIds): # real signature unknown; restored from __doc__
        """
        GetPointCells(self, ptId:int, cellIds:vtkIdList) -> None
        C++: void GetPointCells(vtkIdType ptId, vtkIdList *cellIds)
            override;
        GetPointCells(self, ptId:int, ncells:int, cells:[int, ...])
            -> None
        C++: void GetPointCells(vtkIdType ptId, vtkIdType &ncells,
            vtkIdType *&cells)
        
        Efficient method to obtain cells using a particular point. Make
        sure that routine BuildLinks() has been called.
        """
        pass

    def GetPolys(self): # real signature unknown; restored from __doc__
        """
        GetPolys(self) -> vtkCellArray
        C++: vtkCellArray *GetPolys()
        
        Get the cell array defining polygons. If there are no polygons,
        an empty array will be returned (convenience to simplify
        traversal).
        """
        return vtkCellArray

    def GetScalarFieldCriticalIndex(self, pointId, scalarField): # real signature unknown; restored from __doc__
        """
        GetScalarFieldCriticalIndex(self, pointId:int,
            scalarField:vtkDataArray) -> int
        C++: int GetScalarFieldCriticalIndex(vtkIdType pointId,
            vtkDataArray *scalarField)
        GetScalarFieldCriticalIndex(self, pointId:int, fieldId:int) -> int
        C++: int GetScalarFieldCriticalIndex(vtkIdType pointId,
            int fieldId)
        GetScalarFieldCriticalIndex(self, pointId:int, fieldName:str)
            -> int
        C++: int GetScalarFieldCriticalIndex(vtkIdType pointId,
            const char *fieldName)
        """
        return 0

    def GetStrips(self): # real signature unknown; restored from __doc__
        """
        GetStrips(self) -> vtkCellArray
        C++: vtkCellArray *GetStrips()
        
        Get the cell array defining triangle strips. If there are no
        triangle strips, an empty array will be returned (convenience to
        simplify traversal).
        """
        return vtkCellArray

    def GetVerts(self): # real signature unknown; restored from __doc__
        """
        GetVerts(self) -> vtkCellArray
        C++: vtkCellArray *GetVerts()
        
        Get the cell array defining vertices. If there are no vertices,
        an empty array will be returned (convenience to simplify
        traversal).
        """
        return vtkCellArray

    def Initialize(self): # real signature unknown; restored from __doc__
        """
        Initialize(self) -> None
        C++: void Initialize() override;
        
        Restore object to initial state. Release memory back to system.
        """
        pass

    def InsertNextCell(self, type, npts, pts, *args, **kwargs): # real signature unknown; NOTE: unreliably restored from __doc__ 
        """
        InsertNextCell(self, type:int, npts:int, pts:(int, ...)) -> int
        C++: vtkIdType InsertNextCell(int type, int npts,
            const vtkIdType pts[])
        InsertNextCell(self, type:int, pts:vtkIdList) -> int
        C++: vtkIdType InsertNextCell(int type, vtkIdList *pts)
        
        Insert a cell of type VTK_VERTEX, VTK_POLY_VERTEX, VTK_LINE,
        VTK_POLY_LINE, VTK_TRIANGLE, VTK_QUAD, VTK_POLYGON, or
        VTK_TRIANGLE_STRIP.  Make sure that the PolyData::Allocate()
        function has been called first or that vertex, line, polygon, and
        triangle strip arrays have been supplied. Note: will also insert
        VTK_PIXEL, but converts it to VTK_QUAD.
        """
        pass

    def InsertNextLinkedCell(self, type, npts, pts, *args, **kwargs): # real signature unknown; NOTE: unreliably restored from __doc__ 
        """
        InsertNextLinkedCell(self, type:int, npts:int, pts:(int, ...))
            -> int
        C++: vtkIdType InsertNextLinkedCell(int type, int npts,
            const vtkIdType pts[])
        
        Add a new cell to the cell data structure (after cell pointers
        have been built). This method adds the cell and then updates the
        links from the points to the cells. (Memory is allocated as
        necessary.) Use this method only when the dataset is set as
        Editable.
        """
        pass

    def InsertNextLinkedPoint(self, numLinks): # real signature unknown; restored from __doc__
        """
        InsertNextLinkedPoint(self, numLinks:int) -> int
        C++: vtkIdType InsertNextLinkedPoint(int numLinks)
        InsertNextLinkedPoint(self, x:[float, float, float], numLinks:int)
             -> int
        C++: vtkIdType InsertNextLinkedPoint(double x[3], int numLinks)
        
        Add a point to the cell data structure (after cell pointers have
        been built). This method adds the point and then allocates memory
        for the links to the cells.  (To use this method, make sure
        points are available and BuildLinks() has been invoked.) Of the
        two methods below, one inserts a point coordinate and the other
        just makes room for cell links. Use this method only when the
        dataset is set as Editable.
        """
        return 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 IsEdge(self, p1, p2): # real signature unknown; restored from __doc__
        """
        IsEdge(self, p1:int, p2:int) -> int
        C++: int IsEdge(vtkIdType p1, vtkIdType p2)
        
        Determine whether two points form an edge. If they do, return
        non-zero. By definition PolyVertex and PolyLine have no edges
        since 1-dimensional edges are only found on cells 2D and higher.
        Edges are defined as 1-D boundary entities to cells. Make sure
        BuildLinks() has been called first.
        """
        return 0

    def IsPointUsedByCell(self, ptId, cellId): # real signature unknown; restored from __doc__
        """
        IsPointUsedByCell(self, ptId:int, cellId:int) -> int
        C++: int IsPointUsedByCell(vtkIdType ptId, vtkIdType cellId)
        
        Determine whether a point is used by a particular cell. If it is,
        return non-zero. Make sure BuildCells() has been called first.
        """
        return 0

    def IsTriangle(self, v1, v2, v3): # real signature unknown; restored from __doc__
        """
        IsTriangle(self, v1:int, v2:int, v3:int) -> int
        C++: int IsTriangle(int v1, int v2, int v3)
        
        Given three vertices, determine whether it's a triangle. Make
        sure BuildLinks() has been called first.
        """
        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 NeedToBuildCells(self): # real signature unknown; restored from __doc__
        """
        NeedToBuildCells(self) -> bool
        C++: bool NeedToBuildCells()
        
        Check if BuildCells is needed.
        """
        return False

    def NewInstance(self): # real signature unknown; restored from __doc__
        """
        NewInstance(self) -> vtkPolyData
        C++: vtkPolyData *NewInstance()
        """
        return vtkPolyData

    def RemoveCellReference(self, cellId): # real signature unknown; restored from __doc__
        """
        RemoveCellReference(self, cellId:int) -> None
        C++: void RemoveCellReference(vtkIdType cellId)
        
        Remove all references to cell in cell structure. This means the
        links from the cell's points to the cell are deleted. Memory is
        not reclaimed. Use the method ResizeCellList() to resize the link
        list from a point to its using cells. (This operator assumes
        BuildLinks() has been called.) Use this method only when the
        dataset is set as Editable.
        """
        pass

    def RemoveDeletedCells(self): # real signature unknown; restored from __doc__
        """
        RemoveDeletedCells(self) -> None
        C++: void RemoveDeletedCells()
        
        The cells marked by calls to DeleteCell are stored in the Cell
        Array VTK_EMPTY_CELL, but they still exist in the cell arrays. 
        Calling RemoveDeletedCells will traverse the cell arrays and
        remove/compact the cell arrays as well as any cell data thus
        truly removing the cells from the polydata object. Use this
        method only when the dataset is set as Editable.
        """
        pass

    def RemoveGhostCells(self): # real signature unknown; restored from __doc__
        """
        RemoveGhostCells(self) -> None
        C++: void RemoveGhostCells()
        
        This method will remove any cell that is marked as ghost (has the
        vtkDataSetAttributes::DUPLICATECELL or the
        vtkDataSetAttributes::HIDDENCELL bit set). It does not remove
        unused points.
        """
        pass

    def RemoveReferenceToCell(self, ptId, cellId): # real signature unknown; restored from __doc__
        """
        RemoveReferenceToCell(self, ptId:int, cellId:int) -> None
        C++: void RemoveReferenceToCell(vtkIdType ptId, vtkIdType cellId)
        
        Remove a reference to a cell in a particular point's link list.
        You may also consider using RemoveCellReference() to remove the
        references from all the cell's points to the cell. This operator
        does not reallocate memory; use the operator ResizeCellList() to
        do this if necessary. Use this method only when the dataset is
        set as Editable.
        """
        pass

    def ReplaceCell(self, cellId, ids): # real signature unknown; restored from __doc__
        """
        ReplaceCell(self, cellId:int, ids:vtkIdList) -> None
        C++: void ReplaceCell(vtkIdType cellId, vtkIdList *ids)
        ReplaceCell(self, cellId:int, npts:int, pts:(int, ...)) -> None
        C++: void ReplaceCell(vtkIdType cellId, int npts,
            const vtkIdType pts[])
        """
        pass

    def ReplaceCellPoint(self, cellId, oldPtId, newPtId): # real signature unknown; restored from __doc__
        """
        ReplaceCellPoint(self, cellId:int, oldPtId:int, newPtId:int)
            -> None
        C++: void ReplaceCellPoint(vtkIdType cellId, vtkIdType oldPtId,
            vtkIdType newPtId)
        
        Replace a point in the cell connectivity list with a different
        point. Use this method only when the dataset is set as Editable.
        """
        pass

    def ReplaceLinkedCell(self, cellId, npts, pts, *args, **kwargs): # real signature unknown; NOTE: unreliably restored from __doc__ 
        """
        ReplaceLinkedCell(self, cellId:int, npts:int, pts:(int, ...))
            -> None
        C++: void ReplaceLinkedCell(vtkIdType cellId, int npts,
            const vtkIdType pts[])
        
        Replace one cell with another in cell structure. This operator
        updates the connectivity list and the point's link list. It does
        not delete references to the old cell in the point's link list.
        Use the operator RemoveCellReference() to delete all references
        from points to (old) cell.  You may also want to consider using
        the operator ResizeCellList() if the link list is changing size.
        Use this method only when the dataset is set as Editable.
        """
        pass

    def Reset(self): # real signature unknown; restored from __doc__
        """
        Reset(self) -> None
        C++: void Reset()
        
        Begin inserting data all over again. Memory is not freed but
        otherwise objects are returned to their initial state.
        """
        pass

    def ResizeCellList(self, ptId, size): # real signature unknown; restored from __doc__
        """
        ResizeCellList(self, ptId:int, size:int) -> None
        C++: void ResizeCellList(vtkIdType ptId, int size)
        
        Resize the list of cells using a particular point. (This operator
        assumes that BuildLinks() has been called.) Use this method only
        when the dataset is set as Editable.
        """
        pass

    def ReverseCell(self, cellId): # real signature unknown; restored from __doc__
        """
        ReverseCell(self, cellId:int) -> None
        C++: void ReverseCell(vtkIdType cellId)
        
        Reverse the order of point ids defining the cell. Use this method
        only when the dataset is set as Editable.
        """
        pass

    def SafeDownCast(self, o): # real signature unknown; restored from __doc__
        """
        SafeDownCast(o:vtkObjectBase) -> vtkPolyData
        C++: static vtkPolyData *SafeDownCast(vtkObjectBase *o)
        """
        return vtkPolyData

    def SetLines(self, l): # real signature unknown; restored from __doc__
        """
        SetLines(self, l:vtkCellArray) -> None
        C++: void SetLines(vtkCellArray *l)
        
        Set the cell array defining lines.
        """
        pass

    def SetLinks(self, links): # real signature unknown; restored from __doc__
        """
        SetLinks(self, links:vtkAbstractCellLinks) -> None
        C++: virtual void SetLinks(vtkAbstractCellLinks *links)
        
        Set/Get the links that you created possibly without using
        BuildLinks.
        
        Note: Only vtkCellLinks are currently supported.
        """
        pass

    def SetPolys(self, p): # real signature unknown; restored from __doc__
        """
        SetPolys(self, p:vtkCellArray) -> None
        C++: void SetPolys(vtkCellArray *p)
        
        Set the cell array defining polygons.
        """
        pass

    def SetStrips(self, s): # real signature unknown; restored from __doc__
        """
        SetStrips(self, s:vtkCellArray) -> None
        C++: void SetStrips(vtkCellArray *s)
        
        Set the cell array defining triangle strips.
        """
        pass

    def SetVerts(self, v): # real signature unknown; restored from __doc__
        """
        SetVerts(self, v:vtkCellArray) -> None
        C++: void SetVerts(vtkCellArray *v)
        
        Set the cell array defining vertices.
        """
        pass

    def ShallowCopy(self, src): # real signature unknown; restored from __doc__
        """
        ShallowCopy(self, src:vtkDataObject) -> None
        C++: void ShallowCopy(vtkDataObject *src) override;
        
        Shallow and Deep copy.
        """
        pass

    def Squeeze(self): # real signature unknown; restored from __doc__
        """
        Squeeze(self) -> None
        C++: void Squeeze() override;
        
        Recover extra allocated memory when creating data whose initial
        size is unknown. Examples include using the InsertNextCell()
        method, or when using the CellArray::EstimateSize() method to
        create vertices, lines, polygons, or triangle strips.
        """
        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."""


    ERR_INCORRECT_FIELD = -3
    ERR_NON_MANIFOLD_STAR = -2
    ERR_NO_SUCH_FIELD = -4
    MAXIMUM = 2
    MINIMUM = 0
    REGULAR_POINT = -1
    SADDLE = 1
    __dict__ = None # (!) real value is 'mappingproxy({\'__vtkname__\': \'vtkPolyData\', \'ExtendedNew\': <method \'ExtendedNew\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'IsTypeOf\': <method \'IsTypeOf\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'IsA\': <method \'IsA\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'SafeDownCast\': <method \'SafeDownCast\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'NewInstance\': <method \'NewInstance\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'GetNumberOfGenerationsFromBaseType\': <method \'GetNumberOfGenerationsFromBaseType\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'GetNumberOfGenerationsFromBase\': <method \'GetNumberOfGenerationsFromBase\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'GetDataObjectType\': <method \'GetDataObjectType\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'CopyStructure\': <method \'CopyStructure\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'GetNumberOfCells\': <method \'GetNumberOfCells\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'GetCell\': <method \'GetCell\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'GetCellType\': <method \'GetCellType\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'GetCellSize\': <method \'GetCellSize\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'GetCellBounds\': <method \'GetCellBounds\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'GetCellNeighbors\': <method \'GetCellNeighbors\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'CopyCells\': <method \'CopyCells\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'GetCellPoints\': <method \'GetCellPoints\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'GetPointCells\': <method \'GetPointCells\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'ComputeCellsBounds\': <method \'ComputeCellsBounds\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'GetCellsBounds\': <method \'GetCellsBounds\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'Squeeze\': <method \'Squeeze\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'GetMaxCellSize\': <method \'GetMaxCellSize\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'GetCellIdRelativeToCellArray\': <method \'GetCellIdRelativeToCellArray\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'SetVerts\': <method \'SetVerts\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'GetVerts\': <method \'GetVerts\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'SetLines\': <method \'SetLines\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'GetLines\': <method \'GetLines\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'SetPolys\': <method \'SetPolys\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'GetPolys\': <method \'GetPolys\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'SetStrips\': <method \'SetStrips\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'GetStrips\': <method \'GetStrips\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'GetNumberOfVerts\': <method \'GetNumberOfVerts\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'GetNumberOfLines\': <method \'GetNumberOfLines\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'GetNumberOfPolys\': <method \'GetNumberOfPolys\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'GetNumberOfStrips\': <method \'GetNumberOfStrips\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'AllocateEstimate\': <method \'AllocateEstimate\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'AllocateExact\': <method \'AllocateExact\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'AllocateCopy\': <method \'AllocateCopy\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'AllocateProportional\': <method \'AllocateProportional\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'Allocate\': <method \'Allocate\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'InsertNextCell\': <method \'InsertNextCell\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'Reset\': <method \'Reset\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'BuildCells\': <method \'BuildCells\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'NeedToBuildCells\': <method \'NeedToBuildCells\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'BuildLinks\': <method \'BuildLinks\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'SetLinks\': <method \'SetLinks\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'GetLinks\': <method \'GetLinks\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'DeleteCells\': <method \'DeleteCells\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'DeleteLinks\': <method \'DeleteLinks\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'GetCellEdgeNeighbors\': <method \'GetCellEdgeNeighbors\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'IsTriangle\': <method \'IsTriangle\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'IsEdge\': <method \'IsEdge\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'IsPointUsedByCell\': <method \'IsPointUsedByCell\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'ReplaceCell\': <method \'ReplaceCell\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'ReplaceCellPoint\': <method \'ReplaceCellPoint\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'ReverseCell\': <method \'ReverseCell\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'DeletePoint\': <method \'DeletePoint\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'DeleteCell\': <method \'DeleteCell\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'RemoveDeletedCells\': <method \'RemoveDeletedCells\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'InsertNextLinkedPoint\': <method \'InsertNextLinkedPoint\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'InsertNextLinkedCell\': <method \'InsertNextLinkedCell\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'ReplaceLinkedCell\': <method \'ReplaceLinkedCell\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'RemoveCellReference\': <method \'RemoveCellReference\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'AddCellReference\': <method \'AddCellReference\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'RemoveReferenceToCell\': <method \'RemoveReferenceToCell\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'AddReferenceToCell\': <method \'AddReferenceToCell\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'ResizeCellList\': <method \'ResizeCellList\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'Initialize\': <method \'Initialize\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'GetPiece\': <method \'GetPiece\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'GetNumberOfPieces\': <method \'GetNumberOfPieces\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'GetGhostLevel\': <method \'GetGhostLevel\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'GetActualMemorySize\': <method \'GetActualMemorySize\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'ShallowCopy\': <method \'ShallowCopy\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'DeepCopy\': <method \'DeepCopy\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'RemoveGhostCells\': <method \'RemoveGhostCells\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'GetData\': <method \'GetData\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'GetScalarFieldCriticalIndex\': <method \'GetScalarFieldCriticalIndex\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'GetMeshMTime\': <method \'GetMeshMTime\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'GetMTime\': <method \'GetMTime\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'ERR_NO_SUCH_FIELD\': -4, \'ERR_INCORRECT_FIELD\': -3, \'ERR_NON_MANIFOLD_STAR\': -2, \'REGULAR_POINT\': -1, \'MINIMUM\': 0, \'SADDLE\': 1, \'MAXIMUM\': 2, \'__new__\': <built-in method __new__ of type object at 0x00007FF81D643340>, \'__repr__\': <slot wrapper \'__repr__\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'__str__\': <slot wrapper \'__str__\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'__getattribute__\': <slot wrapper \'__getattribute__\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'__setattr__\': <slot wrapper \'__setattr__\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'__delattr__\': <slot wrapper \'__delattr__\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'__dict__\': <attribute \'__dict__\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'__this__\': <attribute \'__this__\' of \'vtkmodules.vtkCommonDataModel.vtkPolyData\' objects>, \'__doc__\': \'vtkPolyData - concrete dataset represents vertices, lines, polygons,\\nand triangle strips\\n\\nSuperclass: vtkPointSet\\n\\nvtkPolyData is a data object that is a concrete implementation of\\nvtkDataSet. vtkPolyData represents a geometric structure consisting\\nof vertices, lines, polygons, and/or triangle strips. Point and cell\\nattribute values (e.g., scalars, vectors, etc.) also are represented.\\n\\nThe actual cell types (vtkCellType.h) supported by vtkPolyData are:\\nvtkVertex, vtkPolyVertex, vtkLine, vtkPolyLine, vtkTriangle, vtkQuad,\\nvtkPolygon, and vtkTriangleStrip.\\n\\nOne important feature of vtkPolyData objects is that special\\ntraversal and data manipulation methods are available to process\\ndata. These methods are generally more efficient than vtkDataSet\\nmethods and should be used whenever possible. For example, traversing\\nthe cells in a dataset we would use GetCell(). To traverse cells with\\nvtkPolyData we would retrieve the cell array object representing\\npolygons (for example using GetPolys()) and then use vtkCellArray\\\'s\\nInitTraversal() and GetNextCell() methods.\\n\\n@warning\\nBecause vtkPolyData is implemented with four separate instances of\\nvtkCellArray to represent 0D vertices, 1D lines, 2D polygons, and 2D\\ntriangle strips, it is possible to create vtkPolyData instances that\\nconsist of a mixture of cell types. Because of the design of the\\nclass, there are certain limitations on how mixed cell types are\\ninserted into the vtkPolyData, and in turn the order in which they\\nare processed and rendered. To preserve the consistency of cell ids,\\nand to ensure that cells with cell data are rendered properly, users\\nmust insert mixed cells in the order of vertices (vtkVertex and\\nvtkPolyVertex), lines (vtkLine and vtkPolyLine), polygons\\n(vtkTriangle, vtkQuad, vtkPolygon), and triangle strips\\n(vtkTriangleStrip).\\n\\n@warning\\nSome filters when processing vtkPolyData with mixed cell types may\\nprocess the cells in differing ways. Some will convert one type into\\nanother (e.g., vtkTriangleStrip into vtkTriangles) or expect a\\ncertain type (vtkDecimatePro expects triangles or triangle strips;\\nvtkTubeFilter expects lines). Read the documentation for each filter\\ncarefully to understand how each part of vtkPolyData is processed.\\n\\n@warning\\nSome of the methods specified here function properly only when the\\ndataset has been specified as "Editable". They are documented as\\nsuch.\\n\\n\'})'
    __vtkname__ = 'vtkPolyData'


