35 #ifndef vtkCellLinks_h 36 #define vtkCellLinks_h 38 #include "vtkCommonDataModelModule.h" 60 void PrintSelf(ostream& os,
vtkIndent indent)
override;
156 unsigned long GetActualMemorySize();
178 void InsertCellReference(
vtkIdType ptId,
unsigned short pos,
197 this->Array[ptId].cells[pos] = cellId;
203 this->Array[ptId].ncells = 0;
204 delete [] this->Array[ptId].cells;
205 this->Array[ptId].cells =
nullptr;
212 this->Array[ptId].cells[this->Array[ptId].ncells++] = cellId;
218 vtkIdType *cells=this->Array[ptId].cells;
219 int ncells=this->Array[ptId].ncells;
221 for (
int i=0; i < ncells; i++)
223 if (cells[i] == cellId)
225 for (
int j=i; j < (ncells-1); j++)
227 cells[j] = cells[j+1];
229 this->Array[ptId].ncells--;
238 this->Array[ptId].cells[this->Array[ptId].ncells++] = cellId;
247 newSize = this->Array[ptId].ncells +
size;
249 memcpy(cells, this->Array[ptId].cells,
250 this->Array[ptId].ncells*
sizeof(
vtkIdType));
251 delete [] this->Array[ptId].cells;
252 this->Array[ptId].cells = cells;
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...
void AddCellReference(vtkIdType cellId, vtkIdType ptId)
Add the reference to the cell (cellId) from the point (ptId).
object represents upward pointers from points to list of cells using each point
void InsertCellReference(vtkIdType ptId, unsigned short pos, vtkIdType cellId)
Insert a cell id into the list of cells using the point.
abstract class to specify dataset behavior
void InsertNextCellReference(vtkIdType ptId, vtkIdType cellId)
Insert a cell id into the list of cells (at the end) using the cell id provided.
an abstract base class for classes that build topological links from points to cells ...
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 IncrementLinkCount(vtkIdType ptId)
Increment the count of the number of cells using the point.
a simple class to control print indentation
Link & GetLink(vtkIdType ptId)
Get a link structure given a point id.
object to represent cell connectivity
void DeletePoint(vtkIdType ptId)
Delete point (and storage) by destroying links to using cells.
void RemoveCellReference(vtkIdType cellId, vtkIdType ptId)
Delete the reference to the cell (cellId) from the point (ptId).