VTK
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes
vtkSurfaceLICPainter Class Reference

painter that performs LIC on the surface of arbitrary geometry. More...

#include <vtkSurfaceLICPainter.h>

Inheritance diagram for vtkSurfaceLICPainter:
[legend]
Collaboration diagram for vtkSurfaceLICPainter:
[legend]

List of all members.

Public Types

typedef vtkPainter Superclass
- Public Types inherited from vtkPainter
enum  { VERTS = 0x1, LINES = 0x2, POLYS = 0x4, STRIPS = 0x8 }
- Public Types inherited from vtkObject

Public Member Functions

virtual const char * GetClassName ()
virtual int IsA (const char *type)
void PrintSelf (ostream &os, vtkIndent indent)
virtual void ReleaseGraphicsResources (vtkWindow *)
virtual vtkDataObjectGetOutput ()
int GetLICSuccess ()
virtual void SetEnable (int)
virtual int GetEnable ()
virtual void EnableOn ()
virtual void EnableOff ()
void SetInputArrayToProcess (int fieldAssociation, const char *name)
void SetInputArrayToProcess (int fieldAssociation, int fieldAttributeType)
virtual void SetEnhancedLIC (int)
virtual int GetEnhancedLIC ()
virtual void EnhancedLICOn ()
virtual void EnhancedLICOff ()
virtual void SetNumberOfSteps (int)
virtual int GetNumberOfSteps ()
virtual void SetStepSize (double)
virtual double GetStepSize ()
virtual void SetLICIntensity (double)
virtual double GetLICIntensity ()
int GetRenderingPreparationSuccess ()
- Public Member Functions inherited from vtkPainter
virtual double GetTimeToDraw ()
virtual void UpdateBounds (double bounds[6])
virtual vtkInformationGetInformation ()
virtual void SetInformation (vtkInformation *)
virtual vtkPainterGetDelegatePainter ()
virtual void SetDelegatePainter (vtkPainter *)
virtual void Register (vtkObjectBase *o)
virtual void UnRegister (vtkObjectBase *o)
virtual void Render (vtkRenderer *renderer, vtkActor *actor, unsigned long typeflags, bool forceCompileOnly)
virtual void SetProgress (double)
virtual double GetProgress ()
void SetInput (vtkDataObject *)
virtual vtkDataObjectGetInput ()
- Public Member Functions inherited from vtkObject
virtual void DebugOn ()
virtual void DebugOff ()
unsigned char GetDebug ()
void SetDebug (unsigned char debugFlag)
virtual void Modified ()
virtual unsigned long GetMTime ()
unsigned long AddObserver (unsigned long event, vtkCommand *, float priority=0.0f)
unsigned long AddObserver (const char *event, vtkCommand *, float priority=0.0f)
vtkCommandGetCommand (unsigned long tag)
void RemoveObserver (vtkCommand *)
void RemoveObservers (unsigned long event, vtkCommand *)
void RemoveObservers (const char *event, vtkCommand *)
int HasObserver (unsigned long event, vtkCommand *)
int HasObserver (const char *event, vtkCommand *)
void RemoveObserver (unsigned long tag)
void RemoveObservers (unsigned long event)
void RemoveObservers (const char *event)
void RemoveAllObservers ()
int HasObserver (unsigned long event)
int HasObserver (const char *event)
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f)
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f)
int InvokeEvent (unsigned long event, void *callData)
int InvokeEvent (const char *event, void *callData)
int InvokeEvent (unsigned long event)
int InvokeEvent (const char *event)
- Public Member Functions inherited from vtkObjectBase
const char * GetClassName () const
virtual void Delete ()
virtual void FastDelete ()
void Print (ostream &os)
void SetReferenceCount (int)
void PrintRevisions (ostream &os)
virtual void PrintHeader (ostream &os, vtkIndent indent)
virtual void PrintTrailer (ostream &os, vtkIndent indent)
int GetReferenceCount ()

Static Public Member Functions

