VTK-m  1.6
Public Types | Public Member Functions | Private Attributes | List of all members
vtkm::filter::Contour Class Reference

generate isosurface(s) from a Volume More...

#include <Contour.h>

Inheritance diagram for vtkm::filter::Contour:
vtkm::filter::FilterDataSetWithField< Contour > vtkm::filter::Filter< Contour >

Public Types

using SupportedTypes = vtkm::List< vtkm::UInt8, vtkm::Int8, vtkm::Float32, vtkm::Float64 >
 
- Public Types inherited from vtkm::filter::Filter< Contour >
using SupportedTypes = VTKM_DEFAULT_TYPE_LIST
 Specify which subset of types a filter supports. More...
 
using AdditionalFieldStorage = vtkm::ListEmpty
 Specify which additional field storage to support. More...
 
using SupportedStructuredCellSets = VTKM_DEFAULT_CELL_SET_LIST_STRUCTURED
 Specify which structured cell sets to support. More...
 
using SupportedUnstructuredCellSets = VTKM_DEFAULT_CELL_SET_LIST_UNSTRUCTURED
 Specify which unstructured cell sets to support. More...
 
using SupportedCellSets = VTKM_DEFAULT_CELL_SET_LIST
 Specify which unstructured cell sets to support. More...
 

Public Member Functions

 Contour ()
 
void SetNumberOfIsoValues (vtkm::Id num)
 
vtkm::Id GetNumberOfIsoValues () const
 
void SetIsoValue (vtkm::Float64 v)
 
void SetIsoValue (vtkm::Id index, vtkm::Float64)
 
void SetIsoValues (const std::vector< vtkm::Float64 > &values)
 
vtkm::Float64 GetIsoValue (vtkm::Id index) const
 
VTKM_CONT void SetMergeDuplicatePoints (bool on)
 Set/Get whether the points generated should be unique for every triangle or will duplicate points be merged together. More...
 
VTKM_CONT bool GetMergeDuplicatePoints () const
 
VTKM_CONT void SetGenerateNormals (bool on)
 Set/Get whether normals should be generated. More...
 
VTKM_CONT bool GetGenerateNormals () const
 
VTKM_CONT void SetAddInterpolationEdgeIds (bool on)
 Set/Get whether to append the ids of the intersected edges to the vertices of the isosurface triangles. Off by default. More...
 
VTKM_CONT bool GetAddInterpolationEdgeIds () const
 
VTKM_CONT void SetComputeFastNormalsForStructured (bool on)
 Set/Get whether the fast path should be used for normals computation for structured datasets. More...
 
VTKM_CONT bool GetComputeFastNormalsForStructured () const
 
VTKM_CONT void SetComputeFastNormalsForUnstructured (bool on)
 Set/Get whether the fast path should be used for normals computation for unstructured datasets. More...
 
VTKM_CONT bool GetComputeFastNormalsForUnstructured () const
 
VTKM_CONT void SetNormalArrayName (const std::string &name)
 
const VTKM_CONT std::string & GetNormalArrayName () const
 
template<typename T , typename StorageType , typename DerivedPolicy >
vtkm::cont::DataSet DoExecute (const vtkm::cont::DataSet &input, const vtkm::cont::ArrayHandle< T, StorageType > &field, const vtkm::filter::FieldMetadata &fieldMeta, vtkm::filter::PolicyBase< DerivedPolicy > policy)
 vtk_m_filter_ContourExecuteInteger_cxx More...
 
template<typename DerivedPolicy >
VTKM_CONT bool MapFieldOntoOutput (vtkm::cont::DataSet &result, const vtkm::cont::Field &field, vtkm::filter::PolicyBase< DerivedPolicy > policy)
 
template<typename T , typename StorageType , typename DerivedPolicy >
VTKM_CONT bool DoMapField (vtkm::cont::DataSet &result, const vtkm::cont::ArrayHandle< T, StorageType > &input, const vtkm::filter::FieldMetadata &fieldMeta, vtkm::filter::PolicyBase< DerivedPolicy >)
 
- Public Member Functions inherited from vtkm::filter::FilterDataSetWithField< Contour >
VTKM_CONT FilterDataSetWithField ()
 
VTKM_CONT ~FilterDataSetWithField ()
 
VTKM_CONT void SetActiveCoordinateSystem (vtkm::Id index)
 
VTKM_CONT vtkm::Id GetActiveCoordinateSystemIndex () const
 
VTKM_CONT void SetActiveField (const std::string &name, vtkm::cont::Field::Association association=vtkm::cont::Field::Association::ANY)
 Choose the field to operate on. More...
 
