rgeo 0.1.14 → 0.1.15

Sign up to get free protection for your applications and to get access to all the features.
Files changed (37) hide show
  1. data/History.rdoc +6 -0
  2. data/Version +1 -1
  3. data/lib/rgeo.rb +80 -30
  4. data/lib/rgeo/all.rb +48 -0
  5. data/lib/rgeo/cartesian.rb +37 -12
  6. data/lib/rgeo/cartesian/calculations.rb +5 -0
  7. data/lib/rgeo/cartesian/{simple_factory.rb → factory.rb} +14 -17
  8. data/lib/rgeo/cartesian/{simple_feature_classes.rb → feature_classes.rb} +55 -55
  9. data/lib/rgeo/cartesian/{simple_feature_methods.rb → feature_methods.rb} +7 -3
  10. data/lib/rgeo/cartesian/interface.rb +7 -3
  11. data/lib/rgeo/errors.rb +4 -0
  12. data/lib/rgeo/features.rb +25 -20
  13. data/lib/rgeo/geo_json.rb +10 -8
  14. data/lib/rgeo/geography.rb +10 -16
  15. data/lib/rgeo/geography/all.rb +40 -0
  16. data/lib/rgeo/geography/factory.rb +2 -2
  17. data/lib/rgeo/geography/{factories.rb → interface.rb} +4 -2
  18. data/lib/rgeo/geography/simple_mercator.rb +69 -0
  19. data/lib/rgeo/geography/simple_mercator/feature_classes.rb +62 -62
  20. data/lib/rgeo/geography/simple_mercator/projector.rb +1 -1
  21. data/lib/rgeo/geography/simple_spherical.rb +68 -0
  22. data/lib/rgeo/geography/simple_spherical/calculations.rb +2 -2
  23. data/lib/rgeo/geography/simple_spherical/feature_classes.rb +44 -44
  24. data/lib/rgeo/geos.rb +12 -9
  25. data/lib/rgeo/impl_helpers.rb +14 -9
  26. data/lib/rgeo/impl_helpers/basic_geometry_collection_methods.rb +10 -0
  27. data/lib/rgeo/impl_helpers/basic_point_methods.rb +3 -0
  28. data/lib/rgeo/{geography/helper.rb → impl_helpers/math.rb} +3 -3
  29. data/lib/rgeo/wkrep.rb +32 -12
  30. data/lib/rgeo/wkrep/wkb_generator.rb +95 -9
  31. data/lib/rgeo/wkrep/wkb_parser.rb +117 -9
  32. data/lib/rgeo/wkrep/wkt_generator.rb +106 -18
  33. data/lib/rgeo/wkrep/wkt_parser.rb +203 -59
  34. data/tests/simple_cartesian/tc_calculations.rb +8 -8
  35. data/tests/wkrep/tc_wkt_generator.rb +362 -0
  36. data/tests/wkrep/tc_wkt_parser.rb +490 -0
  37. metadata +16 -8
@@ -39,7 +39,7 @@ module RGeo
39
39
  module Cartesian
40
40
 
41
41
 
42
- module SimpleGeometryMethods # :nodoc:
42
+ module GeometryMethods # :nodoc:
43
43
 
44
44
 
45
45
  def srid
@@ -50,7 +50,7 @@ module RGeo
50
50
  end
51
51
 
52
52
 
53
- module SimpleLineStringMethods # :nodoc:
53
+ module LineStringMethods # :nodoc:
54
54
 
55
55
 
56
56
  def _segments
@@ -89,9 +89,13 @@ module RGeo
89
89
  end
90
90
 
91
91
 
92
+ def length
93
+ @segments.inject(0.0){ |sum_, seg_| sum_ + seg_.length }
94
+ end
95
+
96
+
92
97
  end
93
98
 
94
-
95
99
  end
96
100
 
97
101
  end
@@ -55,8 +55,8 @@ module RGeo
55
55
  # implementation. Unsupported options are ignored.
56
56
 
57
57
  def preferred_factory(opts_={})
58
- if Geos.supported?
59
- Geos.factory(opts_)
58
+ if ::RGeo::Geos.supported?
59
+ ::RGeo::Geos.factory(opts_)
60
60
  else
61
61
  simple_factory(opts_)
62
62
  end
@@ -72,9 +72,13 @@ module RGeo
72
72
  # <tt>:srid</tt>::
73
73
  # Set the SRID returned by geometries created by this factory.
