VTK  9.3.20240424
vtkRayCastImageDisplayHelper.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
16#ifndef vtkRayCastImageDisplayHelper_h
17#define vtkRayCastImageDisplayHelper_h
18
19#include "vtkObject.h"
20#include "vtkRenderingVolumeModule.h" // For export macro
21
22VTK_ABI_NAMESPACE_BEGIN
24class vtkRenderer;
25class vtkVolume;
26class vtkWindow;
27
28class VTKRENDERINGVOLUME_EXPORT vtkRayCastImageDisplayHelper : public vtkObject
29{
30public:
33 void PrintSelf(ostream& os, vtkIndent indent) override;
34
35 virtual void RenderTexture(vtkVolume* vol, vtkRenderer* ren, int imageMemorySize[2],
36 int imageViewportSize[2], int imageInUseSize[2], int imageOrigin[2], float requestedDepth,
37 unsigned char* image) = 0;
38
39 virtual void RenderTexture(vtkVolume* vol, vtkRenderer* ren, int imageMemorySize[2],
40 int imageViewportSize[2], int imageInUseSize[2], int imageOrigin[2], float requestedDepth,
41 unsigned short* image) = 0;
42
43 virtual void RenderTexture(
44 vtkVolume* vol, vtkRenderer* ren, vtkFixedPointRayCastImage* image, float requestedDepth) = 0;
45
46 vtkSetClampMacro(PreMultipliedColors, vtkTypeBool, 0, 1);
47 vtkGetMacro(PreMultipliedColors, vtkTypeBool);
48 vtkBooleanMacro(PreMultipliedColors, vtkTypeBool);
49
51
57 vtkSetMacro(PixelScale, float);
58 vtkGetMacro(PixelScale, float);
60
65
66protected:
69
74
76
77private:
79 void operator=(const vtkRayCastImageDisplayHelper&) = delete;
80};
81
82VTK_ABI_NAMESPACE_END
83#endif
helper class for a ray cast image
a simple class to control print indentation
Definition vtkIndent.h:108
abstract base class for most VTK objects
Definition vtkObject.h:162
helper class that draws the image to the screen
~vtkRayCastImageDisplayHelper() override
virtual void ReleaseGraphicsResources(vtkWindow *)
Derived class should implement this if needed.
virtual void RenderTexture(vtkVolume *vol, vtkRenderer *ren, int imageMemorySize[2], int imageViewportSize[2], int imageInUseSize[2], int imageOrigin[2], float requestedDepth, unsigned short *image)=0
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
static vtkRayCastImageDisplayHelper * New()
virtual void RenderTexture(vtkVolume *vol, vtkRenderer *ren, vtkFixedPointRayCastImage *image, float requestedDepth)=0
vtkTypeBool PreMultipliedColors
Have the colors already been multiplied by alpha?
virtual void RenderTexture(vtkVolume *vol, vtkRenderer *ren, int imageMemorySize[2], int imageViewportSize[2], int imageInUseSize[2], int imageOrigin[2], float requestedDepth, unsigned char *image)=0
abstract specification for renderers
represents a volume (data & properties) in a rendered scene
Definition vtkVolume.h:120
window superclass for vtkRenderWindow
Definition vtkWindow.h:48
int vtkTypeBool
Definition vtkABI.h:64