VTK-m
2.1
|
Combine multiple scalar fields into a single vector field. More...
#include <CompositeVectors.h>
Public Member Functions | |
CompositeVectors () | |
void | SetFieldNameList (const std::vector< std::string > &fieldNameList, vtkm::cont::Field::Association association=vtkm::cont::Field::Association::Any) |
Specifies the names of the fields to use as components for the output. More... | |
vtkm::IdComponent | GetNumberOfFields () const |
The number of fields specified as inputs. More... | |
Public Member Functions inherited from vtkm::filter::Filter | |
Filter () | |
virtual | ~Filter () |
vtkm::cont::DataSet | Execute (const vtkm::cont::DataSet &input) |
Executes the filter on the input and produces a result dataset. More... | |
vtkm::cont::PartitionedDataSet | Execute (const vtkm::cont::PartitionedDataSet &input) |
Executes the filter on the input PartitionedDataSet and produces a result PartitionedDataSet. More... | |
void | SetFieldsToPass (const vtkm::filter::FieldSelection &fieldsToPass) |
Specify which fields get passed from input to output. More... | |
void | SetFieldsToPass (vtkm::filter::FieldSelection &&fieldsToPass) |
Specify which fields get passed from input to output. More... | |
void | SetFieldsToPass (const vtkm::filter::FieldSelection &fieldsToPass, vtkm::filter::FieldSelection::Mode mode) |
void | SetFieldsToPass (std::initializer_list< std::string > fields, vtkm::filter::FieldSelection::Mode mode=vtkm::filter::FieldSelection::Mode::Select) |
Specify which fields get passed from input to output. More... | |
void | SetFieldsToPass (std::initializer_list< std::pair< std::string, vtkm::cont::Field::Association >> fields, vtkm::filter::FieldSelection::Mode mode=vtkm::filter::FieldSelection::Mode::Select) |
Specify which fields get passed from input to output. More... | |
void | SetFieldsToPass (const std::string &fieldname, vtkm::cont::Field::Association association, vtkm::filter::FieldSelection::Mode mode=vtkm::filter::FieldSelection::Mode::Select) |
Specify which fields get passed from input to output. More... | |
void | SetFieldsToPass (const std::string &fieldname, vtkm::filter::FieldSelection::Mode mode) |
Specify which fields get passed from input to output. More... | |
const vtkm::filter::FieldSelection & | GetFieldsToPass () const |
Specify which fields get passed from input to output. More... | |
vtkm::filter::FieldSelection & | GetFieldsToPass () |
Specify which fields get passed from input to output. More... | |
void | SetPassCoordinateSystems (bool flag) |
Specify whether to always pass coordinate systems. More... | |
bool | GetPassCoordinateSystems () const |
Specify whether to always pass coordinate systems. More... | |
void | SetOutputFieldName (const std::string &name) |
Specifies the name of the output field generated. More... | |
const std::string & | GetOutputFieldName () const |
Specifies the name of the output field generated. More... | |
void | SetActiveField (const std::string &name, vtkm::cont::Field::Association association=vtkm::cont::Field::Association::Any) |
Specifies a field to operate on. More... | |
void | SetActiveField (vtkm::IdComponent index, const std::string &name, vtkm::cont::Field::Association association=vtkm::cont::Field::Association::Any) |
Specifies a field to operate on. More... | |
const std::string & | GetActiveFieldName (vtkm::IdComponent index=0) const |
Specifies a field to operate on. More... | |
vtkm::cont::Field::Association | GetActiveFieldAssociation (vtkm::IdComponent index=0) const |
Specifies a field to operate on. More... | |
void | SetActiveCoordinateSystem (vtkm::Id coord_idx) |
Specifies the coordinate system index to make active to use when processing the input vtkm::cont::DataSet . More... | |
void | SetActiveCoordinateSystem (vtkm::IdComponent index, vtkm::Id coord_idx) |
Specifies the coordinate system index to make active to use when processing the input vtkm::cont::DataSet . More... | |
vtkm::Id | GetActiveCoordinateSystemIndex (vtkm::IdComponent index=0) const |
Specifies the coordinate system index to make active to use when processing the input vtkm::cont::DataSet . More... | |
void | SetUseCoordinateSystemAsField (bool val) |
Specifies whether to use point coordinates as the input field. More... | |
void | SetUseCoordinateSystemAsField (vtkm::IdComponent index, bool val) |
Specifies whether to use point coordinates as the input field. More... | |
bool | GetUseCoordinateSystemAsField (vtkm::IdComponent index=0) const |
Specifies whether to use point coordinates as the input field. More... | |
vtkm::IdComponent | GetNumberOfActiveFields () const |
Return the number of active fields currently set. More... | |
virtual bool | CanThread () const |
Returns whether the filter can execute on partitions in concurrent threads. More... | |
void | SetThreadsPerCPU (vtkm::Id numThreads) |
void | SetThreadsPerGPU (vtkm::Id numThreads) |
vtkm::Id | GetThreadsPerCPU () const |
vtkm::Id | GetThreadsPerGPU () const |
bool | GetRunMultiThreadedFilter () const |
void | SetRunMultiThreadedFilter (bool val) |
void | SetInvoker (vtkm::cont::Invoker inv) |
Specify the vtkm::cont::Invoker to be used to execute worklets by this filter instance. More... | |
Private Member Functions | |
vtkm::cont::DataSet | DoExecute (const vtkm::cont::DataSet &input) override |
Additional Inherited Members | |
Protected Member Functions inherited from vtkm::filter::Filter | |
vtkm::cont::DataSet | CreateResult (const vtkm::cont::DataSet &inDataSet) const |
Create the output data set for DoExecute . More... | |
vtkm::cont::DataSet | CreateResultField (const vtkm::cont::DataSet &inDataSet, const vtkm::cont::Field &resultField) const |
Create the output data set for DoExecute More... | |
vtkm::cont::DataSet | CreateResultField (const vtkm::cont::DataSet &inDataSet, const std::string &resultFieldName, vtkm::cont::Field::Association resultFieldAssociation, const vtkm::cont::UnknownArrayHandle &resultFieldArray) const |
Create the output data set for DoExecute More... | |
vtkm::cont::DataSet | CreateResultFieldPoint (const vtkm::cont::DataSet &inDataSet, const std::string &resultFieldName, const vtkm::cont::UnknownArrayHandle &resultFieldArray) const |
Create the output data set for DoExecute More... | |
vtkm::cont::DataSet | CreateResultFieldCell (const vtkm::cont::DataSet &inDataSet, const std::string &resultFieldName, const vtkm::cont::UnknownArrayHandle &resultFieldArray) const |
Create the output data set for DoExecute More... | |
vtkm::cont::PartitionedDataSet | CreateResult (const vtkm::cont::PartitionedDataSet &input, const vtkm::cont::PartitionedDataSet &resultPartitions) const |
Create the output data set for DoExecute . More... | |
template<typename FieldMapper > | |
vtkm::cont::PartitionedDataSet | CreateResult (const vtkm::cont::PartitionedDataSet &input, const vtkm::cont::PartitionedDataSet &resultPartitions, FieldMapper &&fieldMapper) const |
Create the output data set for DoExecute . More... | |
template<typename FieldMapper > | |
vtkm::cont::DataSet | CreateResult (const vtkm::cont::DataSet &inDataSet, const vtkm::cont::UnknownCellSet &resultCellSet, FieldMapper &&fieldMapper) const |
Create the output data set for DoExecute . More... | |
template<typename FieldMapper > | |
vtkm::cont::DataSet | CreateResultCoordinateSystem (const vtkm::cont::DataSet &inDataSet, const vtkm::cont::UnknownCellSet &resultCellSet, const vtkm::cont::CoordinateSystem &resultCoordSystem, FieldMapper &&fieldMapper) const |
Create the output data set for DoExecute . More... | |
template<typename FieldMapper > | |
vtkm::cont::DataSet | CreateResultCoordinateSystem (const vtkm::cont::DataSet &inDataSet, const vtkm::cont::UnknownCellSet &resultCellSet, const std::string &coordsName, const vtkm::cont::UnknownArrayHandle &coordsData, FieldMapper &&fieldMapper) const |
Create the output data set for DoExecute . More... | |
const vtkm::cont::Field & | GetFieldFromDataSet (const vtkm::cont::DataSet &input) const |
Retrieve an input field from a vtkm::cont::DataSet object. More... | |
const vtkm::cont::Field & | GetFieldFromDataSet (vtkm::IdComponent index, const vtkm::cont::DataSet &input) const |
Retrieve an input field from a vtkm::cont::DataSet object. More... | |
virtual vtkm::cont::PartitionedDataSet | DoExecutePartitions (const vtkm::cont::PartitionedDataSet &inData) |
template<typename Functor , typename... Args> | |
void | CastAndCallScalarField (const vtkm::cont::UnknownArrayHandle &fieldArray, Functor &&functor, Args &&... args) const |
Convenience method to get the array from a filter's input scalar field. More... | |
template<typename Functor , typename... Args> | |
void | CastAndCallScalarField (const vtkm::cont::Field &field, Functor &&functor, Args &&... args) const |
Convenience method to get the array from a filter's input scalar field. More... | |
template<vtkm::IdComponent VecSize, typename Functor , typename... Args> | |
void | CastAndCallVecField (const vtkm::cont::UnknownArrayHandle &fieldArray, Functor &&functor, Args &&... args) const |
Convenience method to get the array from a filter's input vector field. More... | |
template<vtkm::IdComponent VecSize, typename Functor , typename... Args> | |
void | CastAndCallVecField (const vtkm::cont::Field &field, Functor &&functor, Args &&... args) const |
Convenience method to get the array from a filter's input vector field. More... | |
template<typename Functor , typename... Args> | |
void | CastAndCallVariableVecField (const vtkm::cont::UnknownArrayHandle &fieldArray, Functor &&functor, Args &&... args) const |
This method is like CastAndCallVecField except that it can be used for a field of unknown vector size (or scalars). More... | |
template<typename Functor , typename... Args> | |
void | CastAndCallVariableVecField (const vtkm::cont::Field &field, Functor &&functor, Args &&... args) const |
This method is like CastAndCallVecField except that it can be used for a field of unknown vector size (or scalars). More... | |
Protected Attributes inherited from vtkm::filter::Filter | |
vtkm::cont::Invoker | Invoke |
Combine multiple scalar fields into a single vector field.
Scalar fields are selected as the active input fields, and the combined vector field is set at the output. The SetFieldNameList()
method takes a std::vector
of field names to use as the component fields. Alternately, the SetActiveField()
method can be used to select the fields independently.
All of the input fields must be scalar values. The type of the first field determines the type of the output vector field.
|
inline |
|
overrideprivatevirtual |
Implements vtkm::filter::Filter.
vtkm::IdComponent vtkm::filter::field_transform::CompositeVectors::GetNumberOfFields | ( | ) | const |
The number of fields specified as inputs.
This will be the number of components in the generated field.
void vtkm::filter::field_transform::CompositeVectors::SetFieldNameList | ( | const std::vector< std::string > & | fieldNameList, |
vtkm::cont::Field::Association | association = vtkm::cont::Field::Association::Any |
||
) |
Specifies the names of the fields to use as components for the output.