74
74
  # Default is 0.
75
+ # <tt>:support_z_coordinate</tt>::
76
+ # Support <tt>z_coordinate</tt>. Default is false.
77
+ # <tt>:support_m_coordinate</tt>::
78
+ # Support <tt>m_coordinate</tt>. Default is false.
75
79
 
76
80
  def simple_factory(opts_={})
77
- SimpleFactory.new(opts_)
81
+ Cartesian::Factory.new(opts_)
78
82
  end
79
83
 
80
84
 
data/lib/rgeo/errors.rb CHANGED
@@ -34,6 +34,10 @@
34
34
  ;
35
35
 
36
36
 
37
+ # Parent file
38
+ require 'rgeo'
39
+
40
+
37
41
  module RGeo
38
42
 
39
43
 
data/lib/rgeo/features.rb CHANGED
@@ -34,6 +34,10 @@
34
34
  ;
35
35
 
36
36
 
37
+ # Parent file
38
+ require 'rgeo'
39
+
40
+
37
41
  module RGeo
38
42
 
39
43
 
@@ -68,23 +72,24 @@ module RGeo
68
72
  end
69
73
 
70
74
 
71
- # Dependency source files.
72
- paths_ = [
73
- 'features/factory',
74
- 'features/types',
75
- 'features/geometry',
76
- 'features/point',
77
- 'features/curve',
78
- 'features/line_string',
79
- 'features/linear_ring',
80
- 'features/line',
81
- 'features/surface',
82
- 'features/polygon',
83
- 'features/geometry_collection',
84
- 'features/multi_point',
85
- 'features/multi_curve',
86
- 'features/multi_line_string',
87
- 'features/multi_surface',
88
- 'features/multi_polygon',
89
- ]
90
- paths_.each{ |path_| require "rgeo/#{path_}" }
75
+ # Dependency files
76
+ require 'rgeo/errors'
77
+
78
+ # Implementation files
79
+ require 'rgeo/features/factory'
80
+ require 'rgeo/features/types'
81
+ require 'rgeo/features/geometry'
82
+ require 'rgeo/features/point'
83
+ require 'rgeo/features/curve'
84
+ require 'rgeo/features/line_string'
85
+ require 'rgeo/features/linear_ring'
86
+ require 'rgeo/features/line'
87
+ require 'rgeo/features/surface'
88
+ require 'rgeo/features/polygon'
89
+ require 'rgeo/features/geometry_collection'
90
+ require 'rgeo/features/multi_point'
91
+ require 'rgeo/features/multi_curve'
92
+ require 'rgeo/features/multi_line_string'
93
+ require 'rgeo/features/multi_surface'
94
+ require 'rgeo/features/multi_polygon'
95
+
data/lib/rgeo/geo_json.rb CHANGED
@@ -34,6 +34,10 @@
34
34
  ;
35
35
 
36
36
 
37
+ # Parent file
38
+ require 'rgeo'
39
+
40
+
37
41
  module RGeo
38
42
 
39
43
 
@@ -47,12 +51,10 @@ module RGeo
47
51
  end
48
52
 
49
53
 
50
- # Dependency source files.
51
- paths_ = [
52
- 'features',
53
- 'geo_json/entities',
54
- 'geo_json/coder',
55
- 'geo_json/interface',
56
- ]
54
+ # Dependency files
55
+ require 'rgeo/features'
57
56
 
58
- paths_.each{ |path_| require "rgeo/#{path_}" }
57
+ # Implementation files
58
+ require 'rgeo/geo_json/entities'
59
+ require 'rgeo/geo_json/coder'
60
+ require 'rgeo/geo_json/interface'
@@ -34,6 +34,10 @@
34
34
  ;
35
35
 
36
36
 
37
+ # Parent file
38
+ require 'rgeo'
39
+
40
+
37
41
  module RGeo
38
42
 
39
43
 
@@ -41,25 +45,15 @@ module RGeo
41
45
  # latitude/longitude coordinates measured in degrees.
42
46
 
43
47
  module Geography
48
+
49
+ autoload(:SimpleSpherical, 'rgeo/geography/simple_spherical')
50
+ autoload(:SimpleMercator, 'rgeo/geography/simple_mercator')
51
+
44
52
  end
45
53
 
46
54
 
47
55
  end
48
56
 
49
57
 
