Methods for efficiently querying multiple points in an indexed quadtree
First Claim
Patent Images
1. A computer implemented method in a geographical information system for reducing a number of database lookups below a maximum number for a set of desired points contained in an indexed quadtree stored in a database, where the nodes of the quadtree store elevation data, comprising:
- (a) determining a number of index nodes covering all desired points;
(i) when the number of index nodes in (a) is less than or equal to a first maximum number of lookups, retrieving the index nodes from the database;
(b) determining a number of lookups required to retrieve quadtree nodes covering all desired points based on the index nodes retrieved in (i);
(i) when the number of lookups determined in (b) is greater than a second maximum number of lookups, substituting the quadtree nodes with their ancestors until the number of lookups is less than or equal to the second maximum number of lookups; and
(ii) when the number of lookups determined in (b) or (b)(i) is less than or equal to the second maximum number of lookups, retrieving the quadtree nodes covering all desired points from the database.
2 Assignments
0 Petitions
Accused Products
Abstract
A method for efficiently querying multiple points in an indexed quadtree is disclosed. The elevation along a path containing points covered by nodes in a quadtree is desired. Index nodes covering the nodes with elevation data are retrieved. Based on the data in the index nodes, the highest resolution data is retrieved while limiting database lookups below a specified limit.
-
Citations
11 Claims
-
1. A computer implemented method in a geographical information system for reducing a number of database lookups below a maximum number for a set of desired points contained in an indexed quadtree stored in a database, where the nodes of the quadtree store elevation data, comprising:
-
(a) determining a number of index nodes covering all desired points; (i) when the number of index nodes in (a) is less than or equal to a first maximum number of lookups, retrieving the index nodes from the database; (b) determining a number of lookups required to retrieve quadtree nodes covering all desired points based on the index nodes retrieved in (i); (i) when the number of lookups determined in (b) is greater than a second maximum number of lookups, substituting the quadtree nodes with their ancestors until the number of lookups is less than or equal to the second maximum number of lookups; and (ii) when the number of lookups determined in (b) or (b)(i) is less than or equal to the second maximum number of lookups, retrieving the quadtree nodes covering all desired points from the database. - View Dependent Claims (2, 3, 4)
-
-
5. A computer implemented method for determining the elevation along a path in a geographical information system consisting of geocoded points and elevations, where the elevation of the points along the path is stored in an indexed quadtree stored in a database, and where the maximum number of lookups performed on the database is set to a desired number or numbers, the method comprising:
-
(a) determining a number of index nodes covering all desired points along the path; (i) when the number of index nodes in (a) is less or equal to a first maximum number of lookups, retrieving the index nodes from the database; (b) determining a number of lookups required to retrieve quadtree nodes covering all desired points based on the index nodes retrieved in (i); (i) when the number of lookups determined in (b) is greater than a second maximum number of lookups, substituting the quadtree nodes with their ancestors until the number of lookups required is less than or equal to the second maximum number of lookups; and (ii) when the number of lookups determined in (b) or (b)(i) is less than or equal to the second maximum number of lookups, retrieving the quadtree nodes covering all desired points from the database. - View Dependent Claims (6, 7, 8, 9, 10, 11)
-
Specification