Go to the documentation of this file.
59 #ifndef vtkSurfaceLICInterface_h
60 #define vtkSurfaceLICInterface_h
62 #include "vtkRenderingLICOpenGL2Module.h"
63 #include "vtkOpenGLPolyDataMapper.h"
86 vtkGetMacro(NumberOfSteps,
int);
94 vtkGetMacro(StepSize,
double);
111 vtkGetMacro(NormalizeVectors,
int);
122 vtkGetMacro(MaskOnSurface,
int);
143 vtkGetMacro(MaskThreshold,
double);
154 {
double rgb[3]={r,g,b}; this->SetMaskColor(rgb); }
155 vtkGetVector3Macro(MaskColor,
double);
168 vtkGetMacro(MaskIntensity,
double);
178 vtkGetMacro(EnhancedLIC,
int);
217 ENHANCE_CONTRAST_OFF=0,
218 ENHANCE_CONTRAST_LIC=1,
219 ENHANCE_CONTRAST_COLOR=3,
220 ENHANCE_CONTRAST_BOTH=4
223 vtkGetMacro(EnhanceContrast,
int);
243 vtkGetMacro(LowLICContrastEnhancementFactor,
double);
244 vtkGetMacro(HighLICContrastEnhancementFactor,
double);
248 vtkGetMacro(LowColorContrastEnhancementFactor,
double);
249 vtkGetMacro(HighColorContrastEnhancementFactor,
double);
263 vtkGetMacro(AntiAlias,
int);
281 vtkGetMacro(ColorMode,
int);
295 vtkGetMacro(LICIntensity,
double);
307 vtkGetMacro(MapModeBias,
double);
341 vtkGetMacro(GenerateNoiseTexture,
int);
351 NOISE_TYPE_UNIFORM=0,
352 NOISE_TYPE_GAUSSIAN=1,
356 vtkGetMacro(NoiseType,
int);
365 vtkGetMacro(NoiseTextureSize,
int);
373 vtkGetMacro(NoiseGrainSize,
int);
385 vtkGetMacro(MinNoiseValue,
double);
386 vtkGetMacro(MaxNoiseValue,
double);
395 vtkGetMacro(NumberOfNoiseLevels,
int);
404 vtkGetMacro(ImpulseNoiseProbability,
double);
412 vtkGetMacro(ImpulseNoiseBackgroundValue,
double);
420 vtkGetMacro(NoiseGeneratorSeed,
int);
429 COMPOSITE_INPLACE_DISJOINT=1,
430 COMPOSITE_BALANCED=2,
434 vtkGetMacro(CompositeStrategy,
int);
528 vtkGetMacro(Enable,
int);
virtual vtkPainterCommunicator * CreateCommunicator(int)
Creates a new communicator with/without the calling processes as indicated by the passed in flag,...
void SetImpulseNoiseBackgroundValue(double val)
The color to use for untouched pixels when impulse noise probability < 1.
virtual void ReleaseGraphicsResources(vtkWindow *win)
Release any graphics resources that are being consumed by this mapper.
void SetColorMode(int val)
double HighColorContrastEnhancementFactor
virtual void GetGlobalMinMax(vtkPainterCommunicator *, float &, float &)
Get the min/max across all ranks.
void ShallowCopy(vtkSurfaceLICInterface *m)
Make a shallow copy of this interface.
void SetNumberOfSteps(int val)
Get/Set the number of integration steps in each direction.
void CombineColorsAndLIC()
bool NeedToRenderGeometry(vtkRenderer *renderer, vtkActor *actor)
static bool IsSupported(vtkRenderWindow *context)
Returns true if the rendering context supports extensions needed by this painter.
void SetNoiseDataSet(vtkImageData *data)
Set the data containing a noise array as active scalars.
void SetLICIntensity(double val)
Factor used when blend mode is set to COLOR_MODE_BLEND.
void SetMinNoiseValue(double val)
Set/Get the minimum and mximum gray scale values that the generated noise can take on.
double HighLICContrastEnhancementFactor
public API for surface lic parameters arbitrary geometry.
abstract base class for most VTK objects
void SetLowLICContrastEnhancementFactor(double val)
void SetLowColorContrastEnhancementFactor(double val)
A small collection of noise routines for LIC.
void SetMaskIntensity(double val)
The MaskIntensity controls the blending of the mask color and the geometry color.
void SetMaskColor(double r, double g, double b)
abstract superclass for arrays of numeric data
void UpdateCommunicator(vtkRenderer *renderer, vtkActor *actor, vtkDataObject *data)
Called from a mapper, does what is needed to make sure the communicators are ready.
virtual void WriteTimerLog(const char *)
Methods used for parallel benchmarks.
virtual bool NeedToUpdateCommunicator()
Return false if stage can be skipped.
window superclass for vtkRenderWindow
void SetNoiseTextureSize(int length)
Set/Get the side length in pixels of the noise texture.
void SetEnhancedLIC(int val)
EnhancedLIC mean compute the LIC twice with the second pass using the edge-enhanced result of the fir...
void SetMaskThreshold(double val)
The MaskThreshold controls the rendering of fragments in stagnant regions of flow.
void SetNumberOfNoiseLevels(int val)
Set/Get the number of discrete values a noise pixel may take on.
vtkSurfaceLICHelper * Internals
void SetNoiseGeneratorSeed(int val)
Set/Get the seed value used by the random number generator.
void SetEnhanceContrast(int val)
void SetNormalizeVectors(int val)
Normalize vectors during integration.
void SetHighColorContrastEnhancementFactor(double val)
void SetMaskColor(double *val)
The MaskColor is used on masked fragments.
void ValidateContext(vtkRenderer *renderer)
Look for changes that would trigger stage updates.
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
double LowLICContrastEnhancementFactor
represents an object (geometry & properties) in a rendered scene
void PrepareForGeometry()
topologically and geometrically regular array of data
a simple class to control print indentation
void SetMapModeBias(double val)
Factor used when blend mode is set to COLOR_MODE_MAP.
double ImpulseNoiseBackgroundValue
bool CanRenderSurfaceLIC(vtkActor *actor)
Returns true when rendering LIC is possible.
void SetMaxNoiseValue(double val)
static vtkSurfaceLICInterface * New()
void SetCompositeStrategy(int val)
void SetHighLICContrastEnhancementFactor(double val)
void UpdateNoiseImage(vtkRenderWindow *renWin)
Updates the noise texture, downsampling by the requested sample rate.
void SetImpulseNoiseProbability(double val)
Control the density of of the noise.
vtkBooleanMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
vtkSetMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
A communicator that can safely be used inside a painter.
bool NeedToGatherVectors()
double LowColorContrastEnhancementFactor
void SetHasVectors(bool val)
Does the data have vectors which we require.
abstract specification for renderers
void SetNoiseGrainSize(int val)
Each noise value will be length^2 pixels in area.
void SetMaskOnSurface(int val)
When set MaskOnSurface computes |V| for use in the fragment masking tests on the surface.
vtkImageData * GetNoiseDataSet()
double ImpulseNoiseProbability
create a window for renderers to draw into
~vtkSurfaceLICInterface()
void SetNoiseType(int type)
void SetStepSize(double val)
Get/Set the step size (in pixels).
general representation of visualization data
void CreateCommunicator(vtkRenderer *, vtkActor *, vtkDataObject *data)
Creates a new communicator for internal use based on this rank's visible data.
void InitializeResources()
resoucre allocators
vtkPainterCommunicator * GetCommunicator()
void SetGenerateNoiseTexture(int shouldGenerate)
Set/Get the noise texture source.
void SetAntiAlias(int val)
Enable/Disable the anti-aliasing pass.