ppe-georuby 1.7.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (71) hide show
  1. data/.gitignore +6 -0
  2. data/History.txt +4 -0
  3. data/LICENSE +21 -0
  4. data/README.txt +118 -0
  5. data/Rakefile +48 -0
  6. data/VERSION +1 -0
  7. data/lib/geo_ruby.rb +22 -0
  8. data/lib/geo_ruby/gpx.rb +1 -0
  9. data/lib/geo_ruby/gpx4r/gpx.rb +117 -0
  10. data/lib/geo_ruby/shp.rb +1 -0
  11. data/lib/geo_ruby/shp4r/dbf.rb +41 -0
  12. data/lib/geo_ruby/shp4r/shp.rb +697 -0
  13. data/lib/geo_ruby/simple_features/envelope.rb +167 -0
  14. data/lib/geo_ruby/simple_features/ewkb_parser.rb +216 -0
  15. data/lib/geo_ruby/simple_features/ewkt_parser.rb +336 -0
  16. data/lib/geo_ruby/simple_features/geometry.rb +228 -0
  17. data/lib/geo_ruby/simple_features/geometry_collection.rb +136 -0
  18. data/lib/geo_ruby/simple_features/geometry_factory.rb +81 -0
  19. data/lib/geo_ruby/simple_features/georss_parser.rb +135 -0
  20. data/lib/geo_ruby/simple_features/helper.rb +18 -0
  21. data/lib/geo_ruby/simple_features/line_string.rb +206 -0
  22. data/lib/geo_ruby/simple_features/linear_ring.rb +12 -0
  23. data/lib/geo_ruby/simple_features/multi_line_string.rb +51 -0
  24. data/lib/geo_ruby/simple_features/multi_point.rb +46 -0
  25. data/lib/geo_ruby/simple_features/multi_polygon.rb +52 -0
  26. data/lib/geo_ruby/simple_features/point.rb +364 -0
  27. data/lib/geo_ruby/simple_features/polygon.rb +157 -0
  28. data/ppe-georuby.gemspec +133 -0
  29. data/script/console +10 -0
  30. data/script/destroy +14 -0
  31. data/script/generate +14 -0
  32. data/script/txt2html +82 -0
  33. data/spec/data/gpx/fells_loop.gpx +1077 -0
  34. data/spec/data/gpx/long.gpx +1642 -0
  35. data/spec/data/gpx/long.kml +31590 -0
  36. data/spec/data/gpx/long.nmea +2220 -0
  37. data/spec/data/gpx/short.gpx +13634 -0
  38. data/spec/data/gpx/short.kml +130 -0
  39. data/spec/data/gpx/tracktreks.gpx +706 -0
  40. data/spec/data/multipoint.dbf +0 -0
  41. data/spec/data/multipoint.shp +0 -0
  42. data/spec/data/multipoint.shx +0 -0
  43. data/spec/data/point.dbf +0 -0
  44. data/spec/data/point.shp +0 -0
  45. data/spec/data/point.shx +0 -0
  46. data/spec/data/polygon.dbf +0 -0
  47. data/spec/data/polygon.shp +0 -0
  48. data/spec/data/polygon.shx +0 -0
  49. data/spec/data/polyline.dbf +0 -0
  50. data/spec/data/polyline.shp +0 -0
  51. data/spec/data/polyline.shx +0 -0
  52. data/spec/geo_ruby/gpx4r/gpx_spec.rb +106 -0
  53. data/spec/geo_ruby/shp4r/shp_spec.rb +240 -0
  54. data/spec/geo_ruby/simple_features/envelope_spec.rb +45 -0
  55. data/spec/geo_ruby/simple_features/ewkb_parser_spec.rb +158 -0
  56. data/spec/geo_ruby/simple_features/ewkt_parser_spec.rb +179 -0
  57. data/spec/geo_ruby/simple_features/geometry_collection_spec.rb +55 -0
  58. data/spec/geo_ruby/simple_features/geometry_factory_spec.rb +11 -0
  59. data/spec/geo_ruby/simple_features/geometry_spec.rb +32 -0
  60. data/spec/geo_ruby/simple_features/georss_parser_spec.rb +218 -0
  61. data/spec/geo_ruby/simple_features/line_string_spec.rb +245 -0
  62. data/spec/geo_ruby/simple_features/linear_ring_spec.rb +14 -0
  63. data/spec/geo_ruby/simple_features/multi_line_string_spec.rb +54 -0
  64. data/spec/geo_ruby/simple_features/multi_point_spec.rb +35 -0
  65. data/spec/geo_ruby/simple_features/multi_polygon_spec.rb +50 -0
  66. data/spec/geo_ruby/simple_features/point_spec.rb +356 -0
  67. data/spec/geo_ruby/simple_features/polygon_spec.rb +108 -0
  68. data/spec/geo_ruby_spec.rb +27 -0
  69. data/spec/spec.opts +6 -0
  70. data/spec/spec_helper.rb +65 -0
  71. metadata +162 -0
@@ -0,0 +1,108 @@
1
+ require File.expand_path(File.dirname(__FILE__) + '/../../spec_helper')
2
+
3
+ describe Polygon do
4
+
5
+ describe "tu conveted" do
6
+ #no test of the binary representation for linear_rings : always with polygons and like line_string
7
+ it "should test_polygon_creation" do
8
+ linear_ring1 = LinearRing.from_coordinates([[12.4,-45.3],[45.4,41.6],[4.456,1.0698],[12.4,-45.3]],256)
9
+ linear_ring2 = LinearRing.from_coordinates([[2.4,5.3],[5.4,1.4263],[14.46,1.06],[2.4,5.3]],256)
10
+ point1 = Point.from_x_y(12.4,-45.3,256)
11
+ point2 = Point.from_x_y(45.4,41.6,256)
12
+ point3 = Point.from_x_y(4.456,1.0698,256)
13
+ point4 = Point.from_x_y(12.4,-45.3,256)
14
+ point5 = Point.from_x_y(2.4,5.3,256)
15
+ point6 = Point.from_x_y(5.4,1.4263,256)
16
+ point7 = Point.from_x_y(14.46,1.06,256)
17
+ point8 = Point.from_x_y(2.4,5.3,256)
18
+
19
+ polygon = Polygon::new(256)
20
+ polygon.length.should be_zero
21
+
22
+ polygon << linear_ring1
23
+ polygon.length.should eql(1)
24
+ polygon[0].should == linear_ring1
25
+
26
+ #the validity of the hole is not checked : just for the sake of example
27
+ polygon << linear_ring2
28
+ polygon.length.should eql(2)
29
+ polygon[1].should == linear_ring2
30
+
31
+ polygon = Polygon.from_linear_rings([linear_ring1,linear_ring2],256)
32
+ polygon.class.should eql(Polygon)
33
+ polygon.length.should eql(2)
34
+ polygon[0].should == linear_ring1
35
+ polygon[1].should == linear_ring2
36
+
37
+ polygon = Polygon.from_coordinates([[[12.4,-45.3],[45.4,41.6],[4.456,1.0698],[12.4,-45.3]],[[2.4,5.3],[5.4,1.4263],[14.46,1.06],[2.4,5.3]]],256)
38
+ polygon.class.should eql(Polygon)
39
+ polygon.length.should eql(2)
40
+ polygon[0].should == linear_ring1
41
+ polygon[1].should == linear_ring2
42
+
43
+ polygon = Polygon.from_points([[point1,point2,point3,point4],[point5,point6,point7,point8]],256)
44
+ polygon.length.should eql(2)
45
+ polygon[0].should == linear_ring1
46
+ polygon[1].should == linear_ring2
47
+
48
+ polygon = Polygon.from_coordinates([[[12.4,-45.3,15.2],[45.4,41.6,2.4],[4.456,1.0698,5.6],[12.4,-45.3,6.1]],[[2.4,5.3,4.5],[5.4,1.4263,4.2],[14.46,1.06,123.1],[2.4,5.3,4.4]]],256,true)
49
+ polygon.class.should eql(Polygon)
50
+ polygon.length.should eql(2)
51
+
52
+ linear_ring1 = LinearRing.from_coordinates([[12.4,-45.3,15.2],[45.4,41.6,2.4],[4.456,1.0698,5.6],[12.4,-45.3,6.1]],256,true)
53
+ linear_ring2 = LinearRing.from_coordinates([[2.4,5.3,4.5],[5.4,1.4263,4.2],[14.46,1.06,123.1],[2.4,5.3,4.4]],256,true)
54
+ polygon[0].should == linear_ring1
55
+ polygon[1].should == linear_ring2
56
+ end
57
+
58
+ it "bbox" do
59
+ bbox = Polygon.from_coordinates([[[12.4,-45.3,15.2],[45.4,41.6,2.4],[4.456,1.0698,5.6],[12.4,-45.3,6.1]],[[2.4,5.3,4.5],[5.4,1.4263,4.2],[14.46,1.06,123.1],[2.4,5.3,4.4]]],256,true).bounding_box
60
+ bbox.length.should eql(2)
61
+ bbox[0].should == Point.from_x_y_z(4.456,-45.3,2.4)
62
+ bbox[1].should == Point.from_x_y_z(45.4,41.6,123.1)
63
+ end
64
+
65
+
66
+ it "test_polygon_equal" do
67
+ polygon1 = Polygon.from_coordinates([[[12.4,-45.3],[45.4,41.6],[4.456,1.0698],[12.4,-45.3]],[[2.4,5.3],[5.4,1.4263],[14.46,1.06],[2.4,5.3]]],256)
68
+ polygon2 = Polygon.from_coordinates([[[12.4,-45.3],[45.4,41.6],[4.456,1.0698],[12.4,-45.3]],[[2.4,5.3],[5.4,1.4263],[14.46,1.06]]])
69
+ point = Point.from_x_y(12.4,-45.3,123)
70
+
71
+ polygon1.should == Polygon.from_coordinates([[[12.4,-45.3],[45.4,41.6],[4.456,1.0698],[12.4,-45.3]],[[2.4,5.3],[5.4,1.4263],[14.46,1.06],[2.4,5.3]]],256)
72
+ polygon1.should_not == polygon2
73
+ polygon1.should_not == point
74
+ end
75
+
76
+ it "test_polygon_binary" do
77
+ polygon = Polygon.from_coordinates([[[0,0],[4,0],[4,4],[0,4],[0,0]],[[1,1],[3,1],[3,3],[1,3],[1,1]]],256)
78
+ #taken from PostGIS answer
79
+ polygon.as_hex_ewkb.should eql("0103000020000100000200000005000000000000000000000000000000000000000000000000001040000000000000000000000000000010400000000000001040000000000000000000000000000010400000000000000000000000000000000005000000000000000000F03F000000000000F03F0000000000000840000000000000F03F00000000000008400000000000000840000000000000F03F0000000000000840000000000000F03F000000000000F03F")
80
+
81
+ polygon = Polygon.from_coordinates([[[0,0,2],[4,0,2],[4,4,2],[0,4,2],[0,0,2]],[[1,1,2],[3,1,2],[3,3,2],[1,3,2],[1,1,2]]],256,true)
82
+ #taken from PostGIS answer
83
+ polygon.as_hex_ewkb.should eql("01030000A000010000020000000500000000000000000000000000000000000000000000000000004000000000000010400000000000000000000000000000004000000000000010400000000000001040000000000000004000000000000000000000000000001040000000000000004000000000000000000000000000000000000000000000004005000000000000000000F03F000000000000F03F00000000000000400000000000000840000000000000F03F0000000000000040000000000000084000000000000008400000000000000040000000000000F03F00000000000008400000000000000040000000000000F03F000000000000F03F0000000000000040")
84
+
85
+ polygon = Polygon.from_coordinates([[[0,0,2],[4,0,2],[4,4,2],[0,4,2],[0,0,2]],[[1,1,2],[3,1,2],[3,3,2],[1,3,2],[1,1,2]]],256,false,true)
86
+ polygon.as_hex_ewkb.should eql("010300006000010000020000000500000000000000000000000000000000000000000000000000004000000000000010400000000000000000000000000000004000000000000010400000000000001040000000000000004000000000000000000000000000001040000000000000004000000000000000000000000000000000000000000000004005000000000000000000F03F000000000000F03F00000000000000400000000000000840000000000000F03F0000000000000040000000000000084000000000000008400000000000000040000000000000F03F00000000000008400000000000000040000000000000F03F000000000000F03F0000000000000040")
87
+
88
+ polygon = Polygon.from_coordinates([[[0,0,2,-45.1],[4,0,2,5],[4,4,2,4.67],[0,4,2,1.34],[0,0,2,-45.1]],[[1,1,2,12.3],[3,1,2,123],[3,3,2,12.2],[1,3,2,12],[1,1,2,12.3]]],256,true,true)
89
+ polygon.as_hex_ewkb.should eql("01030000E0000100000200000005000000000000000000000000000000000000000000000000000040CDCCCCCCCC8C46C00000000000001040000000000000000000000000000000400000000000001440000000000000104000000000000010400000000000000040AE47E17A14AE1240000000000000000000000000000010400000000000000040713D0AD7A370F53F000000000000000000000000000000000000000000000040CDCCCCCCCC8C46C005000000000000000000F03F000000000000F03F00000000000000409A999999999928400000000000000840000000000000F03F00000000000000400000000000C05E400000000000000840000000000000084000000000000000406666666666662840000000000000F03F000000000000084000000000000000400000000000002840000000000000F03F000000000000F03F00000000000000409A99999999992840")
90
+ end
91
+
92
+ it "should test_polygon_text" do
93
+ polygon = Polygon.from_coordinates([[[0,0],[4,0],[4,4],[0,4],[0,0]],[[1,1],[3,1],[3,3],[1,3],[1,1]]],256)
94
+ polygon.as_ewkt.should eql("SRID=256;POLYGON((0 0,4 0,4 4,0 4,0 0),(1 1,3 1,3 3,1 3,1 1))")
95
+
96
+ polygon = Polygon.from_coordinates([[[0,0,2],[4,0,2],[4,4,2],[0,4,2],[0,0,2]],[[1,1,2],[3,1,2],[3,3,2],[1,3,2],[1,1,2]]],256,true)
97
+ polygon.as_ewkt.should eql("SRID=256;POLYGON((0 0 2,4 0 2,4 4 2,0 4 2,0 0 2),(1 1 2,3 1 2,3 3 2,1 3 2,1 1 2))")
98
+
99
+ polygon = Polygon.from_coordinates([[[0,0,2],[4,0,2],[4,4,2],[0,4,2],[0,0,2]],[[1,1,2],[3,1,2],[3,3,2],[1,3,2],[1,1,2]]],256,false,true)
100
+ polygon.as_ewkt.should eql("SRID=256;POLYGONM((0 0 2,4 0 2,4 4 2,0 4 2,0 0 2),(1 1 2,3 1 2,3 3 2,1 3 2,1 1 2))")
101
+
102
+ polygon = Polygon.from_coordinates([[[0,0,2,-45.1],[4,0,2,5],[4,4,2,4.67],[0,4,2,1.34],[0,0,2,-45.1]],[[1,1,2,12.3],[3,1,2,123],[3,3,2,12.2],[1,3,2,12],[1,1,2,12.3]]],256,true,true)
103
+ polygon.as_ewkt.should eql("SRID=256;POLYGON((0 0 2 -45.1,4 0 2 5,4 4 2 4.67,0 4 2 1.34,0 0 2 -45.1),(1 1 2 12.3,3 1 2 123,3 3 2 12.2,1 3 2 12,1 1 2 12.3))")
104
+ end
105
+
106
+ end
107
+
108
+ end
@@ -0,0 +1,27 @@
1
+ require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
2
+
3
+ # Time to add your specs!
4
+ # http://rspec.info/
5
+ describe "GeoRuby Stuff" do
6
+
7
+ it "should instantiate Geometry" do
8
+ @geo = GeoRuby::SimpleFeatures::Geometry.new
9
+ @geo.class.should eql(Geometry)
10
+ end
11
+
12
+ it "should instantiate from SimpleFeatures for compatibility" do
13
+ @geo = GeoRuby::SimpleFeatures::Geometry.new
14
+ @geo.class.should eql(Geometry)
15
+ end
16
+
17
+ it "should instantiate Point" do
18
+ @point = Point.new
19
+ @point.should be_instance_of(Point)
20
+ end
21
+
22
+ it "should instantiate Line" do
23
+ @line = LineString.new
24
+ @line.should be_instance_of(LineString)
25
+ end
26
+
27
+ end
@@ -0,0 +1,6 @@
1
+ --colour
2
+ --format
3
+ profile
4
+ --timeout
5
+ 20
6
+ --diff
@@ -0,0 +1,65 @@
1
+ begin
2
+ require 'spec'
3
+ rescue LoadError
4
+ require 'rubygems'
5
+ gem 'rspec'
6
+ require 'spec'
7
+ end
8
+
9
+ $:.unshift(File.dirname(__FILE__) + '/../lib')
10
+ require 'geo_ruby'
11
+ require 'geo_ruby/shp'
12
+ require 'geo_ruby/gpx'
13
+
14
+ include GeoRuby
15
+ include SimpleFeatures
16
+
17
+ module GeorubyMatchers
18
+
19
+ class BeGeometric
20
+
21
+ def matches?(actual)
22
+ actual.ancestors.include?(actual) || actual.kind_of?("Geometry")
23
+ end
24
+
25
+ def failure_message; "expected #{@actual.inspect} to be some geom"; end
26
+ end
27
+
28
+ class BeAPoint
29
+ include Spec::Matchers
30
+
31
+ def initialize(expect=nil)
32
+ @expect = expect
33
+ end
34
+
35
+ def matches?(actual)
36
+ if @expect
37
+ [:x, :y, :z, :m].each_with_index do |c, i|
38
+ next unless val = @expect[i]
39
+ if val.kind_of? Numeric
40
+ actual.send(c).should be_close(val, 0.1)
41
+ else
42
+ actual.send(c).should eql(val)
43
+ end
44
+ end
45
+ end
46
+ actual.should be_instance_of(Point)
47
+ end
48
+
49
+ def failure_message; "expected #{@expect} but received #{@actual.inspect}"; end
50
+ def negative_failure_message; "expected something else then '#{@expect}' but got '#{@actual}'"; end
51
+ end
52
+
53
+ def be_a_point(*args)
54
+ args.empty? ? BeAPoint.new : BeAPoint.new(args)
55
+ end
56
+
57
+ def be_geometric
58
+ BeGeometric.new
59
+ end
60
+ end
61
+
62
+ Spec::Runner.configure do |config|
63
+ config.include GeorubyMatchers
64
+ end
65
+
metadata ADDED
@@ -0,0 +1,162 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: ppe-georuby
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.7.2
5
+ platform: ruby
6
+ authors:
7
+ - Guilhem Vellut
8
+ - Marcos Piccinini
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+
13
+ date: 2010-04-04 00:00:00 +01:00
14
+ default_executable:
15
+ dependencies:
16
+ - !ruby/object:Gem::Dependency
17
+ name: rspec
18
+ type: :development
19
+ version_requirement:
20
+ version_requirements: !ruby/object:Gem::Requirement
21
+ requirements:
22
+ - - ">="
23
+ - !ruby/object:Gem::Version
24
+ version: 1.2.9
25
+ version:
26
+ - !ruby/object:Gem::Dependency
27
+ name: dbf
28
+ type: :development
29
+ version_requirement:
30
+ version_requirements: !ruby/object:Gem::Requirement
31
+ requirements:
32
+ - - ">="
33
+ - !ruby/object:Gem::Version
34
+ version: 1.1.2
35
+ version:
36
+ description: GeoRuby provides geometric data types from the OGC 'Simple Features' specification.
37
+ email: x@nofxx.com
38
+ executables: []
39
+
40
+ extensions: []
41
+
42
+ extra_rdoc_files:
43
+ - LICENSE
44
+ - README.txt
45
+ files:
46
+ - .gitignore
47
+ - History.txt
48
+ - LICENSE
49
+ - README.txt
50
+ - Rakefile
51
+ - VERSION
52
+ - lib/geo_ruby.rb
53
+ - lib/geo_ruby/gpx.rb
54
+ - lib/geo_ruby/gpx4r/gpx.rb
55
+ - lib/geo_ruby/shp.rb
56
+ - lib/geo_ruby/shp4r/dbf.rb
57
+ - lib/geo_ruby/shp4r/shp.rb
58
+ - lib/geo_ruby/simple_features/envelope.rb
59
+ - lib/geo_ruby/simple_features/ewkb_parser.rb
60
+ - lib/geo_ruby/simple_features/ewkt_parser.rb
61
+ - lib/geo_ruby/simple_features/geometry.rb
62
+ - lib/geo_ruby/simple_features/geometry_collection.rb
63
+ - lib/geo_ruby/simple_features/geometry_factory.rb
64
+ - lib/geo_ruby/simple_features/georss_parser.rb
65
+ - lib/geo_ruby/simple_features/helper.rb
66
+ - lib/geo_ruby/simple_features/line_string.rb
67
+ - lib/geo_ruby/simple_features/linear_ring.rb
68
+ - lib/geo_ruby/simple_features/multi_line_string.rb
69
+ - lib/geo_ruby/simple_features/multi_point.rb
70
+ - lib/geo_ruby/simple_features/multi_polygon.rb
71
+ - lib/geo_ruby/simple_features/point.rb
72
+ - lib/geo_ruby/simple_features/polygon.rb
73
+ - ppe-georuby.gemspec
74
+ - script/console
75
+ - script/destroy
76
+ - script/generate
77
+ - script/txt2html
78
+ - spec/data/gpx/fells_loop.gpx
79
+ - spec/data/gpx/long.gpx
80
+ - spec/data/gpx/long.kml
81
+ - spec/data/gpx/long.nmea
82
+ - spec/data/gpx/short.gpx
83
+ - spec/data/gpx/short.kml
84
+ - spec/data/gpx/tracktreks.gpx
85
+ - spec/data/multipoint.dbf
86
+ - spec/data/multipoint.shp
87
+ - spec/data/multipoint.shx
88
+ - spec/data/point.dbf
89
+ - spec/data/point.shp
90
+ - spec/data/point.shx
91
+ - spec/data/polygon.dbf
92
+ - spec/data/polygon.shp
93
+ - spec/data/polygon.shx
94
+ - spec/data/polyline.dbf
95
+ - spec/data/polyline.shp
96
+ - spec/data/polyline.shx
97
+ - spec/geo_ruby/gpx4r/gpx_spec.rb
98
+ - spec/geo_ruby/shp4r/shp_spec.rb
99
+ - spec/geo_ruby/simple_features/envelope_spec.rb
100
+ - spec/geo_ruby/simple_features/ewkb_parser_spec.rb
101
+ - spec/geo_ruby/simple_features/ewkt_parser_spec.rb
102
+ - spec/geo_ruby/simple_features/geometry_collection_spec.rb
103
+ - spec/geo_ruby/simple_features/geometry_factory_spec.rb
104
+ - spec/geo_ruby/simple_features/geometry_spec.rb
105
+ - spec/geo_ruby/simple_features/georss_parser_spec.rb
106
+ - spec/geo_ruby/simple_features/line_string_spec.rb
107
+ - spec/geo_ruby/simple_features/linear_ring_spec.rb
108
+ - spec/geo_ruby/simple_features/multi_line_string_spec.rb
109
+ - spec/geo_ruby/simple_features/multi_point_spec.rb
110
+ - spec/geo_ruby/simple_features/multi_polygon_spec.rb
111
+ - spec/geo_ruby/simple_features/point_spec.rb
112
+ - spec/geo_ruby/simple_features/polygon_spec.rb
113
+ - spec/geo_ruby_spec.rb
114
+ - spec/spec.opts
115
+ - spec/spec_helper.rb
116
+ has_rdoc: true
117
+ homepage: http://github.com/nofxx/georuby
118
+ licenses: []
119
+
120
+ post_install_message:
121
+ rdoc_options:
122
+ - --charset=UTF-8
123
+ require_paths:
124
+ - lib
125
+ required_ruby_version: !ruby/object:Gem::Requirement
126
+ requirements:
127
+ - - ">="
128
+ - !ruby/object:Gem::Version
129
+ version: "0"
130
+ version:
131
+ required_rubygems_version: !ruby/object:Gem::Requirement
132
+ requirements:
133
+ - - ">="
134
+ - !ruby/object:Gem::Version
135
+ version: "0"
136
+ version:
137
+ requirements: []
138
+
139
+ rubyforge_project:
140
+ rubygems_version: 1.3.5
141
+ signing_key:
142
+ specification_version: 3
143
+ summary: Ruby data holder for OGC Simple Features
144
+ test_files:
145
+ - spec/geo_ruby_spec.rb
146
+ - spec/spec_helper.rb
147
+ - spec/geo_ruby/gpx4r/gpx_spec.rb
148
+ - spec/geo_ruby/shp4r/shp_spec.rb
149
+ - spec/geo_ruby/simple_features/point_spec.rb
150
+ - spec/geo_ruby/simple_features/geometry_factory_spec.rb
151
+ - spec/geo_ruby/simple_features/envelope_spec.rb
152
+ - spec/geo_ruby/simple_features/polygon_spec.rb
153
+ - spec/geo_ruby/simple_features/line_string_spec.rb
154
+ - spec/geo_ruby/simple_features/multi_line_string_spec.rb
155
+ - spec/geo_ruby/simple_features/ewkt_parser_spec.rb
156
+ - spec/geo_ruby/simple_features/ewkb_parser_spec.rb
157
+ - spec/geo_ruby/simple_features/linear_ring_spec.rb
158
+ - spec/geo_ruby/simple_features/geometry_collection_spec.rb
159
+ - spec/geo_ruby/simple_features/multi_polygon_spec.rb
160
+ - spec/geo_ruby/simple_features/multi_point_spec.rb
161
+ - spec/geo_ruby/simple_features/georss_parser_spec.rb
162
+ - spec/geo_ruby/simple_features/geometry_spec.rb