VTK: Rendering/Volume/vtkUnstructuredGridVolumeRayIntegrator.h Source File

| VTK 9.3.1

vtkUnstructuredGridVolumeRayIntegrator.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
19 #ifndef vtkUnstructuredGridVolumeRayIntegrator_h
20 #define vtkUnstructuredGridVolumeRayIntegrator_h
21
22 #include "vtkObject.h"
23 #include "vtkRenderingVolumeModule.h" // For export macro
24
25 VTK_ABI_NAMESPACE_BEGIN
26 class vtkVolume;
27 class vtkDoubleArray;
28 class vtkDataArray;
29
30 class VTKRENDERINGVOLUME_EXPORT vtkUnstructuredGridVolumeRayIntegrator : public vtkObject
31 {
32 public:
33 vtkTypeMacro(vtkUnstructuredGridVolumeRayIntegrator, vtkObject);
34 void PrintSelf(ostream& os, vtkIndent indent) override;
35
39 virtual void Initialize(vtkVolume* volume, vtkDataArray* scalars) = 0;
40
50 virtual void Integrate(vtkDoubleArray* intersectionLengths, vtkDataArray* nearIntersections,
51 vtkDataArray* farIntersections, float color[4]) = 0;
52
53 protected:
54 vtkUnstructuredGridVolumeRayIntegrator();
55 ~vtkUnstructuredGridVolumeRayIntegrator() override;
56
57 private:
58 vtkUnstructuredGridVolumeRayIntegrator(const vtkUnstructuredGridVolumeRayIntegrator&) = delete;
59 void operator=(const vtkUnstructuredGridVolumeRayIntegrator&) = delete;
60 };
61
62 VTK_ABI_NAMESPACE_END
63 #endif
vtkDataArray
abstract superclass for arrays of numeric data
Definition: vtkDataArray.h:54
vtkDoubleArray
dynamic, self-adjusting array of double
Definition: vtkDoubleArray.h:40
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:38
vtkObject
abstract base class for most VTK objects
Definition: vtkObject.h:61
vtkUnstructuredGridVolumeRayIntegrator
a superclass for volume ray integration functions
Definition: vtkUnstructuredGridVolumeRayIntegrator.h:31
vtkUnstructuredGridVolumeRayIntegrator::Initialize
virtual void Initialize(vtkVolume *volume, vtkDataArray *scalars)=0
Set up the integrator with the given properties and scalars.
vtkUnstructuredGridVolumeRayIntegrator::~vtkUnstructuredGridVolumeRayIntegrator
~vtkUnstructuredGridVolumeRayIntegrator() override
vtkUnstructuredGridVolumeRayIntegrator::vtkUnstructuredGridVolumeRayIntegrator
vtkUnstructuredGridVolumeRayIntegrator()
vtkUnstructuredGridVolumeRayIntegrator::Integrate
virtual void Integrate(vtkDoubleArray *intersectionLengths, vtkDataArray *nearIntersections, vtkDataArray *farIntersections, float color[4])=0
Given a set of intersections (defined by the three arrays), compute the piecewise integration of the ...
vtkUnstructuredGridVolumeRayIntegrator::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkVolume
represents a volume (data & properties) in a rendered scene
Definition: vtkVolume.h:49
vtkX3D::color
@ color
Definition: vtkX3D.h:221
vtkObject.h