Go to the documentation of this file.
11 #ifndef vtk_m_worklet_Contour_h
12 #define vtk_m_worklet_Contour_h
34 template <
typename CoordinateType,
typename CellSetType,
typename... Args>
36 const CellSetType& cells,
43 template <
typename... Args>
56 template <
typename CellSetType,
typename CoordinateType,
typename... Args>
57 void operator()(
const CellSetType& cells, CoordinateType&& coordinateSystem, Args&&... args)
const
92 template <
typename ValueType,
94 typename CoordinateSystem,
95 typename StorageTagField,
96 typename CoordinateType,
97 typename StorageTagVertices>
99 const std::vector<ValueType>& isovalues,
100 const CellSetType& cells,
101 const CoordinateSystem& coordinateSystem,
122 template <
typename ValueType,
123 typename CellSetType,
124 typename CoordinateSystem,
125 typename StorageTagField,
126 typename CoordinateType,
127 typename StorageTagVertices,
128 typename StorageTagNormals>
130 const std::vector<ValueType>& isovalues,
131 const CellSetType& cells,
132 const CoordinateSystem& coordinateSystem,
153 template <
typename ValueType,
typename StorageType>
163 this->SharedState.InterpolationWeights,
179 #endif // vtk_m_worklet_Contour_h
vtkm::cont::ArrayHandle< vtkm::Id2 > GetInterpolationEdgeIds() const
Definition: worklet/Contour.h:77
vtkm::cont::CellSetSingleType Run(const std::vector< ValueType > &isovalues, const CellSetType &cells, const CoordinateSystem &coordinateSystem, const vtkm::cont::ArrayHandle< ValueType, StorageTagField > &input, vtkm::cont::ArrayHandle< vtkm::Vec< CoordinateType, 3 >, StorageTagVertices > &vertices)
Definition: worklet/Contour.h:98
Groups connected points that have the same field value.
Definition: Atomic.h:19
vtkm::cont::ArrayHandle< ValueType > ProcessPointField(const vtkm::cont::ArrayHandle< ValueType, StorageType > &input) const
Definition: worklet/Contour.h:154
Definition: FieldPropagation.h:25
void SetMergeDuplicatePoints(bool merge)
Definition: worklet/Contour.h:83
bool GenerateNormals
Definition: CommonState.h:32
Definition: CastAndCall.h:34
void CastAndCall(const DynamicObject &dynamicObject, Functor &&f, Args &&... args)
A Generic interface to CastAndCall.
Definition: CastAndCall.h:47
bool GetMergeDuplicatePoints() const
Definition: worklet/Contour.h:86
vtkm::cont::CellSetSingleType execute(const vtkm::cont::CellSetStructured< 3 > &cells, const vtkm::cont::ArrayHandleUniformPointCoordinates &coordinateSystem, const std::vector< ValueType > &isovalues, const vtkm::cont::ArrayHandle< ValueType, StorageTagField > &inputField, vtkm::cont::ArrayHandle< vtkm::Vec< CoordinateType, 3 >, StorageTagVertices > &points, vtkm::cont::ArrayHandle< vtkm::Vec< NormalType, 3 >, StorageTagNormals > &normals, vtkm::worklet::contour::CommonState &sharedState)
Definition: FlyingEdges.h:49
Definition: worklet/Contour.h:54
vtkm::cont::CellSetSingleType Run(const std::vector< ValueType > &isovalues, const CellSetType &cells, const CoordinateSystem &coordinateSystem, const vtkm::cont::ArrayHandle< ValueType, StorageTagField > &input, vtkm::cont::ArrayHandle< vtkm::Vec< CoordinateType, 3 >, StorageTagVertices > &vertices, vtkm::cont::ArrayHandle< vtkm::Vec< CoordinateType, 3 >, StorageTagNormals > &normals)
Definition: worklet/Contour.h:129
bool MergeDuplicatePoints
Definition: CommonState.h:31
void ReleaseCellMapArrays()
Definition: worklet/Contour.h:171
Compute the isosurface of a given 3D data set, supports all linear cell types.
Definition: worklet/Contour.h:67
Dispatcher for worklets that inherit from WorkletMapField.
Definition: DispatcherMapField.h:25
Contour(bool mergeDuplicates=true)
Definition: worklet/Contour.h:71
void operator()(const CoordinateType &coords, const CellSetType &cells, vtkm::cont::CellSetSingleType<> &result, Args &&... args) const
Definition: worklet/Contour.h:35
Definition: CommonState.h:24
void operator()(const CellSetType &cells, CoordinateType &&coordinateSystem, Args &&... args) const
Definition: worklet/Contour.h:57
vtkm::cont::ArrayHandle< vtkm::Id > GetCellIdMap() const
Definition: worklet/Contour.h:89
vtkm::worklet::contour::CommonState SharedState
Definition: worklet/Contour.h:174
A short fixed-length array.
Definition: Types.h:767
vtkm::cont::CellSetSingleType 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)
Definition: MarchingCells.h:602
vtkm::cont::ArrayHandle< vtkm::Id > CellIdMap
Definition: CommonState.h:35
void operator()(const vtkm::cont::ArrayHandle< vtkm::Vec3f, vtkm::cont::StorageTagUniformPoints > &coords, const vtkm::cont::CellSetStructured< 3 > &cells, vtkm::cont::CellSetSingleType<> &result, Args &&... args) const
Definition: worklet/Contour.h:44
vtkm::cont::ArrayHandle< vtkm::Id2 > InterpolationEdgeIds
Definition: CommonState.h:34
VTKM_CONT void ReleaseResources() const
Releases all resources in both the control and execution environments.
Definition: ArrayHandle.h:559
Definition: worklet/Contour.h:32