geotree 1.1.0 → 1.1.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 4e790d44323caacbf4a2bd3ec69bc02bb55dc847
4
- data.tar.gz: bdb2927e4dea7857cd9863cbc2b53ee0c089bef7
3
+ metadata.gz: d139e141c3f1de2d164a60d382a57dab14c145cb
4
+ data.tar.gz: a4e2951d2f513a39aac941e073dedb6f77a4b3bc
5
5
  SHA512:
6
- metadata.gz: eef40796846cbabd4bddd8f32cef9334f7b4e6b0d17fcb851af0247907c8e89b9582808179bed41dc635069965e2c634a8c55e0fa5a1411f0ef09d23f4ca4980
7
- data.tar.gz: e92b0f2e40906f8bc9853b21af28af24691a0b6d8e77682fd1fb8a557b36f9e520c33e092aa8b6ae4fe2f47eb78035460d901b8744c85bd56c5d5e4a6be4e329
6
+ metadata.gz: ec83653bcabfe8121c7954dc80550acb11f8578b4eb58b55a989450369b99d2b4d353008c4584d4d7dea6aaf0aab91ed77b3f7abd12086d64f27dd8aa826849f
7
+ data.tar.gz: 51fd669841ada4aae664cf500c63e8f358c4c596d4e9860d48075278de0365a82c78f5c7f78b99a5bb8786dd282b21f152aca973dee0dbb7197079ca5d76af8b
@@ -1,3 +1,7 @@
1
- 2013-04-02 Jeff Sember jpsember@gmail.com
2
- * Version 1.0.0 released
1
+ 2013-04-02
2
+ * Version 1.0.0
3
3
 
4
+ 2013-04-03
5
+ * Version 1.0.1
6
+ * Enhanced README file
7
+
data/README.txt CHANGED
@@ -1,6 +1,31 @@
1
- geotree : xxx
1
+ # @markup markdown
2
2
 
3
+ 'geotree' : A ruby gem that maintains a set of geographical points, reports points lying within a query rectangle,
4
+ and supports multiple levels of detail.
5
+ =======
3
6
  Written and (c) by Jeff Sember, April 2013.
4
- ================================================================================
5
7
 
6
8
 
9
+
10
+ GeoTree
11
+ -------
12
+
13
+ A GeoTree is a variant of a k-d tree, and stores data points that have a latitude
14
+ and longitude, a unique integer identifier, and an optional 'weight' (e.g., the
15
+ size of a city). GeoTrees are disk-based data structures and can store a very large
16
+ number of points efficiently. If desired, for smaller data sets, memory-only trees
17
+ can be constructed instead.
18
+
19
+ [An animation of a GeoTree in action.](../geotree/lib/fig/geo_tree.pdf "geo_tree.pdf")
20
+
21
+ MultiTree
22
+ -------
23
+
24
+
25
+ The gem includes MultiTree, a GeoTree variant that supports queries at multiple
26
+ levels of detail. For example, when focusing on a small region it can return points
27
+ that would be omitted when querying a much larger region.
28
+
29
+ [An animation of a MultiTree in action.](../geotree/lib/fig/multi_tree.pdf "multi_tree.pdf")
30
+
31
+
Binary file
Binary file
@@ -3,7 +3,7 @@ require_relative 'node'
3
3
  req 'diskblockfile ptbuffer'
4
4
 
5
5
  module GeoTreeModule
6
-
6
+ #
7
7
  # A variant of a kd-tree, it is capable of maintaining sets of 2D points and efficiently
8
8
  # reporting all points lying within (axis-aligned) query rectangles.
9
9
  #
@@ -14,6 +14,8 @@ module GeoTreeModule
14
14
  # A GeoTree is usually stored within a disk file, though it is also possible to
15
15
  # construct a tree that exists only in memory; see the initialize(...) method.
16
16
  #
17
+ # {An animation of a GeoTree in action.}[link:../../doc/geo_tree.pdf]
18
+ #
17
19
  # Usage:
18
20
  #
19
21
  # [] Open a tree. If no tree exists, a new, empty one is created.
@@ -71,7 +73,7 @@ module GeoTreeModule
71
73
  # Otherwise, (i) the datapoints can be retrieved from the tree to an array
72
74
  # (by using a sufficiently large query rectangle), (ii) a new tree can be constructed,
73
75
  # and (iii) each of the points in the array can be added to the new tree.
74
- #
76
+ #
75
77
  class GeoTree
76
78
 
77
79
  ROOT_NODE_NAME_ = BlockFile::FIRST_BLOCK_ID
@@ -16,6 +16,8 @@ module GeoTreeModule
16
16
  # When querying a MultiTree, the user must specify which level of detail (i.e.,
17
17
  # which of the contained trees) is to be examined.
18
18
  #
19
+ # {An animation of a MultiTree in action.}[link:../../doc/multi_tree.pdf]
20
+ #
19
21
  class MultiTree
20
22
 
21
23
  attr_reader :num_trees
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: geotree
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jeff Sember
@@ -14,7 +14,7 @@ description: " \nA GeoTree is a variant of a k-d tree, and stores data points
14
14
  have a latitude and longitude, \na unique integer identifier, and an optional 'weight'
15
15
  (e.g., the size of a city). \nGeoTrees are disk-based data structures and can store
16
16
  a very large number of points efficiently.\nIf desired, for smaller data sets, memory-only
17
- trees can be constructed instead.\n\nThe gem includes MultiTrees, a GeoTree variant
17
+ trees can be constructed instead.\n\nThe gem includes MultiTree, a GeoTree variant
18
18
  that supports queries at \nmultiple levels of detail. For example, when focusing
19
19
  on a \nsmall region it can return points that would be omitted when querying a much
20
20
  larger region.\n\nAnimations illustrating GeoTrees and MultiTrees in action can
@@ -37,6 +37,8 @@ files:
37
37
  - lib/geotree/pswriter.rb
38
38
  - lib/geotree/ptbuffer.rb
39
39
  - lib/geotree/tools.rb
40
+ - lib/fig/geo_tree.pdf
41
+ - lib/fig/multi_tree.pdf
40
42
  - CHANGELOG.txt
41
43
  - README.txt
42
44
  - test/test_blockfile.rb