|
VTK
9.6.1
|
helps manage arrays from multiple vtkDataSetAttributes. More...
#include <vtkDataSetAttributesFieldList.h>
helps manage arrays from multiple vtkDataSetAttributes.
vtkDataSetAttributesFieldList, also called vtkDataSetAttributes::FieldList, is used to help with filters when dealing with arrays from multiple vtkDataSetAttributes instances, potentially from multiple inputs.
Consider a filter that appends multiple inputs, e.g. vtkAppendPolyData. Besides appending mesh elements, such a filter also needs to combine field arrays (point, and cell data) from inputs to pass on to the output. Now if all the inputs had exactly the same set of arrays, we're all set. However, more often than not, the inputs will have different sets of arrays. The filter will need to match up from various inputs to combine together, potentially dropping arrays not in all inputs. Furthermore, it needs to ensure arrays in the output are flagged as attributes consistently. All of this can be done using vtkDataSetAttributesFieldList.
Typical usage is as follows:
vtkDataSetAttributes::InitializeFieldList is provided for API compatibility with previous implementation of this class and it not required to be called. Simply calling UnionFieldList or IntersectFieldList for the first vtkDataSetAttributes instance is sufficient.
CopyAllocate, CopyData, and InterpolatePoint` methods on this class are called by similarly named variants on vtkDataSetAttributes that take in a FieldList instance as an argument. Hence, either forms may be used.
Calls to UnionFieldList and IntersectFieldList cannot be mixed. Use Reset or InitializeFieldList to change mode and start reinitialization. */
For export macro for vtkSmartPointer
for std::function for unique_ptr
class vtkAbstractArray; class vtkDataSetAttributes; class vtkFieldData; class vtkIdList;
class VTKCOMMONDATAMODEL_EXPORT vtkDataSetAttributesFieldList { public: /** number_of_inputs parameter is not required and only provided for backwards compatibility.