|
Ponca
03745f3c84c0c8d40cec269af63efe7d3cf77f30
Point Cloud Analysis library
|
Base class for neighbor graphs. More...
#include <abstractNeighborGraph.h>
Inheritance diagram for Ponca::AbstractNeighborGraph< _Traits, BufferType, _OneConnectedIndexQuery, _RangeIndexQuery >:
Collaboration diagram for Ponca::AbstractNeighborGraph< _Traits, BufferType, _OneConnectedIndexQuery, _RangeIndexQuery >:Public Types | |
| using | Traits = _Traits |
| Alias to the Traits type | |
| using | DataPoint = typename Traits::DataPoint |
| DataPoint given by user via Traits | |
| using | Scalar = typename DataPoint::Scalar |
| Scalar given by user via DataPoint | |
| using | VectorType = typename DataPoint::VectorType |
| VectorType given by user via DataPoint | |
| using | IndexType = typename Traits::IndexType |
| Type used to index points into the PointContainer. | |
| using | PointContainer = typename Traits::PointContainer |
| Container for DataPoint used inside the KdTree | |
| using | PointContainerConstRef = typename Traits::PointContainerConstRef |
| Container for DataPoint used inside the KdTree | |
| using | IndexContainer = typename Traits::IndexContainer |
| Container for indices used inside the KdTree | |
| using | IndexContainerRef = typename Traits::IndexContainerRef |
| Ref type to index container. | |
| using | OneConnectedIndexQuery = _OneConnectedIndexQuery |
| using | RangeIndexQuery = _RangeIndexQuery |
| using | Buffers = BufferType< Traits > |
Public Member Functions | |
| AbstractNeighborGraph (const Buffers &_bufs) | |
| Constructor that allows the use of prebuilt graph containers. | |
| IndexType | edgeCount () const |
| Get the number of connection edges in the graph. | |
| IndexType | pointCount () const |
| Get the number of points. | |
| PointContainer | points () const |
| Get the internal point container. | |
| IndexContainer | edges () const |
| Get the internal index container. | |
| const Buffers & | buffers () const |
| Get access to the internal buffer, for instance to prepare GPU binding. | |
| OneConnectedIndexQuery | oneConnectedNeighbors (int index=0) const |
| Provides a Query object to iterate over the vertices that are directly connected to the query point. | |
| RangeIndexQuery | rangeNeighbors (int index, Scalar r) const |
| Provides a Query object to iterate over the neighbors that are inside a given radius. | |
| RangeIndexQuery | rangeNeighborsIndexQuery () const |
| Convenience function to return an empty mutable range query. | |
Protected Member Functions | |
| const IndexType * | getIndexPtr () const |
| Accessor used by friend classes (queries) to get const access to the indices whatever the buffer type. | |
| IndexType * | getIndexPtr () |
| Accessor used by friend classes (queries) to get access to the indices whatever the buffer type. | |
Protected Attributes | |
| Buffers | m_bufs |
| Buffers used to store the KnnGraph. | |
Base class for neighbor graphs.
This class cannot be used directly: it provides base functionalities (accessors, query generations, buffer storage) and should be inherited to provide:
| _Traits | Traits type providing the types and constants used by the neighbor graph. Must have the same interface as the default traits types (NeighborGraphDefaultTraits or NeighborGraphPointerTraits). |
| BufferType | Type of buffer used in the Graph. Must inherit NeighborGraphBufferBase and be templated by _Traits |
| _OneConnectedIndexQuery | Type of query used to access direct neighbors |
| _RangeIndexQuery | Type of query used to compute Euclidean range queries restricted on the graph |
Definition at line 78 of file abstractNeighborGraph.h.
| using Ponca::AbstractNeighborGraph< _Traits, BufferType, _OneConnectedIndexQuery, _RangeIndexQuery >::Buffers = BufferType<Traits> |
Definition at line 85 of file abstractNeighborGraph.h.
| using Ponca::AbstractNeighborGraph< _Traits, BufferType, _OneConnectedIndexQuery, _RangeIndexQuery >::DataPoint = typename Traits::DataPoint |
DataPoint given by user via Traits
Definition at line 81 of file abstractNeighborGraph.h.
| using Ponca::AbstractNeighborGraph< _Traits, BufferType, _OneConnectedIndexQuery, _RangeIndexQuery >::IndexContainer = typename Traits::IndexContainer |
Container for indices used inside the KdTree
Definition at line 81 of file abstractNeighborGraph.h.
| using Ponca::AbstractNeighborGraph< _Traits, BufferType, _OneConnectedIndexQuery, _RangeIndexQuery >::IndexContainerRef = typename Traits::IndexContainerRef |
Ref type to index container.
Definition at line 81 of file abstractNeighborGraph.h.
| using Ponca::AbstractNeighborGraph< _Traits, BufferType, _OneConnectedIndexQuery, _RangeIndexQuery >::IndexType = typename Traits::IndexType |
Type used to index points into the PointContainer.
Definition at line 81 of file abstractNeighborGraph.h.
| using Ponca::AbstractNeighborGraph< _Traits, BufferType, _OneConnectedIndexQuery, _RangeIndexQuery >::OneConnectedIndexQuery = _OneConnectedIndexQuery |
Definition at line 82 of file abstractNeighborGraph.h.
| using Ponca::AbstractNeighborGraph< _Traits, BufferType, _OneConnectedIndexQuery, _RangeIndexQuery >::PointContainer = typename Traits::PointContainer |
Container for DataPoint used inside the KdTree
Definition at line 81 of file abstractNeighborGraph.h.
| using Ponca::AbstractNeighborGraph< _Traits, BufferType, _OneConnectedIndexQuery, _RangeIndexQuery >::PointContainerConstRef = typename Traits::PointContainerConstRef |
Container for DataPoint used inside the KdTree
Definition at line 81 of file abstractNeighborGraph.h.
| using Ponca::AbstractNeighborGraph< _Traits, BufferType, _OneConnectedIndexQuery, _RangeIndexQuery >::RangeIndexQuery = _RangeIndexQuery |
Definition at line 83 of file abstractNeighborGraph.h.
| using Ponca::AbstractNeighborGraph< _Traits, BufferType, _OneConnectedIndexQuery, _RangeIndexQuery >::Scalar = typename DataPoint::Scalar |
Scalar given by user via DataPoint
Definition at line 81 of file abstractNeighborGraph.h.
| using Ponca::AbstractNeighborGraph< _Traits, BufferType, _OneConnectedIndexQuery, _RangeIndexQuery >::Traits = _Traits |
Alias to the Traits type
Definition at line 81 of file abstractNeighborGraph.h.
| using Ponca::AbstractNeighborGraph< _Traits, BufferType, _OneConnectedIndexQuery, _RangeIndexQuery >::VectorType = typename DataPoint::VectorType |
VectorType given by user via DataPoint
Definition at line 81 of file abstractNeighborGraph.h.
|
inline |
Constructor that allows the use of prebuilt graph containers.
Each internal values of a neighbor graph can be extracted using buffers()
| _bufs | Internal buffers of the AbstractNeighborGraph |
Definition at line 107 of file abstractNeighborGraph.h.
|
inline |
Get access to the internal buffer, for instance to prepare GPU binding.
Definition at line 118 of file abstractNeighborGraph.h.
|
inline |
Get the number of connection edges in the graph.
Definition at line 110 of file abstractNeighborGraph.h.
|
inline |
Get the internal index container.
Definition at line 116 of file abstractNeighborGraph.h.
|
inlineprotected |
Accessor used by friend classes (queries) to get access to the indices whatever the buffer type.
Definition at line 93 of file abstractNeighborGraph.h.
|
inlineprotected |
Accessor used by friend classes (queries) to get const access to the indices whatever the buffer type.
Definition at line 91 of file abstractNeighborGraph.h.
|
inline |
Provides a Query object to iterate over the vertices that are directly connected to the query point.
The returned object can be reset and reused with the () operator, to compute a new result (also takes an index as parameter).
| index | Index of the point that the query evaluates |
Definition at line 129 of file abstractNeighborGraph.h.
|
inline |
Get the number of points.
Definition at line 112 of file abstractNeighborGraph.h.
|
inline |
Get the internal point container.
Definition at line 114 of file abstractNeighborGraph.h.
|
inline |
Provides a Query object to iterate over the neighbors that are inside a given radius.
The returned object can be reset and reused with the () operator, to compute a new result (also takes an index and a radius as parameters).
| index | Index of the point that the query evaluates |
| r | Radius around where to search the neighbors |
Definition at line 143 of file abstractNeighborGraph.h.
|
inline |
Convenience function to return an empty mutable range query.
The returned object can be reset and reused with the () operator, to compute a new result (also takes an index and a radius as parameters).
Definition at line 152 of file abstractNeighborGraph.h.
|
protected |
Buffers used to store the KnnGraph.
Definition at line 158 of file abstractNeighborGraph.h.