izzi
SVG SUBSET C++ API
Loading...
Searching...
No Matches
point_cluster Class Reference

Cluster of points. Reduce a set of points via a given cluster algorithm. More...

#include <izzi-points-cluster.h>

Public Member Functions

 point_cluster (const vpoints &input_points, const double r)
 
vwpoints reduce_grid ()
 Algorithm 1: Grid-based Clustering (Simple and Fast)
 
vwpoints reduce_hierarchical_agglomerative ()
 Algorithm 2: Hierarchical Agglomerative Clustering (More Accurate)
 
vwpoints reduce_constrained_k_means (size_t max_iterations=100)
 Algorithm 3: K-Means Inspired with Distance Constraint.
 
vwpoints reduce_voronoi (size_t max_iterations=50)
 Algorithm 4: Voronoi-Based Clustering with Radius Constraint.
 

Private Member Functions

vpoints initialize_centroids ()
 
Point calculate_centroid (const vpoints &cluster)
 
vwpoints weigh_cluster (const std::vector< vpoints > &clusters)
 
void merge_close_sites (std::vector< voronoi_cell > &cells)
 
vwpoints constrain_voronoi_clusters (const std::vector< voronoi_cell > &cells)
 
std::vector< vpointssplit_large_cell (const voronoi_cell &cell)
 

Private Attributes

double radius
 
vpoints points
 

Detailed Description

Cluster of points. Reduce a set of points via a given cluster algorithm.

Definition at line 46 of file izzi-points-cluster.h.

Constructor & Destructor Documentation

◆ point_cluster()

point_cluster::point_cluster ( const vpoints & input_points,
const double r )
inline

Definition at line 52 of file izzi-points-cluster.h.

Member Function Documentation

◆ reduce_grid()

vwpoints point_cluster::reduce_grid ( )
inline

Algorithm 1: Grid-based Clustering (Simple and Fast)

Definition at line 57 of file izzi-points-cluster.h.

+ Here is the call graph for this function:

◆ reduce_hierarchical_agglomerative()

vwpoints point_cluster::reduce_hierarchical_agglomerative ( )
inline

Algorithm 2: Hierarchical Agglomerative Clustering (More Accurate)

Definition at line 89 of file izzi-points-cluster.h.

+ Here is the call graph for this function:

◆ reduce_constrained_k_means()

vwpoints point_cluster::reduce_constrained_k_means ( size_t max_iterations = 100)
inline

Algorithm 3: K-Means Inspired with Distance Constraint.

Definition at line 128 of file izzi-points-cluster.h.

+ Here is the call graph for this function:

◆ reduce_voronoi()

vwpoints point_cluster::reduce_voronoi ( size_t max_iterations = 50)
inline

Algorithm 4: Voronoi-Based Clustering with Radius Constraint.

Definition at line 190 of file izzi-points-cluster.h.

+ Here is the call graph for this function:

◆ initialize_centroids()

vpoints point_cluster::initialize_centroids ( )
inlineprivate

Definition at line 256 of file izzi-points-cluster.h.

◆ calculate_centroid()

Point point_cluster::calculate_centroid ( const vpoints & cluster)
inlineprivate

Definition at line 299 of file izzi-points-cluster.h.

◆ weigh_cluster()

vwpoints point_cluster::weigh_cluster ( const std::vector< vpoints > & clusters)
inlineprivate

Definition at line 320 of file izzi-points-cluster.h.

+ Here is the call graph for this function:

◆ merge_close_sites()

void point_cluster::merge_close_sites ( std::vector< voronoi_cell > & cells)
inlineprivate

Definition at line 333 of file izzi-points-cluster.h.

+ Here is the call graph for this function:

◆ constrain_voronoi_clusters()

vwpoints point_cluster::constrain_voronoi_clusters ( const std::vector< voronoi_cell > & cells)
inlineprivate

Definition at line 357 of file izzi-points-cluster.h.

+ Here is the call graph for this function:

◆ split_large_cell()

std::vector< vpoints > point_cluster::split_large_cell ( const voronoi_cell & cell)
inlineprivate

Definition at line 381 of file izzi-points-cluster.h.

Member Data Documentation

◆ radius

double point_cluster::radius
private

Definition at line 48 of file izzi-points-cluster.h.

◆ points

vpoints point_cluster::points
private

Definition at line 49 of file izzi-points-cluster.h.


The documentation for this class was generated from the following file: