92 #ifndef vtkLineIntegralConvolution2D_h
93 #define vtkLineIntegralConvolution2D_h
97 #include "vtkRenderingLICOpenGL2Module.h"
136 vtkSetClampMacro(EnhancedLIC,
int, 0, 1);
137 vtkGetMacro(EnhancedLIC,
int);
164 ENHANCE_CONTRAST_OFF=0,
165 ENHANCE_CONTRAST_ON=1};
166 vtkSetClampMacro(EnhanceContrast,
int, 0, 2);
167 vtkGetMacro(EnhanceContrast,
int);
189 vtkSetClampMacro(LowContrastEnhancementFactor,
double, 0.0, 1.0);
190 vtkGetMacro(LowContrastEnhancementFactor,
double);
191 vtkSetClampMacro(HighContrastEnhancementFactor,
double, 0.0, 1.0);
192 vtkGetMacro(HighContrastEnhancementFactor,
double);
203 vtkGetMacro(AntiAlias,
int);
212 vtkSetClampMacro(NumberOfSteps,
int, 0,
VTK_INT_MAX);
213 vtkGetMacro(NumberOfSteps,
int);
225 vtkGetMacro(StepSize,
double);
234 void SetComponentIds(
int c0,
int c1);
236 vtkGetVector2Macro(ComponentIds,
int);
245 vtkSetClampMacro(MaxNoiseValue,
double, 0.0, 1.0);
246 vtkGetMacro(MaxNoiseValue,
double);
256 void SetTransformVectors(
int val);
257 vtkGetMacro(TransformVectors,
int);
281 void SetNormalizeVectors(
int val);
282 vtkGetMacro(NormalizeVectors,
int);
295 vtkSetClampMacro(MaskThreshold,
double, -1.0,
VTK_FLOAT_MAX);
296 vtkGetMacro(MaskThreshold,
double);
329 const std::deque<vtkPixelExtent> &vectorExtent,
330 const std::deque<vtkPixelExtent> &licExtent,
390 float computeBounds[4],
414 int ShadersNeedBuild;
430 double LowContrastEnhancementFactor;
431 double HighContrastEnhancementFactor;
433 int NoiseTextureLookupCompatibilityMode;
434 double MaskThreshold;
435 int TransformVectors;
436 int NormalizeVectors;
438 double MaxNoiseValue;
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
a simple class to control print indentation
vtkOpenGLHelper * VTShader
virtual void StartTimerEvent(const char *)
Methods used for parallel benchmarks.
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 *)
vtkBooleanMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
Interface to OpenGL framebuffer object.
The ShaderProgram uses one or more Shader objects.