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
data/History.rdoc CHANGED
@@ -1,3 +1,9 @@
1
+ === 0.1.15 / 2010-11-08
2
+
3
+ * Cleanup, fixes, documentation, and partial test coverage in the WKT/WKB implementations.
4
+ * Implemented autoload for the various modules.
5
+ * A few minor fixes.
6
+
1
7
  === 0.1.14 / 2010-11-04
2
8
 
3
9
  * Introduced capability checking API.
data/Version CHANGED
@@ -1 +1 @@
1
- 0.1.14
1
+ 0.1.15
data/lib/rgeo.rb CHANGED
@@ -1,6 +1,6 @@
1
1
  # -----------------------------------------------------------------------------
2
2
  #
3
- # RGeo Rakefile
3
+ # RGeo main file
4
4
  #
5
5
  # -----------------------------------------------------------------------------
6
6
  # Copyright 2010 Daniel Azuma
@@ -34,30 +34,80 @@
34
34
  ;
35
35
 
36
36
 
37
- # RGeo is a spatial data library for Ruby.
37
+ # RGeo is a spatial data library for Ruby. It focuses on the storage and
38
+ # manipulation of spatial data types such as points, lines, and polygons.
39
+ #
40
+ # === RGeo Modules
41
+ #
42
+ # RGeo comprises a number of modules.
38
43
  #
39
44
  # The RGeo::Features module contains interface specifications for spatial
40
45
  # objects implemented by RGeo. These interfaces closely follow the OGC
41
- # Simple Features Specifiation (SFS).
46
+ # Simple Features Specifiation (SFS). This module forms the core of RGeo.
42
47
  #
43
- # The RGeo::Cartesian module provides basic implementations of spatial
44
- # objects in a Cartesian (flat) coordinate system. There is a pure ruby
45
- # implementation that provides basic services, and there are bridges to
46
- # external implementations that support all the SFS operations.
48
+ # The RGeo::Cartesian module provides a basic pure ruby implementation of
49
+ # spatial objects in a Cartesian (flat) coordinate system. It does not
50
+ # implement all the geometric analysis operations in the SFS, but it
51
+ # implements the data structures without requiring an external C library,
52
+ # so it is often sufficient for basic applications.
47
53
  #
48
- # One of these external bridges is provided by the RGeo::Geos module,
49
- # which wraps the GEOS library to provide a full, high-performance
50
- # Cartesian geometry implementation.
54
+ # The RGeo::Geos module is another cartesian implementation that wraps the
55
+ # GEOS library to provide a full, high-performance implementation of
56
+ # Cartesian geometry that includes every operation defined in the SFS. It
57
+ # requires GEOS 3.2 or later.
51
58
  #
52
59
  # The RGeo::Geography module contains spatial implementations that
53
- # operate in latitude-longitude coordinates. Several different
54
- # implementations are provided, including one designed for map
55
- # visualization applications that use Google or Bing maps.
60
+ # operate in latitude-longitude coordinates and are well-suited for
61
+ # geographic location based applications.
62
+ #
63
+ # One of the geography implementations is RGeo::Geography::SimpleMercator,
64
+ # which uses the same coordinate system and projection as that used by
65
+ # Google and Bing Maps, and is ideally suited for visualization
66
+ # applications based on those technologies.
67
+ #
68
+ # The RGeo::Geography::SimpleSpherical provides another geography
69
+ # implementation that does not use a projection, but instead performs
70
+ # geometric operations on a spherical approximation of the globe. This
71
+ # implementation does not provide all the geometric analysis operations
72
+ # in the SFS, but it may be useful for cases when you need more accuracy
73
+ # than a projected implementation would provide.
74
+ #
75
+ # The RGeo::WKRep module contains tools for reading and writing spatial
76
+ # data in the OGC Well-Known Text (WKT) and Well-Known Binary (WKB)
77
+ # representations. It also supports their variants such as the PostGIS
78
+ # EWKT and EWKB representations.
56
79
  #
57
80
  # The RGeo::GeoJSON module contains tools for GeoJSON serialization of
58
- # spatial objects.
81
+ # spatial objects. These tools work with any of the spatial object
82
+ # implementations.
83
+ #
84
+ # === Loading the library
59
85
  #
