reduce the number of lines in a polyline
More...
#include <vtkDecimatePolylineFilter.h>
Inherits vtkPolyDataAlgorithm.
reduce the number of lines in a polyline
vtkDecimatePolylineFilter is a filter to reduce the number of lines in a polyline. The algorithm functions by evaluating an error metric for each vertex (i.e., the distance of the vertex to a line defined from the two vertices on either side of the vertex). Then, these vertices are placed into a priority queue, and those with larger errors are deleted first. The decimation continues until the target reduction is reached.
- Warning
- This algorithm is a very simple implementation that overlooks some potential complexities. First, if a vertex is multiply connected, meaning that it is used by multiple polylines, then the extra topological constraints are ignored. Second, the error is not updated as vertices are deleted (similar to iteratively computing a quadric error metric). Thus, once calculated, the error is used to determine which vertices are removed. This can produce less than optimal results.
- See Also
- vtkDecimate vtkDecimateProp vtkQuadricClustering vtkQuadricDecimation
- Tests:
- vtkDecimatePolylineFilter (Tests)
Definition at line 52 of file vtkDecimatePolylineFilter.h.
vtkDecimatePolylineFilter::vtkDecimatePolylineFilter |
( |
| ) |
|
|
protected |
vtkDecimatePolylineFilter::~vtkDecimatePolylineFilter |
( |
| ) |
|
|
protected |
static int vtkDecimatePolylineFilter::IsTypeOf |
( |
const char * |
type | ) |
|
|
static |
Standard methods for type information and printing.
virtual int vtkDecimatePolylineFilter::IsA |
( |
const char * |
type | ) |
|
|
virtual |
Standard methods for type information and printing.
Standard methods for type information and printing.
virtual vtkObjectBase* vtkDecimatePolylineFilter::NewInstanceInternal |
( |
| ) |
const |
|
protectedvirtual |
Standard methods for type information and printing.
Standard methods for type information and printing.
void vtkDecimatePolylineFilter::PrintSelf |
( |
ostream & |
os, |
|
|
vtkIndent |
indent |
|
) |
| |
Standard methods for type information and printing.
Instantiate this object with a target reduction of 0.90.
virtual void vtkDecimatePolylineFilter::SetTargetReduction |
( |
double |
| ) |
|
|
virtual |
Specify the desired reduction in the total number of polygons (e.g., if TargetReduction is set to 0.9, this filter will try to reduce the data set to 10% of its original size).
virtual double vtkDecimatePolylineFilter::GetTargetReduction |
( |
| ) |
|
|
virtual |
Specify the desired reduction in the total number of polygons (e.g., if TargetReduction is set to 0.9, this filter will try to reduce the data set to 10% of its original size).
int vtkDecimatePolylineFilter::RequestData |
( |
vtkInformation * |
, |
|
|
vtkInformationVector ** |
, |
|
|
vtkInformationVector * |
|
|
) |
| |
|
protected |
double vtkDecimatePolylineFilter::ComputeError |
( |
vtkPolyData * |
input, |
|
|
int |
prev, |
|
|
int |
id, |
|
|
int |
next |
|
) |
| |
|
protected |
void vtkDecimatePolylineFilter::UpdateError |
( |
vtkPolyData * |
input, |
|
|
int |
iId |
|
) |
| |
|
protected |
int vtkDecimatePolylineFilter::GetPrev |
( |
int |
iId | ) |
|
|
protected |
int vtkDecimatePolylineFilter::GetNext |
( |
int |
iId | ) |
|
|
protected |
vtkDecimatePolylineVertexErrorSTLMap* vtkDecimatePolylineFilter::ErrorMap |
|
protected |
vtkSmartPointer< vtkPriorityQueue > vtkDecimatePolylineFilter::PriorityQueue |
|
protected |
bool vtkDecimatePolylineFilter::Closed |
|
protected |
double vtkDecimatePolylineFilter::TargetReduction |
|
protected |
The documentation for this class was generated from the following file: