55#ifndef vtkOpenGLSurfaceProbeVolumeMapper_h
56#define vtkOpenGLSurfaceProbeVolumeMapper_h
60#include "vtkRenderingVolumeOpenGL2Module.h"
63VTK_ABI_NAMESPACE_BEGIN
102 double GetWindow() {
return this->ScalarRange[1] - this->ScalarRange[0]; }
105 double level = this->GetLevel();
109 double GetLevel() {
return 0.5 * (this->ScalarRange[0] + this->ScalarRange[1]); }
112 double window = this->GetWindow();
144 vtkGetMacro(BlendWidth,
double);
145 vtkSetMacro(BlendWidth,
double);
198 enum class PassTypes :
unsigned int
204 PassTypes CurrentPass = PassTypes::DEFAULT;
207 BlendModes BlendMode = BlendModes::NONE;
208 double BlendWidth = 1.0;
211 bool SavedScissorTestState =
false;
212 bool SavedBlendState =
false;
213 int SavedViewport[4] = {};
represents an object (geometry & properties) in a rendered scene
Proxy object to connect input/output ports.
abstract class to specify dataset behavior
topologically and geometrically regular array of data
virtual vtkUnsignedCharArray * MapScalars(double alpha)
Map the scalars (if there are any scalars and ScalarVisibility is on) through the lookup table,...
virtual void SetScalarRange(double, double)
Specify range in terms of scalar minimum and maximum (smin,smax).
Allocate and hold a VTK object.
Internal class which encapsulates OpenGL FramebufferObject.
PolyDataMapper using OpenGL to render.
PolyDataMapper colored with probed volume data.
void SetBlendModeToMaximumIntensity()
Set/Get the blend mode.
void UpdateShaders(vtkOpenGLHelper &cellBO, vtkRenderer *ren, vtkActor *act) override
Make sure appropriate shaders are defined, compiled and bound.
vtkImageData * GetSource()
Specify the input data to be probed.
vtkPolyData * GetProbeInput()
Specify the input data used for probing (optional).
void SetSourceData(vtkImageData *in)
Specify the input data to be probed.
BlendModes
Set/Get the blend mode.
void SetSourceConnection(vtkAlgorithmOutput *algOutput)
Specify the input data to be probed.
bool HasTranslucentPolygonalGeometry() override
Determine whether this mapper should be invoked on a specific rendering pass.
virtual void UpdateShadersProbePass(vtkOpenGLHelper &cellBO, vtkRenderer *ren)
virtual void ReplaceShaderPositionPass(vtkActor *act)
void SetBlendModeToAverageIntensity()
Set/Get the blend mode.
vtkSetEnumMacro(BlendMode, BlendModes)
Set/Get the blend mode.
vtkUnsignedCharArray * MapScalars(vtkDataSet *input, double alpha, int &cellFlag) override
Map the scalars of the source through the lookup table if any.
virtual void ReplaceShaderProbePass(vtkActor *act)
void SetWindow(double window)
Convienence methods to set the window and level values used for scalar coloring, which ultimately set...
void SetLevel(double level)
Convienence methods to set the window and level values used for scalar coloring, which ultimately set...
void CreateDefaultLookupTable() override
Defined as no-op to prevent the creation of a default lookup table in GetLookupTable.
double GetWindow()
Convienence methods to set the window and level values used for scalar coloring, which ultimately set...
void SetProbeInputConnection(vtkAlgorithmOutput *algOutput)
Specify the input data used for probing (optional).
void RenderPiece(vtkRenderer *ren, vtkActor *act) override
Implemented by sub classes.
double GetLevel()
Convienence methods to set the window and level values used for scalar coloring, which ultimately set...
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
void SetBlendModeToMinimumIntensity()
Set/Get the blend mode.
void SetProbeInputData(vtkPolyData *in)
Specify the input data used for probing (optional).
void SetBlendModeToNone()
Set/Get the blend mode.
static vtkOpenGLSurfaceProbeVolumeMapper * New()
vtkGetEnumMacro(BlendMode, BlendModes)
Set/Get the blend mode.
concrete dataset represents vertices, lines, polygons, and triangle strips
abstract specification for renderers
abstracts an OpenGL texture object.
dynamic, self-adjusting array of unsigned char
Creates and manages the volume texture rendered by vtkOpenGLGPUVolumeRayCastMapper.