static vtkSurfaceLICPainterNew ()
static int IsTypeOf (const char *type)
static vtkSurfaceLICPainterSafeDownCast (vtkObject *o)
- Static Public Member Functions inherited from vtkPainter
static vtkInformationIntegerKeySTATIC_DATA ()
static vtkInformationIntegerKeyCONSERVE_MEMORY ()
static vtkInformationIntegerKeyHIGH_QUALITY ()
- Static Public Member Functions inherited from vtkObject
static void BreakOnError ()
static void SetGlobalWarningDisplay (int val)
static void GlobalWarningDisplayOn ()
static void GlobalWarningDisplayOff ()
static int GetGlobalWarningDisplay ()

Protected Member Functions

void GetBounds (vtkDataObject *data, double bounds[6])
virtual void ReportReferences (vtkGarbageCollector *collector)
virtual void PrepareForRendering (vtkRenderer *, vtkActor *)
bool CanRenderLIC (vtkRenderer *, vtkActor *)
virtual void RenderInternal (vtkRenderer *renderer, vtkActor *actor, unsigned long typeflags, bool forceCompileOnly)
bool PrepareOutput ()
bool FixTCoords (vtkDataSet *ds)
- Protected Member Functions inherited from vtkPainter
 vtkPainter ()
 ~vtkPainter ()
void UpdateDelegatePainter ()
virtual void PassInformation (vtkPainter *toPainter)
virtual void UpdateDelegateProgress (vtkPainter *delegate, double amount)
virtual void ProcessInformation (vtkInformation *)
virtual void ObserverPainterProgress (vtkPainter *toObserve)
void UpdateProgress (double amount)
vtkAbstractArrayGetInputArrayToProcess (int fieldAssociation, int fieldAttributeType, vtkDataSet *ds, bool *use_cell_data=0)
vtkAbstractArrayGetInputArrayToProcess (int fieldAssociation, const char *name, vtkDataSet *dsl, bool *use_cell_data=0)
- Protected Member Functions inherited from vtkObject
 vtkObject ()
virtual ~vtkObject ()
virtual void RegisterInternal (vtkObjectBase *, int check)
virtual void UnRegisterInternal (vtkObjectBase *, int check)
void InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=NULL)
void InternalReleaseFocus ()
- Protected Member Functions inherited from vtkObjectBase
 vtkObjectBase ()
virtual ~vtkObjectBase ()
virtual void CollectRevisions (ostream &os)
 vtkObjectBase (const vtkObjectBase &)
void operator= (const vtkObjectBase &)

Protected Attributes

int NumberOfSteps
double StepSize
int Enable
int EnhancedLIC
int RenderingPreparationSuccess
int LICSuccess
double LICIntensity
- Protected Attributes inherited from vtkPainter
vtkTimeStamp InformationProcessTime
vtkPainterObserverObserver
vtkInformationInformation
vtkPainterDelegatePainter
double Progress
double ProgressOffset
double ProgressScaleFactor
double TimeToDraw
vtkTimerLogTimer
vtkWeakPointer< vtkWindowLastWindow
- Protected Attributes inherited from vtkObject
unsigned char Debug
vtkTimeStamp MTime
vtkSubjectHelper * SubjectHelper
- Protected Attributes inherited from vtkObjectBase
int ReferenceCount
vtkWeakPointerBase ** WeakPointers
static bool IsSupported (vtkRenderWindow *)
 vtkSurfaceLICPainter ()
 ~vtkSurfaceLICPainter ()

Detailed Description

painter that performs LIC on the surface of arbitrary geometry.

vtkSurfaceLICPainter painter performs LIC on the surface of arbitrary geometry. Point vectors are used as the vector field for generating the LIC. The implementation is based on "Image Space Based Visualization on Unsteady Flow on Surfaces" by Laramee, Jobard and Hauser appeared in proceedings of IEEE Visualization '03, pages 131-138.

Definition at line 34 of file vtkSurfaceLICPainter.h.


Member Typedef Documentation

Reimplemented from vtkPainter.

Definition at line 38 of file vtkSurfaceLICPainter.h.


Constructor & Destructor Documentation

vtkSurfaceLICPainter::vtkSurfaceLICPainter ( )
protected

Returns true is the rendering context supports extensions needed by this painter.

vtkSurfaceLICPainter::~vtkSurfaceLICPainter ( )
protected

Returns true is the rendering context supports extensions needed by this painter.


