mirror of https://github.com/CGAL/cgal
Review: replace range_neighbor_query by sphere_neighbor_query
This commit is contained in:
parent
b2c33492ad
commit
a97cf7b70a
|
|
@ -11,7 +11,7 @@ namespace Classification
|
|||
Concept describing a neighbor query used for classification.
|
||||
|
||||
\cgalHasModel `CGAL::Classification::Point_set_neighborhood::K_neighbor_query`
|
||||
\cgalHasModel `CGAL::Classification::Point_set_neighborhood::Range_neighbor_query`
|
||||
\cgalHasModel `CGAL::Classification::Point_set_neighborhood::Sphere_neighbor_query`
|
||||
|
||||
*/
|
||||
class NeighborQuery
|
||||
|
|
|
|||
|
|
@ -164,7 +164,7 @@ int main (int argc, char** argv)
|
|||
t.start();
|
||||
Classification::classify_with_local_smoothing<CGAL::Parallel_tag>
|
||||
(pts, Pmap(), labels, classifier,
|
||||
neighborhood.range_neighbor_query(radius_neighbors),
|
||||
neighborhood.sphere_neighbor_query(radius_neighbors),
|
||||
label_indices);
|
||||
t.stop();
|
||||
std::cerr << "Classification with local smoothing performed in " << t.time() << " second(s)" << std::endl;
|
||||
|
|
|
|||
|
|
@ -136,7 +136,7 @@ public:
|
|||
|
||||
\cgalModels CGAL::Classification::NeighborQuery
|
||||
*/
|
||||
class Range_neighbor_query
|
||||
class Sphere_neighbor_query
|
||||
{
|
||||
public:
|
||||
typedef typename Point_set_neighborhood::Point value_type; ///<
|
||||
|
|
@ -149,21 +149,21 @@ public:
|
|||
\param neighborhood point set neighborhood object.
|
||||
\param radius radius of the neighbor query sphere.
|
||||
*/
|
||||
Range_neighbor_query (const Point_set_neighborhood& neighborhood, float radius)
|
||||
Sphere_neighbor_query (const Point_set_neighborhood& neighborhood, float radius)
|
||||
: neighborhood (neighborhood), radius(radius) { }
|
||||
|
||||
/// \cond SKIP_IN_MANUAL
|
||||
template <typename OutputIterator>
|
||||
OutputIterator operator() (const value_type& query, OutputIterator output) const
|
||||
{
|
||||
neighborhood.range_neighbors (query, radius, output);
|
||||
neighborhood.sphere_neighbors (query, radius, output);
|
||||
return output;
|
||||
}
|
||||
/// \endcond
|
||||
};
|
||||
|
||||
friend class K_neighbor_query;
|
||||
friend class Range_neighbor_query;
|
||||
friend class Sphere_neighbor_query;
|
||||
|
||||
/// \cond SKIP_IN_MANUAL
|
||||
Point_set_neighborhood () : m_tree (NULL) { }
|
||||
|
|
@ -239,15 +239,15 @@ public:
|
|||
/*!
|
||||
\brief Returns a neighbor query object with fixed radius `radius`.
|
||||
*/
|
||||
Range_neighbor_query range_neighbor_query (const float radius) const
|
||||
Sphere_neighbor_query sphere_neighbor_query (const float radius) const
|
||||
{
|
||||
return Range_neighbor_query (*this, radius);
|
||||
return Sphere_neighbor_query (*this, radius);
|
||||
}
|
||||
|
||||
private:
|
||||
|
||||
template <typename OutputIterator>
|
||||
void range_neighbors (const Point& query, const FT radius_neighbors, OutputIterator output) const
|
||||
void sphere_neighbors (const Point& query, const FT radius_neighbors, OutputIterator output) const
|
||||
{
|
||||
CGAL_assertion (m_tree != NULL);
|
||||
Sphere fs (query, radius_neighbors, 0, m_tree->traits());
|
||||
|
|
|
|||
|
|
@ -125,7 +125,7 @@ class Point_set_item_classification : public Item_classification_base
|
|||
else if (method == 1)
|
||||
CGAL::Classification::classify_with_local_smoothing<Concurrency_tag>
|
||||
(*(m_points->point_set()), m_points->point_set()->point_map(), m_labels, classifier,
|
||||
m_generator->neighborhood().range_neighbor_query(m_generator->radius_neighbors()),
|
||||
m_generator->neighborhood().sphere_neighbor_query(m_generator->radius_neighbors()),
|
||||
indices);
|
||||
else if (method == 2)
|
||||
CGAL::Classification::classify_with_graphcut<Concurrency_tag>
|
||||
|
|
|
|||
Loading…
Reference in New Issue