67 #include "vtkCommonDataModelModule.h"
83 struct vtkPolyDataDummyContainter;
111 void GetCellBounds(
vtkIdType cellId,
double bounds[6]) VTK_OVERRIDE;
139 void ComputeBounds() VTK_OVERRIDE;
147 void Squeeze() VTK_OVERRIDE;
152 int GetMaxCellSize() VTK_OVERRIDE;
216 void Allocate(
vtkIdType numCells=1000,
int extSize=1000);
267 bool NeedToBuildCells() {
return this->Cells == 0; }
324 int IsTriangle(
int v1,
int v2,
int v3);
412 void RemoveCellReference(
vtkIdType cellId);
453 virtual
int GetPiece();
454 virtual
int GetNumberOfPieces();
460 virtual
int GetGhostLevel();
470 unsigned long GetActualMemorySize() VTK_OVERRIDE;
485 void RemoveGhostCells();
515 ERR_NO_SUCH_FIELD = -4,
516 ERR_INCORRECT_FIELD = -3,
517 ERR_NON_MANIFOLD_STAR = -2,
552 static vtkPolyDataDummyContainter DummyContainer;
572 void operator=(
const vtkPolyData&) VTK_DELETE_FUNCTION;
584 unsigned short int n1;
598 if ( (tVerts[0] == tVerts2[0] || tVerts[0] == tVerts2[1] ||
599 tVerts[0] == tVerts2[2]) &&
600 (tVerts[1] == tVerts2[0] || tVerts[1] == tVerts2[1] ||
601 tVerts[1] == tVerts2[2]) &&
602 (tVerts[2] == tVerts2[0] || tVerts[2] == tVerts2[1] ||
603 tVerts[2] == tVerts2[2]) )
619 if ( pts[i] == ptId )
672 for ( i=0; i < nverts; i++ )
674 if ( verts[i] == oldPtId )
712 cells->
GetCell(loc, npts, pts);
745 cell = cells->
GetData()->GetPointer(loc);
object to represent cell connectivity
void GetCell(vtkIdType loc, vtkIdType &npts, vtkIdType *&pts)
Internal method used to retrieve a cell given an offset into the internal array.
vtkIdTypeArray * GetData()
Return the underlying data as a data array.
object represents upward pointers from points to list of cells using each point
void RemoveCellReference(vtkIdType cellId, vtkIdType ptId)
Delete the reference to the cell (cellId) from the point (ptId).
void AddCellReference(vtkIdType cellId, vtkIdType ptId)
Add the reference to the cell (cellId) from the point (ptId).
void ResizeCellList(vtkIdType ptId, int size)
Change the length of a point's link list (i.e., list of cells using a point) by the size specified.
unsigned short GetNcells(vtkIdType ptId)
Get the number of cells using the point specified by ptId.
vtkIdType * GetCells(vtkIdType ptId)
Return a list of cell ids using the point.
void DeletePoint(vtkIdType ptId)
Delete point (and storage) by destroying links to using cells.
object provides direct access to cells in vtkCellArray and type information
vtkIdType GetCellLocation(int cellId)
Return the location of the cell in the associated vtkCellArray.
void DeleteCell(vtkIdType cellId)
Delete cell by setting to NULL cell type.
unsigned char GetCellType(int cellId)
Return the type of cell.
abstract class to specify cell behavior
abstract superclass for arrays of numeric data
general representation of visualization data
abstract class to specify dataset behavior
virtual void GetPointCells(vtkIdType ptId, vtkIdList *cellIds)=0
Topological inquiry to get cells using point.
virtual vtkCell * GetCell(vtkIdType cellId)=0
Get cell with cellId such that: 0 <= cellId < NumberOfCells.
virtual void GetCellPoints(vtkIdType cellId, vtkIdList *ptIds)=0
Topological inquiry to get points defining cell.
virtual void GetCellNeighbors(vtkIdType cellId, vtkIdList *ptIds, vtkIdList *cellIds)
Topological inquiry to get all cells using list of points exclusive of cell specified (e....
an empty cell used as a place-holder during processing
provides thread-safe access to cells
list of point or cell ids
a simple class to control print indentation
cell represents a 1D line
quickly locate points in 3-space
abstract class for specifying dataset behavior
concrete dataset represents vertices, lines, polygons, and triangle strips
int GetScalarFieldCriticalIndex(vtkIdType pointId, const char *fieldName)
void RemoveCellReference(vtkIdType cellId)
Remove all references to cell in cell structure.
void GetCellPoints(vtkIdType cellId, vtkIdList *ptIds) override
Copy a cells point ids into list provided.
int IsTriangle(int v1, int v2, int v3)
Given three vertices, determine whether it's a triangle.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void Initialize() override
Restore object to initial state.
void AddReferenceToCell(vtkIdType ptId, vtkIdType cellId)
Add a reference to a cell in a particular point's link list.
int GetScalarFieldCriticalIndex(vtkIdType pointId, int fieldId)
void CopyStructure(vtkDataSet *ds) override
Copy the geometric and topological structure of an input poly data object.
void ReplaceLinkedCell(vtkIdType cellId, int npts, vtkIdType *pts)
Replace one cell with another in cell structure.
int GetScalarFieldCriticalIndex(vtkIdType pointId, vtkDataArray *scalarField)
void ReplaceCell(vtkIdType cellId, int npts, vtkIdType *pts)
Replace the points defining cell "cellId" with a new set of points.
vtkCell * GetCell(vtkIdType cellId) override
Get cell with cellId such that: 0 <= cellId < NumberOfCells.
void DeleteCell(vtkIdType cellId)
vtkIdType InsertNextLinkedPoint(double x[3], int numLinks)
void ResizeCellList(vtkIdType ptId, int size)
Resize the list of cells using a particular point.
vtkIdType GetNumberOfCells() override
Standard vtkDataSet interface.
vtkIdType InsertNextLinkedPoint(int numLinks)
Add a point to the cell data structure (after cell pointers have been built).
vtkIdType InsertNextLinkedCell(int type, int npts, vtkIdType *pts)
Add a new cell to the cell data structure (after cell pointers have been built).
static vtkPolyData * New()
void RemoveReferenceToCell(vtkIdType ptId, vtkIdType cellId)
Remove a reference to a cell in a particular point's link list.
int IsEdge(vtkIdType p1, vtkIdType p2)
Determine whether two points form an edge.
void AddCellReference(vtkIdType cellId)
Add references to cell in cell structure.
int GetDataObjectType() override
Return what type of dataset this is.
void GetCellEdgeNeighbors(vtkIdType cellId, vtkIdType p1, vtkIdType p2, vtkIdList *cellIds)
Get the neighbors at an edge.
void RemoveDeletedCells()
The cells marked by calls to DeleteCell are stored in the Cell Array VTK_EMPTY_CELL,...
void DeleteCells()
Release data structure that allows random access of the cells.
int IsPointUsedByCell(vtkIdType ptId, vtkIdType cellId)
Determine whether a point is used by a particular cell.
void ReplaceCellPoint(vtkIdType cellId, vtkIdType oldPtId, vtkIdType newPtId)
Replace a point in the cell connectivity list with a different point.
void GetPointCells(vtkIdType ptId, vtkIdList *cellIds) override
Efficient method to obtain cells using a particular point.
void DeletePoint(vtkIdType ptId)
Mark a point/cell as deleted from this vtkPolyData.
void BuildLinks(int initialSize=0)
Create upward links from points to cells that use each point.
void DeleteLinks()
Release the upward links from point to cells that use each point.
void ReverseCell(vtkIdType cellId)
Reverse the order of point ids defining the cell.
cell represents a set of 1D lines
cell represents a set of 0D vertices
a cell that represents an n-sided polygon
a cell that represents a 2D quadrilateral
a cell that represents a triangle strip
a cell that represents a triangle
a cell that represents a 3D point
void DeepCopy(vtkPistonReference *self, vtkPistonReference *other)