Class MaxExtensionBulkSplit

  • All Implemented Interfaces:
    BulkSplit

    public class MaxExtensionBulkSplit
    extends AbstractBulkSplit
    Split strategy for bulk-loading a spatial tree where the split axes are the dimensions with maximum extension.
    Since:
    0.4.0
    Author:
    Elke Achtert
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      static class  MaxExtensionBulkSplit.Par
      Parameterization class.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private static elki.logging.Logging LOG
      Logger.
      static MaxExtensionBulkSplit STATIC
      Static instance
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      private int chooseMaximalExtendedSplitAxis​(java.util.List<? extends elki.data.spatial.SpatialComparable> objects)
      Computes and returns the best split axis.
      <N extends elki.data.spatial.SpatialComparable>
      java.util.List<java.util.List<N>>
      partition​(java.util.List<N> spatialObjects, int minEntries, int maxEntries)
      Partitions the specified feature vectors where the split axes are the dimensions with maximum extension.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • LOG

        private static final elki.logging.Logging LOG
        Logger.
    • Constructor Detail

      • MaxExtensionBulkSplit

        public MaxExtensionBulkSplit()
        Constructor
    • Method Detail

      • partition

        public <N extends elki.data.spatial.SpatialComparable> java.util.List<java.util.List<N>> partition​(java.util.List<N> spatialObjects,
                                                                                                           int minEntries,
                                                                                                           int maxEntries)
        Partitions the specified feature vectors where the split axes are the dimensions with maximum extension.
        Type Parameters:
        N - actual type we split
        Parameters:
        spatialObjects - the spatial objects to be partitioned
        minEntries - the minimum number of entries in a partition
        maxEntries - the maximum number of entries in a partition
        Returns:
        the partition of the specified spatial objects
      • chooseMaximalExtendedSplitAxis

        private int chooseMaximalExtendedSplitAxis​(java.util.List<? extends elki.data.spatial.SpatialComparable> objects)
        Computes and returns the best split axis. The best split axis is the split axes with the maximal extension.
        Parameters:
        objects - the spatial objects to be split
        Returns:
        the best split axis