50
- # Dependency source files.
51
- paths_ = [
52
- 'features',
53
- 'cartesian',
54
- 'geography/helper',
55
- 'geography/simple_spherical/calculations',
56
- 'geography/simple_spherical/feature_methods',
57
- 'geography/simple_spherical/feature_classes',
58
- 'geography/simple_mercator/projector',
59
- 'geography/simple_mercator/feature_methods',
60
- 'geography/simple_mercator/feature_classes',
61
- 'geography/factory',
62
- 'geography/projected_window',
63
- 'geography/factories',
64
- ]
65
- paths_.each{ |path_| require "rgeo/#{path_}" }
58
+ # Implementation files.
59
+ require 'rgeo/geography/interface'
@@ -0,0 +1,40 @@
1
+ # -----------------------------------------------------------------------------
2
+ #
3
+ # All files in the Cartesian module for RGeo
4
+ #
5
+ # -----------------------------------------------------------------------------
6
+ # Copyright 2010 Daniel Azuma
7
+ #
8
+ # All rights reserved.
9
+ #
10
+ # Redistribution and use in source and binary forms, with or without
11
+ # modification, are permitted provided that the following conditions are met:
12
+ #
13
+ # * Redistributions of source code must retain the above copyright notice,
14
+ # this list of conditions and the following disclaimer.
15
+ # * Redistributions in binary form must reproduce the above copyright notice,
16
+ # this list of conditions and the following disclaimer in the documentation
17
+ # and/or other materials provided with the distribution.
18
+ # * Neither the name of the copyright holder, nor the names of any other
19
+ # contributors to this software, may be used to endorse or promote products
20
+ # derived from this software without specific prior written permission.
21
+ #
22
+ # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
23
+ # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
24
+ # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
25
+ # ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
26
+ # LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
27
+ # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
28
+ # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
29
+ # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
30
+ # CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
31
+ # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
32
+ # POSSIBILITY OF SUCH DAMAGE.
33
+ # -----------------------------------------------------------------------------
34
+ ;
35
+
36
+
37
+ require 'rgeo/geography'
38
+
39
+ require 'rgeo/geography/simple_spherical'
40
+ require 'rgeo/geography/simple_mercator'
@@ -149,14 +149,14 @@ module RGeo
149
149
  # See ::RGeo::Features::Factory#parse_wkt
150
150
 
151
151
  def parse_wkt(str_)
152
- WKRep::WKTParser.new(self, :support_higher_dimensions => true).parse(str_)
152
+ WKRep::WKTParser.new(:default_factory => self).parse(str_)
153
153
  end
154
154
 
155
155
 
156
156
  # See ::RGeo::Features::Factory#parse_wkb
157
157
 
158
158
  def parse_wkb(str_)
159
- WKRep::WKBParser.new(self).parse(str_)
159
+ WKRep::WKBParser.new(:default_factory => self).parse(str_)
160
160
  end
161
161
 
162
162
 
@@ -100,7 +100,8 @@ module RGeo
100
100
  # most support one or the other.
101
101
 
102
102
  def simple_spherical(opts_={})
103
- Geography::Factory.new(Geography::SimpleSpherical, :support_z_coordinate => opts_[:support_z_coordinate], :support_m_coordinate => opts_[:support_m_coordinate])
103
+ namespace_ = Geography::SimpleSpherical
104
+ Geography::Factory.new(namespace_, :support_z_coordinate => opts_[:support_z_coordinate], :support_m_coordinate => opts_[:support_m_coordinate])
104
105
  end
105
106
 
106
107
 
@@ -176,7 +177,8 @@ module RGeo
176
177
  # most support one or the other.
177
178
 
178
179
  def simple_mercator(opts_={})
179
- Geography::Factory.new(Geography::SimpleMercator, :buffer_resolution => opts_[:buffer_resolution], :lenient_multi_polygon_assertions => opts_[:lenient_multi_polygon_assertions], :support_z_coordinate => opts_[:support_z_coordinate], :support_m_coordinate => opts_[:support_m_coordinate])
180
+ namespace_ = Geography::SimpleMercator
181
+ Geography::Factory.new(namespace_, :buffer_resolution => opts_[:buffer_resolution], :lenient_multi_polygon_assertions => opts_[:lenient_multi_polygon_assertions], :support_z_coordinate => opts_[:support_z_coordinate], :support_m_coordinate => opts_[:support_m_coordinate])
180
182
  end
181
183
 
182
184
 
