|
VTK
|
Objects that compute a screen-based error during cell tessellation. More...
#include <vtkViewDependentErrorMetric.h>
Public Types | |
| typedef vtkGenericSubdivisionErrorMetric | Superclass |
Public Types inherited from vtkGenericSubdivisionErrorMetric | |
| typedef vtkObject | Superclass |
Public Types inherited from vtkObject | |
| typedef vtkObjectBase | Superclass |
Public Member Functions | |
| virtual int | IsA (const char *type) |
| vtkViewDependentErrorMetric * | NewInstance () const |
| void | PrintSelf (ostream &os, vtkIndent indent) |
| virtual double | GetPixelTolerance () |
| void | SetPixelTolerance (double value) |
| virtual vtkViewport * | GetViewport () |
| void | SetViewport (vtkViewport *viewport) |
| int | RequiresEdgeSubdivision (double *leftPoint, double *midPoint, double *rightPoint, double alpha) |
| double | GetError (double *leftPoint, double *midPoint, double *rightPoint, double alpha) |
Public Member Functions inherited from vtkGenericSubdivisionErrorMetric | |
| vtkGenericSubdivisionErrorMetric * | NewInstance () const |
| void | SetGenericCell (vtkGenericAdaptorCell *cell) |
| virtual vtkGenericAdaptorCell * | GetGenericCell () |
| void | SetDataSet (vtkGenericDataSet *ds) |
| virtual vtkGenericDataSet * | GetDataSet () |
Public Member Functions inherited from vtkObject | |
| vtkObject * | NewInstance () const |
| virtual void | DebugOn () |
| virtual void | DebugOff () |
| bool | GetDebug () |
| void | SetDebug (bool 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) |
| vtkCommand * | GetCommand (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) |
| template<class U , class T > | |
| unsigned long | AddObserver (unsigned long event, U observer, bool(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) |
| virtual void | PrintHeader (ostream &os, vtkIndent indent) |
| virtual void | PrintTrailer (ostream &os, vtkIndent indent) |
| virtual void | Register (vtkObjectBase *o) |
| virtual void | UnRegister (vtkObjectBase *o) |
| int | GetReferenceCount () |
| void | SetReferenceCount (int) |
| void | PrintRevisions (ostream &) |
Static Public Member Functions | |
| static vtkViewDependentErrorMetric * | New () |
| static int | IsTypeOf (const char *type) |
| static vtkViewDependentErrorMetric * | SafeDownCast (vtkObjectBase *o) |
Static Public Member Functions inherited from vtkGenericSubdivisionErrorMetric | |
| static int | IsTypeOf (const char *type) |
| static vtkGenericSubdivisionErrorMetric * | SafeDownCast (vtkObjectBase *o) |
Static Public Member Functions inherited from vtkObject | |
| static int | IsTypeOf (const char *type) |
| static vtkObject * | SafeDownCast (vtkObjectBase *o) |
| static vtkObject * | New () |
| static void | BreakOnError () |
| static void | SetGlobalWarningDisplay (int val) |
| static void | GlobalWarningDisplayOn () |
| static void | GlobalWarningDisplayOff () |
| static int | GetGlobalWarningDisplay () |
Static Public Member Functions inherited from vtkObjectBase | |
| static int | IsTypeOf (const char *name) |
| static vtkObjectBase * | New () |
Protected Member Functions | |
| virtual vtkObjectBase * | NewInstanceInternal () const |
| vtkViewDependentErrorMetric () | |
| ~vtkViewDependentErrorMetric () | |
| double | Distance2LinePoint (double x[2], double y[2], double z[2]) |
Protected Member Functions inherited from vtkGenericSubdivisionErrorMetric | |
| vtkGenericSubdivisionErrorMetric () | |
| ~vtkGenericSubdivisionErrorMetric () | |
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 &) |
| virtual void | ReportReferences (vtkGarbageCollector *) |
| vtkObjectBase (const vtkObjectBase &) | |
| void | operator= (const vtkObjectBase &) |
Protected Attributes | |
| double | PixelTolerance |
| vtkViewport * | Viewport |
| vtkCoordinate * | Coordinate |
Protected Attributes inherited from vtkGenericSubdivisionErrorMetric | |
| vtkGenericAdaptorCell * | GenericCell |
| vtkGenericDataSet * | DataSet |
Protected Attributes inherited from vtkObject | |
| bool | Debug |
| vtkTimeStamp | MTime |
| vtkSubjectHelper * | SubjectHelper |
Protected Attributes inherited from vtkObjectBase | |
| vtkAtomicInt32 | ReferenceCount |
| vtkWeakPointerBase ** | WeakPointers |
Objects that compute a screen-based error during cell tessellation.
It is a concrete error metric, based on a geometric criterium in the screen space: the variation of the projected edge from a projected straight line
Definition at line 40 of file vtkViewDependentErrorMetric.h.
Standard VTK type and error macros.
Definition at line 49 of file vtkViewDependentErrorMetric.h.
|
protected |
|
protected |
|
static |
Construct the error metric with a default squared screen-based geometric accuracy measured in pixels equal to 0.25 (0.5^2).
|
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 vtkGenericSubdivisionErrorMetric.
|
static |
|
protectedvirtual |
Reimplemented from vtkGenericSubdivisionErrorMetric.
| vtkViewDependentErrorMetric* vtkViewDependentErrorMetric::NewInstance | ( | ) | const |
|
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 vtkGenericSubdivisionErrorMetric.
|
virtual |
Return the squared screen-based geometric accurary measured in pixels. An accuracy less or equal to 0.25 (0.5^2) ensures that the screen-space interpolation of a mid-point matchs exactly with the projection of the mid-point (a value less than 1 but greater than 0.25 is not enough, because of 8-neighbors). Maybe it is useful for lower accuracy in case of anti-aliasing?
| void vtkViewDependentErrorMetric::SetPixelTolerance | ( | double | value | ) |
Set the squared screen-based geometric accuracy measured in pixels. Subdivision will be required if the square distance between the projection of the real point and the straight line passing through the projection of the vertices of the edge is greater than ‘value’. For instance, 0.25 will give better result than 1.
|
virtual |
Set/Get the renderer with ‘renderer’ on which the error metric is based. The error metric use the active camera of the renderer.
| void vtkViewDependentErrorMetric::SetViewport | ( | vtkViewport * | viewport | ) |
|
virtual |
Does the edge need to be subdivided according to the distance between the line passing through its endpoints in screen space and the projection of its mid point? The edge is defined by its ‘leftPoint’ and its ‘rightPoint’. ‘leftPoint’, ‘midPoint’ and ‘rightPoint’ have to be initialized before calling RequiresEdgeSubdivision(). Their format is global coordinates, parametric coordinates and point centered attributes: xyx rst abc de... ‘alpha’ is the normalized abscissa of the midpoint along the edge. (close to 0 means close to the left point, close to 1 means close to the right point)
Implements vtkGenericSubdivisionErrorMetric.
|
virtual |
Return the error at the mid-point. The type of error depends on the state of the concrete error metric. For instance, it can return an absolute or relative error metric. See RequiresEdgeSubdivision() for a description of the arguments.
Implements vtkGenericSubdivisionErrorMetric.
|
protected |
Square distance between a straight line (defined by points x and y) and a point z. Property: if x and y are equal, the line is a point and the result is the square distance between points x and z.
|
protected |
Definition at line 125 of file vtkViewDependentErrorMetric.h.
|
protected |
Definition at line 126 of file vtkViewDependentErrorMetric.h.
|
protected |
Definition at line 128 of file vtkViewDependentErrorMetric.h.