georuby 1.9.3
Sign up to get free protection for your applications and to get access to all the features.
- data/Gemfile +8 -0
- data/Gemfile.lock +29 -0
- data/History.txt +4 -0
- data/LICENSE +21 -0
- data/README.rdoc +184 -0
- data/Rakefile +48 -0
- data/VERSION +1 -0
- data/georuby.gemspec +128 -0
- data/lib/geo_ruby.rb +23 -0
- data/lib/geo_ruby/geojson.rb +129 -0
- data/lib/geo_ruby/georss.rb +133 -0
- data/lib/geo_ruby/gpx.rb +1 -0
- data/lib/geo_ruby/gpx4r/gpx.rb +118 -0
- data/lib/geo_ruby/shp.rb +1 -0
- data/lib/geo_ruby/shp4r/dbf.rb +42 -0
- data/lib/geo_ruby/shp4r/shp.rb +718 -0
- data/lib/geo_ruby/simple_features/envelope.rb +167 -0
- data/lib/geo_ruby/simple_features/ewkb_parser.rb +218 -0
- data/lib/geo_ruby/simple_features/ewkt_parser.rb +336 -0
- data/lib/geo_ruby/simple_features/geometry.rb +236 -0
- data/lib/geo_ruby/simple_features/geometry_collection.rb +144 -0
- data/lib/geo_ruby/simple_features/geometry_factory.rb +81 -0
- data/lib/geo_ruby/simple_features/helper.rb +18 -0
- data/lib/geo_ruby/simple_features/line_string.rb +228 -0
- data/lib/geo_ruby/simple_features/linear_ring.rb +34 -0
- data/lib/geo_ruby/simple_features/multi_line_string.rb +63 -0
- data/lib/geo_ruby/simple_features/multi_point.rb +58 -0
- data/lib/geo_ruby/simple_features/multi_polygon.rb +64 -0
- data/lib/geo_ruby/simple_features/point.rb +381 -0
- data/lib/geo_ruby/simple_features/polygon.rb +175 -0
- data/nofxx-georuby.gemspec +149 -0
- data/spec/data/geojson/feature_collection.json +34 -0
- data/spec/data/georss/atom.xml +21 -0
- data/spec/data/georss/gml.xml +40 -0
- data/spec/data/georss/w3c.xml +22 -0
- data/spec/data/gpx/fells_loop.gpx +1077 -0
- data/spec/data/gpx/long.gpx +1642 -0
- data/spec/data/gpx/long.kml +31590 -0
- data/spec/data/gpx/long.nmea +2220 -0
- data/spec/data/gpx/short.gpx +13634 -0
- data/spec/data/gpx/short.kml +130 -0
- data/spec/data/gpx/tracktreks.gpx +706 -0
- data/spec/data/multipoint.dbf +0 -0
- data/spec/data/multipoint.shp +0 -0
- data/spec/data/multipoint.shx +0 -0
- data/spec/data/point.dbf +0 -0
- data/spec/data/point.shp +0 -0
- data/spec/data/point.shx +0 -0
- data/spec/data/polygon.dbf +0 -0
- data/spec/data/polygon.shp +0 -0
- data/spec/data/polygon.shx +0 -0
- data/spec/data/polyline.dbf +0 -0
- data/spec/data/polyline.shp +0 -0
- data/spec/data/polyline.shx +0 -0
- data/spec/geo_ruby/geojson_spec.rb +147 -0
- data/spec/geo_ruby/georss.rb +218 -0
- data/spec/geo_ruby/georss_spec.rb +14 -0
- data/spec/geo_ruby/gpx4r/gpx_spec.rb +106 -0
- data/spec/geo_ruby/shp4r/shp_spec.rb +239 -0
- data/spec/geo_ruby/simple_features/envelope_spec.rb +47 -0
- data/spec/geo_ruby/simple_features/ewkb_parser_spec.rb +158 -0
- data/spec/geo_ruby/simple_features/ewkt_parser_spec.rb +179 -0
- data/spec/geo_ruby/simple_features/geometry_collection_spec.rb +55 -0
- data/spec/geo_ruby/simple_features/geometry_factory_spec.rb +11 -0
- data/spec/geo_ruby/simple_features/geometry_spec.rb +32 -0
- data/spec/geo_ruby/simple_features/line_string_spec.rb +259 -0
- data/spec/geo_ruby/simple_features/linear_ring_spec.rb +24 -0
- data/spec/geo_ruby/simple_features/multi_line_string_spec.rb +54 -0
- data/spec/geo_ruby/simple_features/multi_point_spec.rb +35 -0
- data/spec/geo_ruby/simple_features/multi_polygon_spec.rb +50 -0
- data/spec/geo_ruby/simple_features/point_spec.rb +356 -0
- data/spec/geo_ruby/simple_features/polygon_spec.rb +122 -0
- data/spec/geo_ruby_spec.rb +27 -0
- data/spec/spec_helper.rb +73 -0
- metadata +228 -0
data/Gemfile
ADDED
data/Gemfile.lock
ADDED
@@ -0,0 +1,29 @@
|
|
1
|
+
GEM
|
2
|
+
remote: http://rubygems.org/
|
3
|
+
specs:
|
4
|
+
activesupport (3.0.5)
|
5
|
+
dbf (1.5.2)
|
6
|
+
activesupport (~> 3.0.0)
|
7
|
+
fastercsv (= 1.5.3)
|
8
|
+
i18n (~> 0.4.2)
|
9
|
+
diff-lcs (1.1.2)
|
10
|
+
fastercsv (1.5.3)
|
11
|
+
i18n (0.4.2)
|
12
|
+
rcov (0.9.9)
|
13
|
+
rspec (2.5.0)
|
14
|
+
rspec-core (~> 2.5.0)
|
15
|
+
rspec-expectations (~> 2.5.0)
|
16
|
+
rspec-mocks (~> 2.5.0)
|
17
|
+
rspec-core (2.5.1)
|
18
|
+
rspec-expectations (2.5.0)
|
19
|
+
diff-lcs (~> 1.1.2)
|
20
|
+
rspec-mocks (2.5.0)
|
21
|
+
|
22
|
+
PLATFORMS
|
23
|
+
ruby
|
24
|
+
|
25
|
+
DEPENDENCIES
|
26
|
+
bundler (>= 1.0.0)
|
27
|
+
dbf (>= 1.5.0)
|
28
|
+
rcov
|
29
|
+
rspec (>= 2.3.0)
|
data/History.txt
ADDED
data/LICENSE
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
GeoRuby License
|
2
|
+
|
3
|
+
Copyright (c) 2006 Guilhem Vellut <guilhem.vellut+georuby@gmail.com>
|
4
|
+
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
6
|
+
of this software and associated documentation files (the "Software"), to
|
7
|
+
deal in the Software without restriction, including without limitation the
|
8
|
+
rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
9
|
+
permit persons to whom the Software is furnished to do so, subject to the
|
10
|
+
following conditions:
|
11
|
+
|
12
|
+
The above copyright notice and this permission notice shall be included in
|
13
|
+
all copies or substantial portions of the Software.
|
14
|
+
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
16
|
+
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
18
|
+
THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
|
19
|
+
OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
|
20
|
+
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
21
|
+
OTHER DEALINGS IN THE SOFTWARE.
|
data/README.rdoc
ADDED
@@ -0,0 +1,184 @@
|
|
1
|
+
= GeoRuby
|
2
|
+
|
3
|
+
|
4
|
+
This is a fork of GeoRuby with some updates and extra funcionality.
|
5
|
+
|
6
|
+
It is intended as a holder for geometric data. The data model roughly
|
7
|
+
follows the OGC "Simple Features for SQL" specification, so it should
|
8
|
+
play nice with data returned from PostGIS or any Spatial Extensions (MongoDB, MySQL...).
|
9
|
+
Although without any kind of advanced functionalities (such as geometric operators or reprojections).
|
10
|
+
It also supports various output and input formats (GeoRSS, KML, Shapefile).
|
11
|
+
|
12
|
+
OGC:"http://www.opengis.org/docs/99-049.pdf"
|
13
|
+
|
14
|
+
|
15
|
+
== Available data types
|
16
|
+
|
17
|
+
The following geometric data types are provided :
|
18
|
+
- Point
|
19
|
+
- Line String
|
20
|
+
- Linear Ring
|
21
|
+
- Polygon
|
22
|
+
- Multi Point
|
23
|
+
- Multi Line String
|
24
|
+
- Multi Polygon
|
25
|
+
- Geometry Collection
|
26
|
+
|
27
|
+
They can be in 2D, 3DZ, 3DM, and 4D.
|
28
|
+
|
29
|
+
On top of this an Envelope class is available, to contain the bounding box of a geometry.
|
30
|
+
|
31
|
+
== Installation
|
32
|
+
|
33
|
+
To install the latest version, just type:
|
34
|
+
|
35
|
+
gem install nofxx-georuby
|
36
|
+
|
37
|
+
|
38
|
+
== Use
|
39
|
+
|
40
|
+
|
41
|
+
=== Simple Examples
|
42
|
+
|
43
|
+
Creating a 3D Point:
|
44
|
+
|
45
|
+
Point.from_x_y_z(10.0, 20.0, 5.0)
|
46
|
+
|
47
|
+
|
48
|
+
Creating a LineString:
|
49
|
+
|
50
|
+
LineString.from_coordinates([[1,1],[2,2]],4326))
|
51
|
+
|
52
|
+
|
53
|
+
=== Input and output
|
54
|
+
|
55
|
+
These geometries can be input and output in WKB/EWKB/WKT/EWKT format as well as
|
56
|
+
the related HexWKB and HexEWKB formats. HexEWKB and WKB are the default form under
|
57
|
+
which geometric data is returned respectively from PostGIS and MySql.
|
58
|
+
|
59
|
+
GeoRSS Simple, GeoRSS W3CGeo, GeoRSS GML can also be input and output.
|
60
|
+
Note that they will not output valid RSS, but just the part strictly concerning
|
61
|
+
the geometry as outlined in http://www.georss.org/1/ . Since the model does
|
62
|
+
not allow multiple geometries, for geometry collections, only the first geometry
|
63
|
+
will be output. Similarly, for polygons, the GeoRSS output will only contain the outer ring.
|
64
|
+
As for W3CGeo output, only points can be output, so the first point of the geometry is chosen.
|
65
|
+
By default the Simple format is output. Envelope can also be output in these formats:
|
66
|
+
The box geometric type is chosen (except for W3CGeo, where the center of the envelope is chose).
|
67
|
+
These formats can also be input and a GeoRuby geometry will be created.
|
68
|
+
Note that it will not read a valid RSS file, only a geometry string.
|
69
|
+
|
70
|
+
On top of that, there is now support for KML output and input.
|
71
|
+
As for GeoRSS, a valid KML file will not be output, but only the geometric data.
|
72
|
+
Options <tt>:id</tt>, <tt>:extrude</tt>, <tt>:tesselate</tt> and <tt>:altitude_mode</tt> can be given.
|
73
|
+
Note that if the <tt>:altitude_mode</tt> option is not passed or set to <tt>clampToGround</tt>,
|
74
|
+
the altitude data will not be output even if present. Envelopes output a LatLonAltBox instead of a geometry.
|
75
|
+
For the output, the following geometric types are supported : Point, LineString, Polygon.
|
76
|
+
|
77
|
+
|
78
|
+
=== SHP reading et writing
|
79
|
+
|
80
|
+
Georuby has support for reading ESRI shapefiles (http://www.esri.com/library/whitepapers/pdfs/shapefile.pdf).
|
81
|
+
A tool called <tt>shp2sql.rb</tt> is also provided: it shows how to use the SHP reading functionality together
|
82
|
+
with the spatial adapter plugin for Rails to import spatial features into MySQL and PostGIS.
|
83
|
+
|
84
|
+
Here is an example of Shapefile reading, that goes through all the geometries
|
85
|
+
in a file and disaply the values of the attributes :
|
86
|
+
|
87
|
+
require 'geo_ruby/shp'
|
88
|
+
|
89
|
+
ShpFile.open(shpfile) do |shp|
|
90
|
+
shp.each do |shape|
|
91
|
+
geom = shape.geometry #a GeoRuby SimpleFeature
|
92
|
+
att_data = shape.data #a Hash
|
93
|
+
shp.fields.each do |field|
|
94
|
+
puts att_data[field.name]
|
95
|
+
end
|
96
|
+
end
|
97
|
+
end
|
98
|
+
|
99
|
+
Support for ESRI shapefile creation and modification has been added as well.
|
100
|
+
New shapefiles can be created given a geometry type and specifications for the DBF fields.
|
101
|
+
Data can be added and removed from an existing shapefile.
|
102
|
+
An update operation is also provided for convenience: it just performs a 'delete' and an 'add',
|
103
|
+
which means the index of the modified record will change. Note that once a shapefile has been created,
|
104
|
+
GeoRuby does not allow the modification of the schema (it will probably be done in a subsequent version).
|
105
|
+
|
106
|
+
Here is an example of how to create a new Shapefile with 2 fields :
|
107
|
+
|
108
|
+
shpfile = ShpFile.create('hello.shp',ShpType::POINT,[Dbf::Field.new("Hoyoyo","C",10),Dbf::Field.new("Boyoul","N",10,0)])
|
109
|
+
|
110
|
+
The file is then open for reading and writing.
|
111
|
+
|
112
|
+
Here is an example of how to write to a shapefile (created or not with GeoRuby) :
|
113
|
+
|
114
|
+
shpfile = ShpFile.open('places.shp')
|
115
|
+
shpfile.transaction do |tr|
|
116
|
+
tr.add(ShpRecord.new(Point.from_x_y(123.4,123.4),'Hoyoyo' => "AEZ",'Bouyoul' => 45))
|
117
|
+
tr.update(4,ShpRecord.new(Point.from_x_y(-16.67,16.41),'Hoyoyo' => "EatMe",'Bouyoul' => 42))
|
118
|
+
tr.delete(1)
|
119
|
+
end
|
120
|
+
shpfile.close
|
121
|
+
|
122
|
+
Note the transaction is just there so the operations on the files can be buffered.
|
123
|
+
Nothing happens on the original files until the block has finished executing.
|
124
|
+
Calling <tt>tr.rollback</tt> at anytime during the execution will prevent the modifications.
|
125
|
+
|
126
|
+
Also currently, error reporting is minimal and it has not been tested that
|
127
|
+
thoroughly so caveat emptor and backup before performing any destructive operation.
|
128
|
+
|
129
|
+
|
130
|
+
=== GPX Reading
|
131
|
+
|
132
|
+
You can read and convert GPX Files to LineString/Polygon:
|
133
|
+
|
134
|
+
gpxfile = GpxFile.open(tour.gpx')
|
135
|
+
gpxfile.as_line_string
|
136
|
+
=> GeoRuby::SimpleFeatures::LineString..
|
137
|
+
|
138
|
+
=== GeoJSON Support
|
139
|
+
Basic GeoJSON support has been implemented per v1.0 of the {spec}[http://geojson.org/geojson-spec.html].
|
140
|
+
|
141
|
+
USAGE:
|
142
|
+
|
143
|
+
input - GeoRuby::SimpleFeatures::Geometry.from_geojson(geojson_string)
|
144
|
+
output - call #as_geojson or #to_json on any SimpleFeature Geometry instance
|
145
|
+
|
146
|
+
TODO:
|
147
|
+
* Refactor to support extremely large GeoJSON input streams / files. Currently
|
148
|
+
the entire GeoJSON representation must be loaded into memory as a String
|
149
|
+
* Improve srid/crs support on input and add support on output
|
150
|
+
* Implement bounding-box spport per spec on input/output?
|
151
|
+
* Improved / more tests
|
152
|
+
|
153
|
+
GeoJSON support implemented by {Marcus Mateus}[http://github.com/marcusmateus] and released courtesy {SimpliTex}[http://simplitex.com].
|
154
|
+
|
155
|
+
=== Acknowledgement
|
156
|
+
|
157
|
+
The SHP reading part uses the DBF library (http://rubyforge.org/projects/dbf/) by Keith Morrison (http://infused.org).
|
158
|
+
Thanks also to Pramukta Kumar and Pete Schwamb for their contributions.
|
159
|
+
|
160
|
+
=== License
|
161
|
+
|
162
|
+
GeoRuby is released under the MIT license.
|
163
|
+
|
164
|
+
|
165
|
+
== Support (Original GeoRuby gem)
|
166
|
+
|
167
|
+
Any questions, enhancement proposals, bug notifications or corrections
|
168
|
+
can be sent to mailto:guilhem.vellut@gmail.com.
|
169
|
+
|
170
|
+
|
171
|
+
=== Changes since the last version
|
172
|
+
|
173
|
+
- Writing of ESRI shapefiles
|
174
|
+
- Reading of ESRI shapefiles
|
175
|
+
- Addition of a small tool to import spatial features in MySQL and PostGIS from a SHP file
|
176
|
+
|
177
|
+
|
178
|
+
=== Coming in the next versions
|
179
|
+
|
180
|
+
- Schema modification of existing shapefiles
|
181
|
+
- More error reporting when writing shapefiles
|
182
|
+
- More tests on writing shapefiles ; tests on real-world shapefiles
|
183
|
+
- Better shp2sql import tool
|
184
|
+
- Documentation
|
data/Rakefile
ADDED
@@ -0,0 +1,48 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'rake'
|
3
|
+
|
4
|
+
begin
|
5
|
+
require 'jeweler'
|
6
|
+
Jeweler::Tasks.new do |gem|
|
7
|
+
gem.name = "georuby"
|
8
|
+
gem.summary = "Ruby data holder for OGC Simple Features"
|
9
|
+
gem.description = "GeoRuby provides geometric data types from the OGC 'Simple Features' specification."
|
10
|
+
gem.email = "georuby@simplitex.com"
|
11
|
+
gem.homepage = "http://github.com/nofxx/georuby"
|
12
|
+
gem.authors = ["Guilhem Vellut", "Marcos Piccinini", "Marcus Mateus", "Doug Cole"]
|
13
|
+
gem.add_development_dependency "rspec", ">= 2.0.0"
|
14
|
+
gem.add_development_dependency "dbf", ">= 1.2.9"
|
15
|
+
end
|
16
|
+
rescue LoadError
|
17
|
+
puts "Jeweler not available. Install it with: sudo gem install technicalpickles-jeweler -s http://gems.github.com"
|
18
|
+
end
|
19
|
+
|
20
|
+
# require 'spec/rake/spectask'
|
21
|
+
# Spec::Rake::SpecTask.new(:spec) do |spec|
|
22
|
+
# spec.libs << 'lib' << 'spec'
|
23
|
+
# spec.spec_files = FileList['spec/**/*_spec.rb']
|
24
|
+
# end
|
25
|
+
|
26
|
+
# Spec::Rake::SpecTask.new(:rcov) do |spec|
|
27
|
+
# spec.libs << 'lib' << 'spec'
|
28
|
+
# spec.pattern = 'spec/**/*_spec.rb'
|
29
|
+
# spec.rcov = true
|
30
|
+
# end
|
31
|
+
|
32
|
+
# task :default => :spec
|
33
|
+
|
34
|
+
require 'rake/rdoctask'
|
35
|
+
Rake::RDocTask.new do |rdoc|
|
36
|
+
if File.exist?('VERSION.yml')
|
37
|
+
config = YAML.load(File.read('VERSION.yml'))
|
38
|
+
version = "#{config[:major]}.#{config[:minor]}.#{config[:patch]}"
|
39
|
+
else
|
40
|
+
version = ""
|
41
|
+
end
|
42
|
+
|
43
|
+
rdoc.rdoc_dir = 'rdoc'
|
44
|
+
rdoc.title = "geo_ruby #{version}"
|
45
|
+
rdoc.rdoc_files.include('README*')
|
46
|
+
rdoc.rdoc_files.include('lib/**/*.rb')
|
47
|
+
end
|
48
|
+
|
data/VERSION
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
1.9.3
|
data/georuby.gemspec
ADDED
@@ -0,0 +1,128 @@
|
|
1
|
+
# Generated by jeweler
|
2
|
+
# DO NOT EDIT THIS FILE DIRECTLY
|
3
|
+
# Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
|
4
|
+
# -*- encoding: utf-8 -*-
|
5
|
+
|
6
|
+
Gem::Specification.new do |s|
|
7
|
+
s.name = %q{georuby}
|
8
|
+
s.version = "1.9.3"
|
9
|
+
|
10
|
+
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
|
+
s.authors = ["Guilhem Vellut", "Marcos Piccinini", "Marcus Mateus", "Doug Cole"]
|
12
|
+
s.date = %q{2011-06-30}
|
13
|
+
s.description = %q{GeoRuby provides geometric data types from the OGC 'Simple Features' specification.}
|
14
|
+
s.email = %q{georuby@simplitex.com}
|
15
|
+
s.extra_rdoc_files = [
|
16
|
+
"LICENSE",
|
17
|
+
"README.rdoc"
|
18
|
+
]
|
19
|
+
s.files = [
|
20
|
+
"Gemfile",
|
21
|
+
"Gemfile.lock",
|
22
|
+
"History.txt",
|
23
|
+
"LICENSE",
|
24
|
+
"README.rdoc",
|
25
|
+
"Rakefile",
|
26
|
+
"VERSION",
|
27
|
+
"georuby.gemspec",
|
28
|
+
"lib/geo_ruby.rb",
|
29
|
+
"lib/geo_ruby/geojson.rb",
|
30
|
+
"lib/geo_ruby/georss.rb",
|
31
|
+
"lib/geo_ruby/gpx.rb",
|
32
|
+
"lib/geo_ruby/gpx4r/gpx.rb",
|
33
|
+
"lib/geo_ruby/shp.rb",
|
34
|
+
"lib/geo_ruby/shp4r/dbf.rb",
|
35
|
+
"lib/geo_ruby/shp4r/shp.rb",
|
36
|
+
"lib/geo_ruby/simple_features/envelope.rb",
|
37
|
+
"lib/geo_ruby/simple_features/ewkb_parser.rb",
|
38
|
+
"lib/geo_ruby/simple_features/ewkt_parser.rb",
|
39
|
+
"lib/geo_ruby/simple_features/geometry.rb",
|
40
|
+
"lib/geo_ruby/simple_features/geometry_collection.rb",
|
41
|
+
"lib/geo_ruby/simple_features/geometry_factory.rb",
|
42
|
+
"lib/geo_ruby/simple_features/helper.rb",
|
43
|
+
"lib/geo_ruby/simple_features/line_string.rb",
|
44
|
+
"lib/geo_ruby/simple_features/linear_ring.rb",
|
45
|
+
"lib/geo_ruby/simple_features/multi_line_string.rb",
|
46
|
+
"lib/geo_ruby/simple_features/multi_point.rb",
|
47
|
+
"lib/geo_ruby/simple_features/multi_polygon.rb",
|
48
|
+
"lib/geo_ruby/simple_features/point.rb",
|
49
|
+
"lib/geo_ruby/simple_features/polygon.rb",
|
50
|
+
"nofxx-georuby.gemspec",
|
51
|
+
"spec/data/geojson/feature_collection.json",
|
52
|
+
"spec/data/georss/atom.xml",
|
53
|
+
"spec/data/georss/gml.xml",
|
54
|
+
"spec/data/georss/w3c.xml",
|
55
|
+
"spec/data/gpx/fells_loop.gpx",
|
56
|
+
"spec/data/gpx/long.gpx",
|
57
|
+
"spec/data/gpx/long.kml",
|
58
|
+
"spec/data/gpx/long.nmea",
|
59
|
+
"spec/data/gpx/short.gpx",
|
60
|
+
"spec/data/gpx/short.kml",
|
61
|
+
"spec/data/gpx/tracktreks.gpx",
|
62
|
+
"spec/data/multipoint.dbf",
|
63
|
+
"spec/data/multipoint.shp",
|
64
|
+
"spec/data/multipoint.shx",
|
65
|
+
"spec/data/point.dbf",
|
66
|
+
"spec/data/point.shp",
|
67
|
+
"spec/data/point.shx",
|
68
|
+
"spec/data/polygon.dbf",
|
69
|
+
"spec/data/polygon.shp",
|
70
|
+
"spec/data/polygon.shx",
|
71
|
+
"spec/data/polyline.dbf",
|
72
|
+
"spec/data/polyline.shp",
|
73
|
+
"spec/data/polyline.shx",
|
74
|
+
"spec/geo_ruby/geojson_spec.rb",
|
75
|
+
"spec/geo_ruby/georss.rb",
|
76
|
+
"spec/geo_ruby/georss_spec.rb",
|
77
|
+
"spec/geo_ruby/gpx4r/gpx_spec.rb",
|
78
|
+
"spec/geo_ruby/shp4r/shp_spec.rb",
|
79
|
+
"spec/geo_ruby/simple_features/envelope_spec.rb",
|
80
|
+
"spec/geo_ruby/simple_features/ewkb_parser_spec.rb",
|
81
|
+
"spec/geo_ruby/simple_features/ewkt_parser_spec.rb",
|
82
|
+
"spec/geo_ruby/simple_features/geometry_collection_spec.rb",
|
83
|
+
"spec/geo_ruby/simple_features/geometry_factory_spec.rb",
|
84
|
+
"spec/geo_ruby/simple_features/geometry_spec.rb",
|
85
|
+
"spec/geo_ruby/simple_features/line_string_spec.rb",
|
86
|
+
"spec/geo_ruby/simple_features/linear_ring_spec.rb",
|
87
|
+
"spec/geo_ruby/simple_features/multi_line_string_spec.rb",
|
88
|
+
"spec/geo_ruby/simple_features/multi_point_spec.rb",
|
89
|
+
"spec/geo_ruby/simple_features/multi_polygon_spec.rb",
|
90
|
+
"spec/geo_ruby/simple_features/point_spec.rb",
|
91
|
+
"spec/geo_ruby/simple_features/polygon_spec.rb",
|
92
|
+
"spec/geo_ruby_spec.rb",
|
93
|
+
"spec/spec_helper.rb"
|
94
|
+
]
|
95
|
+
s.homepage = %q{http://github.com/nofxx/georuby}
|
96
|
+
s.require_paths = ["lib"]
|
97
|
+
s.rubygems_version = %q{1.3.7}
|
98
|
+
s.summary = %q{Ruby data holder for OGC Simple Features}
|
99
|
+
|
100
|
+
if s.respond_to? :specification_version then
|
101
|
+
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
|
102
|
+
s.specification_version = 3
|
103
|
+
|
104
|
+
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
105
|
+
s.add_development_dependency(%q<dbf>, [">= 1.5.0"])
|
106
|
+
s.add_development_dependency(%q<rspec>, [">= 2.3.0"])
|
107
|
+
s.add_development_dependency(%q<bundler>, [">= 1.0.0"])
|
108
|
+
s.add_development_dependency(%q<rcov>, [">= 0"])
|
109
|
+
s.add_development_dependency(%q<rspec>, [">= 2.0.0"])
|
110
|
+
s.add_development_dependency(%q<dbf>, [">= 1.2.9"])
|
111
|
+
else
|
112
|
+
s.add_dependency(%q<dbf>, [">= 1.5.0"])
|
113
|
+
s.add_dependency(%q<rspec>, [">= 2.3.0"])
|
114
|
+
s.add_dependency(%q<bundler>, [">= 1.0.0"])
|
115
|
+
s.add_dependency(%q<rcov>, [">= 0"])
|
116
|
+
s.add_dependency(%q<rspec>, [">= 2.0.0"])
|
117
|
+
s.add_dependency(%q<dbf>, [">= 1.2.9"])
|
118
|
+
end
|
119
|
+
else
|
120
|
+
s.add_dependency(%q<dbf>, [">= 1.5.0"])
|
121
|
+
s.add_dependency(%q<rspec>, [">= 2.3.0"])
|
122
|
+
s.add_dependency(%q<bundler>, [">= 1.0.0"])
|
123
|
+
s.add_dependency(%q<rcov>, [">= 0"])
|
124
|
+
s.add_dependency(%q<rspec>, [">= 2.0.0"])
|
125
|
+
s.add_dependency(%q<dbf>, [">= 1.2.9"])
|
126
|
+
end
|
127
|
+
end
|
128
|
+
|
data/lib/geo_ruby.rb
ADDED
@@ -0,0 +1,23 @@
|
|
1
|
+
# $:.unshift(File.dirname(__FILE__)) #unless
|
2
|
+
# $:.include?(File.dirname(__FILE__)) || $:.include?(File.expand_path(File.dirname(__FILE__)))
|
3
|
+
|
4
|
+
require 'geo_ruby/simple_features/helper'
|
5
|
+
require 'geo_ruby/simple_features/ewkt_parser'
|
6
|
+
require 'geo_ruby/simple_features/ewkb_parser'
|
7
|
+
require 'geo_ruby/simple_features/geometry'
|
8
|
+
require 'geo_ruby/simple_features/point'
|
9
|
+
require 'geo_ruby/simple_features/line_string'
|
10
|
+
require 'geo_ruby/simple_features/linear_ring'
|
11
|
+
require 'geo_ruby/simple_features/polygon'
|
12
|
+
require 'geo_ruby/simple_features/multi_point'
|
13
|
+
require 'geo_ruby/simple_features/multi_line_string'
|
14
|
+
require 'geo_ruby/simple_features/multi_polygon'
|
15
|
+
require 'geo_ruby/simple_features/geometry_collection'
|
16
|
+
require 'geo_ruby/simple_features/envelope'
|
17
|
+
require 'geo_ruby/simple_features/geometry_factory'
|
18
|
+
|
19
|
+
# Require if you need
|
20
|
+
# require 'geo_ruby/shp4r/shp'
|
21
|
+
# require 'geo_ruby/gpx4r/gpx'
|
22
|
+
# require 'geo_ruby/geojson'
|
23
|
+
# require 'geo_ruby/georss'
|