80 #ifndef vtkLineIntegralConvolution2D_h
81 #define vtkLineIntegralConvolution2D_h
84 #include "vtkRenderingLICOpenGL2Module.h"
88 VTK_ABI_NAMESPACE_BEGIN
125 vtkSetClampMacro(EnhancedLIC,
int, 0, 1);
126 vtkGetMacro(EnhancedLIC,
int);
127 vtkBooleanMacro(EnhancedLIC,
int);
154 ENHANCE_CONTRAST_OFF = 0,
155 ENHANCE_CONTRAST_ON = 1
157 vtkSetClampMacro(EnhanceContrast,
int, 0, 2);
158 vtkGetMacro(EnhanceContrast,
int);
159 vtkBooleanMacro(EnhanceContrast,
int);
180 vtkSetClampMacro(LowContrastEnhancementFactor,
double, 0.0, 1.0);
181 vtkGetMacro(LowContrastEnhancementFactor,
double);
182 vtkSetClampMacro(HighContrastEnhancementFactor,
double, 0.0, 1.0);
183 vtkGetMacro(HighContrastEnhancementFactor,
double);
194 vtkGetMacro(AntiAlias,
int);
195 vtkBooleanMacro(AntiAlias,
int);
203 vtkSetClampMacro(NumberOfSteps,
int, 0,
VTK_INT_MAX);
204 vtkGetMacro(NumberOfSteps,
int);
216 vtkGetMacro(StepSize,
double);
225 void SetComponentIds(
int c0,
int c1);
227 vtkGetVector2Macro(ComponentIds,
int);
236 vtkSetClampMacro(MaxNoiseValue,
double, 0.0, 1.0);
237 vtkGetMacro(MaxNoiseValue,
double);
247 void SetTransformVectors(
int val);
248 vtkGetMacro(TransformVectors,
int);
272 void SetNormalizeVectors(
int val);
273 vtkGetMacro(NormalizeVectors,
int);
286 vtkSetClampMacro(MaskThreshold,
double, -1.0,
VTK_FLOAT_MAX);
287 vtkGetMacro(MaskThreshold,
double);
314 const std::deque<vtkPixelExtent>& vectorExtent,
const std::deque<vtkPixelExtent>& licExtent,
366 void RenderQuad(
float computeBounds[4],
vtkPixelExtent computeExtent);
419 VTK_ABI_NAMESPACE_END
double LowContrastEnhancementFactor
void SetComponentIds(int c[2])
If VectorField has >= 3 components, we must choose which 2 components form the (X, Y) components for the vector field.
vtkOpenGLHelper * EEShader
abstract base class for most VTK objects
vtkOpenGLHelper * AAVShader
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
virtual void SetCommunicator(vtkPainterCommunicator *)
Set the communicator to use during parallel operation The communicator will not be duplicated or refe...
vtkOpenGLHelper * IntermediateBlendProgram
vtkOpenGLHelper * CEShader
GPU-based implementation of Line Integral Convolution (LIC)
virtual void GetGlobalMinMax(vtkPainterCommunicator *, float &, float &)
For parallel operation, find global min/max min/max are in/out.
virtual void WriteTimerLog(const char *)
Methods used for parallel benchmarks.
vtkOpenGLHelper * AAHShader
vtkOpenGLHelper * FinalBlendProgram
vtkOpenGLHelper * LICIShader
vtkOpenGLFramebufferObject * FBO
a simple class to control print indentation
vtkOpenGLHelper * VTShader
virtual void StartTimerEvent(const char *)
Methods used for parallel benchmarks.
Internal class which encapsulates OpenGL FramebufferObject.
vtkOpenGLHelper * LICNShader
abstracts an OpenGL texture object.
create a window for renderers to draw into
vtkWeakPointer< vtkOpenGLRenderWindow > Context
Representation of a cartesian pixel plane and common operations on it.
A communicator that can safely be used inside a painter.
vtkOpenGLHelper * LIC0Shader
virtual void EndTimerEvent(const char *)
vtkPainterCommunicator * Comm
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
int NoiseTextureLookupCompatibilityMode
double HighContrastEnhancementFactor
The ShaderProgram uses one or more Shader objects.