Member Function Documentation

static vtkSurfaceLICPainter* vtkSurfaceLICPainter::New ( )
static

Create an object with Debug turned off, modified time initialized to zero, and reference counting on.

Reimplemented from vtkObject.

virtual const char* vtkSurfaceLICPainter::GetClassName ( )
virtual

Reimplemented from vtkPainter.

static int vtkSurfaceLICPainter::IsTypeOf ( const char *  name)
static

Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkPainter.

virtual int vtkSurfaceLICPainter::IsA ( const char *  name)
virtual

Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkPainter.

static vtkSurfaceLICPainter* vtkSurfaceLICPainter::SafeDownCast ( vtkObject o)
static

Reimplemented from vtkPainter.

void vtkSurfaceLICPainter::PrintSelf ( ostream &  os,
vtkIndent  indent 
)
virtual

Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from vtkPainter.

virtual void vtkSurfaceLICPainter::ReleaseGraphicsResources ( vtkWindow )
virtual

Release any graphics resources that are being consumed by this mapper. The parameter window could be used to determine which graphic resources to release. In this case, releases the display lists.

Reimplemented from vtkPainter.

virtual vtkDataObject* vtkSurfaceLICPainter::GetOutput ( )
virtual

Get the output data object from this painter. Overridden to pass the input points (or cells) vectors as the tcoords to the deletage painters. This is required by the internal GLSL shader programs used for generating LIC.

Reimplemented from vtkPainter.

virtual void vtkSurfaceLICPainter::SetEnable ( int  )
virtual

Enable/Disable this painter.

virtual int vtkSurfaceLICPainter::GetEnable ( )
virtual

Enable/Disable this painter.

virtual void vtkSurfaceLICPainter::EnableOn ( )
virtual

Enable/Disable this painter.

virtual void vtkSurfaceLICPainter::EnableOff ( )
virtual

Enable/Disable this painter.

void vtkSurfaceLICPainter::SetInputArrayToProcess ( int  fieldAssociation,
const char *  name 
)

Set the vectors to used for applying LIC. By default point vectors are used. Arguments are same as those passed to vtkAlgorithm::SetInputArrayToProcess except the first 3 arguments i.e. idx, port, connection.

void vtkSurfaceLICPainter::SetInputArrayToProcess ( int  fieldAssociation,
int  fieldAttributeType 
)

Set the vectors to used for applying LIC. By default point vectors are used. Arguments are same as those passed to vtkAlgorithm::SetInputArrayToProcess except the first 3 arguments i.e. idx, port, connection.

virtual void vtkSurfaceLICPainter::SetEnhancedLIC ( int  )
virtual

Enable/Disable enhanced LIC that improves image quality by increasing inter-streamline contrast while suppressing artifacts. Enhanced LIC performs two passes of LIC, with a 3x3 Laplacian high-pass filter in between that processes the output of pass #1 LIC and forwards the result as the input 'noise' to pass #2 LIC. This flag is automatically turned off during user interaction.

virtual int vtkSurfaceLICPainter::GetEnhancedLIC ( )
virtual

Enable/Disable enhanced LIC that improves image quality by increasing inter-streamline contrast while suppressing artifacts. Enhanced LIC performs two passes of LIC, with a 3x3 Laplacian high-pass filter in between that processes the output of pass #1 LIC and forwards the result as the input 'noise' to pass #2 LIC. This flag is automatically turned off during user interaction.

virtual void vtkSurfaceLICPainter::EnhancedLICOn ( )
virtual

Enable/Disable enhanced LIC that improves image quality by increasing inter-streamline contrast while suppressing artifacts. Enhanced LIC performs two passes of LIC, with a 3x3 Laplacian high-pass filter in between that processes the output of pass #1 LIC and forwards the result as the input 'noise' to pass #2 LIC. This flag is automatically turned off during user interaction.

virtual void vtkSurfaceLICPainter::EnhancedLICOff ( )
virtual

Enable/Disable enhanced LIC that improves image quality by increasing inter-streamline contrast while suppressing artifacts. Enhanced LIC performs two passes of LIC, with a 3x3 Laplacian high-pass filter in between that processes the output of pass #1 LIC and forwards the result as the input 'noise' to pass #2 LIC. This flag is automatically turned off during user interaction.

