VTK  9.4.20241218
vtkOpenGLVolumeOpacityTable.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
3
4#ifndef vtkOpenGLVolumeOpacityTable_h
5#define vtkOpenGLVolumeOpacityTable_h
6
8#include "vtkRenderingVolumeOpenGL2Module.h" // For export macro
9
10#include "vtkVolumeMapper.h" // for vtkVolumeMapper
11
12// Forward declarations
13VTK_ABI_NAMESPACE_BEGIN
15
16//----------------------------------------------------------------------------
17class VTKRENDERINGVOLUMEOPENGL2_EXPORT vtkOpenGLVolumeOpacityTable
19{
20public:
22 void PrintSelf(ostream& os, vtkIndent indent) override;
23
25
26protected:
28
32 void InternalUpdate(vtkObject* func, int blendMode, double sampleDistance, double unitDistance,
33 int filterValue) override;
34
39 vtkObject* func, double scalarRange[2], int blendMode, double sampleDistance) override;
40
42 double LastSampleDistance = 1.0;
43
44private:
46 void operator=(const vtkOpenGLVolumeOpacityTable&) = delete;
47};
48
49VTK_ABI_NAMESPACE_END
50#endif // vtkOpenGLVolumeOpacityTable_h
a simple class to control print indentation
Definition vtkIndent.h:108
abstract base class for most VTK objects
Definition vtkObject.h:162
OpenGL rendering window.
Base class for OpenGL texture management of scalar color, opacity and gradient opacity lookup tables.
void InternalUpdate(vtkObject *func, int blendMode, double sampleDistance, double unitDistance, int filterValue) override
Update the internal texture object using the opacity transfer function.
static vtkOpenGLVolumeOpacityTable * New()
bool NeedsUpdate(vtkObject *func, double scalarRange[2], int blendMode, double sampleDistance) override
Test whether the internal function needs to be updated.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.