pub struct vtkSortDataArray(/* private fields */);Expand description
provides several methods for sorting VTK arrays.
vtkSortDataArray is used to sort data, based on its value, or with an associated key, into either ascending or descending order. This is useful for operations like selection, or analysis, when evaluating and processing data. A variety of sorting functions are provided, treating both arrays (i.e., vtkAbstractArray) and id lists (vtkIdList). Note that complex arrays like variants and string arrays are also handled.
Additional functionality is provided to generate data ordering, without necessarily shuffling the data into a final, sorted position. Hence, the sorting process is organized into three steps because of the complexity of dealing with multiple types and multiple component data arrays. The first step involves creating and initializing a sorted index array, and then (second step) sorting this array to produce a map indicating the sorting order. In other words, the sorting index array is a permutation which can be applied to other, associated data to shuffle it (third step) into an order consistent with the sorting operation. Note that the generation of the sorted index array is useful unto itself (even without the final shuffling of data) because it generates an ordered list (from the data values of any component in any array). So for example, it is possible to find the top N cells with the largest scalar value simply by generating the sorting index array from the call scalar values.
@warning This class has been threaded with vtkSMPTools. Using TBB or other non-sequential type (set in the CMake variable VTK_SMP_IMPLEMENTATION_TYPE) may improve performance significantly on multi-core machines.
@warning The sort methods below are static, hence the sorting methods can be used without instantiating the class. All methods are thread safe.
@sa vtkSortFieldData
Implementations§
Source§impl vtkSortDataArray
impl vtkSortDataArray
Sourcepub fn new() -> Self
pub fn new() -> Self
Creates a new vtkSortDataArray wrapped inside vtkNew