@@ -0,0 +1,69 @@
1
+ # -----------------------------------------------------------------------------
2
+ #
3
+ # Simple spherical geography implementation for RGeo
4
+ #
5
+ # -----------------------------------------------------------------------------
6
+ # Copyright 2010 Daniel Azuma
7
+ #
8
+ # All rights reserved.
9
+ #
10
+ # Redistribution and use in source and binary forms, with or without
11
+ # modification, are permitted provided that the following conditions are met:
12
+ #
13
+ # * Redistributions of source code must retain the above copyright notice,
14
+ # this list of conditions and the following disclaimer.
15
+ # * Redistributions in binary form must reproduce the above copyright notice,
16
+ # this list of conditions and the following disclaimer in the documentation
17
+ # and/or other materials provided with the distribution.
18
+ # * Neither the name of the copyright holder, nor the names of any other
19
+ # contributors to this software, may be used to endorse or promote products
20
+ # derived from this software without specific prior written permission.
21
+ #
22
+ # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
23
+ # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
24
+ # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
25
+ # ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
26
+ # LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
27
+ # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
28
+ # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
29
+ # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
30
+ # CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
31
+ # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
32
+ # POSSIBILITY OF SUCH DAMAGE.
33
+ # -----------------------------------------------------------------------------
34
+ ;
35
+
36
+
37
+ require 'rgeo/geography'
38
+
39
+
40
+ module RGeo
41
+
42
+ module Geography
43
+
44
+
45
+ # This namespace contains the simple mercator implementation.
46
+
47
+ module SimpleMercator
48
+ end
49
+
50
+
51
+ end
52
+
53
+
54
+ end
55
+
56
+
57
+ # Dependency source files.
58
+ paths_ = [
59
+ 'features',
60
+ 'wkrep',
61
+ 'impl_helpers',
62
+ 'cartesian',
63
+ 'geography/simple_mercator/projector',
64
+ 'geography/simple_mercator/feature_methods',
65
+ 'geography/simple_mercator/feature_classes',
66
+ 'geography/factory',
67
+ 'geography/projected_window',
68
+ ]
69
+ paths_.each{ |path_| require "rgeo/#{path_}" }
@@ -44,10 +44,10 @@ module RGeo
44
44
  class PointImpl # :nodoc:
45
45
 
46
46
 
47
- include Features::Point
48
- include ImplHelpers::BasicGeometryMethods
49
- include SimpleMercator::GeometryMethods
50
- include ImplHelpers::BasicPointMethods
47
+ include ::RGeo::Features::Point
48
+ include ::RGeo::ImplHelpers::BasicGeometryMethods
49
+ include ::RGeo::Geography::SimpleMercator::GeometryMethods
50
+ include ::RGeo::ImplHelpers::BasicPointMethods
51
51
 
52
52
 
53
53
  def _validate_geometry
@@ -58,7 +58,7 @@ module RGeo
58
58
 
59
59
 
60
60
  def _make_projection(projection_factory_) # :nodoc:
61
- rpd_ = Helper::RADIANS_PER_DEGREE
61
+ rpd_ = ::RGeo::ImplHelpers::Math::RADIANS_PER_DEGREE
62
62
  mpr_ = EQUATORIAL_RADIUS
63
63
  projection_factory_.point(@x * rpd_ * mpr_,
64
64
  ::Math.log(::Math.tan(::Math::PI / 4.0 + @y * rpd_ / 2.0)) * mpr_)
@@ -66,7 +66,7 @@ module RGeo
66
66
 
67
67
 
68
68
  def scaling_factor
69
- 1.0 / ::Math.cos(Helper::RADIANS_PER_DEGREE * @y)
69
+ 1.0 / ::Math.cos(::RGeo::ImplHelpers::Math::RADIANS_PER_DEGREE * @y)
70
70
  end
71
71
 
72
72
 
@@ -87,13 +87,13 @@ module RGeo
87
87
  class LineStringImpl # :nodoc:
88
88
 
89
89
 
90
- include Features::LineString
91
- include ImplHelpers::BasicGeometryMethods
92
- include SimpleMercator::GeometryMethods
93
- include SimpleMercator::NCurveMethods
94
- include SimpleMercator::CurveMethods
95
- include ImplHelpers::BasicLineStringMethods
96
- include SimpleMercator::LineStringMethods
90
+ include ::RGeo::Features::LineString
91
+ include ::RGeo::ImplHelpers::BasicGeometryMethods
92
+ include ::RGeo::Geography::SimpleMercator::GeometryMethods
93
+ include ::RGeo::Geography::SimpleMercator::NCurveMethods
94
+ include ::RGeo::Geography::SimpleMercator::CurveMethods
95
+ include ::RGeo::ImplHelpers::BasicLineStringMethods
96
+ include ::RGeo::Geography::SimpleMercator::LineStringMethods
97
97
 
