Usage of this Library



Preliminaries


Features

1. Dynamic construction methods


2. Static construction method

The following functions build an index file for a given data set and return the pointer to a data structure associated with that file. You can apply the insertion and the deletion methods described above to the index file built by these functions. The static construction method is not covered by the original paper of the SR-tree [KS97]. The following functions employ the static construction method proposed for the VAMSplit R-tree [WJ96-1]. Since the SR-tree is a variant of the R-tree, it is straightforward to apply the static construction method of the VAMSplit R-tree to the SR-tree. The difference between the VAMSplit R-tree and the SR-tree built with these functions lies in the internal structure of non-leaf nodes. While the R-tree employs a minimum bounding rectangle in order to specify the region of a node, the SR-tree employs not only a minimum bounding rectangle but also a bounding sphere whose center is the centroid of the points in the subtree. The bounding sphere plays an important role in the dynamic construction method. Its effectiveness was originally presented in the paper of the SS-tree [WJ96-2]. Thus, a non-leaf node of the SR-tree contains the information on bounding spheres of child nodes in addition to the information on bounding rectangles of them. This reduces the number of children to be accommodated in a non-leaf node, i.e., this reduces the fanout of a non-leaf node. The reduction of the fanout could increase the search cost. However, by virtue of bounding spheres, the SR-tree supports both the dynamic and the static construction methods efficiently, while the VAMSplit R-tree supports only the static construction method.
(C++) HnSRTreeFile new_HnSRTreeFile(const char *path,
                                    int dimension,
                                    int attributeSize,
                                    HnPointVector &points,
                                    HnDataItemVector &dataItems,
                                    const HnProperties &properties);

(C  ) HnSRTreeFileSt *HnSRTreeFileSt_build(const char *path,
					   int dimension,
                                           int attributeSize,
                                           const HnPointVectorSt *points,
                                           const HnDataItemVectorSt *dataItems,
			     	           const HnPropertiesSt *properties);

        path          : the name of an index file.
        dimension     : the dimensionality of the search space.
        attributeSize : the size of an attribute associated with each data
                        point (in bytes).
        points        : points being stored.
        dataItems     : attributes being stored with each point.
        properties    : properties of the index.
See also HnPointVector, HnDataItemVector, HnProperties.
The details of the arguments, `attributeSize' and `properties', can be found in the description of ``Creating an empty index''.

3. Search methods


4. Miscellaneous methods


[TOC] [Library] [Classes] [Commands] [Examples] [References]

Any feedback is appreciated (corrections, suggestions, etc.).

Norio KATAYAMA <katayama@nii.ac.jp>