VTK-m  2.0
MeshConnectivityBuilder.h
Go to the documentation of this file.
1 //============================================================================
2 // Copyright (c) Kitware, Inc.
3 // All rights reserved.
4 // See LICENSE.txt for details.
5 //
6 // This software is distributed WITHOUT ANY WARRANTY; without even
7 // the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
8 // PURPOSE. See the above copyright notice for more information.
9 //============================================================================
10 #ifndef vtk_m_rendering_raytracing_MeshConnectivityBuilder_h
11 #define vtk_m_rendering_raytracing_MeshConnectivityBuilder_h
12 
13 #include <vtkm/cont/DataSet.h>
15 
16 namespace vtkm
17 {
18 namespace rendering
19 {
20 namespace raytracing
21 {
22 
24 {
25 public:
28 
29  VTKM_CONT
31  const vtkm::cont::CoordinateSystem& coordinates);
32 
33  VTKM_CONT
35  vtkm::cont::CellSetStructured<3>& cellSetStructured);
36 
38 
40 
42 
43 protected:
44  VTKM_CONT
45  void BuildConnectivity(vtkm::cont::CellSetSingleType<>& cellSetUnstructured,
47  vtkm::Bounds coordsBounds);
48 
49  VTKM_CONT
50  void BuildConnectivity(vtkm::cont::CellSetExplicit<>& cellSetUnstructured,
52  vtkm::Bounds coordsBounds);
53 
57 };
58 }
59 }
60 } //namespace vtkm::rendering::raytracing
61 #endif
vtkm::rendering::raytracing::MeshConnectivityBuilder::ExternalTrianglesStructured
VTKM_CONT vtkm::cont::ArrayHandle< vtkm::Id4 > ExternalTrianglesStructured(vtkm::cont::CellSetStructured< 3 > &cellSetStructured)
vtkm::cont::ArrayHandle< vtkm::Id4 >
vtkm::rendering::raytracing::MeshConnectivityBuilder::GetTriangles
vtkm::cont::ArrayHandle< vtkm::Id4 > GetTriangles()
vtkm
Groups connected points that have the same field value.
Definition: Atomic.h:19
vtkm::cont::CellSetStructured< 3 >
vtkm::rendering::raytracing::MeshConnectivityBuilder
Definition: MeshConnectivityBuilder.h:23
vtkm::cont::CellSetSingleType
Definition: CastAndCall.h:34
vtkm::cont::UnknownCellSet
A CellSet of an unknown type.
Definition: UnknownCellSet.h:48
vtkm::rendering::raytracing::MeshConnectivityBuilder::BuildConnectivity
VTKM_CONT MeshConnectivityContainer * BuildConnectivity(const vtkm::cont::UnknownCellSet &cellset, const vtkm::cont::CoordinateSystem &coordinates)
vtkm::rendering::raytracing::MeshConnectivityBuilder::FaceConnectivity
vtkm::cont::ArrayHandle< vtkm::Id > FaceConnectivity
Definition: MeshConnectivityBuilder.h:54
vtkm::cont::CoordinateSystem
Definition: CoordinateSystem.h:25
vtkm::rendering::raytracing::MeshConnectivityBuilder::Triangles
vtkm::cont::ArrayHandle< vtkm::Id4 > Triangles
Definition: MeshConnectivityBuilder.h:56
vtkm::cont::CoordinateSystem::MultiplexerArrayType
vtkm::cont::ArrayHandleMultiplexerFromList< vtkm::ListAppend< ArraysFloatDefault, ArraysFloatNonDefault > > MultiplexerArrayType
Definition: CoordinateSystem.h:95
vtkm::rendering::raytracing::MeshConnectivityBuilder::~MeshConnectivityBuilder
~MeshConnectivityBuilder()
MeshConnectivityContainers.h
VTKM_CONT
#define VTKM_CONT
Definition: ExportMacros.h:57
vtkm::Bounds
Represent an axis-aligned 3D bounds in space.
Definition: Bounds.h:29
vtkm::rendering::raytracing::MeshConnectivityBuilder::FaceOffsets
vtkm::cont::ArrayHandle< vtkm::Id > FaceOffsets
Definition: MeshConnectivityBuilder.h:55
vtkm::rendering::raytracing::MeshConnectivityBuilder::GetFaceConnectivity
vtkm::cont::ArrayHandle< vtkm::Id > GetFaceConnectivity()
vtkm::cont::CellSetExplicit
Definition: CastAndCall.h:36
vtkm::rendering::raytracing::MeshConnectivityBuilder::MeshConnectivityBuilder
MeshConnectivityBuilder()
vtkm::rendering::raytracing::MeshConnectivityBuilder::GetFaceOffsets
vtkm::cont::ArrayHandle< vtkm::Id > GetFaceOffsets()
vtkm::rendering::raytracing::MeshConnectivityContainer
Definition: MeshConnectivityContainers.h:24
DataSet.h