tilecache 0.0.3 → 0.0.4
Sign up to get free protection for your applications and to get access to all the features.
- data/VERSION +1 -1
- data/lib/tile_cache/caches/disk.rb +5 -0
- data/lib/tile_cache/meta_layer.rb +7 -3
- metadata +12 -5
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.0.
|
1
|
+
0.0.4
|
@@ -2,12 +2,17 @@ module TileCache
|
|
2
2
|
module Caches
|
3
3
|
class Disk
|
4
4
|
REQUIRED_ATTRIBUTES = %w{ root }
|
5
|
+
VALID_ATTRIBUTES = %w{ debug }
|
5
6
|
|
6
7
|
def initialize(settings)
|
7
8
|
@root = settings[:root]
|
9
|
+
@debug = settings[:debug]
|
8
10
|
end
|
9
11
|
|
10
12
|
def get(tile)
|
13
|
+
# If we are in debug mode, always simulate cache misses to force rewriting the cache every time
|
14
|
+
return false if @debug
|
15
|
+
|
11
16
|
file = key_for_tile(tile)
|
12
17
|
|
13
18
|
if File.exist?(file)
|
@@ -1,4 +1,3 @@
|
|
1
|
-
require 'rubygems'
|
2
1
|
require 'RMagick'
|
3
2
|
|
4
3
|
module TileCache
|
@@ -35,8 +34,13 @@ module TileCache
|
|
35
34
|
end
|
36
35
|
|
37
36
|
def render_meta_tile(metatile, tile)
|
38
|
-
data
|
39
|
-
|
37
|
+
# TODO: Better debugging and logging support here.. data may not be an image but an XML error document!
|
38
|
+
begin
|
39
|
+
data = render_tile(metatile)
|
40
|
+
image = Image.from_blob(data).first
|
41
|
+
rescue => e
|
42
|
+
raise "#{e.message} (data: #{data.inspect})"
|
43
|
+
end
|
40
44
|
|
41
45
|
(meta_cols, meta_rows) = meta_limits(metatile.z)
|
42
46
|
meta_height = meta_rows * @size[1] + 2 * @metabuffer[1]
|
metadata
CHANGED
@@ -1,7 +1,12 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: tilecache
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
|
4
|
+
prerelease: false
|
5
|
+
segments:
|
6
|
+
- 0
|
7
|
+
- 0
|
8
|
+
- 4
|
9
|
+
version: 0.0.4
|
5
10
|
platform: ruby
|
6
11
|
authors:
|
7
12
|
- Pascal Ehlert
|
@@ -9,7 +14,7 @@ autorequire:
|
|
9
14
|
bindir: bin
|
10
15
|
cert_chain: []
|
11
16
|
|
12
|
-
date:
|
17
|
+
date: 2010-04-19 00:00:00 +02:00
|
13
18
|
default_executable:
|
14
19
|
dependencies: []
|
15
20
|
|
@@ -51,18 +56,20 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
51
56
|
requirements:
|
52
57
|
- - ">="
|
53
58
|
- !ruby/object:Gem::Version
|
59
|
+
segments:
|
60
|
+
- 0
|
54
61
|
version: "0"
|
55
|
-
version:
|
56
62
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
57
63
|
requirements:
|
58
64
|
- - ">="
|
59
65
|
- !ruby/object:Gem::Version
|
66
|
+
segments:
|
67
|
+
- 0
|
60
68
|
version: "0"
|
61
|
-
version:
|
62
69
|
requirements: []
|
63
70
|
|
64
71
|
rubyforge_project: tilecache
|
65
|
-
rubygems_version: 1.3.
|
72
|
+
rubygems_version: 1.3.6
|
66
73
|
signing_key:
|
67
74
|
specification_version: 3
|
68
75
|
summary: An implementation of TileCache from MetaCarta, written in pure Ruby
|