63 #ifndef __vtkPolyData_h
64 #define __vtkPolyData_h
66 #include "vtkPointSet.h"
68 #include "vtkCellTypes.h"
78 class vtkTriangleStrip;
87 void PrintSelf(ostream& os,
vtkIndent indent);
94 void CopyStructure(vtkDataSet *ds);
102 void GetCellBounds(
vtkIdType cellId,
double bounds[6]);
113 vtkPointLocator *locator = NULL);
124 void ComputeBounds();
133 int GetMaxCellSize();
176 void Allocate(
vtkIdType numCells=1000,
int extSize=1000);
198 int InsertNextCell(
int type,
int npts,
vtkIdType *pts);
206 int InsertNextCell(
int type,
vtkIdList *pts);
220 void BuildLinks(
int initialSize=0);
232 void GetPointCells(
vtkIdType ptId,
unsigned short& ncells,
250 int IsTriangle(
int v1,
int v2,
int v3);
291 void RemoveDeletedCells();
300 int InsertNextLinkedPoint(
int numLinks);
301 int InsertNextLinkedPoint(
double x[3],
int numLinks);
307 int InsertNextLinkedCell(
int type,
int npts,
vtkIdType *pts);
322 void RemoveCellReference(
vtkIdType cellId);
346 void ResizeCellList(
vtkIdType ptId,
int size);
349 virtual void Initialize();
354 void GetUpdateExtent(
int &piece,
int &numPieces,
int &ghostLevel);
358 virtual int* GetUpdateExtent();
359 virtual void GetUpdateExtent(
int& x0,
int& x1,
int& y0,
int& y1,
361 virtual void GetUpdateExtent(
int extent[6]);
366 virtual int GetPiece();
367 virtual int GetNumberOfPieces();
371 virtual int GetGhostLevel();
378 unsigned long GetActualMemorySize();
388 void RemoveGhostCells(
int level);
416 ERR_NO_SUCH_FIELD = -4,
417 ERR_INCORRECT_FIELD = -3,
418 ERR_NON_MANIFOLD_STAR = -2,
425 int GetScalarFieldCriticalIndex (
vtkIdType pointId,
427 int GetScalarFieldCriticalIndex (
vtkIdType pointId,
int fieldId);
428 int GetScalarFieldCriticalIndex (
vtkIdType pointId,
const char* fieldName);
474 {this->GetCellNeighbors(cellId, &ptIds, &cellIds);}
493 unsigned short int n1;
507 if ( (tVerts[0] == tVerts2[0] || tVerts[0] == tVerts2[1] ||
508 tVerts[0] == tVerts2[2]) &&
509 (tVerts[1] == tVerts2[0] || tVerts[1] == tVerts2[1] ||
510 tVerts[1] == tVerts2[2]) &&
511 (tVerts[2] == tVerts2[0] || tVerts[2] == tVerts2[1] ||
512 tVerts[2] == tVerts2[2]) )
528 if ( pts[i] == ptId )
544 this->
Cells->DeleteCell(cellId);
581 for ( i=0; i < nverts; i++ )
583 if ( verts[i] == oldPtId )
static vtkCellArray * Dummy
void ResizeCellList(vtkIdType ptId, int size)
void AddCellReference(vtkIdType cellId, vtkIdType ptId)
object represents upward pointers from points to list of cells using each point
void ReplaceCellPoint(vtkIdType cellId, vtkIdType oldPtId, vtkIdType newPtId)
a cell that represents a 3D point
void GetPointCells(vtkIdType ptId, vtkIdList *cellIds)
void AddCellReference(vtkIdType cellId)
unsigned short GetNcells(vtkIdType ptId)
an empty cell used as a place-holder during processing
concrete dataset represents vertices, lines, polygons, and triangle strips
vtkIdType * GetCells(vtkIdType ptId)
void RemoveCellReference(vtkIdType cellId)
void DeletePoint(vtkIdType ptId)
provides thread-safe access to cells
vtkPolyVertex * PolyVertex
a simple class to control print indentation
int IsTriangle(int v1, int v2, int v3)
list of point or cell ids
abstract superclass for arrays of numeric data
void ResizeCellList(vtkIdType ptId, int size)
int IsPointUsedByCell(vtkIdType ptId, vtkIdType cellId)
object to represent cell connectivity
a cell that represents a triangle
void GetCellPoints(vtkIdType cellId, vtkIdList *ptIds)
void DeleteCell(vtkIdType cellId)
void DeletePoint(vtkIdType ptId)
general representation of visualization data
cell represents a set of 1D lines
void RemoveCellReference(vtkIdType cellId, vtkIdType ptId)
vtkTriangleStrip * TriangleStrip