VTK-m  2.0
Public Member Functions | Private Member Functions | Private Attributes | List of all members
vtkm::filter::entity_extraction::ExtractStructured Class Reference

Select piece (e.g., volume of interest) and/or subsample structured points dataset. More...

#include <ExtractStructured.h>

Inheritance diagram for vtkm::filter::entity_extraction::ExtractStructured:
vtkm::filter::FilterField vtkm::filter::Filter

Public Member Functions

VTKM_CONT vtkm::RangeId3 GetVOI () const
 
VTKM_CONT void SetVOI (vtkm::Id i0, vtkm::Id i1, vtkm::Id j0, vtkm::Id j1, vtkm::Id k0, vtkm::Id k1)
 
VTKM_CONT void SetVOI (vtkm::Id extents[6])
 
VTKM_CONT void SetVOI (vtkm::Id3 minPoint, vtkm::Id3 maxPoint)
 
VTKM_CONT void SetVOI (const vtkm::RangeId3 &voi)
 
VTKM_CONT vtkm::Id3 GetSampleRate () const
 Get the Sampling rate. More...
 
VTKM_CONT void SetSampleRate (vtkm::Id i, vtkm::Id j, vtkm::Id k)
 Set the Sampling rate. More...
 
VTKM_CONT void SetSampleRate (vtkm::Id3 sampleRate)
 Set the Sampling rate. More...
 
VTKM_CONT bool GetIncludeBoundary () const
 Get if we should include the outer boundary on a subsample. More...
 
VTKM_CONT void SetIncludeBoundary (bool value)
 Set if we should include the outer boundary on a subsample. More...
 
VTKM_CONT void SetIncludeOffset (bool value)
 
- Public Member Functions inherited from vtkm::filter::FilterField
 FilterField ()
 
VTKM_CONT void SetOutputFieldName (const std::string &name)
 
const VTKM_CONT std::string & GetOutputFieldName () const
 
VTKM_CONT void SetActiveField (const std::string &name, vtkm::cont::Field::Association association=vtkm::cont::Field::Association::Any)
 
void SetActiveField (vtkm::IdComponent index, const std::string &name, vtkm::cont::Field::Association association=vtkm::cont::Field::Association::Any)
 
const VTKM_CONT std::string & GetActiveFieldName (vtkm::IdComponent index=0) const
 
VTKM_CONT vtkm::cont::Field::Association GetActiveFieldAssociation (vtkm::IdComponent index=0) const
 
VTKM_CONT void SetActiveCoordinateSystem (vtkm::Id coord_idx)
 
VTKM_CONT void SetActiveCoordinateSystem (vtkm::IdComponent index, vtkm::Id coord_idx)
 
VTKM_CONT vtkm::Id GetActiveCoordinateSystemIndex () const
 
VTKM_CONT vtkm::Id GetActiveCoordinateSystemIndex (vtkm::IdComponent index) const
 
VTKM_CONT void SetUseCoordinateSystemAsField (bool val)
 
VTKM_CONT void SetUseCoordinateSystemAsField (vtkm::IdComponent index, bool val)
 
VTKM_CONT bool GetUseCoordinateSystemAsField (vtkm::IdComponent index=0) const
 
- Public Member Functions inherited from vtkm::filter::Filter
virtual VTKM_CONT ~Filter ()
 
virtual VTKM_CONT bool CanThread () const
 
VTKM_CONT void SetThreadsPerCPU (vtkm::Id numThreads)
 
VTKM_CONT void SetThreadsPerGPU (vtkm::Id numThreads)
 
VTKM_CONT vtkm::Id GetThreadsPerCPU () const
 
VTKM_CONT vtkm::Id GetThreadsPerGPU () const
 
VTKM_CONT bool GetRunMultiThreadedFilter () const
 
VTKM_CONT 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...
 
VTKM_CONT void SetFieldsToPass (const vtkm::filter::FieldSelection &fieldsToPass)
 Specify which fields get passed from input to output. More...
 
VTKM_CONT void SetFieldsToPass (vtkm::filter::FieldSelection &&fieldsToPass)
 Specify which fields get passed from input to output. More...
 
VTKM_CONT void SetFieldsToPass (const vtkm::filter::FieldSelection &fieldsToPass, vtkm::filter::FieldSelection::Mode mode)
 Specify which fields get passed from input to output. More...
 
VTKM_CONT 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...
 
VTKM_CONT 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...
 
VTKM_CONT 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...
 
VTKM_CONT void SetFieldsToPass (const std::string &fieldname, vtkm::filter::FieldSelection::Mode mode)
 Specify which fields get passed from input to output. More...
 
const VTKM_CONT vtkm::filter::FieldSelectionGetFieldsToPass () const
 Specify which fields get passed from input to output. More...
 
VTKM_CONT vtkm::filter::FieldSelectionGetFieldsToPass ()
 Specify which fields get passed from input to output. More...
 
VTKM_CONT void SetPassCoordinateSystems (bool flag)
 Specify whether to always pass coordinate systems. More...
 
VTKM_CONT bool GetPassCoordinateSystems () const
 Specify whether to always pass coordinate systems. More...
 
VTKM_CONT vtkm::cont::DataSet Execute (const vtkm::cont::DataSet &input)
 
VTKM_CONT vtkm::cont::PartitionedDataSet Execute (const vtkm::cont::PartitionedDataSet &input)
 

Private Member Functions

VTKM_CONT vtkm::cont::DataSet DoExecute (const vtkm::cont::DataSet &input) override
 

Private Attributes

vtkm::RangeId3 VOI = vtkm::RangeId3(0, -1, 0, -1, 0, -1)
 
vtkm::Id3 SampleRate = { 1, 1, 1 }
 
bool IncludeBoundary = false
 
bool IncludeOffset = false
 

Additional Inherited Members

- Protected Member Functions inherited from vtkm::filter::FilterField
const VTKM_CONT vtkm::cont::FieldGetFieldFromDataSet (const vtkm::cont::DataSet &input) const
 
const VTKM_CONT vtkm::cont::FieldGetFieldFromDataSet (vtkm::IdComponent index, const vtkm::cont::DataSet &input) const
 
template<typename Functor , typename... Args>
VTKM_CONT void CastAndCallScalarField (const vtkm::cont::UnknownArrayHandle &fieldArray, Functor &&functor, Args &&... args) const
 
template<typename Functor , typename... Args>
VTKM_CONT void CastAndCallScalarField (const vtkm::cont::Field &field, Functor &&functor, Args &&... args) const
 
template<vtkm::IdComponent VecSize, typename Functor , typename... Args>
VTKM_CONT void CastAndCallVecField (const vtkm::cont::UnknownArrayHandle &fieldArray, Functor &&functor, Args &&... args) const
 
template<vtkm::IdComponent VecSize, typename Functor , typename... Args>
VTKM_CONT void CastAndCallVecField (const vtkm::cont::Field &field, Functor &&functor, Args &&... args) const
 
VTKM_CONT 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 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 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 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...
 
- Protected Member Functions inherited from vtkm::filter::Filter
VTKM_CONT vtkm::cont::DataSet CreateResult (const vtkm::cont::DataSet &inDataSet) const
 Create the output data set for DoExecute. More...
 
VTKM_CONT 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 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 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...
 
virtual VTKM_CONT vtkm::cont::PartitionedDataSet DoExecutePartitions (const vtkm::cont::PartitionedDataSet &inData)
 
template<typename FieldMapper >
VTKM_CONT 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 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...
 
- Protected Attributes inherited from vtkm::filter::Filter
vtkm::cont::Invoker Invoke
 

Detailed Description

Select piece (e.g., volume of interest) and/or subsample structured points dataset.

Select or subsample a portion of an input structured dataset. The selected portion of interested is referred to as the Volume Of Interest, or VOI. The output of this filter is a structured dataset. The filter treats input data of any topological dimension (i.e., point, line, plane, or volume) and can generate output data of any topological dimension.

To use this filter set the VOI ivar which are i-j-k min/max indices that specify a rectangular region in the data. (Note that these are 0-offset.) You can also specify a sampling rate to subsample the data.

Typical applications of this filter are to extract a slice from a volume for image processing, subsampling large volumes to reduce data size, or extracting regions of a volume with interesting data.

Member Function Documentation

◆ DoExecute()

VTKM_CONT vtkm::cont::DataSet vtkm::filter::entity_extraction::ExtractStructured::DoExecute ( const vtkm::cont::DataSet input)
overrideprivatevirtual

Implements vtkm::filter::Filter.

◆ GetIncludeBoundary()

VTKM_CONT bool vtkm::filter::entity_extraction::ExtractStructured::GetIncludeBoundary ( ) const
inline

Get if we should include the outer boundary on a subsample.

◆ GetSampleRate()

VTKM_CONT vtkm::Id3 vtkm::filter::entity_extraction::ExtractStructured::GetSampleRate ( ) const
inline

Get the Sampling rate.

◆ GetVOI()

VTKM_CONT vtkm::RangeId3 vtkm::filter::entity_extraction::ExtractStructured::GetVOI ( ) const
inline

◆ SetIncludeBoundary()

VTKM_CONT void vtkm::filter::entity_extraction::ExtractStructured::SetIncludeBoundary ( bool  value)
inline

Set if we should include the outer boundary on a subsample.

◆ SetIncludeOffset()

VTKM_CONT void vtkm::filter::entity_extraction::ExtractStructured::SetIncludeOffset ( bool  value)
inline

◆ SetSampleRate() [1/2]

VTKM_CONT void vtkm::filter::entity_extraction::ExtractStructured::SetSampleRate ( vtkm::Id  i,
vtkm::Id  j,
vtkm::Id  k 
)
inline

Set the Sampling rate.

◆ SetSampleRate() [2/2]

VTKM_CONT void vtkm::filter::entity_extraction::ExtractStructured::SetSampleRate ( vtkm::Id3  sampleRate)
inline

Set the Sampling rate.

◆ SetVOI() [1/4]

VTKM_CONT void vtkm::filter::entity_extraction::ExtractStructured::SetVOI ( const vtkm::RangeId3 voi)
inline

◆ SetVOI() [2/4]

VTKM_CONT void vtkm::filter::entity_extraction::ExtractStructured::SetVOI ( vtkm::Id  extents[6])
inline

◆ SetVOI() [3/4]

VTKM_CONT void vtkm::filter::entity_extraction::ExtractStructured::SetVOI ( vtkm::Id  i0,
vtkm::Id  i1,
vtkm::Id  j0,
vtkm::Id  j1,
vtkm::Id  k0,
vtkm::Id  k1 
)
inline

◆ SetVOI() [4/4]

VTKM_CONT void vtkm::filter::entity_extraction::ExtractStructured::SetVOI ( vtkm::Id3  minPoint,
vtkm::Id3  maxPoint 
)
inline

Member Data Documentation

◆ IncludeBoundary

bool vtkm::filter::entity_extraction::ExtractStructured::IncludeBoundary = false
private

◆ IncludeOffset

bool vtkm::filter::entity_extraction::ExtractStructured::IncludeOffset = false
private

◆ SampleRate

vtkm::Id3 vtkm::filter::entity_extraction::ExtractStructured::SampleRate = { 1, 1, 1 }
private

◆ VOI

vtkm::RangeId3 vtkm::filter::entity_extraction::ExtractStructured::VOI = vtkm::RangeId3(0, -1, 0, -1, 0, -1)
private

The documentation for this class was generated from the following file: