VTK  9.3.20240423
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
20VTK_ABI_NAMESPACE_BEGIN
21class vtkIdList;
22class vtkPoints;
23
24class VTKFILTERSGENERAL_EXPORT vtkCoincidentPoints : public vtkObject
25{
26public:
29 void PrintSelf(ostream& os, vtkIndent indent) override;
30
38 void AddPoint(vtkIdType Id, const double point[3]);
39
44 vtkIdList* GetCoincidentPointIds(const double point[3]);
45
51
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
79protected:
82
83private:
85 void operator=(const vtkCoincidentPoints&) = delete;
86
87 implementation* Implementation;
88
89 friend class implementation;
90};
91
92VTK_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.
vtkIdList * GetNextCoincidentPointIds()
Used to iterate the sets of coincident points within the map.
void Clear()
Clear the maps for reuse.
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.
static vtkCoincidentPoints * New()
vtkIdList * GetCoincidentPointIds(const double point[3])
Retrieve the list of point Ids that are coincident with the given point.
implementation * GetImplementation()
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
int vtkIdType
Definition vtkType.h:315