98
98
 
99
99
  def _make_projection(projection_factory_) # :nodoc:
@@ -107,14 +107,14 @@ module RGeo
107
107
  class LinearRingImpl # :nodoc:
108
108
 
109
109
 
110
- include Features::Line
111
- include ImplHelpers::BasicGeometryMethods
112
- include SimpleMercator::GeometryMethods
113
- include SimpleMercator::NCurveMethods
114
- include SimpleMercator::CurveMethods
115
- include ImplHelpers::BasicLineStringMethods
116
- include SimpleMercator::LineStringMethods
117
- include ImplHelpers::BasicLinearRingMethods
110
+ include ::RGeo::Features::Line
111
+ include ::RGeo::ImplHelpers::BasicGeometryMethods
112
+ include ::RGeo::Geography::SimpleMercator::GeometryMethods
113
+ include ::RGeo::Geography::SimpleMercator::NCurveMethods
114
+ include ::RGeo::Geography::SimpleMercator::CurveMethods
115
+ include ::RGeo::ImplHelpers::BasicLineStringMethods
116
+ include ::RGeo::Geography::SimpleMercator::LineStringMethods
117
+ include ::RGeo::ImplHelpers::BasicLinearRingMethods
118
118
 
119
119
 
120
120
  def _make_projection(projection_factory_) # :nodoc:
@@ -128,14 +128,14 @@ module RGeo
128
128
  class LineImpl # :nodoc:
129
129
 
130
130
 
131
- include Features::Line
132
- include ImplHelpers::BasicGeometryMethods
133
- include SimpleMercator::GeometryMethods
134
- include SimpleMercator::NCurveMethods
135
- include SimpleMercator::CurveMethods
136
- include ImplHelpers::BasicLineStringMethods
137
- include SimpleMercator::LineStringMethods
138
- include ImplHelpers::BasicLineMethods
131
+ include ::RGeo::Features::Line
132
+ include ::RGeo::ImplHelpers::BasicGeometryMethods
133
+ include ::RGeo::Geography::SimpleMercator::GeometryMethods
134
+ include ::RGeo::Geography::SimpleMercator::NCurveMethods
135
+ include ::RGeo::Geography::SimpleMercator::CurveMethods
136
+ include ::RGeo::ImplHelpers::BasicLineStringMethods
137
+ include ::RGeo::Geography::SimpleMercator::LineStringMethods
138
+ include ::RGeo::ImplHelpers::BasicLineMethods
139
139
 
140
140
 
141
141
  def _make_projection(projection_factory_) # :nodoc:
@@ -149,18 +149,18 @@ module RGeo
149
149
  class PolygonImpl # :nodoc:
150
150
 
151
151
 
152
- include Features::Polygon
153
- include ImplHelpers::BasicGeometryMethods
154
- include SimpleMercator::GeometryMethods
155
- include SimpleMercator::NSurfaceMethods
156
- include SimpleMercator::SurfaceMethods
157
- include ImplHelpers::BasicPolygonMethods
152
+ include ::RGeo::Features::Polygon
153
+ include ::RGeo::ImplHelpers::BasicGeometryMethods
154
+ include ::RGeo::Geography::SimpleMercator::GeometryMethods
155
+ include ::RGeo::Geography::SimpleMercator::NSurfaceMethods
156
+ include ::RGeo::Geography::SimpleMercator::SurfaceMethods
157
+ include ::RGeo::ImplHelpers::BasicPolygonMethods
158
158
 
159
159
 
160
160
  def _validate_geometry
161
161
  super
162
162
  unless projection
163
- raise Errors::InvalidGeometry, 'Polygon failed assertions'
163
+ raise ::RGeo::Errors::InvalidGeometry, 'Polygon failed assertions'
164
164
  end
165
165
  end
166
166
 
@@ -177,11 +177,11 @@ module RGeo
177
177
  class GeometryCollectionImpl # :nodoc:
178
178
 
179
179
 
