VTK  9.4.20241031
vtkAnariVolumeMapperNode.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2// SPDX-License-Identifier: BSD-3-Clause
14#ifndef vtkAnariVolumeMapperNode_h
15#define vtkAnariVolumeMapperNode_h
16
17#include "vtkRenderingAnariModule.h" // For export macro
18#include "vtkVolumeMapperNode.h"
19
20VTK_ABI_NAMESPACE_BEGIN
21
22class vtkAnariVolumeMapperNodeInternals;
23class vtkVolume;
24
25class VTKRENDERINGANARI_EXPORT vtkAnariVolumeMapperNode : public vtkVolumeMapperNode
26{
27public:
30 void PrintSelf(ostream& os, vtkIndent indent) override;
31
33
36 vtkSetMacro(ColorSize, int);
37 vtkGetMacro(ColorSize, int);
39
41
44 vtkSetMacro(OpacitySize, int);
45 vtkGetMacro(OpacitySize, int);
47
51 void Synchronize(bool prepass) override;
55 void Render(bool prepass) override;
56
57private:
60
61 vtkVolume* GetVtkVolume() const;
62 bool VolumeWasModified() const;
63
64 int ColorSize{ 128 };
65 int OpacitySize{ 128 };
66 vtkAnariVolumeMapperNodeInternals* Internal{ nullptr };
67
69 void operator=(const vtkAnariVolumeMapperNode&) = delete;
70};
71
72VTK_ABI_NAMESPACE_END
73#endif
links vtkVolumeMapper to ANARI
void Render(bool prepass) override
Add volume to ANARI world.
static vtkAnariVolumeMapperNode * New()
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void Synchronize(bool prepass) override
Synchronize VTK and ANARI Objects.
a simple class to control print indentation
Definition vtkIndent.h:108
vtkViewNode specialized for vtkVolumeMappers
represents a volume (data & properties) in a rendered scene
Definition vtkVolume.h:130