Section: Visualization Toolkit Filtering Classes
To create an instance of class vtkViewDependentErrorMetric, simply invoke its constructor as follows
obj = vtkViewDependentErrorMetric
obj
is an instance of the vtkViewDependentErrorMetric class.
string = obj.GetClassName ()
- Standard VTK type and error macros.
int = obj.IsA (string name)
- Standard VTK type and error macros.
vtkViewDependentErrorMetric = obj.NewInstance ()
- Standard VTK type and error macros.
vtkViewDependentErrorMetric = obj.SafeDownCast (vtkObject o)
- Standard VTK type and error macros.
double = obj.GetPixelTolerance ()
- 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?
\post positive_result: result>0
obj.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.
\pre positive_value: value>0
vtkViewport = obj.GetViewport ()
- Set/Get the renderer with `renderer' on which the error metric
is based. The error metric use the active camera of the renderer.
obj.SetViewport (vtkViewport viewport)
- Set/Get the renderer with `renderer' on which the error metric
is based. The error metric use the active camera of the renderer.
int = obj.RequiresEdgeSubdivision (double leftPoint, double midPoint, double rightPoint, double alpha)
- 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)
\pre leftPoint_exists: leftPoint!=0
\pre midPoint_exists: midPoint!=0
\pre rightPoint_exists: rightPoint!=0
\pre clamped_alpha: alpha>0 && alpha<1
\pre valid_size: sizeof(leftPoint)=sizeof(midPoint)=sizeof(rightPoint)
=GetAttributeCollection()->GetNumberOfPointCenteredComponents()+6
double = obj.GetError (double leftPoint, double midPoint, double rightPoint, double alpha)
- 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.
\pre leftPoint_exists: leftPoint!=0
\pre midPoint_exists: midPoint!=0
\pre rightPoint_exists: rightPoint!=0
\pre clamped_alpha: alpha>0 && alpha<1
\pre valid_size: sizeof(leftPoint)=sizeof(midPoint)=sizeof(rightPoint)
=GetAttributeCollection()->GetNumberOfPointCenteredComponents()+6
\post positive_result: result>=0