VTK  9.3.20240916
vtkDecimatePolylineStrategy.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2// SPDX-License-Identifier: BSD-3-Clause
20#ifndef vtkDecimatePolylineStrategy_h
21#define vtkDecimatePolylineStrategy_h
22
23#include "vtkFiltersCoreModule.h" // For export macro
24#include "vtkObject.h"
25
26VTK_ABI_NAMESPACE_BEGIN
27
28class vtkPointSet;
29
30class VTKFILTERSCORE_EXPORT vtkDecimatePolylineStrategy : public vtkObject
31{
32public:
44 virtual double ComputeError(
45 vtkPointSet* dataset, vtkIdType originId, vtkIdType p1Id, vtkIdType p2Id) = 0;
46
55 virtual bool IsStateValid(vtkPointSet* vtkNotUsed(dataset)) const { return true; }
56
57protected:
59 ~vtkDecimatePolylineStrategy() override = default;
60
61private:
63 void operator=(const vtkDecimatePolylineStrategy&) = delete;
64};
65VTK_ABI_NAMESPACE_END
66
67#endif
abstract class to define a decimation strategy for the vtkDecimatePolylineFilter
virtual bool IsStateValid(vtkPointSet *vtkNotUsed(dataset)) const
Returns whether this decimation strategy is in a valid state and ready to compute errors.
~vtkDecimatePolylineStrategy() override=default
virtual double ComputeError(vtkPointSet *dataset, vtkIdType originId, vtkIdType p1Id, vtkIdType p2Id)=0
Virtual method for computing the decimation error.
abstract base class for most VTK objects
Definition vtkObject.h:162
concrete class for storing a set of points
Definition vtkPointSet.h:98
int vtkIdType
Definition vtkType.h:315