Class LeastEnlargementWithAreaInsertionStrategy

  • All Implemented Interfaces:
    InsertionStrategy

    @Reference(authors="Norbert Beckmann, Hans-Peter Kriegel, Ralf Schneider, Bernhard Seeger",
               title="The R*-tree: an efficient and robust access method for points and rectangles",
               booktitle="Proc. 1990 ACM SIGMOD Int. Conf. Management of Data",
               url="https://doi.org/10.1145/93597.98741",
               bibkey="DBLP:conf/sigmod/BeckmannKSS90")
    public class LeastEnlargementWithAreaInsertionStrategy
    extends java.lang.Object
    implements InsertionStrategy
    A slight modification of the default R-Tree insertion strategy: find rectangle with least volume enlargement, but choose least area on ties.

    Proposed for non-leaf entries in:

    Norbert Beckmann, Hans-Peter Kriegel, Ralf Schneider, Bernhard Seeger
    The R*-tree: an efficient and robust access method for points and rectangles
    Proc. 1990 ACM SIGMOD Int. Conf. Management of Data

    Since:
    0.5.0
    Author:
    Erich Schubert
    • Constructor Detail

      • LeastEnlargementWithAreaInsertionStrategy

        public LeastEnlargementWithAreaInsertionStrategy()
        Constructor.
    • Method Detail

      • choose

        public <A> int choose​(A options,
                              ArrayAdapter<? extends SpatialComparable,​A> getter,
                              SpatialComparable obj,
                              int height,
                              int depth)
        Description copied from interface: InsertionStrategy
        Choose insertion rectangle.
        Specified by:
        choose in interface InsertionStrategy
        Parameters:
        options - Options to choose from
        getter - Array adapter for options
        obj - Insertion object
        height - Tree height
        depth - Insertion depth (depth == height - 1 indicates leaf level)
        Returns:
        Subtree index in array.