VTK
|
defines dataset interface More...
#include <vtkGenericDataSet.h>
Public Member Functions | |
virtual vtkIdType | GetNumberOfPoints ()=0 |
virtual vtkIdType | GetNumberOfCells (int dim=-1)=0 |
virtual int | GetCellDimension ()=0 |
virtual void | GetCellTypes (vtkCellTypes *types) |
virtual vtkGenericCellIterator * | NewCellIterator (int dim=-1)=0 |
virtual vtkGenericPointIterator * | NewPointIterator ()=0 |
virtual unsigned long int | GetMTime () |
virtual void | ComputeBounds ()=0 |
virtual double * | GetBounds () |
virtual void | GetBounds (double bounds[6]) |
virtual double * | GetCenter () |
virtual void | GetCenter (double center[3]) |
virtual double | GetLength () |
virtual unsigned long | GetActualMemorySize () |
int | GetDataObjectType () |
virtual vtkIdType | GetEstimatedSize ()=0 |
virtual vtkGenericCellIterator * | NewBoundaryIterator (int dim=-1, int exteriorOnly=0)=0 |
virtual int | FindCell (double x[3], vtkGenericCellIterator *&cell, double tol2, int &subId, double pcoords[3])=0 |
virtual void | FindPoint (double x[3], vtkGenericPointIterator *p)=0 |
virtual vtkGenericAttributeCollection * | GetAttributes () |
virtual vtkDataSetAttributes * | GetAttributes (int type) |
virtual void | SetTessellator (vtkGenericCellTessellator *tessellator) |
virtual vtkGenericCellTessellator * | GetTessellator () |
![]() | |
virtual vtkAlgorithmOutput * | GetProducerPort () |
virtual void | Initialize () |
void | ReleaseData () |
int | ShouldIReleaseData () |
virtual void | Register (vtkObjectBase *o) |
virtual void | UnRegister (vtkObjectBase *o) |
virtual void | Update () |
virtual void | UpdateInformation () |
virtual void | PropagateUpdateExtent () |
virtual void | TriggerAsynchronousUpdate () |
virtual void | UpdateData () |
virtual unsigned long | GetEstimatedMemorySize () |
unsigned long | GetUpdateTime () |
void | SetUpdateExtentToWholeExtent () |
unsigned long | GetPipelineMTime () |
void | CopyInformation (vtkDataObject *data) |
virtual void | CopyInformationFromPipeline (vtkInformation *request) |
void | DataHasBeenGenerated () |
virtual void | PrepareForNewData () |
virtual int | GetExtentType () |
virtual void | Crop () |
virtual vtkFieldData * | GetAttributesAsFieldData (int type) |
virtual int | GetAttributeTypeForArray (vtkAbstractArray *arr) |
virtual vtkIdType | GetNumberOfElements (int type) |
virtual vtkSource * | GetSource () |
void | SetSource (vtkSource *s) |
virtual vtkInformation * | GetInformation () |
virtual void | SetInformation (vtkInformation *) |
virtual vtkInformation * | GetPipelineInformation () |
virtual void | SetPipelineInformation (vtkInformation *) |
virtual int | GetDataReleased () |
void | SetReleaseDataFlag (int) |
int | GetReleaseDataFlag () |
virtual void | ReleaseDataFlagOn () |
virtual void | ReleaseDataFlagOff () |
virtual void | SetFieldData (vtkFieldData *) |
virtual vtkFieldData * | GetFieldData () |
virtual void | SetUpdateExtent (int piece, int numPieces, int ghostLevel) |
void | SetUpdateExtent (int piece, int numPieces) |
virtual void | SetUpdateExtent (int x0, int x1, int y0, int y1, int z0, int z1) |
virtual void | SetUpdateExtent (int extent[6]) |
virtual int * | GetUpdateExtent () |
virtual void | GetUpdateExtent (int &x0, int &x1, int &y0, int &y1, int &z0, int &z1) |
virtual void | GetUpdateExtent (int extent[6]) |
virtual void | CopyTypeSpecificInformation (vtkDataObject *data) |
void | SetUpdatePiece (int piece) |
void | SetUpdateNumberOfPieces (int num) |
virtual int | GetUpdatePiece () |
virtual int | GetUpdateNumberOfPieces () |
void | SetUpdateGhostLevel (int level) |
virtual int | GetUpdateGhostLevel () |
virtual void | SetRequestExactExtent (int flag) |
virtual int | GetRequestExactExtent () |
virtual void | RequestExactExtentOn () |
virtual void | RequestExactExtentOff () |
virtual void | SetWholeExtent (int x0, int x1, int y0, int y1, int z0, int z1) |
virtual void | SetWholeExtent (int extent[6]) |
virtual int * | GetWholeExtent () |
virtual void | GetWholeExtent (int &x0, int &x1, int &y0, int &y1, int &z0, int &z1) |
virtual void | GetWholeExtent (int extent[6]) |
virtual void | SetWholeBoundingBox (double x0, double x1, double y0, double y1, double z0, double z1) |
virtual void | SetWholeBoundingBox (double bb[6]) |
virtual double * | GetWholeBoundingBox () |
virtual void | GetWholeBoundingBox (double &x0, double &x1, double &y0, double &y1, double &z0, double &z1) |
virtual void | GetWholeBoundingBox (double extent[6]) |
virtual void | SetMaximumNumberOfPieces (int) |
virtual int | GetMaximumNumberOfPieces () |
virtual void | CopyInformationToPipeline (vtkInformation *request, vtkInformation *input, vtkInformation *output, int forceCopy) |
void | CopyInformationToPipeline (vtkInformation *request, vtkInformation *input) |
virtual void | ShallowCopy (vtkDataObject *src) |
virtual void | DeepCopy (vtkDataObject *src) |
void | SetExtentTranslator (vtkExtentTranslator *translator) |
vtkExtentTranslator * | GetExtentTranslator () |
void | GlobalReleaseDataFlagOn () |
void | GlobalReleaseDataFlagOff () |
![]() | |
virtual void | DebugOn () |
virtual void | DebugOff () |
unsigned char | GetDebug () |
void | SetDebug (unsigned char debugFlag) |
virtual void | Modified () |
unsigned long | AddObserver (unsigned long event, vtkCommand *, float priority=0.0f) |
unsigned long | AddObserver (const char *event, vtkCommand *, float priority=0.0f) |
vtkCommand * | GetCommand (unsigned long tag) |
void | RemoveObserver (vtkCommand *) |
void | RemoveObservers (unsigned long event, vtkCommand *) |
void | RemoveObservers (const char *event, vtkCommand *) |
int | HasObserver (unsigned long event, vtkCommand *) |
int | HasObserver (const char *event, vtkCommand *) |
void | RemoveObserver (unsigned long tag) |
void | RemoveObservers (unsigned long event) |
void | RemoveObservers (const char *event) |
void | RemoveAllObservers () |
int | HasObserver (unsigned long event) |
int | HasObserver (const char *event) |
template<class U , class T > | |
unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f) |
template<class U , class T > | |
unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
int | InvokeEvent (unsigned long event, void *callData) |
int | InvokeEvent (const char *event, void *callData) |
int | InvokeEvent (unsigned long event) |
int | InvokeEvent (const char *event) |
![]() | |
const char * | GetClassName () const |
virtual void | Delete () |
virtual void | FastDelete () |
void | Print (ostream &os) |
void | SetReferenceCount (int) |
void | PrintRevisions (ostream &os) |
virtual void | PrintHeader (ostream &os, vtkIndent indent) |
virtual void | PrintTrailer (ostream &os, vtkIndent indent) |
int | GetReferenceCount () |
Protected Member Functions | |
vtkGenericDataSet () | |
virtual | ~vtkGenericDataSet () |
![]() | |
vtkDataObject () | |
~vtkDataObject () | |
vtkExecutive * | GetExecutive () |
int | GetPortNumber () |
virtual void | ReportReferences (vtkGarbageCollector *) |
vtkStreamingDemandDrivenPipeline * | TrySDDP (const char *method) |
![]() | |
vtkObject () | |
virtual | ~vtkObject () |
virtual void | RegisterInternal (vtkObjectBase *, int check) |
virtual void | UnRegisterInternal (vtkObjectBase *, int check) |
void | InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=NULL) |
void | InternalReleaseFocus () |
![]() | |
vtkObjectBase () | |
virtual | ~vtkObjectBase () |
virtual void | CollectRevisions (ostream &os) |
vtkObjectBase (const vtkObjectBase &) | |
void | operator= (const vtkObjectBase &) |
Protected Attributes | |
vtkGenericAttributeCollection * | Attributes |
vtkGenericCellTessellator * | Tessellator |
double | Bounds [6] |
double | Center [3] |
vtkTimeStamp | ComputeTime |
![]() | |
vtkFieldData * | FieldData |
vtkSource * | Source |
int | DataReleased |
vtkTimeStamp | UpdateTime |
vtkInformation * | Information |
vtkInformation * | PipelineInformation |
![]() | |
unsigned char | Debug |
vtkTimeStamp | MTime |
vtkSubjectHelper * | SubjectHelper |
![]() | |
int | ReferenceCount |
vtkWeakPointerBase ** | WeakPointers |
typedef vtkDataObject | Superclass |
virtual const char * | GetClassName () |
virtual int | IsA (const char *type) |
void | PrintSelf (ostream &os, vtkIndent indent) |
static int | IsTypeOf (const char *type) |
static vtkGenericDataSet * | SafeDownCast (vtkObject *o) |
Additional Inherited Members | |
![]() | |
typedef vtkObject | Superclass |
enum | FieldAssociations { FIELD_ASSOCIATION_POINTS, FIELD_ASSOCIATION_CELLS, FIELD_ASSOCIATION_NONE, FIELD_ASSOCIATION_POINTS_THEN_CELLS, FIELD_ASSOCIATION_VERTICES, FIELD_ASSOCIATION_EDGES, FIELD_ASSOCIATION_ROWS, NUMBER_OF_ASSOCIATIONS } |
enum | AttributeTypes { POINT, CELL, FIELD, POINT_THEN_CELL, VERTEX, EDGE, ROW, NUMBER_OF_ATTRIBUTE_TYPES } |
enum | FieldOperations { FIELD_OPERATION_PRESERVED, FIELD_OPERATION_REINTERPOLATED, FIELD_OPERATION_MODIFIED, FIELD_OPERATION_REMOVED } |
![]() | |
typedef vtkObjectBase | Superclass |
![]() | |
typedef vtkStreamingDemandDrivenPipeline | SDDP |
![]() | |
static const char | AssociationNames [NUMBER_OF_ASSOCIATIONS][55] |
defines dataset interface
In VTK, spatial-temporal data is defined in terms of a dataset. The dataset consists of geometry (e.g., points), topology (e.g., cells), and attributes (e.g., scalars, vectors, etc.) vtkGenericDataSet is an abstract class defining this abstraction.
Since vtkGenericDataSet provides a general interface to manipulate data, algorithms that process it tend to be slower than those specialized for a particular data type. For this reason, there are concrete, non-abstract subclasses that represent and provide access to data more efficiently. Note that filters to process this dataset type are currently found in the VTK/GenericFiltering/ subdirectory.
Unlike the vtkDataSet class, vtkGenericDataSet provides a more flexible interface including support for iterators. vtkGenericDataSet is also designed to interface VTK to external simulation packages without the penalty of copying memory (see VTK/GenericFiltering/README.html) for more information. Thus vtkGenericDataSet plays a central role in the adaptor framework.
Please note that this class introduces the concepts of "boundary cells". This refers to the boundaries of a cell (e.g., face of a tetrahedron) which may in turn be represented as a cell. Boundary cells are derivative topological features of cells, and are therefore never explicitly represented in the dataset. Often in visualization algorithms, looping over boundaries (edges or faces) is employed, while the actual dataset cells may not traversed. Thus there are methods to loop over these boundary cells.
Finally, as a point of clarification, points are not the same as vertices. Vertices refer to points, and points specify a position is space. Vertices are a type of 0-D cell. Also, the concept of a DOFNode, which is where coefficients for higher-order cells are kept, is a new concept introduced by the adaptor framework (see vtkGenericAdaptorCell for more information).
Definition at line 67 of file vtkGenericDataSet.h.
Standard VTK type and print macros.
Definition at line 72 of file vtkGenericDataSet.h.
|
protected |
Constructor with uninitialized bounds (1,-1, 1,-1, 1,-1), empty attribute collection and default tessellator.
|
protectedvirtual |
|
virtual |
Standard VTK type and print macros.
Reimplemented from vtkDataObject.
Reimplemented in vtkBridgeDataSet.
|
static |
Standard VTK type and print macros.
|
virtual |
Standard VTK type and print macros.
Reimplemented from vtkDataObject.
Reimplemented in vtkBridgeDataSet.
|
static |
Standard VTK type and print macros.
|
virtual |
Standard VTK type and print macros.
Reimplemented from vtkDataObject.
Reimplemented in vtkBridgeDataSet.
|
pure virtual |
Return the number of points composing the dataset. See NewPointIterator() for more details.
Implemented in vtkBridgeDataSet.
|
pure virtual |
Return the number of cells that explicitly define the dataset. See NewCellIterator() for more details.
Implemented in vtkBridgeDataSet.
|
pure virtual |
Return -1 if the dataset is explicitly defined by cells of varying dimensions or if there are no cells. If the dataset is explicitly defined by cells of a unique dimension, return this dimension.
Implemented in vtkBridgeDataSet.
|
virtual |
Get a list of types of cells in a dataset. The list consists of an array of types (not necessarily in any order), with a single entry per type. For example a dataset 5 triangles, 3 lines, and 100 hexahedra would result a list of three entries, corresponding to the types VTK_TRIANGLE, VTK_LINE, and VTK_HEXAHEDRON. THIS METHOD IS THREAD SAFE IF FIRST CALLED FROM A SINGLE THREAD AND THE DATASET IS NOT MODIFIED
Reimplemented in vtkBridgeDataSet.
|
pure virtual |
Return an iterator to traverse cells of dimension `dim' (or all dimensions if -1) that explicitly define the dataset. For instance, it will return only tetrahedra if the mesh is defined by tetrahedra. If the mesh is composed of two parts, one with tetrahedra and another part with triangles, it will return both, but will not return the boundary edges and vertices of these cells. The user is responsible for deleting the iterator.
Implemented in vtkBridgeDataSet.
|
pure virtual |
Return an iterator to traverse cell boundaries of dimension `dim' (or all dimensions if -1) of the dataset. If `exteriorOnly' is true, only the exterior cell boundaries of the dataset will be returned, otherwise it will return exterior and interior cell boundaries. The user is responsible for deleting the iterator.
Implemented in vtkBridgeDataSet.
|
pure virtual |
Return an iterator to traverse the points composing the dataset; they can be points that define a cell (corner points) or isolated points. The user is responsible for deleting the iterator.
Implemented in vtkBridgeDataSet.
|
pure virtual |
Locate the closest cell to position `x' (global coordinates) with respect to a tolerance squared `tol2' and an initial guess `cell' (if valid). The result consists in the `cell', the `subId' of the sub-cell (0 if primary cell), the parametric coordinates `pcoord' of the position. It returns whether the position is inside the cell or not (boolean). Tolerance is used to control how close the point is to be considered "in" the cell. THIS METHOD IS NOT THREAD SAFE.
Implemented in vtkBridgeDataSet.
|
pure virtual |
Locate the closest point `p' to position `x' (global coordinates).
Implemented in vtkBridgeDataSet.
|
virtual |
Datasets are composite objects and need to check each part for their modified time.
Reimplemented from vtkDataObject.
Reimplemented in vtkBridgeDataSet.
|
pure virtual |
Compute the geometry bounding box.
Implemented in vtkBridgeDataSet.
|
virtual |
Return a pointer to the geometry bounding box in the form (xmin,xmax, ymin,ymax, zmin,zmax). The return value is VOLATILE.
|
virtual |
Return the geometry bounding box in global coordinates in the form (xmin,xmax, ymin,ymax, zmin,zmax) in the `bounds' array.
|
virtual |
Get the center of the bounding box in global coordinates. The return value is VOLATILE.
|
virtual |
Get the center of the bounding box in global coordinates.
|
virtual |
Return the length of the diagonal of the bounding box.
|
virtual |
Get the collection of attributes associated with this dataset.
|
inlinevirtual |
Returns the attributes of the data object of the specified attribute type. The type may be:
The other attribute type, FIELD, will return NULL since field data is stored as a vtkFieldData instance, not a vtkDataSetAttributes instance. To retrieve field data, use GetAttributesAsFieldData.
Reimplemented from vtkDataObject.
Definition at line 192 of file vtkGenericDataSet.h.
|
virtual |
Set/Get a cell tessellator if cells must be tessellated during processing.
|
virtual |
Set/Get a cell tessellator if cells must be tessellated during processing.
|
virtual |
Actual size of the data in kilobytes; only valid after the pipeline has updated. It is guaranteed to be greater than or equal to the memory required to represent the data.
Reimplemented from vtkDataObject.
|
virtual |
Return the type of data object.
Reimplemented from vtkDataObject.
|
pure virtual |
Estimated size needed after tessellation (or special operation)
Implemented in vtkBridgeDataSet.
|
static |
Retrieve an instance of this class from an information object.
|
static |
Retrieve an instance of this class from an information object.
|
protected |
Definition at line 229 of file vtkGenericDataSet.h.
|
protected |
Definition at line 232 of file vtkGenericDataSet.h.
|
protected |
Definition at line 234 of file vtkGenericDataSet.h.
|
protected |
Definition at line 235 of file vtkGenericDataSet.h.
|
protected |
Definition at line 236 of file vtkGenericDataSet.h.