Go to the documentation of this file.
11 #ifndef vtk_m_interop_anari_ANARIMapperTriangles_h
12 #define vtk_m_interop_anari_ANARIMapperTriangles_h
30 anari_cpp::Array1D
Normal{
nullptr };
37 anari_cpp::Array1D
Index{
nullptr };
77 anari_cpp::Device device,
79 const std::string& name =
"<triangles>",
89 void SetActor(
const ANARIActor& actor)
override;
94 void SetMapFieldAsAttribute(
bool enabled)
override;
99 void SetANARIColorMap(anari_cpp::Array1D color,
100 anari_cpp::Array1D opacity,
101 bool releaseArrays =
true)
override;
105 void SetANARIColorMapValueRange(
const vtkm::Vec2f_32& valueRange)
override;
109 void SetCalculateNormals(
bool enabled);
111 anari_cpp::Geometry GetANARIGeometry()
override;
112 anari_cpp::Surface GetANARISurface()
override;
115 bool NeedToGenerateData()
const;
119 void ConstructArrays(
bool regenerate =
false);
121 void UpdateGeometry();
123 void UpdateMaterial();
128 anari_cpp::Device Device{
nullptr };
129 anari_cpp::Geometry Geometry{
nullptr };
130 anari_cpp::Sampler Sampler{
nullptr };
131 anari_cpp::Material Material{
nullptr };
132 anari_cpp::Surface Surface{
nullptr };
135 void ReleaseArrays();
140 bool CalculateNormals{
false };
std::shared_ptr< vtkm::cont::Token > Token
Definition: ANARIMapperTriangles.h:64
Definition: VtkmANARITypes.h:30
std::array< anari_cpp::Array1D, 4 > Attribute
Definition: ANARIMapperTriangles.h:31
Manages an array-worth of data.
Definition: ArrayHandle.h:300
TrianglesParameters Parameters
Definition: ANARIMapperTriangles.h:133
Groups connected points that have the same field value.
Definition: Atomic.h:19
Color Table for coloring arbitrary fields.
Definition: cont/ColorTable.h:89
std::string Field4Name
Definition: ANARIMapperTriangles.h:63
struct vtkm::interop::anari::TrianglesParameters::PrimitiveData Primitive
vtkm::Int32 IdComponent
Base type to use to index small lists.
Definition: Types.h:194
Mapper which triangulates cells into ANARI triangle geometry.
Definition: ANARIMapperTriangles.h:72
TriangleFieldArrays FieldArrays
Definition: ANARIMapperTriangles.h:143
std::array< std::string, 4 > AttributeName
Definition: ANARIMapperTriangles.h:32
This is the base class used for all ANARI mappers.
Definition: ANARIMapper.h:37
vtkm::cont::ArrayHandle< vtkm::Vec3f_32 > Vertices
Definition: ANARIMapperTriangles.h:47
vtkm::cont::ArrayHandle< vtkm::Vec3f_32 > Normals
Definition: ANARIMapperTriangles.h:48
vtkm::cont::ArrayHandle< vtkm::Float32 > Field2
Definition: ANARIMapperTriangles.h:58
std::shared_ptr< vtkm::cont::Token > Token
Definition: ANARIMapperTriangles.h:49
A token to hold the scope of an ArrayHandle or other object.
Definition: Token.h:35
Raw ANARI arrays and parameter values set on the ANARIGeometry.
Definition: ANARIMapperTriangles.h:25
vtkm::cont::ArrayHandle< vtkm::Float32 > Field1
Definition: ANARIMapperTriangles.h:56
Container of all relevant ANARI scene object handles.
Definition: ANARIMapperTriangles.h:126
Collects cells, coords, and 0-4 fields for ANARI mappers to consume.
Definition: ANARIActor.h:52
VTK-m data arrays underlying the ANARIArray handles created by the mapper for field attributes.
Definition: ANARIMapperTriangles.h:54
std::shared_ptr< ANARIHandles > Handles
Definition: ANARIMapperTriangles.h:138
struct vtkm::interop::anari::TrianglesParameters::VertexData Vertex
Definition: ANARIMapperTriangles.h:35
unsigned int NumPrimitives
Definition: ANARIMapperTriangles.h:40
std::string Field3Name
Definition: ANARIMapperTriangles.h:61
Definition: ANARIMapperTriangles.h:27
anari_cpp::Array1D Normal
Definition: ANARIMapperTriangles.h:30
VTK-m data arrays underlying the ANARIArray handles created by the mapper.
Definition: ANARIMapperTriangles.h:45
vtkm::cont::ArrayHandle< vtkm::Float32 > Field4
Definition: ANARIMapperTriangles.h:62
anari_cpp::Array1D Position
Definition: ANARIMapperTriangles.h:29
anari_cpp::Array1D Index
Definition: ANARIMapperTriangles.h:37
std::string Field1Name
Definition: ANARIMapperTriangles.h:57
vtkm::cont::ArrayHandle< vtkm::Float32 > Field3
Definition: ANARIMapperTriangles.h:60
TriangleArrays Arrays
Definition: ANARIMapperTriangles.h:142
std::string Field2Name
Definition: ANARIMapperTriangles.h:59