180
- include Features::GeometryCollection
181
- include ImplHelpers::BasicGeometryMethods
182
- include SimpleMercator::GeometryMethods
183
- include ImplHelpers::BasicGeometryCollectionMethods
184
- include SimpleMercator::GeometryCollectionMethods
180
+ include ::RGeo::Features::GeometryCollection
181
+ include ::RGeo::ImplHelpers::BasicGeometryMethods
182
+ include ::RGeo::Geography::SimpleMercator::GeometryMethods
183
+ include ::RGeo::ImplHelpers::BasicGeometryCollectionMethods
184
+ include ::RGeo::Geography::SimpleMercator::GeometryCollectionMethods
185
185
 
186
186
 
187
187
  def _make_projection(projection_factory_) # :nodoc:
@@ -195,12 +195,12 @@ module RGeo
195
195
  class MultiPointImpl # :nodoc:
196
196
 
197
197
 
198
- include Features::GeometryCollection
199
- include ImplHelpers::BasicGeometryMethods
200
- include SimpleMercator::GeometryMethods
201
- include ImplHelpers::BasicGeometryCollectionMethods
202
- include SimpleMercator::GeometryCollectionMethods
203
- include ImplHelpers::BasicMultiPointMethods
198
+ include ::RGeo::Features::GeometryCollection
199
+ include ::RGeo::ImplHelpers::BasicGeometryMethods
200
+ include ::RGeo::Geography::SimpleMercator::GeometryMethods
201
+ include ::RGeo::ImplHelpers::BasicGeometryCollectionMethods
202
+ include ::RGeo::Geography::SimpleMercator::GeometryCollectionMethods
203
+ include ::RGeo::ImplHelpers::BasicMultiPointMethods
204
204
 
205
205
 
206
206
  def _make_projection(projection_factory_) # :nodoc:
@@ -214,13 +214,13 @@ module RGeo
214
214
  class MultiLineStringImpl # :nodoc:
215
215
 
216
216
 
217
- include Features::GeometryCollection
218
- include ImplHelpers::BasicGeometryMethods
219
- include SimpleMercator::GeometryMethods
220
- include SimpleMercator::NCurveMethods
221
- include ImplHelpers::BasicGeometryCollectionMethods
222
- include SimpleMercator::GeometryCollectionMethods
223
- include ImplHelpers::BasicMultiLineStringMethods
217
+ include ::RGeo::Features::GeometryCollection
218
+ include ::RGeo::ImplHelpers::BasicGeometryMethods
219
+ include ::RGeo::Geography::SimpleMercator::GeometryMethods
220
+ include ::RGeo::Geography::SimpleMercator::NCurveMethods
221
+ include ::RGeo::ImplHelpers::BasicGeometryCollectionMethods
222
+ include ::RGeo::Geography::SimpleMercator::GeometryCollectionMethods
223
+ include ::RGeo::ImplHelpers::BasicMultiLineStringMethods
224
224
 
225
225
 
226
226
  def _make_projection(projection_factory_) # :nodoc:
@@ -234,19 +234,19 @@ module RGeo
234
234
  class MultiPolygonImpl # :nodoc:
235
235
 
236
236
 
237
- include Features::GeometryCollection
238
- include ImplHelpers::BasicGeometryMethods
239
- include SimpleMercator::GeometryMethods
240
- include SimpleMercator::NSurfaceMethods
241
- include ImplHelpers::BasicGeometryCollectionMethods
242
- include SimpleMercator::GeometryCollectionMethods
243
- include ImplHelpers::BasicMultiPolygonMethods
237
+ include ::RGeo::Features::GeometryCollection
238
+ include ::RGeo::ImplHelpers::BasicGeometryMethods
239
+ include ::RGeo::Geography::SimpleMercator::GeometryMethods
240
+ include ::RGeo::Geography::SimpleMercator::NSurfaceMethods
241
+ include ::RGeo::ImplHelpers::BasicGeometryCollectionMethods
242
+ include ::RGeo::Geography::SimpleMercator::GeometryCollectionMethods
243
+ include ::RGeo::ImplHelpers::BasicMultiPolygonMethods
244
244
 
245
245
 
246
246
  def _validate_geometry
247
247
  super
248
248
  unless projection
249
- raise Errors::InvalidGeometry, 'MultiPolygon failed assertions'
249
+ raise ::RGeo::Errors::InvalidGeometry, 'MultiPolygon failed assertions'
250
250
  end
251
251
  end
252
252