VTK
|
object to represent cell connectivity More...
#include <vtkCellArray.h>
object to represent cell connectivity
vtkCellArray is a supporting object that explicitly represents cell connectivity. The cell array structure is a raw integer list of the form: (n,id1,id2,...,idn, n,id1,id2,...,idn, ...) where n is the number of points in the cell, and id is a zero-offset index into an associated point list.
Advantages of this data structure are its compactness, simplicity, and easy interface to external data. However, it is totally inadequate for random access. This functionality (when necessary) is accomplished by using the vtkCellTypes and vtkCellLinks objects to extend the definition of the data structure.
Definition at line 49 of file vtkCellArray.h.
typedef vtkObject vtkCellArray::Superclass |
Reimplemented from vtkObject.
Definition at line 52 of file vtkCellArray.h.
vtkCellArray::vtkCellArray | ( | ) | [protected] |
vtkCellArray::~vtkCellArray | ( | ) | [protected] |
static int vtkCellArray::IsTypeOf | ( | const char * | name | ) | [static] |
Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.
Reimplemented from vtkObject.
virtual int vtkCellArray::IsA | ( | const char * | name | ) | [virtual] |
Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.
Reimplemented from vtkObject.
static vtkCellArray* vtkCellArray::SafeDownCast | ( | vtkObjectBase * | o | ) | [static] |
Reimplemented from vtkObject.
virtual vtkObjectBase* vtkCellArray::NewInstanceInternal | ( | ) | const [protected, virtual] |
Reimplemented from vtkObject.
vtkCellArray* vtkCellArray::NewInstance | ( | ) | const |
Reimplemented from vtkObject.
void vtkCellArray::PrintSelf | ( | ostream & | os, |
vtkIndent | indent | ||
) | [virtual] |
static vtkCellArray* vtkCellArray::New | ( | ) | [static] |
Instantiate cell array (connectivity list).
Reimplemented from vtkObject.
int vtkCellArray::Allocate | ( | const vtkIdType | sz, |
const int | ext = 1000 |
||
) | [inline] |
Allocate memory and set the size to extend by.
Definition at line 60 of file vtkCellArray.h.
void vtkCellArray::Initialize | ( | ) |
Free any memory and reset to an empty state.
virtual vtkIdType vtkCellArray::GetNumberOfCells | ( | ) | [virtual] |
Get the number of cells in the array.
virtual void vtkCellArray::SetNumberOfCells | ( | vtkIdType | ) | [virtual] |
Set the number of cells in the array. DO NOT do any kind of allocation, advanced use only.
vtkIdType vtkCellArray::EstimateSize | ( | vtkIdType | numCells, |
int | maxPtsPerCell | ||
) | [inline] |
Utility routines help manage memory of cell array. EstimateSize() returns a value used to initialize and allocate memory for array based on number of cells and maximum number of points making up cell. If every cell is the same size (in terms of number of points), then the memory estimate is guaranteed exact. (If not exact, use Squeeze() to reclaim any extra memory.)
Definition at line 85 of file vtkCellArray.h.
void vtkCellArray::InitTraversal | ( | ) | [inline] |
A cell traversal methods that is more efficient than vtkDataSet traversal methods. InitTraversal() initializes the traversal of the list of cells.
Definition at line 92 of file vtkCellArray.h.
int vtkCellArray::GetNextCell | ( | vtkIdType & | npts, |
vtkIdType *& | pts | ||
) | [inline] |
A cell traversal methods that is more efficient than vtkDataSet traversal methods. GetNextCell() gets the next cell in the list. If end of list is encountered, 0 is returned. A value of 1 is returned whenever npts and pts have been updated without error.
Definition at line 308 of file vtkCellArray.h.
int vtkCellArray::GetNextCell | ( | vtkIdList * | pts | ) |
A cell traversal methods that is more efficient than vtkDataSet traversal methods. GetNextCell() gets the next cell in the list. If end of list is encountered, 0 is returned.
vtkIdType vtkCellArray::GetSize | ( | ) | [inline] |
Get the size of the allocated connectivity array.
Definition at line 107 of file vtkCellArray.h.
vtkIdType vtkCellArray::GetNumberOfConnectivityEntries | ( | ) | [inline] |
Get the total number of entries (i.e., data values) in the connectivity array. This may be much less than the allocated size (i.e., return value from GetSize().)
Definition at line 115 of file vtkCellArray.h.
void vtkCellArray::GetCell | ( | vtkIdType | loc, |
vtkIdType & | npts, | ||
vtkIdType *& | pts | ||
) | [inline] |
Internal method used to retrieve a cell given an offset into the internal array.
Definition at line 324 of file vtkCellArray.h.
void vtkCellArray::GetCell | ( | vtkIdType | loc, |
vtkIdList * | pts | ||
) |
Internal method used to retrieve a cell given an offset into the internal array.
vtkIdType vtkCellArray::InsertNextCell | ( | vtkCell * | cell | ) | [inline] |
Insert a cell object. Return the cell id of the cell.
Definition at line 292 of file vtkCellArray.h.
vtkIdType vtkCellArray::InsertNextCell | ( | vtkIdType | npts, |
const vtkIdType * | pts | ||
) | [inline] |
Create a cell by specifying the number of points and an array of point id's. Return the cell id of the cell.
Definition at line 247 of file vtkCellArray.h.
vtkIdType vtkCellArray::InsertNextCell | ( | vtkIdList * | pts | ) | [inline] |
Create a cell by specifying a list of point ids. Return the cell id of the cell.
Definition at line 286 of file vtkCellArray.h.
vtkIdType vtkCellArray::InsertNextCell | ( | int | npts | ) | [inline] |
Create cells by specifying count, and then adding points one at a time using method InsertCellPoint(). If you don't know the count initially, use the method UpdateCellCount() to complete the cell. Return the cell id of the cell.
Definition at line 265 of file vtkCellArray.h.
void vtkCellArray::InsertCellPoint | ( | vtkIdType | id | ) | [inline] |
Used in conjunction with InsertNextCell(int npts) to add another point to the list of cells.
Definition at line 274 of file vtkCellArray.h.
void vtkCellArray::UpdateCellCount | ( | int | npts | ) | [inline] |
Used in conjunction with InsertNextCell(int npts) and InsertCellPoint() to update the number of points defining the cell.
Definition at line 280 of file vtkCellArray.h.
vtkIdType vtkCellArray::GetInsertLocation | ( | int | npts | ) | [inline] |
Computes the current insertion location within the internal array. Used in conjunction with GetCell(int loc,...).
Definition at line 155 of file vtkCellArray.h.
vtkIdType vtkCellArray::GetTraversalLocation | ( | ) | [inline] |
Get/Set the current traversal location.
Definition at line 161 of file vtkCellArray.h.
void vtkCellArray::SetTraversalLocation | ( | vtkIdType | loc | ) | [inline] |
Get/Set the current traversal location.
Definition at line 163 of file vtkCellArray.h.
vtkIdType vtkCellArray::GetTraversalLocation | ( | vtkIdType | npts | ) | [inline] |
Computes the current traversal location within the internal array. Used in conjunction with GetCell(int loc,...).
Definition at line 170 of file vtkCellArray.h.
void vtkCellArray::ReverseCell | ( | vtkIdType | loc | ) | [inline] |
Special method inverts ordering of current cell. Must be called carefully or the cell topology may be corrupted.
Definition at line 332 of file vtkCellArray.h.
void vtkCellArray::ReplaceCell | ( | vtkIdType | loc, |
int | npts, | ||
const vtkIdType * | pts | ||
) | [inline] |
Replace the point ids of the cell with a different list of point ids.
Definition at line 347 of file vtkCellArray.h.
Returns the size of the largest cell. The size is the number of points defining the cell.
vtkIdType* vtkCellArray::GetPointer | ( | ) | [inline] |
Get pointer to array of cell data.
Definition at line 187 of file vtkCellArray.h.
vtkIdType * vtkCellArray::WritePointer | ( | const vtkIdType | ncells, |
const vtkIdType | size | ||
) | [inline] |
Get pointer to data array for purpose of direct writes of data. Size is the total storage consumed by the cell array. ncells is the number of cells represented in the array.
Definition at line 358 of file vtkCellArray.h.
void vtkCellArray::SetCells | ( | vtkIdType | ncells, |
vtkIdTypeArray * | cells | ||
) |
Define multiple cells by providing a connectivity list. The list is in the form (npts,p0,p1,...p(npts-1), repeated for each cell). Be careful using this method because it discards the old cells, and anything referring these cells becomes invalid (for example, if BuildCells() has been called see vtkPolyData). The traversal location is reset to the beginning of the list; the insertion location is set to the end of the list.
void vtkCellArray::DeepCopy | ( | vtkCellArray * | ca | ) |
Perform a deep copy (no reference counting) of the given cell array.
vtkIdTypeArray* vtkCellArray::GetData | ( | ) | [inline] |
Return the underlying data as a data array.
Definition at line 210 of file vtkCellArray.h.
void vtkCellArray::Reset | ( | ) | [inline] |
Reuse list. Reset to initial condition.
Definition at line 299 of file vtkCellArray.h.
void vtkCellArray::Squeeze | ( | ) | [inline] |
Reclaim any extra memory.
Definition at line 219 of file vtkCellArray.h.
unsigned long vtkCellArray::GetActualMemorySize | ( | ) |
Return the memory in kilobytes consumed by this cell array. Used to support streaming and reading/writing data. The value returned is guaranteed to be greater than or equal to the memory required to actually represent the data represented by this object. The information returned is valid only after the pipeline has been updated.
vtkIdType vtkCellArray::NumberOfCells [protected] |
Definition at line 235 of file vtkCellArray.h.
vtkIdType vtkCellArray::InsertLocation [protected] |
Definition at line 236 of file vtkCellArray.h.
vtkIdType vtkCellArray::TraversalLocation [protected] |
Definition at line 237 of file vtkCellArray.h.
vtkIdTypeArray* vtkCellArray::Ia [protected] |
Definition at line 238 of file vtkCellArray.h.