Go to the documentation of this file.
11 #ifndef vtk_m_interop_anari_ANARIMapperVolume_h
12 #define vtk_m_interop_anari_ANARIMapperVolume_h
27 anari_cpp::Array3D
Data{
nullptr };
37 anari_cpp::Array1D
Index{
nullptr };
72 anari_cpp::Device device,
74 const std::string& name =
"<volume>",
84 void SetActor(
const ANARIActor& actor)
override;
89 void SetANARIColorMap(anari_cpp::Array1D color,
90 anari_cpp::Array1D opacity,
91 bool releaseArrays =
true)
override;
94 void SetANARIColorMapValueRange(
const vtkm::Vec2f_32& valueRange)
override;
98 void SetANARIColorMapOpacityScale(
vtkm::Float32 opacityScale)
override;
100 anari_cpp::SpatialField GetANARISpatialField()
override;
101 anari_cpp::Volume GetANARIVolume()
override;
107 void ConstructArrays(
bool regenerate =
false);
109 void UpdateSpatialField();
114 anari_cpp::Device Device{
nullptr };
115 anari_cpp::SpatialField SpatialField{
nullptr };
116 anari_cpp::Volume Volume{
nullptr };
120 void ReleaseArrays();
anari_cpp::Array1D VertexData
Definition: ANARIMapperVolume.h:36
vtkm::cont::ArrayHandle< vtkm::UInt8 > CellType
Definition: ANARIMapperVolume.h:59
Definition: VtkmANARITypes.h:30
anari_cpp::Array1D VertexPosition
Definition: ANARIMapperVolume.h:35
vtkm::cont::ArrayHandle< vtkm::Vec3f_32 > VertexPosition
Definition: ANARIMapperVolume.h:54
Groups connected points that have the same field value.
Definition: Atomic.h:19
Color Table for coloring arbitrary fields.
Definition: cont/ColorTable.h:89
Definition: ANARIMapperVolume.h:33
std::shared_ptr< vtkm::cont::Token > Token
Definition: ANARIMapperVolume.h:49
int Dims[3]
Definition: ANARIMapperVolume.h:28
bool IndexPrefixed
Definition: ANARIMapperVolume.h:41
Container of all relevant ANARI scene object handles.
Definition: ANARIMapperVolume.h:112
This is the base class used for all ANARI mappers.
Definition: ANARIMapper.h:37
Raw ANARI arrays and parameter values set on the ANARISpatialField.
Definition: ANARIMapperVolume.h:25
anari_cpp::Array1D CellData
Definition: ANARIMapperVolume.h:39
vtkm::cont::ArrayHandle< vtkm::Float32 > CellData
Definition: ANARIMapperVolume.h:58
VTK-m data arrays underlying the ANARIArray handles created by the mapper.
Definition: ANARIMapperVolume.h:46
vtkm::cont::ArrayHandle< vtkm::UInt64 > CellIndex
Definition: ANARIMapperVolume.h:57
StructuredVolumeArrays StructuredArrays
Definition: ANARIMapperVolume.h:124
A token to hold the scope of an ArrayHandle or other object.
Definition: Token.h:35
std::shared_ptr< ANARIHandles > Handles
Definition: ANARIMapperVolume.h:123
anari_cpp::Array1D Index
Definition: ANARIMapperVolume.h:37
std::shared_ptr< vtkm::cont::Token > Token
Definition: ANARIMapperVolume.h:60
Collects cells, coords, and 0-4 fields for ANARI mappers to consume.
Definition: ANARIActor.h:52
anari_cpp::Array1D CellType
Definition: ANARIMapperVolume.h:40
vtkm::cont::ArrayHandle< vtkm::Float32 > VertexData
Definition: ANARIMapperVolume.h:55
vtkm::cont::ArrayHandle< vtkm::UInt64 > Index
Definition: ANARIMapperVolume.h:56
UntructuredVolumeArrays UnstructuredArrays
Definition: ANARIMapperVolume.h:125
vtkm::cont::ArrayHandle< vtkm::Float32 > Data
Definition: ANARIMapperVolume.h:48
StructuredVolumeParameters StructuredParameters
Definition: ANARIMapperVolume.h:117
float Spacing[3]
Definition: ANARIMapperVolume.h:30
Definition: ANARIMapperVolume.h:52
UnstructuredVolumeParameters UnstructuredParameters
Definition: ANARIMapperVolume.h:118
float Float32
Base type to use for 32-bit floating-point numbers.
Definition: Types.h:157
Mapper which turns structured volumes into a single ANARI transferFunction1D volume.
Definition: ANARIMapperVolume.h:67
anari_cpp::Array3D Data
Definition: ANARIMapperVolume.h:27
float Origin[3]
Definition: ANARIMapperVolume.h:29
anari_cpp::Array1D CellIndex
Definition: ANARIMapperVolume.h:38