60
- # Future modules in development include:
86
+ # After installing the RGeo gem, you can load the library with:
87
+ # require 'rgeo'
88
+ #
89
+ # This will "lazy-load" the modules as they are referenced or needed
90
+ # (using autoload).
91
+ #
92
+ # If, for performance reasons, or because you want to run RGeo in a
93
+ # multithreaded environment, you wish to eagerly load RGeo, you may do so
94
+ # with:
95
+ # require 'rgeo/all'
96
+ #
97
+ # You may also eagerly load individual modules:
98
+ # require 'rgeo/features'
99
+ # require 'rgeo/cartesian'
100
+ # require 'rgeo/geos'
101
+ # require 'rgeo/geography'
102
+ # require 'rgeo/geography/simple_mercator'
103
+ # require 'rgeo/geography/simple_spherical'
104
+ # require 'rgeo/wkrep'
105
+ # require 'rgeo/geo_json'
106
+ #
107
+ # === Future modules
108
+ #
109
+ # RGeo is in active development with several additional modules planned
110
+ # for future releases. These include:
61
111
  #
62
112
  # * RGeo::Shapefile, which provides tools for reading and writing
63
113
  # spatial objects in the ESRI shapefile format.
@@ -65,23 +115,23 @@
65
115
  # for developing location-based web applications.
66
116
  # * RGeo::JTS, which provides a Cartesian SFS implementation backed by
67
117
  # the JTS library (which can run natively in JRuby.)
118
+ # * RGeo::Projection, which wraps and provides an API for the proj4
119
+ # library, providing a way to compute arbitrary projections.
68
120
  # * RGeo::Geography extensions to provide highly accurate ellipsoidal
69
- # geometric calculations, and support arbitrary map projections.
121
+ # geometric calculations, and support arbitrary map projections
122
+ # via RGeo::Projection.
70
123
 
71
124
  module RGeo
125
+
126
+ autoload(:Cartesian, 'rgeo/cartesian')
127
+ autoload(:Errors, 'rgeo/errors')
128
+ autoload(:Features, 'rgeo/features')
129
+ autoload(:GeoJSON, 'rgeo/geo_json')
130
+ autoload(:Geography, 'rgeo/geography')
131
+ autoload(:Geos, 'rgeo/geos')
132
+ autoload(:ImplHelpers, 'rgeo/impl_helpers')
133
+ autoload(:WKRep, 'rgeo/wkrep')
134
+
72
135
  end
73
136
 
74
-
75
- # The source files that should be required by default.
76
- paths_ = [
77
- 'version',
78
- 'errors',
79
- 'features',
80
- 'impl_helpers',
81
- 'wkrep',
82
- 'geos',
83
- 'cartesian',
84
- 'geography',
85
- 'geo_json',
86
- ]
87
- paths_.each{ |path_| require "rgeo/#{path_}" }
137
+ require 'rgeo/version'
data/lib/rgeo/all.rb ADDED
@@ -0,0 +1,48 @@
1
+ # -----------------------------------------------------------------------------
2
+ #
3
+ # All RGeo submodules
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
+ # Parent file
38
+ require 'rgeo'
39
+
40
+ # Implementation files
41
+ require 'rgeo/errors'
42
+ require 'rgeo/features'
43
+ require 'rgeo/impl_helpers'
44
+ require 'rgeo/wkrep'
45
+ require 'rgeo/geos'
46
+ require 'rgeo/cartesian'
47
+ require 'rgeo/geography/all'
48
+ require 'rgeo/geo_json'
@@ -34,10 +34,35 @@
34
34
  ;
35
35
 
36
36
 
37
+ # Parent file
38
+ require 'rgeo'
39
+
40
+
37
41
  module RGeo
38
42
 
39
43
 
40
- # The cartesian features module
44
+ # The Cartesian module provides a simple spatial implementation using
45
+ # the Cartesian coordinate system. This is the default implementation
46
+ # used by RGeo if no full-featured implementation, such as Geos, is
47
+ # available.
48
+ #
49
+ # The Cartesian implementation can handle all the SFS 1.1 types, and
50
+ # provides extensions for Z and M coordinates. It also provides WKT
51
+ # and WKB serialization using the WKRep module.
52
+ #
53
+ # However, the Cartesian implementation does not implement many of
54
+ # the more advanced geometric operations. Limitations include:
55
+ # * relational operators such as Features::Geometry#intersects? are
56
+ # not implemented for most types.
57
+ # * relational constructors such as Features::Geometry#union are
58
+ # not implemented for most types.
59
+ # * buffer, boundary, and convex hull calculation are not implemented
60
+ # for most types.
61
+ # * distance and area calculation are not implemented for most types,
62
+ # though length for LineStrings is implemented.
63
+ # * equality and simplicity evaluation are implemented for some types
64
+ # but not all types.
65
+ # * assertions for polygons and multipolygons are not implemented.
41
66
 
42
67
  module Cartesian
43
68
  end
@@ -46,14 +71,14 @@ module RGeo
46
71
  end
