Go to the documentation of this file.
54 #ifndef vtk_m_worklet_contourtree_augmented_data_set_mesh_triangulation_3d_marchingcubes_h
55 #define vtk_m_worklet_contourtree_augmented_data_set_mesh_triangulation_3d_marchingcubes_h
69 namespace contourtree_augmented
123 m3d_marchingcubes::N_ALL_NEIGHBOURS,
127 CubeVertexPermutations_PermVecLength>(
135 VertexConnections_VecLength>(
143 VertexConnections_VecLength>(
201 invoke(computeMeshBoundary3dWorklet,
205 : *meshBoundaryExecObj,
207 boundarySortIndexArray
Definition: MeshBoundary3D.h:272
VTKM_CONT vtkm::cont::ArrayHandleBasic< T > make_ArrayHandle(const T *array, vtkm::Id numberOfValues, vtkm::CopyFlag copy)
A convenience function for creating an ArrayHandle from a standard C array.
Definition: ArrayHandleBasic.h:217
void GetOwnedVerticesByGlobalId(const vtkm::worklet::contourtree_augmented::mesh_dem::IdRelabeler &localToGlobalIdRelabeler, IdArrayType &ownedVertices) const
Get of global indices of the vertices owned by this mesh.
Definition: DataSetMeshTriangulation3DMarchingCubes.h:212
Groups connected points that have the same field value.
Definition: Atomic.h:19
VTKM_CONT vtkm::cont::ArrayHandleGroupVec< ArrayHandleType, NUM_COMPONENTS > make_ArrayHandleGroupVec(const ArrayHandleType &array)
make_ArrayHandleGroupVec is convenience function to generate an ArrayHandleGroupVec.
Definition: ArrayHandleGroupVec.h:244
VTKM_STATIC_CONSTEXPR_ARRAY vtkm::UInt8 InCubeConnectionsSix_NumElements
Definition: filter/scalar_topology/worklet/contourtree_augmented/meshtypes/marchingcubes_3D/Types.h:162
IdArrayType SortOrder
Definition: DataSetMesh.h:107
m3d_marchingcubes::InCubeConnectionsType InCubeConnectionsEighteen
Definition: DataSetMeshTriangulation3DMarchingCubes.h:84
m3d_marchingcubes::LinkVertexConnectionsType LinkVertexConnectionsSix
Definition: DataSetMeshTriangulation3DMarchingCubes.h:81
VTKM_STATIC_CONSTEXPR_ARRAY vtkm::UInt32 InCubeConnectionsSix[InCubeConnectionsSix_NumElements]
Definition: filter/scalar_topology/worklet/contourtree_augmented/meshtypes/marchingcubes_3D/Types.h:163
MeshStructureMarchingCubes PrepareForExecution(vtkm::cont::DeviceAdapterId device, vtkm::cont::Token &token) const
Definition: DataSetMeshTriangulation3DMarchingCubes.h:165
typename vtkm::cont::ArrayHandleGroupVec< vtkm::cont::ArrayHandle< vtkm::IdComponent >, VertexConnections_VecLength > LinkVertexConnectionsType
Definition: filter/scalar_topology/worklet/contourtree_augmented/meshtypes/marchingcubes_3D/Types.h:140
m3d_marchingcubes::InCubeConnectionsType InCubeConnectionsSix
Definition: DataSetMeshTriangulation3DMarchingCubes.h:83
IdArrayType SortIndices
Definition: DataSetMesh.h:111
constexpr vtkm::UInt8 VertexConnections_VecLength
Definition: filter/scalar_topology/worklet/contourtree_augmented/meshtypes/marchingcubes_3D/Types.h:136
bool UseGetMax
Definition: DataSetMeshTriangulation3DMarchingCubes.h:111
constexpr vtkm::UInt8 CubeVertexPermutations_NumPermutations
Definition: filter/scalar_topology/worklet/contourtree_augmented/meshtypes/marchingcubes_3D/Types.h:114
VTKM_STATIC_CONSTEXPR_ARRAY vtkm::Int8 EdgeBoundaryDetectionMasks[N_ALL_NEIGHBOURS]
Definition: filter/scalar_topology/worklet/contourtree_augmented/meshtypes/marchingcubes_3D/Types.h:82
void GetOwnedVerticesByGlobalIdImpl(const MeshTypeObj *mesh, const vtkm::worklet::contourtree_augmented::mesh_dem::IdRelabeler &localToGlobalIdRelabeler, IdArrayType &ownedVertices) const
Compute a list of the global Iss of all vertices that logically belong to the data block represented ...
Definition: DataSetMesh.h:216
vtkm::Int32 Id
Represents an ID (index into arrays).
Definition: Types.h:191
m3d_marchingcubes::CubeVertexPermutationsType CubeVertexPermutations
Definition: DataSetMeshTriangulation3DMarchingCubes.h:80
A token to hold the scope of an ArrayHandle or other object.
Definition: Token.h:35
VTKM_STATIC_CONSTEXPR_ARRAY vtkm::UInt8 InCubeConnectionsEighteen_NumElements
Definition: filter/scalar_topology/worklet/contourtree_augmented/meshtypes/marchingcubes_3D/Types.h:170
Allows launching any worklet without a dispatcher.
Definition: Invoker.h:41
m3d_marchingcubes::EdgeBoundaryDetectionMasksType EdgeBoundaryDetectionMasks
Definition: DataSetMeshTriangulation3DMarchingCubes.h:79
VTKM_STATIC_CONSTEXPR_ARRAY vtkm::IdComponent LinkVertexConnectionsEighteen[LinkVertexConnectionsEighteen_NumPairs *VertexConnections_VecLength]
Definition: filter/scalar_topology/worklet/contourtree_augmented/meshtypes/marchingcubes_3D/Types.h:156
VTKM_STATIC_CONSTEXPR_ARRAY vtkm::IdComponent LinkVertexConnectionsSix[LinkVertexConnectionsSix_NumPairs *VertexConnections_VecLength]
Definition: filter/scalar_topology/worklet/contourtree_augmented/meshtypes/marchingcubes_3D/Types.h:145
constexpr vtkm::UInt8 LinkVertexConnectionsSix_NumPairs
Definition: filter/scalar_topology/worklet/contourtree_augmented/meshtypes/marchingcubes_3D/Types.h:134
vtkm::Id3 MeshSize
Definition: DataSetMesh.h:103
VTKM_STATIC_CONSTEXPR_ARRAY vtkm::UInt8 LinkVertexConnectionsEighteen_NumPairs
Definition: filter/scalar_topology/worklet/contourtree_augmented/meshtypes/marchingcubes_3D/Types.h:150
typename vtkm::cont::ArrayHandle< vtkm::UInt32 > InCubeConnectionsType
Definition: filter/scalar_topology/worklet/contourtree_augmented/meshtypes/marchingcubes_3D/Types.h:161
A utility class that converts Ids from local to global given a mesh.
Definition: IdRelabeler.h:79
void GetBoundaryVertices(IdArrayType &boundaryVertexArray, IdArrayType &boundarySortIndexArray, MeshBoundary3DExec *meshBoundaryExecObj=nullptr) const
Definition: DataSetMeshTriangulation3DMarchingCubes.h:189
Base ExecutionObjectBase for execution objects to inherit from so that you can use an arbitrary objec...
Definition: ExecutionObjectBase.h:31
Definition: DeviceAdapterTag.h:52
Definition: DataSetMeshTriangulation3DMarchingCubes.h:72
MeshBoundary3DExec GetMeshBoundaryExecutionObject() const
Definition: DataSetMeshTriangulation3DMarchingCubes.h:183
VTKM_STATIC_CONSTEXPR_ARRAY vtkm::IdComponent CubeVertexPermutations[CubeVertexPermutations_NumPermutations *CubeVertexPermutations_PermVecLength]
Definition: filter/scalar_topology/worklet/contourtree_augmented/meshtypes/marchingcubes_3D/Types.h:126
static constexpr int MAX_OUTDEGREE
Definition: DataSetMeshTriangulation3DMarchingCubes.h:85
Definition: DataSetMesh.h:97
Definition: MeshStructureMarchingCubes.h:72
VTKM_STATIC_CONSTEXPR_ARRAY vtkm::UInt32 InCubeConnectionsEighteen[InCubeConnectionsEighteen_NumElements]
Definition: filter/scalar_topology/worklet/contourtree_augmented/meshtypes/marchingcubes_3D/Types.h:172
constexpr vtkm::UInt8 CubeVertexPermutations_PermVecLength
Definition: filter/scalar_topology/worklet/contourtree_augmented/meshtypes/marchingcubes_3D/Types.h:116
void SetPrepareForExecutionBehavior(bool getMax)
Definition: DataSetMeshTriangulation3DMarchingCubes.h:159
Definition: ComputeMeshBoundary3D.h:69
DataSetMeshTriangulation3DMarchingCubes(vtkm::Id3 meshSize)
Definition: DataSetMeshTriangulation3DMarchingCubes.h:115
An implicit array handle containing the its own indices.
Definition: ArrayHandleIndex.h:54
m3d_marchingcubes::LinkVertexConnectionsType LinkVertexConnectionsEighteen
Definition: DataSetMeshTriangulation3DMarchingCubes.h:82