Class Clusterer


  • final class Clusterer
    extends java.lang.Object
    Implementation for the vertex clustering. Used by the TopoGraph and Simplify.
    • Field Detail

      • m_tolerance

        double m_tolerance
      • m_sqr_tolerance

        double m_sqr_tolerance
      • m_cell_size

        double m_cell_size
      • m_inv_cell_size

        double m_inv_cell_size
      • m_bucket_array

        int[] m_bucket_array
      • m_bucket_hash

        int[] m_bucket_hash
      • m_dbg_candidate_check_count

        int m_dbg_candidate_check_count
      • m_hash_values

        int m_hash_values
      • m_new_clusters

        int m_new_clusters
    • Constructor Detail

      • Clusterer

        Clusterer()
    • Method Detail

      • executeNonReciprocal

        static boolean executeNonReciprocal​(EditShape shape,
                                            double tolerance)
      • isClusterCandidate_

        static boolean isClusterCandidate_​(double x_1,
                                           double y1,
                                           double x2,
                                           double y2,
                                           double sqr_tolerance)
      • hashFunction_

        static int hashFunction_​(int xi,
                                 int yi)
      • getNearestNeighbourCandidate_

        void getNearestNeighbourCandidate_​(int xyindex,
                                           Point2D pointOfInterest,
                                           int bucket_ptr,
                                           Clusterer.ClusterCandidate candidate)
      • collectClusterCandidates_

        void collectClusterCandidates_​(int xyindex,
                                       AttributeStreamOfInt32 candidates)
      • collectNearestNeighbourCandidates_

        void collectNearestNeighbourCandidates_​(int xyindex,
                                                int hash,
                                                Point2D pointOfInterest,
                                                int bucket_ptr,
                                                AttributeStreamOfInt32 candidates)
      • mergeClusters_

        boolean mergeClusters_​(int vertex1,
                               int vertex2,
                               boolean update_hash)
      • mergeVertices

        static boolean mergeVertices​(Point pt_1,
                                     Point pt_2,
                                     double w_1,
                                     int rank_1,
                                     double w_2,
                                     int rank_2,
                                     Point pt_res,
                                     double[] w_res,
                                     int[] rank_res)
      • mergeVertices2D

        static boolean mergeVertices2D​(Point2D pt_1,
                                       Point2D pt_2,
                                       double w_1,
                                       int rank_1,
                                       double w_2,
                                       int rank_2,
                                       Point2D pt_res,
                                       double[] w_res,
                                       int[] rank_res)
      • mergeVertices_

        boolean mergeVertices_​(int vert_1,
                               int vert_2)
      • clusterNonReciprocal_

        boolean clusterNonReciprocal_()
      • applyClusterPositions_

        void applyClusterPositions_()