Tree::R(3pm) | User Contributed Perl Documentation | Tree::R(3pm) |
Tree::R - Perl extension for the R-tree data structure and algorithms
use Tree::R; my $rtree = Tree::R->new for my $object (@objects) { my @bbox = $object->bbox(); # (minx,miny,maxx,maxy) $rtree->insert($object,@bbox); } my @point = (123, 456); # (x,y) my @results; $rtree->query_point(@point,\@results); for my $object (@results) { # point is in object's bounding box } my @rect = (123, 456, 789, 1234); # (minx,miny,maxx,maxy) @results = (); $rtree->query_completely_within_rect(@rect,\@results); for my $object (@results) { # object is within rectangle } @results = (); $rtree->query_partly_within_rect(@rect,\@results); for my $object (@results) { # object's bounding box and rectangle overlap }
R-tree is a data structure for storing and indexing and efficiently looking up non-zero-size spatial objects.
None by default.
A. Guttman: R-trees: a dynamic index structure for spatial indexing. ACM SIGMOD'84, Proc. of Annual Meeting (1984), 47--57.
N. Beckmann, H.-P. Kriegel, R. Schneider & B. Seeger: The R*-tree: an efficient and robust access method for points and rectangles. Proc. of the 1990 ACM SIGMOD Internat. Conf. on Management of Data (1990), 322--331.
The homepage of this module is on github: https://github.com/ajolma/Tree-R
Ari Jolma
Copyright (C) 2005- by Ari Jolma
This library is free software; you can redistribute it and/or modify it under the terms of The Artistic License 2.0.
<https://github.com/ajolma/Tree-R>
2021-01-06 | perl v5.32.0 |