67 #include "vtkCommonDataModelModule.h" 83 struct vtkPolyDataDummyContainter;
217 void Allocate(
vtkIdType numCells=1000,
int extSize=1000);
276 void BuildLinks(
int initialSize=0);
325 int IsTriangle(
int v1,
int v2,
int v3);
376 void RemoveDeletedCells();
386 vtkIdType InsertNextLinkedPoint(
int numLinks);
387 vtkIdType InsertNextLinkedPoint(
double x[3],
int numLinks);
413 void RemoveCellReference(
vtkIdType cellId);
454 virtual int GetPiece();
455 virtual int GetNumberOfPieces();
461 virtual int GetGhostLevel();
486 void RemoveGhostCells();
516 ERR_NO_SUCH_FIELD = -4,
517 ERR_INCORRECT_FIELD = -3,
518 ERR_NON_MANIFOLD_STAR = -2,
525 int GetScalarFieldCriticalIndex (
vtkIdType pointId,
527 int GetScalarFieldCriticalIndex (
vtkIdType pointId,
int fieldId);
528 int GetScalarFieldCriticalIndex (
vtkIdType pointId,
const char* fieldName);
588 ncells = this->Links->GetNcells(ptId);
589 cells = this->Links->GetCells(ptId);
594 unsigned short int n1;
608 if ( (tVerts[0] == tVerts2[0] || tVerts[0] == tVerts2[1] ||
609 tVerts[0] == tVerts2[2]) &&
610 (tVerts[1] == tVerts2[0] || tVerts[1] == tVerts2[1] ||
611 tVerts[1] == tVerts2[2]) &&
612 (tVerts[2] == tVerts2[0] || tVerts[2] == tVerts2[1] ||
613 tVerts[2] == tVerts2[2]) )
629 if ( pts[i] == ptId )
640 this->Links->DeletePoint(ptId);
645 this->Cells->DeleteCell(cellId);
655 this->Links->RemoveCellReference(cellId, pts[i]);
666 this->Links->AddCellReference(cellId, pts[i]);
672 this->Links->ResizeCellList(ptId,size);
682 for ( i=0; i < nverts; i++ )
684 if ( verts[i] == oldPtId )
695 unsigned char type = this->Cells->GetCellType(cellId);
712 cells = this->Strips;
721 int loc = this->Cells->GetCellLocation(cellId);
722 cells->
GetCell(loc, npts, pts);
729 unsigned char type = this->Cells->GetCellType(cellId);
746 cells = this->Strips;
754 int loc = this->Cells->GetCellLocation(cellId);
755 cell = cells->
GetData()->GetPointer(loc);
void ComputeBounds() override
Compute the (X, Y, Z) bounds of the data.
virtual vtkIdType GetNumberOfCells()=0
Determine the number of cells composing the dataset.
virtual void GetPointCells(vtkIdType ptId, vtkIdList *cellIds)=0
Topological inquiry to get cells using point.
object represents upward pointers from points to list of cells using each point
void GetCellPoints(vtkIdType cellId, vtkIdList *ptIds) override
Copy a cells point ids into list provided.
static vtkDataObject * New()
quickly locate points in 3-space
vtkTypeUInt32 vtkMTimeType
void ReplaceCellPoint(vtkIdType cellId, vtkIdType oldPtId, vtkIdType newPtId)
Replace a point in the cell connectivity list with a different point.
abstract class to specify dataset behavior
a cell that represents a 3D point
void GetPointCells(vtkIdType ptId, vtkIdList *cellIds) override
Efficient method to obtain cells using a particular point.
static vtkPointSet * GetData(vtkInformation *info)
Retrieve an instance of this class from an information object.
void AddCellReference(vtkIdType cellId)
Add references to cell in cell structure.
a cell that represents a 2D quadrilateral
abstract class for specifying dataset behavior
an empty cell used as a place-holder during processing
concrete dataset represents vertices, lines, polygons, and triangle strips
cell represents a set of 0D vertices
void Squeeze() override
Reclaim any unused memory.
void RemoveCellReference(vtkIdType cellId)
Remove all references to cell in cell structure.
void DeletePoint(vtkIdType ptId)
Mark a point/cell as deleted from this vtkPolyData.
provides thread-safe access to cells
int GetDataObjectType() override
Return what type of dataset this is.
vtkPolyVertex * PolyVertex
a cell that represents a triangle strip
cell represents a 1D line
abstract class to specify cell behavior
void DeepCopy(vtkDataObject *src) override
Shallow and Deep copy.
vtkCell * GetCell(vtkIdType cellId) override
Standard vtkDataSet interface.
bool NeedToBuildCells()
Check if BuildCells is needed.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
a simple class to control print indentation
virtual int GetMaxCellSize()=0
Convenience method returns largest cell size in dataset.
int IsTriangle(int v1, int v2, int v3)
Given three vertices, determine whether it's a triangle.
list of point or cell ids
void Initialize() override
Reset to an empty state and free any memory.
virtual void GetCellPoints(vtkIdType cellId, vtkIdList *ptIds)=0
Topological inquiry to get points defining cell.
abstract superclass for arrays of numeric data
a cell that represents an n-sided polygon
void ResizeCellList(vtkIdType ptId, int size)
Resize the list of cells using a particular point.
virtual void GetCellNeighbors(vtkIdType cellId, vtkIdList *ptIds, vtkIdList *cellIds)
Topological inquiry to get all cells using list of points exclusive of cell specified (e...
int IsPointUsedByCell(vtkIdType ptId, vtkIdType cellId)
Determine whether a point is used by a particular cell.
object to represent cell connectivity
a cell that represents a triangle
vtkIdTypeArray * GetData()
Return the underlying data as a data array.
unsigned long GetActualMemorySize() override
Return the actual size of the data in kibibytes (1024 bytes).
void ShallowCopy(vtkDataObject *src) override
Shallow and Deep copy.
void DeleteCell(vtkIdType cellId)
Mark a point/cell as deleted from this vtkPolyData.
static vtkPolyDataDummyContainter DummyContainer
void CopyStructure(vtkDataSet *pd) override
Copy the geometric structure of an input point set object.
general representation of visualization data
object provides direct access to cells in vtkCellArray and type information
virtual vtkCell * GetCell(vtkIdType cellId)=0
Get cell with cellId such that: 0 <= cellId < NumberOfCells.
virtual void GetCellBounds(vtkIdType cellId, double bounds[6])
Get the bounds of the cell with cellId such that: 0 <= cellId < NumberOfCells.
void GetCell(vtkIdType loc, vtkIdType &npts, vtkIdType *&pts)
Internal method used to retrieve a cell given an offset into the internal array.
cell represents a set of 1D lines
virtual int GetCellType(vtkIdType cellId)=0
Get type of cell with cellId such that: 0 <= cellId < NumberOfCells.
vtkTriangleStrip * TriangleStrip