47
72
 
48
73
 
49
- # Dependency source files.
50
- paths_ = [
51
- 'features',
52
- 'geos',
53
- 'cartesian/calculations',
54
- 'cartesian/simple_feature_methods',
55
- 'cartesian/simple_feature_classes',
56
- 'cartesian/simple_factory',
57
- 'cartesian/interface',
58
- ]
59
- paths_.each{ |path_| require "rgeo/#{path_}" }
74
+ # Dependency files.
75
+ require 'rgeo/features'
76
+ require 'rgeo/wkrep'
77
+ require 'rgeo/impl_helpers'
78
+
79
+ # Implementation files.
80
+ require 'rgeo/cartesian/calculations'
81
+ require 'rgeo/cartesian/feature_methods'
82
+ require 'rgeo/cartesian/feature_classes'
83
+ require 'rgeo/cartesian/factory'
84
+ require 'rgeo/cartesian/interface'
@@ -121,6 +121,11 @@ module RGeo
121
121
  end
122
122
 
123
123
 
124
+ def length
125
+ ::Math.sqrt(@lensq)
126
+ end
127
+
128
+
124
129
  end
125
130
 
126
131
 
@@ -42,18 +42,14 @@ module RGeo
42
42
  # This class implements the factory for the simple cartesian
43
43
  # implementation.
44
44
 
45
- class SimpleFactory
45
+ class Factory
46
46
 
47
47
  include Features::Factory::Instance
48
48
 
49
49
 
50
50
  # Create a new simple cartesian factory.
51
51
  #
52
- # Options supported are:
53
- #
54
- # <tt>:srid</tt>::
55
- # The SRID reported by features created by this factory.
56
- # Default is 0.
52
+ # See ::RGeo::Cartesian::simple_factory for a list of supported options.
57
53
 
58
54
  def initialize(opts_={})
59
55
  @srid = opts_[:srid].to_i
@@ -94,82 +90,83 @@ module RGeo
94
90
  # See ::RGeo::Features::Factory#parse_wkt
95
91
 
96
92
  def parse_wkt(str_)
97
- WKRep::WKTParser.new(self, :support_higher_dimensions => true).parse(str_)
93
+ ::RGeo::WKRep::WKTParser.new(:default_factory => self).parse(str_)
98
94
  end
99
95
 
100
96
 
101
97
  # See ::RGeo::Features::Factory#parse_wkb
102
98
 
103
99
  def parse_wkb(str_)
104
- WKRep::WKBParser.new(self).parse(str_)
100
+ ::RGeo::WKRep::WKBParser.new(:default_factory => self).parse(str_)
105
101
  end
106
102
 
107
103
 
108
104
  # See ::RGeo::Features::Factory#point
109
105
 
110
106
  def point(x_, y_, *extra_)
111
- SimplePointImpl.new(self, x_, y_, *extra_) rescue nil
107
+ PointImpl.new(self, x_, y_, *extra_) rescue nil
112
108
  end
113
109
 
114
110
 
115
111
  # See ::RGeo::Features::Factory#line_string
116
112
 
117
113
  def line_string(points_)
118
- SimpleLineStringImpl.new(self, points_) rescue nil
114
+ LineStringImpl.new(self, points_) rescue nil
119
115
  end
120
116
 
121
117
 
122
118
  # See ::RGeo::Features::Factory#line
123
119
 
124
120
  def line(start_, end_)
125
- SimpleLineImpl.new(self, start_, end_) rescue nil
121
+ LineImpl.new(self, start_, end_) rescue nil
126
122
  end
127
123
 
128
124
 
129
125
  # See ::RGeo::Features::Factory#linear_ring
130
126
 
131
127
  def linear_ring(points_)
132
- SimpleLinearRingImpl.new(self, points_) rescue nil
128
+ LinearRingImpl.new(self, points_) rescue nil
133
129
  end
134
130
 
135
131
 
136
132
  # See ::RGeo::Features::Factory#polygon
137
133
 
138
134
  def polygon(outer_ring_, inner_rings_=nil)
139
- SimplePolygonImpl.new(self, outer_ring_, inner_rings_) rescue nil
135
+ PolygonImpl.new(self, outer_ring_, inner_rings_) rescue nil
140
136
  end
141
137
 
142
138
 
143
139
  # See ::RGeo::Features::Factory#collection
144
140
 
145
141
  def collection(elems_)
146
- SimpleGeometryCollectionImpl.new(self, elems_) rescue nil
142
+ GeometryCollectionImpl.new(self, elems_) rescue nil
147
143
  end
148
144
 
