VTK
|
Configuration for FXAA implementations. More...
#include <vtkFXAAOptions.h>
Public Types | |
enum | DebugOption { FXAA_NO_DEBUG = 0, FXAA_DEBUG_SUBPIXEL_ALIASING, FXAA_DEBUG_EDGE_DIRECTION, FXAA_DEBUG_EDGE_NUM_STEPS, FXAA_DEBUG_EDGE_DISTANCE, FXAA_DEBUG_EDGE_SAMPLE_OFFSET, FXAA_DEBUG_ONLY_SUBPIX_AA, FXAA_DEBUG_ONLY_EDGE_AA } |
Debugging options that affect the output color buffer. More... | |
typedef vtkObject | Superclass |
Public Member Functions | |
virtual vtkTypeBool | IsA (const char *type) |
Return 1 if this class is the same type of (or a subclass of) the named class. More... | |
vtkFXAAOptions * | NewInstance () const |
void | PrintSelf (ostream &os, vtkIndent indent) override |
Methods invoked by print to print information about the object including superclasses. More... | |
virtual void | SetRelativeContrastThreshold (float) |
Threshold for applying FXAA to a pixel, relative to the maximum luminosity of its 4 immediate neighbors. More... | |
virtual float | GetRelativeContrastThreshold () |
Threshold for applying FXAA to a pixel, relative to the maximum luminosity of its 4 immediate neighbors. More... | |
virtual void | SetHardContrastThreshold (float) |
Similar to RelativeContrastThreshold, but not scaled by the maximum luminosity. More... | |
virtual float | GetHardContrastThreshold () |
Similar to RelativeContrastThreshold, but not scaled by the maximum luminosity. More... | |
virtual void | SetSubpixelBlendLimit (float) |
Subpixel aliasing is corrected by applying a lowpass filter to the current pixel. More... | |
virtual float | GetSubpixelBlendLimit () |
Subpixel aliasing is corrected by applying a lowpass filter to the current pixel. More... | |
virtual void | SetSubpixelContrastThreshold (float) |
Minimum amount of subpixel aliasing required for subpixel antialiasing to be applied. More... | |
virtual float | GetSubpixelContrastThreshold () |
Minimum amount of subpixel aliasing required for subpixel antialiasing to be applied. More... | |
virtual void | SetUseHighQualityEndpoints (bool) |
Use an improved edge endpoint detection algorithm. More... | |
virtual bool | GetUseHighQualityEndpoints () |
Use an improved edge endpoint detection algorithm. More... | |
virtual void | UseHighQualityEndpointsOn () |
Use an improved edge endpoint detection algorithm. More... | |
virtual void | UseHighQualityEndpointsOff () |
Use an improved edge endpoint detection algorithm. More... | |
virtual void | SetEndpointSearchIterations (int) |
Set the number of iterations for the endpoint search algorithm. More... | |
virtual int | GetEndpointSearchIterations () |
Set the number of iterations for the endpoint search algorithm. More... | |
virtual void | SetDebugOptionValue (DebugOption) |
Debugging options that affect the output color buffer. More... | |
virtual DebugOption | GetDebugOptionValue () |
Debugging options that affect the output color buffer. More... | |
Public Member Functions inherited from vtkObject | |
vtkBaseTypeMacro (vtkObject, vtkObjectBase) | |
virtual void | DebugOn () |
Turn debugging output on. More... | |
virtual void | DebugOff () |
Turn debugging output off. More... | |
bool | GetDebug () |
Get the value of the debug flag. More... | |
void | SetDebug (bool debugFlag) |
Set the value of the debug flag. More... | |
virtual void | Modified () |
Update the modification time for this object. More... | |
virtual vtkMTimeType | GetMTime () |
Return this object's modified time. More... | |
void | RemoveObserver (unsigned long tag) |
void | RemoveObservers (unsigned long event) |
void | RemoveObservers (const char *event) |
void | RemoveAllObservers () |
vtkTypeBool | HasObserver (unsigned long event) |
vtkTypeBool | HasObserver (const char *event) |
int | InvokeEvent (unsigned long event) |
int | InvokeEvent (const char *event) |
unsigned long | AddObserver (unsigned long event, vtkCommand *, float priority=0.0f) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. More... | |
unsigned long | AddObserver (const char *event, vtkCommand *, float priority=0.0f) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. More... | |
vtkCommand * | GetCommand (unsigned long tag) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. More... | |
void | RemoveObserver (vtkCommand *) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. More... | |
void | RemoveObservers (unsigned long event, vtkCommand *) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. More... | |
void | RemoveObservers (const char *event, vtkCommand *) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. More... | |
vtkTypeBool | HasObserver (unsigned long event, vtkCommand *) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. More... | |
vtkTypeBool | HasObserver (const char *event, vtkCommand *) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. More... | |
template<class U , class T > | |
unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f) |
Overloads to AddObserver that allow developers to add class member functions as callbacks for events. More... | |
template<class U , class T > | |
unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
Overloads to AddObserver that allow developers to add class member functions as callbacks for events. More... | |
template<class U , class T > | |
unsigned long | AddObserver (unsigned long event, U observer, bool(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
Allow user to set the AbortFlagOn() with the return value of the callback method. More... | |
int | InvokeEvent (unsigned long event, void *callData) |
This method invokes an event and return whether the event was aborted or not. More... | |
int | InvokeEvent (const char *event, void *callData) |
This method invokes an event and return whether the event was aborted or not. More... | |
Public Member Functions inherited from vtkObjectBase | |
const char * | GetClassName () const |
Return the class name as a string. More... | |
virtual void | Delete () |
Delete a VTK object. More... | |
virtual void | FastDelete () |
Delete a reference to this object. More... | |
void | InitializeObjectBase () |
void | Print (ostream &os) |
Print an object to an ostream. More... | |
virtual void | Register (vtkObjectBase *o) |
Increase the reference count (mark as used by another object). More... | |
virtual void | UnRegister (vtkObjectBase *o) |
Decrease the reference count (release by another object). More... | |
int | GetReferenceCount () |
Return the current reference count of this object. More... | |
void | SetReferenceCount (int) |
Sets the reference count. More... | |
void | PrintRevisions (ostream &) |
Legacy. More... | |
virtual void | PrintHeader (ostream &os, vtkIndent indent) |
Methods invoked by print to print information about the object including superclasses. More... | |
virtual void | PrintTrailer (ostream &os, vtkIndent indent) |
Methods invoked by print to print information about the object including superclasses. More... | |
Static Public Member Functions | |
static vtkFXAAOptions * | New () |
static vtkTypeBool | IsTypeOf (const char *type) |
static vtkFXAAOptions * | SafeDownCast (vtkObjectBase *o) |
Static Public Member Functions inherited from vtkObject | |
static vtkObject * | New () |
Create an object with Debug turned off, modified time initialized to zero, and reference counting on. More... | |
static void | BreakOnError () |
This method is called when vtkErrorMacro executes. More... | |
static void | SetGlobalWarningDisplay (int val) |
This is a global flag that controls whether any debug, warning or error messages are displayed. More... | |
static void | GlobalWarningDisplayOn () |
This is a global flag that controls whether any debug, warning or error messages are displayed. More... | |
static void | GlobalWarningDisplayOff () |
This is a global flag that controls whether any debug, warning or error messages are displayed. More... | |
static int | GetGlobalWarningDisplay () |
This is a global flag that controls whether any debug, warning or error messages are displayed. More... | |
Static Public Member Functions inherited from vtkObjectBase | |
static vtkTypeBool | IsTypeOf (const char *name) |
Return 1 if this class type is the same type of (or a subclass of) the named class. More... | |
static vtkObjectBase * | New () |
Create an object with Debug turned off, modified time initialized to zero, and reference counting on. More... | |
Protected Member Functions | |
virtual vtkObjectBase * | NewInstanceInternal () const |
vtkFXAAOptions () | |
~vtkFXAAOptions () override | |
Protected Member Functions inherited from vtkObject | |
vtkObject () | |
~vtkObject () override | |
void | RegisterInternal (vtkObjectBase *, vtkTypeBool check) override |
void | UnRegisterInternal (vtkObjectBase *, vtkTypeBool check) override |
void | InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=nullptr) |
These methods allow a command to exclusively grab all events. More... | |
void | InternalReleaseFocus () |
These methods allow a command to exclusively grab all events. More... | |
Protected Member Functions inherited from vtkObjectBase | |
vtkObjectBase () | |
virtual | ~vtkObjectBase () |
virtual void | CollectRevisions (ostream &) |
virtual void | ReportReferences (vtkGarbageCollector *) |
vtkObjectBase (const vtkObjectBase &) | |
void | operator= (const vtkObjectBase &) |
Protected Attributes | |
float | RelativeContrastThreshold |
float | HardContrastThreshold |
float | SubpixelBlendLimit |
float | SubpixelContrastThreshold |
int | EndpointSearchIterations |
bool | UseHighQualityEndpoints |
DebugOption | DebugOptionValue |
Protected Attributes inherited from vtkObject | |
bool | Debug |
vtkTimeStamp | MTime |
vtkSubjectHelper * | SubjectHelper |
Protected Attributes inherited from vtkObjectBase | |
vtkAtomicInt32 | ReferenceCount |
vtkWeakPointerBase ** | WeakPointers |
Configuration for FXAA implementations.
This class encapsulates the settings for vtkOpenGLFXAAFilter.
Definition at line 30 of file vtkFXAAOptions.h.
typedef vtkObject vtkFXAAOptions::Superclass |
Definition at line 50 of file vtkFXAAOptions.h.
Debugging options that affect the output color buffer.
See vtkFXAAFilterFS.glsl for details.
Definition at line 37 of file vtkFXAAOptions.h.
|
protected |
|
overrideprotected |
|
static |
|
static |
|
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 vtkObjectBase.
|
static |
|
protectedvirtual |
vtkFXAAOptions* vtkFXAAOptions::NewInstance | ( | ) | const |
|
overridevirtual |
|
virtual |
Threshold for applying FXAA to a pixel, relative to the maximum luminosity of its 4 immediate neighbors.
The luminosity of the current pixel and it's NSWE neighbors is computed. The maximum luminosity and luminosity range (contrast) of all 5 pixels is found. If the contrast is less than RelativeContrastThreshold * maxLum, the pixel is not considered aliased and will not be affected by FXAA.
Suggested settings:
|
virtual |
Threshold for applying FXAA to a pixel, relative to the maximum luminosity of its 4 immediate neighbors.
The luminosity of the current pixel and it's NSWE neighbors is computed. The maximum luminosity and luminosity range (contrast) of all 5 pixels is found. If the contrast is less than RelativeContrastThreshold * maxLum, the pixel is not considered aliased and will not be affected by FXAA.
Suggested settings:
|
virtual |
Similar to RelativeContrastThreshold, but not scaled by the maximum luminosity.
If the contrast of the current pixel and it's 4 immediate NSWE neighbors is less than HardContrastThreshold, the pixel is not considered aliased and will not be affected by FXAA.
Suggested settings:
|
virtual |
Similar to RelativeContrastThreshold, but not scaled by the maximum luminosity.
If the contrast of the current pixel and it's 4 immediate NSWE neighbors is less than HardContrastThreshold, the pixel is not considered aliased and will not be affected by FXAA.
Suggested settings:
|
virtual |
Subpixel aliasing is corrected by applying a lowpass filter to the current pixel.
This is implemented by blending an average of the 3x3 neighborhood around the pixel into the final result. The amount of blending is determined by comparing the detected amount of subpixel aliasing to the total contrasting of the CNSWE pixels:
SubpixelBlending = abs(lumC - lumAveNSWE) / (lumMaxCNSWE - lumMinCNSWE)
This parameter sets an upper limit to the amount of subpixel blending to prevent the image from simply getting blurred.
Suggested settings:
|
virtual |
Subpixel aliasing is corrected by applying a lowpass filter to the current pixel.
This is implemented by blending an average of the 3x3 neighborhood around the pixel into the final result. The amount of blending is determined by comparing the detected amount of subpixel aliasing to the total contrasting of the CNSWE pixels:
SubpixelBlending = abs(lumC - lumAveNSWE) / (lumMaxCNSWE - lumMinCNSWE)
This parameter sets an upper limit to the amount of subpixel blending to prevent the image from simply getting blurred.
Suggested settings:
|
virtual |
Minimum amount of subpixel aliasing required for subpixel antialiasing to be applied.
Subpixel aliasing is corrected by applying a lowpass filter to the current pixel. This is implemented by blending an average of the 3x3 neighborhood around the pixel into the final result. The amount of blending is determined by comparing the detected amount of subpixel aliasing to the total contrasting of the CNSWE pixels:
SubpixelBlending = abs(lumC - lumAveNSWE) / (lumMaxCNSWE - lumMinCNSWE)
If SubpixelBlending is less than this threshold, no lowpass blending will occur.
Suggested settings:
|
virtual |
Minimum amount of subpixel aliasing required for subpixel antialiasing to be applied.
Subpixel aliasing is corrected by applying a lowpass filter to the current pixel. This is implemented by blending an average of the 3x3 neighborhood around the pixel into the final result. The amount of blending is determined by comparing the detected amount of subpixel aliasing to the total contrasting of the CNSWE pixels:
SubpixelBlending = abs(lumC - lumAveNSWE) / (lumMaxCNSWE - lumMinCNSWE)
If SubpixelBlending is less than this threshold, no lowpass blending will occur.
Suggested settings:
|
virtual |
Use an improved edge endpoint detection algorithm.
If true, a modified edge endpoint detection algorithm is used that requires more texture lookups, but will properly detect aliased single-pixel lines.
If false, the edge endpoint algorithm proposed by NVIDIA will by used. This algorithm is faster (fewer lookups), but will fail to detect endpoints of single pixel edge steps.
Default setting is true.
|
virtual |
Use an improved edge endpoint detection algorithm.
If true, a modified edge endpoint detection algorithm is used that requires more texture lookups, but will properly detect aliased single-pixel lines.
If false, the edge endpoint algorithm proposed by NVIDIA will by used. This algorithm is faster (fewer lookups), but will fail to detect endpoints of single pixel edge steps.
Default setting is true.
|
virtual |
Use an improved edge endpoint detection algorithm.
If true, a modified edge endpoint detection algorithm is used that requires more texture lookups, but will properly detect aliased single-pixel lines.
If false, the edge endpoint algorithm proposed by NVIDIA will by used. This algorithm is faster (fewer lookups), but will fail to detect endpoints of single pixel edge steps.
Default setting is true.
|
virtual |
Use an improved edge endpoint detection algorithm.
If true, a modified edge endpoint detection algorithm is used that requires more texture lookups, but will properly detect aliased single-pixel lines.
If false, the edge endpoint algorithm proposed by NVIDIA will by used. This algorithm is faster (fewer lookups), but will fail to detect endpoints of single pixel edge steps.
Default setting is true.
|
virtual |
Set the number of iterations for the endpoint search algorithm.
Increasing this value will increase runtime, but also properly detect longer edges. The current implementation steps one pixel in both the positive and negative directions per iteration. The default value is 12, which will resolve endpoints of edges < 25 pixels long (2 * 12 + 1).
|
virtual |
Set the number of iterations for the endpoint search algorithm.
Increasing this value will increase runtime, but also properly detect longer edges. The current implementation steps one pixel in both the positive and negative directions per iteration. The default value is 12, which will resolve endpoints of edges < 25 pixels long (2 * 12 + 1).
|
virtual |
Debugging options that affect the output color buffer.
See vtkFXAAFilterFS.glsl for details. Only one may be active at a time.
|
virtual |
Debugging options that affect the output color buffer.
See vtkFXAAFilterFS.glsl for details. Only one may be active at a time.
|
protected |
Definition at line 184 of file vtkFXAAOptions.h.
|
protected |
Definition at line 185 of file vtkFXAAOptions.h.
|
protected |
Definition at line 186 of file vtkFXAAOptions.h.
|
protected |
Definition at line 187 of file vtkFXAAOptions.h.
|
protected |
Definition at line 188 of file vtkFXAAOptions.h.
|
protected |
Definition at line 189 of file vtkFXAAOptions.h.
|
protected |
Definition at line 190 of file vtkFXAAOptions.h.