const VTKM_CONT std::string & GetActiveFieldName () const
 
VTKM_CONT vtkm::cont::Field::Association GetActiveFieldAssociation () const
 
VTKM_CONT void SetUseCoordinateSystemAsField (bool val)
 To simply use the active coordinate system as the field to operate on, set UseCoordinateSystemAsField to true. More...
 
VTKM_CONT bool GetUseCoordinateSystemAsField () const
 
VTKM_CONT bool MapFieldOntoOutput (vtkm::cont::DataSet &result, const vtkm::cont::Field &field, vtkm::filter::PolicyBase< DerivedPolicy > policy)
 
VTKM_CONT vtkm::cont::DataSet PrepareForExecution (const vtkm::cont::DataSet &input, vtkm::filter::PolicyBase< DerivedPolicy > policy)
 
- Public Member Functions inherited from vtkm::filter::Filter< Contour >
VTKM_CONT Filter ()
 
VTKM_CONT ~Filter ()
 
VTKM_CONT void SetFieldsToPass (const 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::ModeEnum mode)
 
VTKM_CONT void SetFieldsToPass (const std::string &fieldname, vtkm::cont::Field::Association association, vtkm::filter::FieldSelection::ModeEnum mode=vtkm::filter::FieldSelection::MODE_SELECT)
 
const VTKM_CONT vtkm::filter::FieldSelectionGetFieldsToPass () const
 
VTKM_CONT vtkm::filter::FieldSelectionGetFieldsToPass ()
 
VTKM_CONT vtkm::cont::DataSet Execute (const vtkm::cont::DataSet &input)
 Executes the filter on the input and produces a result dataset. More...
 
VTKM_DEPRECATED(1.6, "Filter::Execute no longer guarantees policy modifications. " "Specify default types in CMake configuration instead.") VTKM_CONT vtkm VTKM_CONT vtkm::cont::PartitionedDataSet Execute (const vtkm::cont::PartitionedDataSet &input)
 Executes the filter on the input PartitionedDataSet and produces a result PartitionedDataSet. More...
 
VTKM_DEPRECATED(1.6, "Filter::Execute no longer guarantees policy modifications. " "Specify default types in CMake configuration instead.") VTKM_CONT vtkm VTKM_CONT void MapFieldsToPass (const vtkm::cont::DataSet &input, vtkm::cont::DataSet &output, vtkm::filter::PolicyBase< DerivedPolicy > policy)
 Map fields from input dataset to output. More...
 
void SetInvoker (vtkm::cont::Invoker inv)
 Specify the vtkm::cont::Invoker to be used to execute worklets by this filter instance. More...
 

Private Attributes

std::vector< vtkm::Float64IsoValues
 
bool GenerateNormals
 
bool AddInterpolationEdgeIds
 
bool ComputeFastNormalsForStructured
 
bool ComputeFastNormalsForUnstructured
 
std::string NormalArrayName
 
std::string InterpolationEdgeIdsArrayName
 
vtkm::worklet::Contour Worklet
 

Additional Inherited Members

- Protected Attributes inherited from vtkm::filter::Filter< Contour >
vtkm::cont::Invoker Invoke
 

Detailed Description

generate isosurface(s) from a Volume

Takes as input a volume (e.g., 3D structured point set) and generates on output one or more isosurfaces. Multiple contour values must be specified to generate the isosurfaces.

Warning
This filter is currently only supports 3D volumes.

Member Typedef Documentation

◆ SupportedTypes

Constructor & Destructor Documentation

◆ Contour()

vtkm::filter::Contour::Contour ( )

Member Function Documentation

◆ DoExecute()

template<typename T , typename StorageType , typename DerivedPolicy >
VTKM_DEPRECATED_SUPPRESS_BEGIN template VTKM_FILTER_CONTOUR_TEMPLATE_EXPORT vtkm::cont::DataSet vtkm::filter::Contour::DoExecute ( const vtkm::cont::DataSet input,
const vtkm::cont::ArrayHandle< T, StorageType > &  field,
const vtkm::filter::FieldMetadata fieldMeta,
vtkm::filter::PolicyBase< DerivedPolicy >  policy 
)

vtk_m_filter_ContourExecuteInteger_cxx

◆ DoMapField()

template<typename T , typename StorageType , typename DerivedPolicy >
VTKM_CONT bool vtkm::filter::Contour::DoMapField ( vtkm::cont::DataSet result,
const vtkm::cont::ArrayHandle< T, StorageType > &  input,
const vtkm::filter::FieldMetadata fieldMeta,
vtkm::filter::PolicyBase< DerivedPolicy >   
)
inline

