VTK
dox
Common
DataModel
vtkAbstractPointLocator.h
Go to the documentation of this file.
1
/*=========================================================================
2
3
Program: Visualization Toolkit
4
Module: vtkAbstractPointLocator.h
5
6
Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7
All rights reserved.
8
See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9
10
This software is distributed WITHOUT ANY WARRANTY; without even
11
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12
PURPOSE. See the above copyright notice for more information.
13
14
=========================================================================*/
30
#ifndef vtkAbstractPointLocator_h
31
#define vtkAbstractPointLocator_h
32
33
#include "vtkCommonDataModelModule.h"
// For export macro
34
#include "
vtkLocator.h
"
35
36
class
vtkIdList
;
37
38
class
VTKCOMMONDATAMODEL_EXPORT
vtkAbstractPointLocator
:
public
vtkLocator
39
{
40
public
:
42
45
vtkTypeMacro(
vtkAbstractPointLocator
,
vtkLocator
);
46
void
PrintSelf
(ostream& os,
vtkIndent
indent)
override
;
48
50
56
virtual
vtkIdType
FindClosestPoint(
const
double
x[3]) = 0;
57
vtkIdType
FindClosestPoint(
double
x,
double
y,
double
z);
59
65
virtual
vtkIdType
FindClosestPointWithinRadius(
66
double
radius
,
const
double
x[3],
double
& dist2) = 0;
67
69
77
virtual
void
FindClosestNPoints(
78
int
N,
const
double
x[3],
vtkIdList
*result) = 0;
79
void
FindClosestNPoints(
int
N,
double
x,
double
y,
double
z,
80
vtkIdList
*result);
82
84
90
virtual
void
FindPointsWithinRadius(
double
R,
const
double
x[3],
91
vtkIdList
*result) = 0;
92
void
FindPointsWithinRadius(
double
R,
double
x,
double
y,
double
z,
93
vtkIdList
*result);
95
97
100
virtual
double
*
GetBounds
() {
return
this->Bounds; }
101
virtual
void
GetBounds(
double
*);
103
105
109
vtkGetMacro(NumberOfBuckets,
vtkIdType
);
111
112
protected
:
113
vtkAbstractPointLocator
();
114
~
vtkAbstractPointLocator
()
override
;
115
116
double
Bounds[6];
// bounds of points
117
vtkIdType
NumberOfBuckets
;
// total size of locator
118
119
private
:
120
vtkAbstractPointLocator
(
const
vtkAbstractPointLocator
&) =
delete
;
121
void
operator=(
const
vtkAbstractPointLocator
&) =
delete
;
122
};
123
124
#endif
vtkIdType
int vtkIdType
Definition:
vtkType.h:347
vtkAbstractPointLocator::GetBounds
virtual double * GetBounds()
Provide an accessor to the bounds.
Definition:
vtkAbstractPointLocator.h:100
vtkLocator.h
vtkAbstractPointLocator::NumberOfBuckets
vtkIdType NumberOfBuckets
Definition:
vtkAbstractPointLocator.h:117
vtkLocator
abstract base class for objects that accelerate spatial searches
Definition:
vtkLocator.h:69
vtkIndent
a simple class to control print indentation
Definition:
vtkIndent.h:33
vtkIdList
list of point or cell ids
Definition:
vtkIdList.h:30
vtkLocator::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkAbstractPointLocator
abstract class to quickly locate points in 3-space
Definition:
vtkAbstractPointLocator.h:38
vtkX3D::radius
Definition:
vtkX3D.h:252
Generated by
1.8.16