149
145
 
150
146
  # See ::RGeo::Features::Factory#multi_point
151
147
 
152
148
  def multi_point(elems_)
153
- SimpleMultiPointImpl.new(self, elems_) rescue nil
149
+ MultiPointImpl.new(self, elems_) rescue nil
154
150
  end
155
151
 
156
152
 
157
153
  # See ::RGeo::Features::Factory#multi_line_string
158
154
 
159
155
  def multi_line_string(elems_)
160
- SimpleMultiLineStringImpl.new(self, elems_) rescue nil
156
+ MultiLineStringImpl.new(self, elems_) rescue nil
161
157
  end
162
158
 
163
159
 
164
160
  # See ::RGeo::Features::Factory#multi_polygon
165
161
 
166
162
  def multi_polygon(elems_)
167
- SimpleMultiPolygonImpl.new(self, elems_) rescue nil
163
+ MultiPolygonImpl.new(self, elems_) rescue nil
168
164
  end
169
165
 
170
166
 
171
167
  end
172
168
 
169
+
173
170
  end
174
171
 
175
172
  end
@@ -39,13 +39,13 @@ module RGeo
39
39
  module Cartesian
40
40
 
41
41
 
42
- class SimplePointImpl # :nodoc:
42
+ class PointImpl # :nodoc:
43
43
 
44
44
 
45
- include Features::Point
46
- include ImplHelpers::BasicGeometryMethods
47
- include Cartesian::SimpleGeometryMethods
48
- include ImplHelpers::BasicPointMethods
45
+ include ::RGeo::Features::Point
46
+ include ::RGeo::ImplHelpers::BasicGeometryMethods
47
+ include ::RGeo::Cartesian::GeometryMethods
48
+ include ::RGeo::ImplHelpers::BasicPointMethods
49
49
 
50
50
 
51
51
  def _validate_geometry
@@ -63,9 +63,9 @@ module RGeo
63
63
 
64
64
 
65
65
  def distance(rhs_)
66
- rhs_ = Features.cast(rhs_, @factory)
66
+ rhs_ = ::RGeo::Features.cast(rhs_, @factory)
67
67
  case rhs_
68
- when SimplePointImpl
68
+ when PointImpl
69
69
  dx_ = @x - rhs_.x
70
70
  dy_ = @y - rhs_.y
71
71
  ::Math.sqrt(dx_ * dx_ + dy_ * dy_)
@@ -78,105 +78,105 @@ module RGeo
78
78
  end
79
79
 
80
80
 
81
- class SimpleLineStringImpl # :nodoc:
81
+ class LineStringImpl # :nodoc:
82
82
 
83
83
 
84
- include Features::LineString
85
- include ImplHelpers::BasicGeometryMethods
86
- include Cartesian::SimpleGeometryMethods
87
- include ImplHelpers::BasicLineStringMethods
88
- include Cartesian::SimpleLineStringMethods
84
+ include ::RGeo::Features::LineString
85
+ include ::RGeo::ImplHelpers::BasicGeometryMethods
86
+ include ::RGeo::Cartesian::GeometryMethods
87
+ include ::RGeo::ImplHelpers::BasicLineStringMethods
88
+ include ::RGeo::Cartesian::LineStringMethods
89
89
 
90
90
 
91
91
  end
92
92
 
93
93
 
94
- class SimpleLineImpl # :nodoc:
94
+ class LineImpl # :nodoc:
95
95
 
96
96
 
97
- include Features::Line
98
- include ImplHelpers::BasicGeometryMethods
99
- include Cartesian::SimpleGeometryMethods
100
- include ImplHelpers::BasicLineStringMethods
101
- include Cartesian::SimpleLineStringMethods
102
- include ImplHelpers::BasicLineMethods
97
+ include ::RGeo::Features::Line
98
+ include ::RGeo::ImplHelpers::BasicGeometryMethods
99
+ include ::RGeo::Cartesian::GeometryMethods
100
+ include ::RGeo::ImplHelpers::BasicLineStringMethods
101
+ include ::RGeo::Cartesian::LineStringMethods
102
+ include ::RGeo::ImplHelpers::BasicLineMethods
103
103
 
104
104
 
105
105
  end
106
106
 
107
107
 
108
- class SimpleLinearRingImpl # :nodoc:
108
+ class LinearRingImpl # :nodoc:
109
109
 
110
110
 