virtual void vtkSurfaceLICPainter::SetNumberOfSteps ( int  )
virtual

Get/Set the number of integration steps in each direction.

virtual int vtkSurfaceLICPainter::GetNumberOfSteps ( )
virtual

Get/Set the number of integration steps in each direction.

virtual void vtkSurfaceLICPainter::SetStepSize ( double  )
virtual

Get/Set the step size (in pixels).

virtual double vtkSurfaceLICPainter::GetStepSize ( )
virtual

Get/Set the step size (in pixels).

virtual void vtkSurfaceLICPainter::SetLICIntensity ( double  )
virtual

Control the contribution of the LIC in the final output image. 0.0 produces same result as disabling LIC alltogether, while 1.0 implies show LIC result alone.

virtual double vtkSurfaceLICPainter::GetLICIntensity ( )
virtual

Control the contribution of the LIC in the final output image. 0.0 produces same result as disabling LIC alltogether, while 1.0 implies show LIC result alone.

int vtkSurfaceLICPainter::GetRenderingPreparationSuccess ( )
inline

Check if PrepareForRendering passes.

Definition at line 102 of file vtkSurfaceLICPainter.h.

int vtkSurfaceLICPainter::GetLICSuccess ( )
inline

Check if the LIC process runs properly.

Definition at line 107 of file vtkSurfaceLICPainter.h.

static bool vtkSurfaceLICPainter::IsSupported ( vtkRenderWindow )
static

Returns true is the rendering context supports extensions needed by this painter.

void vtkSurfaceLICPainter::GetBounds ( vtkDataObject data,
double  bounds[6] 
)
protected

Computes data bounds.

virtual void vtkSurfaceLICPainter::ReportReferences ( vtkGarbageCollector collector)
protectedvirtual

Take part in garbage collection.

Reimplemented from vtkPainter.

virtual void vtkSurfaceLICPainter::PrepareForRendering ( vtkRenderer ,
vtkActor  
)
protectedvirtual

Some subclasses may need to do some preprocessing before the actual rendering can be done eg. build effecient representation for the data etc. This should be done here. This method get called after the ProcessInformation() but before RenderInternal().

Reimplemented from vtkPainter.

virtual void vtkSurfaceLICPainter::RenderInternal ( vtkRenderer renderer,
vtkActor actor,
unsigned long  typeflags,
bool  forceCompileOnly 
)
protectedvirtual

Performs the actual rendering. Subclasses may override this method. default implementation merely call a Render on the DelegatePainter, if any. When RenderInternal() is called, it is assured that the DelegatePainter is in sync with this painter i.e. UpdateDelegatePainter() has been called.

Reimplemented from vtkPainter.

bool vtkSurfaceLICPainter::PrepareOutput ( )
protected

Prepares output data. Returns true if vectors are available.

bool vtkSurfaceLICPainter::FixTCoords ( vtkDataSet ds)
protected

Prepares output data. Returns true if vectors are available.

bool vtkSurfaceLICPainter::CanRenderLIC ( vtkRenderer ,
vtkActor  
)
protected

Returns true when rendering LIC is possible.


Member Data Documentation

int vtkSurfaceLICPainter::NumberOfSteps
protected

Definition at line 151 of file vtkSurfaceLICPainter.h.

double vtkSurfaceLICPainter::StepSize
protected

Definition at line 152 of file vtkSurfaceLICPainter.h.

int vtkSurfaceLICPainter::Enable
protected

Definition at line 154 of file vtkSurfaceLICPainter.h.

int vtkSurfaceLICPainter::EnhancedLIC
protected

Definition at line 155 of file vtkSurfaceLICPainter.h.

int vtkSurfaceLICPainter::RenderingPreparationSuccess
protected

Definition at line 156 of file vtkSurfaceLICPainter.h.

int vtkSurfaceLICPainter::LICSuccess
protected

Definition at line 157 of file vtkSurfaceLICPainter.h.

double vtkSurfaceLICPainter::LICIntensity
protected

Definition at line 158 of file vtkSurfaceLICPainter.h.


The documentation for this class was generated from the following file: