VTK  9.3.20240417
vtkCoincidentPoints.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-FileCopyrightText: Copyright 2008 Sandia Corporation
3 // SPDX-License-Identifier: LicenseRef-BSD-3-Clause-Sandia-NVIDIA-USGov
14 #ifndef vtkCoincidentPoints_h
15 #define vtkCoincidentPoints_h
16 
17 #include "vtkFiltersGeneralModule.h" // For export macro
18 #include "vtkObject.h"
19 
20 VTK_ABI_NAMESPACE_BEGIN
21 class vtkIdList;
22 class vtkPoints;
23 
24 class VTKFILTERSGENERAL_EXPORT vtkCoincidentPoints : public vtkObject
25 {
26 public:
29  void PrintSelf(ostream& os, vtkIndent indent) override;
30 
38  void AddPoint(vtkIdType Id, const double point[3]);
39 
45 
51 
55  void InitTraversal();
56 
62 
67  void Clear();
68 
69  class implementation;
70  implementation* GetImplementation() { return this->Implementation; }
71 
77  static void SpiralPoints(vtkIdType num, vtkPoints* offsets);
78 
79 protected:
82 
83 private:
85  void operator=(const vtkCoincidentPoints&) = delete;
86 
87  implementation* Implementation;
88 
89  friend class implementation;
90 };
91 
92 VTK_ABI_NAMESPACE_END
93 #endif // vtkCoincidentPoints_h
contains an octree of labels
~vtkCoincidentPoints() override
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void AddPoint(vtkIdType Id, const double point[3])
Accumulates a set of Ids in a map where the point coordinate is the key.
static void SpiralPoints(vtkIdType num, vtkPoints *offsets)
Calculate num points, at a regular interval, along a parametric spiral.
static vtkCoincidentPoints * New()
implementation * GetImplementation()
vtkIdList * GetCoincidentPointIds(const double point[3])
Retrieve the list of point Ids that are coincident with the given point.
void Clear()
Clear the maps for reuse.
vtkIdList * GetNextCoincidentPointIds()
Used to iterate the sets of coincident points within the map.
void RemoveNonCoincidentPoints()
Iterate through all added points and remove any entries that have no coincident points (only a single...
void InitTraversal()
Initialize iteration to the beginning of the coincident point map.
list of point or cell ids
Definition: vtkIdList.h:133
a simple class to control print indentation
Definition: vtkIndent.h:108
abstract base class for most VTK objects
Definition: vtkObject.h:162
represent and manipulate 3D points
Definition: vtkPoints.h:139
@ point
Definition: vtkX3D.h:236
int vtkIdType
Definition: vtkType.h:315