VTK-m  2.0
Classes | Namespaces | Functions
MarchingCells.h File Reference
#include <vtkm/BinaryPredicates.h>
#include <vtkm/VectorAnalysis.h>
#include <vtkm/exec/CellDerivative.h>
#include <vtkm/exec/ParametricCoordinates.h>
#include <vtkm/cont/ArrayCopy.h>
#include <vtkm/cont/ArrayCopyDevice.h>
#include <vtkm/cont/ArrayHandle.h>
#include <vtkm/cont/ArrayHandleIndex.h>
#include <vtkm/cont/ArrayHandleTransform.h>
#include <vtkm/cont/ArrayHandleZip.h>
#include <vtkm/cont/Invoker.h>
#include <vtkm/worklet/Keys.h>
#include <vtkm/worklet/ScatterCounting.h>
#include <vtkm/worklet/ScatterPermutation.h>
#include <vtkm/filter/contour/worklet/contour/CommonState.h>
#include <vtkm/filter/contour/worklet/contour/MarchingCellTables.h>
#include <vtkm/filter/vector_analysis/worklet/gradient/PointGradient.h>
#include <vtkm/filter/vector_analysis/worklet/gradient/StructuredPointGradient.h>
#include <vtkm/worklet/WorkletReduceByKey.h>

Go to the source code of this file.

Classes

class  vtkm::worklet::marching_cells::ClassifyCell< T >
 
class  vtkm::worklet::marching_cells::EdgeWeightGenerateMetaData
 Used to store data need for the EdgeWeightGenerate worklet. More...
 
class  vtkm::worklet::marching_cells::EdgeWeightGenerateMetaData::ExecObject
 
class  vtkm::worklet::marching_cells::EdgeWeightGenerate< T >
 Compute the weights for each edge that is used to generate a point in the resulting iso-surface. More...
 
struct  vtkm::worklet::marching_cells::MultiContourLess
 
struct  vtkm::worklet::marching_cells::MergeDuplicateValues
 
struct  vtkm::worklet::marching_cells::CopyEdgeIds
 
struct  vtkm::worklet::marching_cells::EdgeVertex< Comp >
 
class  vtkm::worklet::marching_cells::NormalsWorkletPass1
 
class  vtkm::worklet::marching_cells::NormalsWorkletPass2
 
struct  vtkm::worklet::marching_cells::GenerateNormals
 

Namespaces

 vtkm
 Groups connected points that have the same field value.
 
 vtkm::worklet
 VTK-m Worklets.
 
 vtkm::worklet::marching_cells
 

Functions

template<typename S >
vtkm::cont::ArrayHandle< vtkm::Float32, S > vtkm::worklet::marching_cells::make_ScalarField (const vtkm::cont::ArrayHandle< vtkm::Float32, S > &ah)
 
template<typename S >
vtkm::cont::ArrayHandle< vtkm::Float64, S > vtkm::worklet::marching_cells::make_ScalarField (const vtkm::cont::ArrayHandle< vtkm::Float64, S > &ah)
 
template<typename S >
vtkm::cont::ArrayHandleCast< vtkm::FloatDefault, vtkm::cont::ArrayHandle< vtkm::UInt8, S > > vtkm::worklet::marching_cells::make_ScalarField (const vtkm::cont::ArrayHandle< vtkm::UInt8, S > &ah)
 
template<typename S >
vtkm::cont::ArrayHandleCast< vtkm::FloatDefault, vtkm::cont::ArrayHandle< vtkm::Int8, S > > vtkm::worklet::marching_cells::make_ScalarField (const vtkm::cont::ArrayHandle< vtkm::Int8, S > &ah)
 
template<typename KeyType , typename KeyStorage >
void vtkm::worklet::marching_cells::MergeDuplicates (const vtkm::cont::Invoker &invoker, const vtkm::cont::ArrayHandle< KeyType, KeyStorage > &original_keys, vtkm::cont::ArrayHandle< vtkm::FloatDefault > &weights, vtkm::cont::ArrayHandle< vtkm::Id2 > &edgeIds, vtkm::cont::ArrayHandle< vtkm::Id > &cellids, vtkm::cont::ArrayHandle< vtkm::Id > &connectivity)
 
template<typename CellSetType , typename CoordinateSystem , typename ValueType , typename StorageTagField , typename StorageTagVertices , typename StorageTagNormals , typename CoordinateType , typename NormalType >
vtkm::cont::CellSetSingleType vtkm::worklet::marching_cells::execute (const CellSetType &cells, const CoordinateSystem &coordinateSystem, const std::vector< ValueType > &isovalues, const vtkm::cont::ArrayHandle< ValueType, StorageTagField > &inputField, vtkm::cont::ArrayHandle< vtkm::Vec< CoordinateType, 3 >, StorageTagVertices > &vertices, vtkm::cont::ArrayHandle< vtkm::Vec< NormalType, 3 >, StorageTagNormals > &normals, vtkm::worklet::contour::CommonState &sharedState)