28#ifndef vtkGeometricErrorMetric_h
29#define vtkGeometricErrorMetric_h
31#include "vtkCommonDataModelModule.h"
59 vtkGetMacro(AbsoluteGeometricTolerance,
double);
100 double* leftPoint,
double* midPoint,
double* rightPoint,
double alpha)
override;
115 double GetError(
double* leftPoint,
double* midPoint,
double* rightPoint,
double alpha)
override;
defines dataset interface
Objects that compute error during cell tessellation.
Objects that compute geometry-based error during cell tessellation.
void SetRelativeGeometricTolerance(double value, vtkGenericDataSet *ds)
Set the geometric accuracy with a value relative to the length of the bounding box of the dataset.
static vtkGeometricErrorMetric * New()
Construct the error metric with a default squared absolute geometric accuracy equal to 1.
int GetRelative()
Return the type of output of GetError()
~vtkGeometricErrorMetric() override
void SetAbsoluteGeometricTolerance(double value)
Set the geometric accuracy with a squared absolute value.
double Distance2LinePoint(double x[3], double y[3], double z[3])
Square distance between a straight line (defined by points x and y) and a point z.
void PrintSelf(ostream &os, vtkIndent indent) override
Standard VTK type and error macros.
double AbsoluteGeometricTolerance
vtkGeometricErrorMetric()
int RequiresEdgeSubdivision(double *leftPoint, double *midPoint, double *rightPoint, double alpha) override
Does the edge need to be subdivided according to the distance between the line passing through its en...
double GetError(double *leftPoint, double *midPoint, double *rightPoint, double alpha) override
Return the error at the mid-point.
a simple class to control print indentation