VTK  9.7.1
vtkDecimatePolylineCustomFieldStrategy.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
23 #ifndef vtkDecimatePolylineCustomFieldStrategy_h
24 #define vtkDecimatePolylineCustomFieldStrategy_h
25 
27 #include "vtkFiltersCoreModule.h" // For export macro
28 #include "vtkWrappingHints.h" // For VTK_MARSHALAUTO
29 
30 VTK_ABI_NAMESPACE_BEGIN
31 
34 {
35 public:
37  void PrintSelf(ostream& os, vtkIndent indent) override;
39 
53  double ComputeError(
54  vtkPointSet* dataset, vtkIdType originId, vtkIdType p1Id, vtkIdType p2Id) override;
55 
56  bool IsStateValid(vtkPointSet* dataset) const override;
57 
59 
64  vtkSetMacro(FieldName, std::string);
65  vtkGetMacro(FieldName, std::string);
67 
68 protected:
70  ~vtkDecimatePolylineCustomFieldStrategy() override = default;
71 
72 private:
74  void operator=(const vtkDecimatePolylineCustomFieldStrategy&) = delete;
75 
76  std::string FieldName;
77 };
78 
79 VTK_ABI_NAMESPACE_END
80 #endif
Decimation strategy using a custom point data array to retrieve the data to be used a a metric...
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
concrete class for storing a set of points
Definition: vtkPointSet.h:58
int vtkIdType
Definition: vtkType.h:363
a simple class to control print indentation
Definition: vtkIndent.h:28
virtual bool IsStateValid(vtkPointSet *dataset) const
Returns whether this decimation strategy is in a valid state and ready to compute errors...
abstract class to define a decimation strategy for the vtkDecimatePolylineFilter
#define VTK_MARSHALAUTO
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
virtual double ComputeError(vtkPointSet *dataset, vtkIdType originId, vtkIdType p1Id, vtkIdType p2Id)=0
Virtual method for computing the decimation error.