VTK
9.1.0
|
represent and manipulate fields of data More...
#include <vtkFieldData.h>
Classes | |
class | BasicIterator |
struct | CopyFieldFlag |
class | Iterator |
Public Types | |
typedef vtkObject | Superclass |
Public Member Functions | |
virtual vtkTypeBool | IsA (const char *type) |
Return 1 if this class is the same type of (or a subclass of) the named class. | |
vtkFieldData * | NewInstance () const |
void | PrintSelf (ostream &os, vtkIndent indent) override |
Methods invoked by print to print information about the object including superclasses. | |
virtual void | Initialize () |
Release all data but do not delete object. | |
vtkTypeBool | Allocate (vtkIdType sz, vtkIdType ext=1000) |
Allocate data for each array. | |
void | CopyStructure (vtkFieldData *) |
Copy data array structure from a given field. | |
void | AllocateArrays (int num) |
AllocateOfArrays actually sets the number of vtkAbstractArray pointers in the vtkFieldData object, not the number of used pointers (arrays). | |
int | GetNumberOfArrays () |
Get the number of arrays of data available. | |
int | AddArray (vtkAbstractArray *array) |
Add an array to the array list. | |
void | NullData (vtkIdType id) |
Sets every vtkDataArray at index id to a null tuple. | |
vtkDataArray * | GetArray (int i) |
Not recommended for use. | |
vtkDataArray * | GetArray (const char *arrayName, int &index) |
Not recommended for use. | |
vtkAbstractArray * | GetAbstractArray (int i) |
Returns the ith array in the field. | |
vtkAbstractArray * | GetAbstractArray (const char *arrayName, int &index) |
Return the array with the name given. | |
virtual void | PassData (vtkFieldData *fd) |
Pass entire arrays of input data through to output. | |
void | CopyFieldOn (const char *name) |
Turn on/off the copying of the field specified by name. | |
void | CopyFieldOff (const char *name) |
virtual void | CopyAllOn (int unused=0) |
Turn on copying of all data. | |
virtual void | CopyAllOff (int unused=0) |
Turn off copying of all data. | |
virtual void | DeepCopy (vtkFieldData *da) |
Copy a field by creating new data arrays (i.e., duplicate storage). | |
virtual void | ShallowCopy (vtkFieldData *da) |
Copy a field by reference counting the data arrays. | |
void | Squeeze () |
Squeezes each data array in the field (Squeeze() reclaims unused memory.) | |
void | Reset () |
Resets each data array in the field (Reset() does not release memory but it makes the arrays look like they are empty.) | |
virtual unsigned long | GetActualMemorySize () |
Return the memory in kibibytes (1024 bytes) consumed by this field data. | |
vtkMTimeType | GetMTime () override |
Check object's components for modified times. | |
void | GetField (vtkIdList *ptId, vtkFieldData *f) |
Get a field from a list of ids. | |
int | GetArrayContainingComponent (int i, int &arrayComp) |
Return the array containing the ith component of the field. | |
int | GetNumberOfComponents () |
Get the number of components in the field. | |
vtkIdType | GetNumberOfTuples () |
Get the number of tuples in the field. | |
void | SetNumberOfTuples (const vtkIdType number) |
Set the number of tuples for each data array in the field. | |
void | SetTuple (const vtkIdType i, const vtkIdType j, vtkFieldData *source) |
Set the jth tuple in source field data at the ith location. | |
void | InsertTuple (const vtkIdType i, const vtkIdType j, vtkFieldData *source) |
Insert the jth tuple in source field data at the ith location. | |
vtkIdType | InsertNextTuple (const vtkIdType j, vtkFieldData *source) |
Insert the jth tuple in source field data at the end of the tuple matrix. | |
virtual void | RemoveArray (const char *name) |
Remove an array (with the given name or index) from the list of arrays. | |
virtual void | RemoveArray (int index) |
Remove an array (with the given name or index) from the list of arrays. | |
vtkDataArray * | GetArray (const char *arrayName) |
Not recommended for use. | |
vtkAbstractArray * | GetAbstractArray (const char *arrayName) |
Return the array with the name given. | |
int | HasArray (const char *name) |
Return 1 if an array with the given name could be found. | |
const char * | GetArrayName (int i) |
Get the name of ith array. | |
Public Member Functions inherited from vtkObject | |
vtkBaseTypeMacro (vtkObject, vtkObjectBase) | |
virtual void | DebugOn () |
Turn debugging output on. | |
virtual void | DebugOff () |
Turn debugging output off. | |
bool | GetDebug () |
Get the value of the debug flag. | |
void | SetDebug (bool debugFlag) |
Set the value of the debug flag. | |
virtual void | Modified () |
Update the modification time for this object. | |
virtual vtkMTimeType | GetMTime () |
Return this object's modified time. | |
void | PrintSelf (ostream &os, vtkIndent indent) override |
Methods invoked by print to print information about the object including superclasses. | |
void | RemoveObserver (unsigned long tag) |
void | RemoveObservers (unsigned long event) |
void | RemoveObservers (const char *event) |
void | RemoveAllObservers () |
vtkTypeBool | HasObserver (unsigned long event) |
vtkTypeBool | HasObserver (const char *event) |
int | InvokeEvent (unsigned long event) |
int | InvokeEvent (const char *event) |
unsigned long | AddObserver (unsigned long event, vtkCommand *, float priority=0.0f) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. | |
unsigned long | AddObserver (const char *event, vtkCommand *, float priority=0.0f) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. | |
vtkCommand * | GetCommand (unsigned long tag) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. | |
void | RemoveObserver (vtkCommand *) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. | |
void | RemoveObservers (unsigned long event, vtkCommand *) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. | |
void | RemoveObservers (const char *event, vtkCommand *) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. | |
vtkTypeBool | HasObserver (unsigned long event, vtkCommand *) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. | |
vtkTypeBool | HasObserver (const char *event, vtkCommand *) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. | |
template<class U , class T > | |
unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f) |
Overloads to AddObserver that allow developers to add class member functions as callbacks for events. | |
template<class U , class T > | |
unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
Overloads to AddObserver that allow developers to add class member functions as callbacks for events. | |
template<class U , class T > | |
unsigned long | AddObserver (unsigned long event, U observer, bool(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
Allow user to set the AbortFlagOn() with the return value of the callback method. | |
int | InvokeEvent (unsigned long event, void *callData) |
This method invokes an event and return whether the event was aborted or not. | |
int | InvokeEvent (const char *event, void *callData) |
This method invokes an event and return whether the event was aborted or not. | |
Public Member Functions inherited from vtkObjectBase | |
const char * | GetClassName () const |
Return the class name as a string. | |
virtual vtkTypeBool | IsA (const char *name) |
Return 1 if this class is the same type of (or a subclass of) the named class. | |
virtual vtkIdType | GetNumberOfGenerationsFromBase (const char *name) |
Given the name of a base class of this class type, return the distance of inheritance between this class type and the named class (how many generations of inheritance are there between this class and the named class). | |
virtual void | Delete () |
Delete a VTK object. | |
virtual void | FastDelete () |
Delete a reference to this object. | |
void | InitializeObjectBase () |
void | Print (ostream &os) |
Print an object to an ostream. | |
virtual void | Register (vtkObjectBase *o) |
Increase the reference count (mark as used by another object). | |
virtual void | UnRegister (vtkObjectBase *o) |
Decrease the reference count (release by another object). | |
int | GetReferenceCount () |
Return the current reference count of this object. | |
void | SetReferenceCount (int) |
Sets the reference count. | |
bool | GetIsInMemkind () const |
A local state flag that remembers whether this object lives in the normal or extended memory space. | |
virtual void | PrintHeader (ostream &os, vtkIndent indent) |
Methods invoked by print to print information about the object including superclasses. | |
virtual void | PrintTrailer (ostream &os, vtkIndent indent) |
Methods invoked by print to print information about the object including superclasses. | |
Static Public Member Functions | |
static vtkFieldData * | New () |
static vtkFieldData * | ExtendedNew () |
static vtkTypeBool | IsTypeOf (const char *type) |
static vtkFieldData * | SafeDownCast (vtkObjectBase *o) |
Static Public Member Functions inherited from vtkObject | |
static vtkObject * | New () |
Create an object with Debug turned off, modified time initialized to zero, and reference counting on. | |
static void | BreakOnError () |
This method is called when vtkErrorMacro executes. | |
static void | SetGlobalWarningDisplay (int val) |
This is a global flag that controls whether any debug, warning or error messages are displayed. | |
static void | GlobalWarningDisplayOn () |
This is a global flag that controls whether any debug, warning or error messages are displayed. | |
static void | GlobalWarningDisplayOff () |
This is a global flag that controls whether any debug, warning or error messages are displayed. | |
static int | GetGlobalWarningDisplay () |
This is a global flag that controls whether any debug, warning or error messages are displayed. | |
Static Public Member Functions inherited from vtkObjectBase | |
static vtkTypeBool | IsTypeOf (const char *name) |
Return 1 if this class type is the same type of (or a subclass of) the named class. | |
static vtkIdType | GetNumberOfGenerationsFromBaseType (const char *name) |
Given a the name of a base class of this class type, return the distance of inheritance between this class type and the named class (how many generations of inheritance are there between this class and the named class). | |
static vtkObjectBase * | New () |
Create an object with Debug turned off, modified time initialized to zero, and reference counting on. | |
static void | SetMemkindDirectory (const char *directoryname) |
The name of a directory, ideally mounted -o dax, to memory map an extended memory space within. | |
static bool | GetUsingMemkind () |
A global state flag that controls whether vtkObjects are constructed in the usual way (the default) or within the extended memory space. | |
Protected Member Functions | |
virtual vtkObjectBase * | NewInstanceInternal () const |
vtkFieldData () | |
~vtkFieldData () override | |
void | SetArray (int i, vtkAbstractArray *array) |
Set an array to define the field. | |
virtual void | InitializeFields () |
Release all data but do not delete object. | |
void | CopyFieldOnOff (const char *name, int onOff) |
void | ClearFieldFlags () |
int | FindFlag (const char *field) |
int | GetFlag (const char *field) |
void | CopyFlags (const vtkFieldData *source) |
Protected Member Functions inherited from vtkObject | |
vtkObject () | |
~vtkObject () override | |
void | RegisterInternal (vtkObjectBase *, vtkTypeBool check) override |
void | UnRegisterInternal (vtkObjectBase *, vtkTypeBool check) override |
void | InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=nullptr) |
These methods allow a command to exclusively grab all events. | |
void | InternalReleaseFocus () |
These methods allow a command to exclusively grab all events. | |
Protected Member Functions inherited from vtkObjectBase | |
vtkObjectBase () | |
virtual | ~vtkObjectBase () |
virtual void | RegisterInternal (vtkObjectBase *, vtkTypeBool check) |
virtual void | UnRegisterInternal (vtkObjectBase *, vtkTypeBool check) |
virtual void | ReportReferences (vtkGarbageCollector *) |
vtkObjectBase (const vtkObjectBase &) | |
void | operator= (const vtkObjectBase &) |
Protected Attributes | |
int | NumberOfArrays |
int | NumberOfActiveArrays |
vtkAbstractArray ** | Data |
CopyFieldFlag * | CopyFieldFlags |
int | NumberOfFieldFlags |
int | DoCopyAllOn |
int | DoCopyAllOff |
Protected Attributes inherited from vtkObject | |
bool | Debug |
vtkTimeStamp | MTime |
vtkSubjectHelper * | SubjectHelper |
Protected Attributes inherited from vtkObjectBase | |
std::atomic< int32_t > | ReferenceCount |
vtkWeakPointerBase ** | WeakPointers |
Additional Inherited Members | |
Static Protected Member Functions inherited from vtkObjectBase | |
static vtkMallocingFunction | GetCurrentMallocFunction () |
static vtkReallocingFunction | GetCurrentReallocFunction () |
static vtkFreeingFunction | GetCurrentFreeFunction () |
static vtkFreeingFunction | GetAlternateFreeFunction () |
represent and manipulate fields of data
vtkFieldData represents and manipulates fields of data. The model of a field is a m x n matrix of data values, where m is the number of tuples, and n is the number of components. (A tuple is a row of n components in the matrix.) The field is assumed to be composed of a set of one or more data arrays, where the data in the arrays are of different types (e.g., int, double, char, etc.), and there may be variable numbers of components in each array. Note that each data array is assumed to be "m" in length (i.e., number of tuples), which typically corresponds to the number of points or cells in a dataset. Also, each data array must have a character-string name. (This is used to manipulate data.)
There are two ways of manipulating and interfacing to fields. You can do it generically by manipulating components/tuples via a double-type data exchange, or you can do it by grabbing the arrays and manipulating them directly. The former is simpler but performs type conversion, which is bad if your data has non-castable types like (void) pointers, or you lose information as a result of the cast. The, more efficient method means managing each array in the field. Using this method you can create faster, more efficient algorithms that do not lose information.
Definition at line 163 of file vtkFieldData.h.
typedef vtkObject vtkFieldData::Superclass |
Definition at line 169 of file vtkFieldData.h.
|
protected |
|
overrideprotected |
|
static |
|
static |
|
static |
|
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 vtkObjectBase.
Reimplemented in vtkCellData, vtkDataSetAttributes, and vtkPointData.
|
static |
|
protectedvirtual |
Reimplemented in vtkCellData, vtkDataSetAttributes, and vtkPointData.
vtkFieldData * vtkFieldData::NewInstance | ( | ) | const |
|
overridevirtual |
Methods invoked by print to print information about the object including superclasses.
Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.
Reimplemented from vtkObject.
Reimplemented in vtkPointData.
|
virtual |
Release all data but do not delete object.
Also, clear the copy flags.
Reimplemented in vtkDataSetAttributes.
vtkTypeBool vtkFieldData::Allocate | ( | vtkIdType | sz, |
vtkIdType | ext = 1000 |
||
) |
Allocate data for each array.
Note that ext is no longer used.
void vtkFieldData::CopyStructure | ( | vtkFieldData * | ) |
Copy data array structure from a given field.
The same arrays will exist with the same types, but will contain nothing in the copy.
void vtkFieldData::AllocateArrays | ( | int | num | ) |
AllocateOfArrays actually sets the number of vtkAbstractArray pointers in the vtkFieldData object, not the number of used pointers (arrays).
Adding more arrays will cause the object to dynamically adjust the number of pointers if it needs to extend. Although AllocateArrays can be used if the number of arrays which will be added is known, it can be omitted with a small computation cost.
|
inline |
Get the number of arrays of data available.
This does not include nullptr array pointers therefore after fd->AllocateArray(n); nArrays = GetNumberOfArrays() nArrays is not necessarily equal to n.
Definition at line 208 of file vtkFieldData.h.
int vtkFieldData::AddArray | ( | vtkAbstractArray * | array | ) |
Add an array to the array list.
If an array with the same name already exists - then the added array will replace it. Return the index of the added array.
void vtkFieldData::NullData | ( | vtkIdType | id | ) |
Sets every vtkDataArray at index id to a null tuple.
|
virtual |
Remove an array (with the given name or index) from the list of arrays.
Reimplemented in vtkDataSetAttributes.
|
virtual |
Remove an array (with the given name or index) from the list of arrays.
Reimplemented in vtkDataSetAttributes, and vtkDataSetAttributes.
vtkDataArray * vtkFieldData::GetArray | ( | int | i | ) |
Not recommended for use.
Use GetAbstractArray(int i) instead.
Return the ith array in the field. A nullptr is returned if the index i is out of range, or if the array at the given index is not a vtkDataArray. To access vtkStringArray, vtkUnicodeStringArray, or vtkVariantArray, use GetAbstractArray(int i).
vtkDataArray * vtkFieldData::GetArray | ( | const char * | arrayName, |
int & | index | ||
) |
Not recommended for use.
Use GetAbstractArray(const char *arrayName, int &index) instead.
Return the array with the name given. Returns nullptr if array not found. A nullptr is also returned if the array with the given name is not a vtkDataArray. To access vtkStringArray, vtkUnicodeStringArray, or vtkVariantArray, use GetAbstractArray(const char* arrayName, int &index). Also returns the index of the array if found, -1 otherwise.
|
inline |
Not recommended for use.
Use GetAbstractArray(const char *arrayName) instead.
Return the array with the name given. Returns nullptr if array not found. A nullptr is also returned if the array with the given name is not a vtkDataArray. To access vtkStringArray, vtkUnicodeStringArray, or vtkVariantArray, use GetAbstractArray(const char *arrayName).
Definition at line 262 of file vtkFieldData.h.
vtkAbstractArray * vtkFieldData::GetAbstractArray | ( | int | i | ) |
Returns the ith array in the field.
Unlike GetArray(), this method returns a vtkAbstractArray and can be used to access any array type. A nullptr is returned only if the index i is out of range.
vtkAbstractArray * vtkFieldData::GetAbstractArray | ( | const char * | arrayName, |
int & | index | ||
) |
Return the array with the name given.
Returns nullptr if array not found. Unlike GetArray(), this method returns a vtkAbstractArray and can be used to access any array type. Also returns index of array if found, -1 otherwise.
|
inline |
Return the array with the name given.
Returns nullptr if array not found. Unlike GetArray(), this method returns a vtkAbstractArray and can be used to access any array type.
Definition at line 290 of file vtkFieldData.h.
|
inline |
Return 1 if an array with the given name could be found.
0 otherwise.
Definition at line 301 of file vtkFieldData.h.
|
inline |
Get the name of ith array.
Note that this is equivalent to: GetAbstractArray(i)->GetName() if ith array pointer is not nullptr
Definition at line 316 of file vtkFieldData.h.
|
virtual |
Pass entire arrays of input data through to output.
Obey the "copy" flags.
Reimplemented in vtkDataSetAttributes.
|
inline |
Turn on/off the copying of the field specified by name.
During the copying/passing, the following rules are followed for each array:
Definition at line 338 of file vtkFieldData.h.
|
inline |
Definition at line 339 of file vtkFieldData.h.
|
virtual |
Turn on copying of all data.
During the copying/passing, the following rules are followed for each array:
Reimplemented in vtkDataSetAttributes.
|
virtual |
Turn off copying of all data.
During the copying/passing, the following rules are followed for each array:
Reimplemented in vtkDataSetAttributes.
|
virtual |
Copy a field by creating new data arrays (i.e., duplicate storage).
Reimplemented in vtkDataSetAttributes.
|
virtual |
Copy a field by reference counting the data arrays.
Reimplemented in vtkDataSetAttributes.
void vtkFieldData::Squeeze | ( | ) |
Squeezes each data array in the field (Squeeze() reclaims unused memory.)
void vtkFieldData::Reset | ( | ) |
Resets each data array in the field (Reset() does not release memory but it makes the arrays look like they are empty.)
|
virtual |
Return the memory in kibibytes (1024 bytes) consumed by this field data.
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.
|
overridevirtual |
Check object's components for modified times.
Reimplemented from vtkObject.
void vtkFieldData::GetField | ( | vtkIdList * | ptId, |
vtkFieldData * | f | ||
) |
Get a field from a list of ids.
Supplied field f should have same types and number of data arrays as this one (i.e., like CopyStructure() creates). This method should not be used if the instance is from a subclass of vtkFieldData (vtkPointData or vtkCellData). This is because in those cases, the attribute data is stored with the other fields and will cause the method to behave in an unexpected way.
int vtkFieldData::GetArrayContainingComponent | ( | int | i, |
int & | arrayComp | ||
) |
Return the array containing the ith component of the field.
The return value is an integer number n 0<=n<this->NumberOfArrays. Also, an integer value is returned indicating the component in the array is returned. Method returns -1 if specified component is not in the field.
int vtkFieldData::GetNumberOfComponents | ( | ) |
Get the number of components in the field.
This is determined by adding up the components in each non-nullptr array. This method should not be used if the instance is from a subclass of vtkFieldData (vtkPointData or vtkCellData). This is because in those cases, the attribute data is stored with the other fields and will cause the method to behave in an unexpected way.
vtkIdType vtkFieldData::GetNumberOfTuples | ( | ) |
Get the number of tuples in the field.
Note: some fields have arrays with different numbers of tuples; this method returns the number of tuples in the first array. Mixed-length arrays may have to be treated specially. This method should not be used if the instance is from a subclass of vtkFieldData (vtkPointData or vtkCellData). This is because in those cases, the attribute data is stored with the other fields and will cause the method to behave in an unexpected way.
void vtkFieldData::SetNumberOfTuples | ( | const vtkIdType | number | ) |
Set the number of tuples for each data array in the field.
This method should not be used if the instance is from a subclass of vtkFieldData (vtkPointData or vtkCellData). This is because in those cases, the attribute data is stored with the other fields and will cause the method to behave in an unexpected way.
void vtkFieldData::SetTuple | ( | const vtkIdType | i, |
const vtkIdType | j, | ||
vtkFieldData * | source | ||
) |
Set the jth tuple in source field data at the ith location.
Set operations mean that no range checking is performed, so they're faster.
void vtkFieldData::InsertTuple | ( | const vtkIdType | i, |
const vtkIdType | j, | ||
vtkFieldData * | source | ||
) |
Insert the jth tuple in source field data at the ith location.
Range checking is performed and memory allocates as necessary.
vtkIdType vtkFieldData::InsertNextTuple | ( | const vtkIdType | j, |
vtkFieldData * | source | ||
) |
Insert the jth tuple in source field data at the end of the tuple matrix.
Range checking is performed and memory is allocated as necessary.
|
protected |
Set an array to define the field.
|
protectedvirtual |
Release all data but do not delete object.
Reimplemented in vtkDataSetAttributes.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
Definition at line 474 of file vtkFieldData.h.
|
protected |
Definition at line 475 of file vtkFieldData.h.
|
protected |
Definition at line 476 of file vtkFieldData.h.
|
protected |
Definition at line 494 of file vtkFieldData.h.
|
protected |
Definition at line 495 of file vtkFieldData.h.
|
protected |
Definition at line 501 of file vtkFieldData.h.
|
protected |
Definition at line 502 of file vtkFieldData.h.