◆ GetAddInterpolationEdgeIds()

VTKM_CONT bool vtkm::filter::Contour::GetAddInterpolationEdgeIds ( ) const
inline

◆ GetComputeFastNormalsForStructured()

VTKM_CONT bool vtkm::filter::Contour::GetComputeFastNormalsForStructured ( ) const
inline

◆ GetComputeFastNormalsForUnstructured()

VTKM_CONT bool vtkm::filter::Contour::GetComputeFastNormalsForUnstructured ( ) const
inline

◆ GetGenerateNormals()

VTKM_CONT bool vtkm::filter::Contour::GetGenerateNormals ( ) const
inline

◆ GetIsoValue()

vtkm::Float64 vtkm::filter::Contour::GetIsoValue ( vtkm::Id  index) const

◆ GetMergeDuplicatePoints()

VTKM_CONT bool vtkm::filter::Contour::GetMergeDuplicatePoints ( ) const
inline

◆ GetNormalArrayName()

const VTKM_CONT std::string& vtkm::filter::Contour::GetNormalArrayName ( ) const
inline

◆ GetNumberOfIsoValues()

vtkm::Id vtkm::filter::Contour::GetNumberOfIsoValues ( ) const

◆ MapFieldOntoOutput()

template<typename DerivedPolicy >
VTKM_CONT bool vtkm::filter::Contour::MapFieldOntoOutput ( vtkm::cont::DataSet result,
const vtkm::cont::Field field,
vtkm::filter::PolicyBase< DerivedPolicy >  policy 
)
inline

◆ SetAddInterpolationEdgeIds()

VTKM_CONT void vtkm::filter::Contour::SetAddInterpolationEdgeIds ( bool  on)
inline

Set/Get whether to append the ids of the intersected edges to the vertices of the isosurface triangles. Off by default.

◆ SetComputeFastNormalsForStructured()

VTKM_CONT void vtkm::filter::Contour::SetComputeFastNormalsForStructured ( bool  on)
inline

Set/Get whether the fast path should be used for normals computation for structured datasets.

Off by default.

◆ SetComputeFastNormalsForUnstructured()

VTKM_CONT void vtkm::filter::Contour::SetComputeFastNormalsForUnstructured ( bool  on)
inline

Set/Get whether the fast path should be used for normals computation for unstructured datasets.

On by default.

◆ SetGenerateNormals()

VTKM_CONT void vtkm::filter::Contour::SetGenerateNormals ( bool  on)
inline

Set/Get whether normals should be generated.

Off by default. If enabled, the default behaviour is to generate high quality normals for structured datasets, using gradients, and generate fast normals for unstructured datasets based on the result triangle mesh.

◆ SetIsoValue() [1/2]

void vtkm::filter::Contour::SetIsoValue ( vtkm::Float64  v)
inline

◆ SetIsoValue() [2/2]

void vtkm::filter::Contour::SetIsoValue ( vtkm::Id  index,
vtkm::Float64   
)

◆ SetIsoValues()

void vtkm::filter::Contour::SetIsoValues ( const std::vector< vtkm::Float64 > &  values)

◆ SetMergeDuplicatePoints()

VTKM_CONT void vtkm::filter::Contour::SetMergeDuplicatePoints ( bool  on)
inline

Set/Get whether the points generated should be unique for every triangle or will duplicate points be merged together.

Duplicate points are identified by the unique edge it was generated from.

◆ SetNormalArrayName()

VTKM_CONT void vtkm::filter::Contour::SetNormalArrayName ( const std::string &  name)
inline

◆ SetNumberOfIsoValues()

void vtkm::filter::Contour::SetNumberOfIsoValues ( vtkm::Id  num)

Member Data Documentation

◆ AddInterpolationEdgeIds

bool vtkm::filter::Contour::AddInterpolationEdgeIds
private

◆ ComputeFastNormalsForStructured

bool vtkm::filter::Contour::ComputeFastNormalsForStructured
private

◆ ComputeFastNormalsForUnstructured

bool vtkm::filter::Contour::ComputeFastNormalsForUnstructured
private

◆ GenerateNormals

bool vtkm::filter::Contour::GenerateNormals
private

◆ InterpolationEdgeIdsArrayName

std::string vtkm::filter::Contour::InterpolationEdgeIdsArrayName
private

◆ IsoValues

std::vector<vtkm::Float64> vtkm::filter::Contour::IsoValues
private

◆ NormalArrayName

std::string vtkm::filter::Contour::NormalArrayName
private

◆ Worklet

vtkm::worklet::Contour vtkm::filter::Contour::Worklet
private

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