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);
593 ncells = this->Links->GetNcells(ptId);
594 cells = this->Links->GetCells(ptId);
599 unsigned short int n1;
613 if ( (tVerts[0] == tVerts2[0] || tVerts[0] == tVerts2[1] ||
614 tVerts[0] == tVerts2[2]) &&
615 (tVerts[1] == tVerts2[0] || tVerts[1] == tVerts2[1] ||
616 tVerts[1] == tVerts2[2]) &&
617 (tVerts[2] == tVerts2[0] || tVerts[2] == tVerts2[1] ||
618 tVerts[2] == tVerts2[2]) )
634 if ( pts[i] == ptId )
645 this->Links->DeletePoint(ptId);
650 this->Cells->DeleteCell(cellId);
660 this->Links->RemoveCellReference(cellId, pts[i]);
671 this->Links->AddCellReference(cellId, pts[i]);
677 this->Links->ResizeCellList(ptId,size);
687 for ( i=0; i < nverts; i++ )
689 if ( verts[i] == oldPtId )
700 unsigned char type = this->Cells->GetCellType(cellId);
717 cells = this->Strips;
726 int loc = this->Cells->GetCellLocation(cellId);
727 cells->
GetCell(loc, npts, pts);
734 unsigned char type = this->Cells->GetCellType(cellId);
751 cells = this->Strips;
759 int loc = this->Cells->GetCellLocation(cellId);
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
ValueType * GetPointer(vtkIdType valueIdx)
Get the address of a particular data index.
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...
#define VTK_SIZEHINT(...)
vtkMTimeType GetMTime() override
Get MTime which also considers its vtkPoints MTime.
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