(choose-leaf root new-bbox)
Select a leaf node in which to place a new index entry, new-bbox. Starts at the root node a works down the tree. Finds the node whose path to the root consists of ancestors nodes that all required the least enlargement to include new-bbox, or have the smallest area.
Select a leaf node in which to place a new index entry, new-bbox. Starts at the root node a works down the tree. Finds the node whose path to the root consists of ancestors nodes that all required the least enlargement to include new-bbox, or have the smallest area.
(containing root search-box)
Given the root of the tree and a bounding box to search within finds entries contained within the search box.
Given the root of the tree and a bounding box to search within finds entries contained within the search box.
(group-chooser node)
For any given node returns a function that given a group will return a value that can be used as a sort order for the group.
For any given node returns a function that given a group will return a value that can be used as a sort order for the group.
(insert-entry-tx tree entry & {:keys [install-entry] :or {install-entry false}})
(intersecting root search-box)
Given the root of the tree and a bounding box to search within finds entries intersecting the search box.
Given the root of the tree and a bounding box to search within finds entries intersecting the search box.
(pick-next group-a group-b nodes)
Select one remaining entry for classification in a group. Determine the cost of putting each entry in each group. Find the entry with greatest preference for one group.
Select one remaining entry for classification in a group. Determine the cost of putting each entry in each group. Find the entry with greatest preference for one group.
(pick-seeds entries)
Select two entries to be the first elements of the new groups. Choose the most wasteful (in terms of area) pair.
Select two entries to be the first elements of the new groups. Choose the most wasteful (in terms of area) pair.
(split-accum init-groups children)
Produces a lazy seq of vectors containing a list of groups (that accumulate at every step) and a list of children yet to be grouped at that step.
Produces a lazy seq of vectors containing a list of groups (that accumulate at every step) and a list of children yet to be grouped at that step.
(split-node children min-children)
Quadractic-Cost Algorithm. Attempts to find a small-area split. Given a set of children (and a minimum number of children allowed in a node), returns a vector containing two new sets of child nodes.
Quadractic-Cost Algorithm. Attempts to find a small-area split. Given a set of children (and a minimum number of children allowed in a node), returns a vector containing two new sets of child nodes.
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close