VTK  9.1.0
vtkRayCastImageDisplayHelper.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: Visualization Toolkit
4 Module: vtkRayCastImageDisplayHelper.h
5
6 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7 All rights reserved.
8 See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9
10 This software is distributed WITHOUT ANY WARRANTY; without even
11 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12 PURPOSE. See the above copyright notice for more information.
13
14=========================================================================*/
15
28#ifndef vtkRayCastImageDisplayHelper_h
29#define vtkRayCastImageDisplayHelper_h
30
31#include "vtkObject.h"
32#include "vtkRenderingVolumeModule.h" // For export macro
33
35class vtkRenderer;
36class vtkVolume;
37class vtkWindow;
38
39class VTKRENDERINGVOLUME_EXPORT vtkRayCastImageDisplayHelper : public vtkObject
40{
41public:
44 void PrintSelf(ostream& os, vtkIndent indent) override;
45
46 virtual void RenderTexture(vtkVolume* vol, vtkRenderer* ren, int imageMemorySize[2],
47 int imageViewportSize[2], int imageInUseSize[2], int imageOrigin[2], float requestedDepth,
48 unsigned char* image) = 0;
49
50 virtual void RenderTexture(vtkVolume* vol, vtkRenderer* ren, int imageMemorySize[2],
51 int imageViewportSize[2], int imageInUseSize[2], int imageOrigin[2], float requestedDepth,
52 unsigned short* image) = 0;
53
54 virtual void RenderTexture(
55 vtkVolume* vol, vtkRenderer* ren, vtkFixedPointRayCastImage* image, float requestedDepth) = 0;
56
57 vtkSetClampMacro(PreMultipliedColors, vtkTypeBool, 0, 1);
58 vtkGetMacro(PreMultipliedColors, vtkTypeBool);
59 vtkBooleanMacro(PreMultipliedColors, vtkTypeBool);
60
62
68 vtkSetMacro(PixelScale, float);
69 vtkGetMacro(PixelScale, float);
71
76
77protected:
80
85
87
88private:
90 void operator=(const vtkRayCastImageDisplayHelper&) = delete;
91};
92
93#endif
helper class for a ray cast image
a simple class to control print indentation
Definition: vtkIndent.h:113
abstract base class for most VTK objects
Definition: vtkObject.h:73
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
Definition: vtkRenderer.h:173
represents a volume (data & properties) in a rendered scene
Definition: vtkVolume.h:134
window superclass for vtkRenderWindow
Definition: vtkWindow.h:36
@ image
Definition: vtkX3D.h:380
int vtkTypeBool
Definition: vtkABI.h:69