Open3D (C++ API)
0.19.0
Toggle main menu visibility
Loading...
Searching...
No Matches
cpp
open3d
core
nns
NanoFlannIndex.h
Go to the documentation of this file.
1
// ----------------------------------------------------------------------------
2
// - Open3D: www.open3d.org -
3
// ----------------------------------------------------------------------------
4
// Copyright (c) 2018-2024 www.open3d.org
5
// SPDX-License-Identifier: MIT
6
// ----------------------------------------------------------------------------
7
8
#pragma once
9
10
#include <vector>
11
12
#include "
open3d/core/Tensor.h
"
13
#include "
open3d/core/nns/NNSIndex.h
"
14
#include "
open3d/core/nns/NeighborSearchCommon.h
"
15
#include "
open3d/utility/Logging.h
"
16
17
namespace
open3d
{
18
namespace
core
{
19
namespace
nns
{
20
24
class
NanoFlannIndex
:
public
NNSIndex
{
25
public
:
27
NanoFlannIndex
();
28
33
NanoFlannIndex
(
const
Tensor
&dataset_points);
34
NanoFlannIndex
(
const
Tensor
&dataset_points,
const
Dtype
&index_dtype);
35
~NanoFlannIndex
();
36
NanoFlannIndex
(
const
NanoFlannIndex
&) =
delete
;
37
NanoFlannIndex
&
operator=
(
const
NanoFlannIndex
&) =
delete
;
38
39
public
:
40
bool
SetTensorData
(
const
Tensor
&dataset_points,
41
const
Dtype
&index_dtype =
core::Int64
)
override
;
42
43
bool
SetTensorData
(
const
Tensor
&dataset_points,
44
double
radius,
45
const
Dtype
&index_dtype =
core::Int64
)
override
{
46
utility::LogError(
47
"NanoFlannIndex::SetTensorData with radius not implemented."
);
48
}
49
58
std::pair<Tensor, Tensor>
SearchKnn
(
const
Tensor
&query_points,
59
int
knn)
const override
;
60
71
std::tuple<Tensor, Tensor, Tensor>
SearchRadius
(
72
const
Tensor
&query_points,
73
const
Tensor
&radii,
74
bool
sort =
true
)
const override
;
75
86
std::tuple<Tensor, Tensor, Tensor>
SearchRadius
(
87
const
Tensor
&query_points,
88
double
radius,
89
bool
sort =
true
)
const override
;
90
102
std::tuple<Tensor, Tensor, Tensor>
SearchHybrid
(
const
Tensor
&query_points,
103
double
radius,
104
int
max_knn)
const override
;
105
106
protected
:
107
// Tensor dataset_points_;
108
std::unique_ptr<NanoFlannIndexHolderBase>
holder_
;
109
};
110
}
// namespace nns
111
}
// namespace core
112
}
// namespace open3d
Logging.h
NNSIndex.h
Tensor.h
open3d::core::Dtype
Definition
Dtype.h:20
open3d::core::Tensor
Definition
Tensor.h:32
open3d::core::nns::NNSIndex::NNSIndex
NNSIndex()
Default Constructor.
Definition
NNSIndex.h:24
open3d::core::nns::NanoFlannIndex::NanoFlannIndex
NanoFlannIndex(const NanoFlannIndex &)=delete
open3d::core::nns::NanoFlannIndex::SearchKnn
std::pair< Tensor, Tensor > SearchKnn(const Tensor &query_points, int knn) const override
Definition
NanoFlannIndex.cpp:57
open3d::core::nns::NanoFlannIndex::operator=
NanoFlannIndex & operator=(const NanoFlannIndex &)=delete
open3d::core::nns::NanoFlannIndex::SetTensorData
bool SetTensorData(const Tensor &dataset_points, const Dtype &index_dtype=core::Int64) override
Definition
NanoFlannIndex.cpp:35
open3d::core::nns::NanoFlannIndex::holder_
std::unique_ptr< NanoFlannIndexHolderBase > holder_
Definition
NanoFlannIndex.h:108
open3d::core::nns::NanoFlannIndex::SearchHybrid
std::tuple< Tensor, Tensor, Tensor > SearchHybrid(const Tensor &query_points, double radius, int max_knn) const override
Definition
NanoFlannIndex.cpp:157
open3d::core::nns::NanoFlannIndex::SetTensorData
bool SetTensorData(const Tensor &dataset_points, double radius, const Dtype &index_dtype=core::Int64) override
Definition
NanoFlannIndex.h:43
open3d::core::nns::NanoFlannIndex::~NanoFlannIndex
~NanoFlannIndex()
Definition
NanoFlannIndex.cpp:33
open3d::core::nns::NanoFlannIndex::NanoFlannIndex
NanoFlannIndex()
Default Constructor.
Definition
NanoFlannIndex.cpp:22
open3d::core::nns::NanoFlannIndex::SearchRadius
std::tuple< Tensor, Tensor, Tensor > SearchRadius(const Tensor &query_points, const Tensor &radii, bool sort=true) const override
Definition
NanoFlannIndex.cpp:98
NeighborSearchCommon.h
open3d::core::nns
Definition
FixedRadiusIndex.cpp:16
open3d::core
Definition
AdvancedIndexing.cpp:15
open3d::core::Int64
const Dtype Int64
Definition
Dtype.cpp:47
open3d
Definition
PinholeCameraIntrinsic.cpp:16
Generated by
1.17.0