111
- include Features::Line
112
- include ImplHelpers::BasicGeometryMethods
113
- include Cartesian::SimpleGeometryMethods
114
- include ImplHelpers::BasicLineStringMethods
115
- include Cartesian::SimpleLineStringMethods
116
- include ImplHelpers::BasicLinearRingMethods
111
+ include ::RGeo::Features::Line
112
+ include ::RGeo::ImplHelpers::BasicGeometryMethods
113
+ include ::RGeo::Cartesian::GeometryMethods
114
+ include ::RGeo::ImplHelpers::BasicLineStringMethods
115
+ include ::RGeo::Cartesian::LineStringMethods
116
+ include ::RGeo::ImplHelpers::BasicLinearRingMethods
117
117
 
118
118
 
119
119
  end
120
120
 
121
121
 
122
- class SimplePolygonImpl # :nodoc:
122
+ class PolygonImpl # :nodoc:
123
123
 
124
124
 
125
- include Features::Polygon
126
- include ImplHelpers::BasicGeometryMethods
127
- include Cartesian::SimpleGeometryMethods
128
- include ImplHelpers::BasicPolygonMethods
125
+ include ::RGeo::Features::Polygon
126
+ include ::RGeo::ImplHelpers::BasicGeometryMethods
127
+ include ::RGeo::Cartesian::GeometryMethods
128
+ include ::RGeo::ImplHelpers::BasicPolygonMethods
129
129
 
130
130
 
131
131
  end
132
132
 
133
133
 
134
- class SimpleGeometryCollectionImpl # :nodoc:
134
+ class GeometryCollectionImpl # :nodoc:
135
135
 
136
136
 
137
- include Features::GeometryCollection
138
- include ImplHelpers::BasicGeometryMethods
139
- include Cartesian::SimpleGeometryMethods
140
- include ImplHelpers::BasicGeometryCollectionMethods
137
+ include ::RGeo::Features::GeometryCollection
138
+ include ::RGeo::ImplHelpers::BasicGeometryMethods
139
+ include ::RGeo::Cartesian::GeometryMethods
140
+ include ::RGeo::ImplHelpers::BasicGeometryCollectionMethods
141
141
 
142
142
 
143
143
  end
144
144
 
145
145
 
146
- class SimpleMultiPointImpl # :nodoc:
146
+ class MultiPointImpl # :nodoc:
147
147
 
148
148
 
149
- include Features::GeometryCollection
150
- include ImplHelpers::BasicGeometryMethods
151
- include Cartesian::SimpleGeometryMethods
152
- include ImplHelpers::BasicGeometryCollectionMethods
153
- include ImplHelpers::BasicMultiPointMethods
149
+ include ::RGeo::Features::GeometryCollection
150
+ include ::RGeo::ImplHelpers::BasicGeometryMethods
151
+ include ::RGeo::Cartesian::GeometryMethods
152
+ include ::RGeo::ImplHelpers::BasicGeometryCollectionMethods
153
+ include ::RGeo::ImplHelpers::BasicMultiPointMethods
154
154
 
155
155
 
156
156
  end
157
157
 
158
158
 
159
- class SimpleMultiLineStringImpl # :nodoc:
159
+ class MultiLineStringImpl # :nodoc:
160
160
 
161
161
 
162
- include Features::GeometryCollection
163
- include ImplHelpers::BasicGeometryMethods
164
- include Cartesian::SimpleGeometryMethods
165
- include ImplHelpers::BasicGeometryCollectionMethods
166
- include ImplHelpers::BasicMultiLineStringMethods
162
+ include ::RGeo::Features::GeometryCollection
163
+ include ::RGeo::ImplHelpers::BasicGeometryMethods
164
+ include ::RGeo::Cartesian::GeometryMethods
165
+ include ::RGeo::ImplHelpers::BasicGeometryCollectionMethods
166
+ include ::RGeo::ImplHelpers::BasicMultiLineStringMethods
167
167
 
168
168
 
169
169
  end
170
170
 
171
171
 
172
- class SimpleMultiPolygonImpl # :nodoc:
172
+ class MultiPolygonImpl # :nodoc:
173
173
 
174
174
 
175
- include Features::GeometryCollection
176
- include ImplHelpers::BasicGeometryMethods
177
- include Cartesian::SimpleGeometryMethods
178
- include ImplHelpers::BasicGeometryCollectionMethods
179
- include ImplHelpers::BasicMultiPolygonMethods
175
+ include ::RGeo::Features::GeometryCollection
176
+ include ::RGeo::ImplHelpers::BasicGeometryMethods
177
+ include ::RGeo::Cartesian::GeometryMethods
178
+ include ::RGeo::ImplHelpers::BasicGeometryCollectionMethods
179
+ include ::RGeo::ImplHelpers::BasicMultiPolygonMethods
180
180
 
181
181
 
182
182
  end