rgeo 0.4.0 → 0.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (176) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE.txt +29 -0
  3. data/ext/geos_c_impl/Makefile_2.2.3 +260 -0
  4. data/ext/geos_c_impl/coordinates.c +65 -0
  5. data/ext/geos_c_impl/coordinates.h +2 -0
  6. data/ext/geos_c_impl/extconf.rb +19 -43
  7. data/ext/geos_c_impl/geometry.c +24 -0
  8. data/ext/geos_c_impl/geometry_collection.c +99 -1
  9. data/ext/geos_c_impl/geos_c_impl_2.2.3.bundle +0 -0
  10. data/ext/geos_c_impl/line_string.c +38 -0
  11. data/ext/geos_c_impl/mkmf.log +123 -0
  12. data/ext/geos_c_impl/point.c +27 -0
  13. data/ext/geos_c_impl/polygon.c +26 -0
  14. data/ext/proj4_c_impl/Makefile_2.2.3 +260 -0
  15. data/ext/proj4_c_impl/extconf.rb +32 -32
  16. data/ext/proj4_c_impl/mkmf.log +47 -0
  17. data/ext/proj4_c_impl/proj4_c_impl_2.2.3.bundle +0 -0
  18. data/lib/rgeo.rb +10 -11
  19. data/lib/rgeo/cartesian.rb +7 -12
  20. data/lib/rgeo/cartesian/analysis.rb +13 -26
  21. data/lib/rgeo/cartesian/bounding_box.rb +45 -114
  22. data/lib/rgeo/cartesian/calculations.rb +3 -21
  23. data/lib/rgeo/cartesian/factory.rb +101 -122
  24. data/lib/rgeo/cartesian/feature_classes.rb +9 -59
  25. data/lib/rgeo/cartesian/feature_methods.rb +15 -45
  26. data/lib/rgeo/cartesian/interface.rb +6 -17
  27. data/lib/rgeo/coord_sys.rb +9 -15
  28. data/lib/rgeo/coord_sys/cs/entities.rb +84 -330
  29. data/lib/rgeo/coord_sys/cs/factories.rb +2 -32
  30. data/lib/rgeo/coord_sys/cs/wkt_parser.rb +52 -80
  31. data/lib/rgeo/coord_sys/proj4.rb +28 -67
  32. data/lib/rgeo/coord_sys/proj4_c_impl.bundle +0 -0
  33. data/lib/rgeo/coord_sys/srs_database/interface.rb +4 -24
  34. data/lib/rgeo/coord_sys/srs_database/proj4_data.rb +20 -38
  35. data/lib/rgeo/coord_sys/srs_database/sr_org.rb +6 -22
  36. data/lib/rgeo/coord_sys/srs_database/url_reader.rb +6 -21
  37. data/lib/rgeo/error.rb +0 -6
  38. data/lib/rgeo/feature.rb +18 -23
  39. data/lib/rgeo/feature/curve.rb +0 -14
  40. data/lib/rgeo/feature/factory.rb +13 -38
  41. data/lib/rgeo/feature/factory_generator.rb +4 -16
  42. data/lib/rgeo/feature/geometry.rb +18 -60
  43. data/lib/rgeo/feature/geometry_collection.rb +3 -17
  44. data/lib/rgeo/feature/line.rb +0 -10
  45. data/lib/rgeo/feature/line_string.rb +1 -13
  46. data/lib/rgeo/feature/linear_ring.rb +0 -9
  47. data/lib/rgeo/feature/mixins.rb +11 -36
  48. data/lib/rgeo/feature/multi_curve.rb +0 -11
  49. data/lib/rgeo/feature/multi_line_string.rb +0 -9
  50. data/lib/rgeo/feature/multi_point.rb +0 -9
  51. data/lib/rgeo/feature/multi_polygon.rb +0 -9
  52. data/lib/rgeo/feature/multi_surface.rb +0 -12
  53. data/lib/rgeo/feature/point.rb +0 -13
  54. data/lib/rgeo/feature/polygon.rb +1 -14
  55. data/lib/rgeo/feature/surface.rb +0 -12
  56. data/lib/rgeo/feature/types.rb +19 -61
  57. data/lib/rgeo/geographic.rb +10 -15
  58. data/lib/rgeo/geographic/factory.rb +126 -147
  59. data/lib/rgeo/geographic/interface.rb +67 -81
  60. data/lib/rgeo/geographic/proj4_projector.rb +13 -37
  61. data/lib/rgeo/geographic/projected_feature_classes.rb +7 -66
  62. data/lib/rgeo/geographic/projected_feature_methods.rb +15 -80
  63. data/lib/rgeo/geographic/projected_window.rb +15 -67
  64. data/lib/rgeo/geographic/simple_mercator_projector.rb +32 -56
  65. data/lib/rgeo/geographic/spherical_feature_classes.rb +9 -68
  66. data/lib/rgeo/geographic/spherical_feature_methods.rb +18 -51
  67. data/lib/rgeo/geographic/spherical_math.rb +26 -51
  68. data/lib/rgeo/geos.rb +23 -20
  69. data/lib/rgeo/geos/capi_factory.rb +125 -131
  70. data/lib/rgeo/geos/capi_feature_classes.rb +21 -88
  71. data/lib/rgeo/geos/ffi_factory.rb +90 -143
  72. data/lib/rgeo/geos/ffi_feature_classes.rb +8 -63
  73. data/lib/rgeo/geos/ffi_feature_methods.rb +46 -162
  74. data/lib/rgeo/geos/geos_c_impl.bundle +0 -0
  75. data/lib/rgeo/geos/interface.rb +4 -23
  76. data/lib/rgeo/geos/utils.rb +4 -19
  77. data/lib/rgeo/geos/zm_factory.rb +82 -131
  78. data/lib/rgeo/geos/zm_feature_classes.rb +8 -63
  79. data/lib/rgeo/geos/zm_feature_methods.rb +34 -107
  80. data/lib/rgeo/impl_helper.rb +8 -13
  81. data/lib/rgeo/impl_helper/basic_geometry_collection_methods.rb +27 -71
  82. data/lib/rgeo/impl_helper/basic_geometry_methods.rb +10 -28
  83. data/lib/rgeo/impl_helper/basic_line_string_methods.rb +21 -57
  84. data/lib/rgeo/impl_helper/basic_point_methods.rb +12 -30
  85. data/lib/rgeo/impl_helper/basic_polygon_methods.rb +9 -28
  86. data/lib/rgeo/impl_helper/math.rb +4 -10
  87. data/lib/rgeo/impl_helper/utils.rb +2 -10
  88. data/lib/rgeo/version.rb +1 -1
  89. data/lib/rgeo/wkrep.rb +4 -9
  90. data/lib/rgeo/wkrep/wkb_generator.rb +22 -46
  91. data/lib/rgeo/wkrep/wkb_parser.rb +25 -52
  92. data/lib/rgeo/wkrep/wkt_generator.rb +39 -69
  93. data/lib/rgeo/wkrep/wkt_parser.rb +52 -89
  94. data/lib/rgeo/yaml.rb +1 -7
  95. data/test/common/factory_tests.rb +4 -19
  96. data/test/common/geometry_collection_tests.rb +6 -39
  97. data/test/common/line_string_tests.rb +10 -39
  98. data/test/common/multi_line_string_tests.rb +10 -30
  99. data/test/common/multi_point_tests.rb +15 -34
  100. data/test/common/multi_polygon_tests.rb +26 -28
  101. data/test/common/point_tests.rb +37 -59
  102. data/test/common/polygon_tests.rb +16 -25
  103. data/test/coord_sys/tc_ogc_cs.rb +151 -186
  104. data/test/coord_sys/tc_proj4.rb +35 -60
  105. data/test/coord_sys/tc_proj4_srs_data.rb +15 -24
  106. data/test/coord_sys/tc_sr_org.rb +11 -19
  107. data/test/coord_sys/tc_url_reader.rb +13 -23
  108. data/test/geos_capi/tc_factory.rb +7 -16
  109. data/test/geos_capi/tc_geometry_collection.rb +6 -14
  110. data/test/geos_capi/tc_line_string.rb +7 -15
  111. data/test/geos_capi/tc_misc.rb +26 -41
  112. data/test/geos_capi/tc_multi_line_string.rb +6 -14
  113. data/test/geos_capi/tc_multi_point.rb +7 -15
  114. data/test/geos_capi/tc_multi_polygon.rb +8 -18
  115. data/test/geos_capi/tc_parsing_unparsing.rb +11 -21
  116. data/test/geos_capi/tc_point.rb +12 -26
  117. data/test/geos_capi/tc_polygon.rb +52 -17
  118. data/test/geos_capi/tc_zmfactory.rb +7 -18
  119. data/test/geos_ffi/tc_factory.rb +7 -16
  120. data/test/geos_ffi/tc_geometry_collection.rb +7 -15
  121. data/test/geos_ffi/tc_line_string.rb +7 -15
  122. data/test/geos_ffi/tc_misc.rb +8 -18
  123. data/test/geos_ffi/tc_multi_line_string.rb +7 -15
  124. data/test/geos_ffi/tc_multi_point.rb +8 -16
  125. data/test/geos_ffi/tc_multi_polygon.rb +9 -18
  126. data/test/geos_ffi/tc_parsing_unparsing.rb +14 -24
  127. data/test/geos_ffi/tc_point.rb +13 -28
  128. data/test/geos_ffi/tc_polygon.rb +7 -17
  129. data/test/geos_ffi/tc_zmfactory.rb +8 -19
  130. data/test/projected_geographic/tc_factory.rb +7 -15
  131. data/test/projected_geographic/tc_geometry_collection.rb +7 -15
  132. data/test/projected_geographic/tc_line_string.rb +7 -15
  133. data/test/projected_geographic/tc_multi_line_string.rb +7 -16
  134. data/test/projected_geographic/tc_multi_point.rb +8 -17
  135. data/test/projected_geographic/tc_multi_polygon.rb +8 -16
  136. data/test/projected_geographic/tc_point.rb +11 -23
  137. data/test/projected_geographic/tc_polygon.rb +7 -15
  138. data/test/simple_cartesian/tc_calculations.rb +6 -22
  139. data/test/simple_cartesian/tc_factory.rb +7 -16
  140. data/test/simple_cartesian/tc_geometry_collection.rb +6 -15
  141. data/test/simple_cartesian/tc_line_string.rb +6 -15
  142. data/test/simple_cartesian/tc_multi_line_string.rb +6 -15
  143. data/test/simple_cartesian/tc_multi_point.rb +7 -16
  144. data/test/simple_cartesian/tc_multi_polygon.rb +7 -16
  145. data/test/simple_cartesian/tc_point.rb +10 -21
  146. data/test/simple_cartesian/tc_polygon.rb +6 -15
  147. data/test/simple_mercator/tc_factory.rb +6 -14
  148. data/test/simple_mercator/tc_geometry_collection.rb +6 -14
  149. data/test/simple_mercator/tc_line_string.rb +6 -14
  150. data/test/simple_mercator/tc_multi_line_string.rb +6 -15
  151. data/test/simple_mercator/tc_multi_point.rb +7 -16
  152. data/test/simple_mercator/tc_multi_polygon.rb +7 -15
  153. data/test/simple_mercator/tc_point.rb +11 -24
  154. data/test/simple_mercator/tc_polygon.rb +6 -14
  155. data/test/simple_mercator/tc_window.rb +10 -34
  156. data/test/spherical_geographic/tc_calculations.rb +5 -32
  157. data/test/spherical_geographic/tc_factory.rb +6 -15
  158. data/test/spherical_geographic/tc_geometry_collection.rb +6 -15
  159. data/test/spherical_geographic/tc_line_string.rb +6 -15
  160. data/test/spherical_geographic/tc_multi_line_string.rb +6 -15
  161. data/test/spherical_geographic/tc_multi_point.rb +7 -16
  162. data/test/spherical_geographic/tc_multi_polygon.rb +7 -16
  163. data/test/spherical_geographic/tc_point.rb +10 -22
  164. data/test/spherical_geographic/tc_polygon.rb +6 -15
  165. data/test/tc_cartesian_analysis.rb +4 -16
  166. data/test/tc_cartesian_bbox.rb +7 -21
  167. data/test/tc_mixins.rb +8 -25
  168. data/test/tc_oneoff.rb +5 -13
  169. data/test/tc_types.rb +7 -16
  170. data/test/wkrep/tc_wkb_generator.rb +63 -97
  171. data/test/wkrep/tc_wkb_parser.rb +63 -100
  172. data/test/wkrep/tc_wkt_generator.rb +54 -92
  173. data/test/wkrep/tc_wkt_parser.rb +84 -133
  174. metadata +39 -9
  175. data/lib/rgeo/coord_sys/srs_database/active_record_table.rb +0 -166
  176. data/test/coord_sys/tc_active_record_table.rb +0 -79
@@ -4,37 +4,28 @@
4
4
  #
5
5
  # -----------------------------------------------------------------------------
6
6
 
7
- require 'test/unit'
8
- require 'rgeo'
9
-
10
- require ::File.expand_path('../common/line_string_tests.rb', ::File.dirname(__FILE__))
7
+ require "test/unit"
8
+ require "rgeo"
11
9
 
10
+ require ::File.expand_path("../common/line_string_tests.rb", ::File.dirname(__FILE__))
12
11
 
13
12
  module RGeo
14
- module Tests # :nodoc:
15
- module SphericalGeographic # :nodoc:
16
-
17
- class TestLineString < ::Test::Unit::TestCase # :nodoc:
18
-
19
-
13
+ module Tests # :nodoc:
14
+ module SphericalGeographic # :nodoc:
15
+ class TestLineString < ::Test::Unit::TestCase # :nodoc:
20
16
  def setup
21
17
  @factory = ::RGeo::Geographic.spherical_factory
22
18
  end
23
19
 
24
-
25
20
  include ::RGeo::Tests::Common::LineStringTests
26
21
 
27
-
28
22
  undef_method :test_fully_equal
29
23
  undef_method :test_geometrically_equal_but_different_type
30
24
  undef_method :test_geometrically_equal_but_different_type2
31
25
  undef_method :test_geometrically_equal_but_different_overlap
32
26
  undef_method :test_empty_equal
33
27
  undef_method :test_not_equal
34
-
35
-
36
28
  end
37
-
38
29
  end
39
30
  end
40
31
  end
@@ -4,35 +4,26 @@
4
4
  #
5
5
  # -----------------------------------------------------------------------------
6
6
 
7
- require 'test/unit'
8
- require 'rgeo'
9
-
10
- require ::File.expand_path('../common/multi_line_string_tests.rb', ::File.dirname(__FILE__))
7
+ require "test/unit"
8
+ require "rgeo"
11
9
 
10
+ require ::File.expand_path("../common/multi_line_string_tests.rb", ::File.dirname(__FILE__))
12
11
 
13
12
  module RGeo
14
- module Tests # :nodoc:
15
- module SphericalGeographic # :nodoc:
16
-
17
- class TestMultiLineString < ::Test::Unit::TestCase # :nodoc:
18
-
19
-
13
+ module Tests # :nodoc:
14
+ module SphericalGeographic # :nodoc:
15
+ class TestMultiLineString < ::Test::Unit::TestCase # :nodoc:
20
16
  def create_factory
21
17
  @factory = ::RGeo::Geographic.spherical_factory
22
18
  end
23
19
 
24
-
25
20
  include ::RGeo::Tests::Common::MultiLineStringTests
26
21
 
27
-
28
22
  undef_method :test_fully_equal
29
23
  undef_method :test_geometrically_equal
30
24
  undef_method :test_not_equal
31
25
  undef_method :test_length
32
-
33
-
34
26
  end
35
-
36
27
  end
37
28
  end
38
29
  end
@@ -4,37 +4,28 @@
4
4
  #
5
5
  # -----------------------------------------------------------------------------
6
6
 
7
- require 'test/unit'
8
- require 'rgeo'
9
-
10
- require ::File.expand_path('../common/multi_point_tests.rb', ::File.dirname(__FILE__))
7
+ require "test/unit"
8
+ require "rgeo"
11
9
 
10
+ require ::File.expand_path("../common/multi_point_tests.rb", ::File.dirname(__FILE__))
12
11
 
13
12
  module RGeo
14
- module Tests # :nodoc:
15
- module SphericalGeographic # :nodoc:
16
-
17
- class TestMultiPoint < ::Test::Unit::TestCase # :nodoc:
18
-
19
-
20
- def create_factory(opts_={})
13
+ module Tests # :nodoc:
14
+ module SphericalGeographic # :nodoc:
15
+ class TestMultiPoint < ::Test::Unit::TestCase # :nodoc:
16
+ def create_factory(opts_ = {})
21
17
  @factory = ::RGeo::Geographic.spherical_factory(opts_)
22
18
  end
23
19
 
24
-
25
20
  include ::RGeo::Tests::Common::MultiPointTests
26
21
 
27
-
28
22
  undef_method :test_fully_equal
29
23
  undef_method :test_geometrically_equal
30
24
  undef_method :test_not_equal
31
25
  undef_method :test_union
32
26
  undef_method :test_difference
33
27
  undef_method :test_intersection
34
-
35
-
36
28
  end
37
-
38
29
  end
39
30
  end
40
31
  end
@@ -4,37 +4,28 @@
4
4
  #
5
5
  # -----------------------------------------------------------------------------
6
6
 
7
- require 'test/unit'
8
- require 'rgeo'
9
-
10
- require ::File.expand_path('../common/multi_polygon_tests.rb', ::File.dirname(__FILE__))
7
+ require "test/unit"
8
+ require "rgeo"
11
9
 
10
+ require ::File.expand_path("../common/multi_polygon_tests.rb", ::File.dirname(__FILE__))
12
11
 
13
12
  module RGeo
14
- module Tests # :nodoc:
15
- module SphericalGeographic # :nodoc:
16
-
17
- class TestMultiPolygon < ::Test::Unit::TestCase # :nodoc:
18
-
19
-
13
+ module Tests # :nodoc:
14
+ module SphericalGeographic # :nodoc:
15
+ class TestMultiPolygon < ::Test::Unit::TestCase # :nodoc:
20
16
  def create_factories
21
17
  @factory = ::RGeo::Geographic.spherical_factory
22
- @lenient_factory = ::RGeo::Geographic.spherical_factory(:lenient_multi_polygon_assertions => true)
18
+ @lenient_factory = ::RGeo::Geographic.spherical_factory(lenient_multi_polygon_assertions: true)
23
19
  end
24
20
 
25
-
26
21
  include ::RGeo::Tests::Common::MultiPolygonTests
27
22
 
28
-
29
23
  undef_method :test_creation_wrong_type
30
24
  undef_method :test_creation_overlapping
31
25
  undef_method :test_creation_connected
32
26
  undef_method :test_equal
33
27
  undef_method :test_not_equal
34
-
35
-
36
28
  end
37
-
38
29
  end
39
30
  end
40
31
  end
@@ -4,30 +4,24 @@
4
4
  #
5
5
  # -----------------------------------------------------------------------------
6
6
 
7
- require 'test/unit'
8
- require 'rgeo'
9
-
10
- require ::File.expand_path('../common/point_tests.rb', ::File.dirname(__FILE__))
7
+ require "test/unit"
8
+ require "rgeo"
11
9
 
10
+ require ::File.expand_path("../common/point_tests.rb", ::File.dirname(__FILE__))
12
11
 
13
12
  module RGeo
14
- module Tests # :nodoc:
15
- module SphericalGeographic # :nodoc:
16
-
17
- class TestPoint < ::Test::Unit::TestCase # :nodoc:
18
-
19
-
13
+ module Tests # :nodoc:
14
+ module SphericalGeographic # :nodoc:
15
+ class TestPoint < ::Test::Unit::TestCase # :nodoc:
20
16
  def setup
21
- @factory = ::RGeo::Geographic.spherical_factory(:buffer_resolution => 8)
22
- @zfactory = ::RGeo::Geographic.spherical_factory(:has_z_coordinate => true)
23
- @mfactory = ::RGeo::Geographic.spherical_factory(:has_m_coordinate => true)
24
- @zmfactory = ::RGeo::Geographic.spherical_factory(:has_z_coordinate => true, :has_m_coordinate => true)
17
+ @factory = ::RGeo::Geographic.spherical_factory(buffer_resolution: 8)
18
+ @zfactory = ::RGeo::Geographic.spherical_factory(has_z_coordinate: true)
19
+ @mfactory = ::RGeo::Geographic.spherical_factory(has_m_coordinate: true)
20
+ @zmfactory = ::RGeo::Geographic.spherical_factory(has_z_coordinate: true, has_m_coordinate: true)
25
21
  end
26
22
 
27
-
28
23
  include ::RGeo::Tests::Common::PointTests
29
24
 
30
-
31
25
  def test_latlon
32
26
  point_ = @factory.point(21, -22)
33
27
  assert_equal(21, point_.longitude)
@@ -51,7 +45,6 @@ module RGeo
51
45
  assert_equal(4055, point_.srid)
52
46
  end
53
47
 
54
-
55
48
  def test_distance
56
49
  point1_ = @factory.point(0, 10)
57
50
  point2_ = @factory.point(0, 10)
@@ -60,7 +53,6 @@ module RGeo
60
53
  assert_in_delta(::Math::PI / 6.0 * ::RGeo::Geographic::SphericalMath::RADIUS, point1_.distance(point3_), 0.0001)
61
54
  end
62
55
 
63
-
64
56
  def test_floating_point_perturbation
65
57
  # A naive way of wrapping longitudes to [-180,180] might cause
66
58
  # perturbation due to floating point errors. Make sure this
@@ -69,7 +61,6 @@ module RGeo
69
61
  assert_equal(-98.747534, point_.x)
70
62
  end
71
63
 
72
-
73
64
  undef_method :test_disjoint
74
65
  undef_method :test_intersects
75
66
  undef_method :test_touches
@@ -81,10 +72,7 @@ module RGeo
81
72
  undef_method :test_union
82
73
  undef_method :test_difference
83
74
  undef_method :test_sym_difference
84
-
85
-
86
75
  end
87
-
88
76
  end
89
77
  end
90
78
  end
@@ -4,34 +4,25 @@
4
4
  #
5
5
  # -----------------------------------------------------------------------------
6
6
 
7
- require 'test/unit'
8
- require 'rgeo'
9
-
10
- require ::File.expand_path('../common/polygon_tests.rb', ::File.dirname(__FILE__))
7
+ require "test/unit"
8
+ require "rgeo"
11
9
 
10
+ require ::File.expand_path("../common/polygon_tests.rb", ::File.dirname(__FILE__))
12
11
 
13
12
  module RGeo
14
- module Tests # :nodoc:
15
- module SphericalGeographic # :nodoc:
16
-
17
- class TestPolygon < ::Test::Unit::TestCase # :nodoc:
18
-
19
-
13
+ module Tests # :nodoc:
14
+ module SphericalGeographic # :nodoc:
15
+ class TestPolygon < ::Test::Unit::TestCase # :nodoc:
20
16
  def setup
21
17
  @factory = ::RGeo::Geographic.spherical_factory
22
18
  end
23
19
 
24
-
25
20
  include ::RGeo::Tests::Common::PolygonTests
26
21
 
27
-
28
22
  undef_method :test_fully_equal
29
23
  undef_method :test_geometrically_equal_but_ordered_different
30
24
  undef_method :test_geometrically_equal_but_different_directions
31
-
32
-
33
25
  end
34
-
35
26
  end
36
27
  end
37
28
  end
@@ -4,21 +4,16 @@
4
4
  #
5
5
  # -----------------------------------------------------------------------------
6
6
 
7
- require 'test/unit'
8
- require 'rgeo'
9
-
7
+ require "test/unit"
8
+ require "rgeo"
10
9
 
11
10
  module RGeo
12
- module Tests # :nodoc:
13
-
14
- class TestCartesianAnalysis < ::Test::Unit::TestCase # :nodoc:
15
-
16
-
11
+ module Tests # :nodoc:
12
+ class TestCartesianAnalysis < ::Test::Unit::TestCase # :nodoc:
17
13
  def setup
18
14
  @factory = ::RGeo::Cartesian.simple_factory
19
15
  end
20
16
 
21
-
22
17
  def test_ring_direction_clockwise_triangle
23
18
  p1_ = @factory.point(1, 1)
24
19
  p2_ = @factory.point(2, 4)
@@ -27,7 +22,6 @@ module RGeo
27
22
  assert_equal(-1, ::RGeo::Cartesian::Analysis.ring_direction(ring_))
28
23
  end
29
24
 
30
-
31
25
  def test_ring_direction_counterclockwise_triangle
32
26
  p1_ = @factory.point(1, 1)
33
27
  p2_ = @factory.point(2, 4)
@@ -36,7 +30,6 @@ module RGeo
36
30
  assert_equal(1, ::RGeo::Cartesian::Analysis.ring_direction(ring_))
37
31
  end
38
32
 
39
-
40
33
  def test_ring_direction_clockwise_puckered_quad
41
34
  p1_ = @factory.point(1, 1)
42
35
  p2_ = @factory.point(2, 6)
@@ -46,7 +39,6 @@ module RGeo
46
39
  assert_equal(-1, ::RGeo::Cartesian::Analysis.ring_direction(ring_))
47
40
  end
48
41
 
49
-
50
42
  def test_ring_direction_counterclockwise_puckered_quad
51
43
  p1_ = @factory.point(1, 1)
52
44
  p2_ = @factory.point(2, 6)
@@ -56,7 +48,6 @@ module RGeo
56
48
  assert_equal(1, ::RGeo::Cartesian::Analysis.ring_direction(ring_))
57
49
  end
58
50
 
59
-
60
51
  def test_ring_direction_counterclockwise_near_circle
61
52
  p1_ = @factory.point(0, -3)
62
53
  p2_ = @factory.point(2, -2)
@@ -69,9 +60,6 @@ module RGeo
69
60
  ring_ = @factory.line_string([p1_, p2_, p3_, p4_, p5_, p6_, p7_, p8_, p1_])
70
61
  assert_equal(1, ::RGeo::Cartesian::Analysis.ring_direction(ring_))
71
62
  end
72
-
73
-
74
63
  end
75
-
76
64
  end
77
65
  end
@@ -4,21 +4,16 @@
4
4
  #
5
5
  # -----------------------------------------------------------------------------
6
6
 
7
- require 'test/unit'
8
- require 'rgeo'
9
-
7
+ require "test/unit"
8
+ require "rgeo"
10
9
 
11
10
  module RGeo
12
- module Tests # :nodoc:
13
-
14
- class TestCartesianBBox < ::Test::Unit::TestCase # :nodoc:
15
-
16
-
11
+ module Tests # :nodoc:
12
+ class TestCartesianBBox < ::Test::Unit::TestCase # :nodoc:
17
13
  def setup
18
14
  @factory = ::RGeo::Cartesian.factory
19
15
  end
20
16
 
21
-
22
17
  def test_empty_bbox
23
18
  bbox_ = ::RGeo::Cartesian::BoundingBox.new(@factory)
24
19
  assert_equal(true, bbox_.empty?)
@@ -34,7 +29,6 @@ module RGeo
34
29
  assert_equal(0, bbox_.subdivide.size)
35
30
  end
36
31
 
37
-
38
32
  def test_point_bbox
39
33
  empty_bbox_ = ::RGeo::Cartesian::BoundingBox.new(@factory)
40
34
  bbox_ = ::RGeo::Cartesian::BoundingBox.new(@factory)
@@ -60,7 +54,6 @@ module RGeo
60
54
  assert_equal([bbox_], bbox_.subdivide)
61
55
  end
62
56
 
63
-
64
57
  def test_rect_bbox
65
58
  empty_bbox_ = ::RGeo::Cartesian::BoundingBox.new(@factory)
66
59
  bbox_ = ::RGeo::Cartesian::BoundingBox.new(@factory)
@@ -86,7 +79,6 @@ module RGeo
86
79
  assert_equal(1, bbox_.y_span)
87
80
  end
88
81
 
89
-
90
82
  def test_bbox_from_points
91
83
  bbox_ = ::RGeo::Cartesian::BoundingBox.new(@factory)
92
84
  bbox_.add(@factory.point(1, 4))
@@ -96,42 +88,36 @@ module RGeo
96
88
  assert_equal(bbox_, bbox2_)
97
89
  end
98
90
 
99
-
100
91
  def test_basic_rect_subdivide
101
92
  bbox_ = ::RGeo::Cartesian::BoundingBox.new(@factory)
102
93
  bbox_.add(@factory.point(1, 2))
103
94
  bbox_.add(@factory.point(5, 4))
104
95
  quads_ = bbox_.subdivide
105
- quads_.each{ |q_| assert_equal(2.0, q_.to_geometry.area) }
96
+ quads_.each { |q_| assert_equal(2.0, q_.to_geometry.area) }
106
97
  quadsum_ = quads_[0].to_geometry + quads_[1].to_geometry +
107
98
  quads_[2].to_geometry + quads_[3].to_geometry
108
99
  assert_equal(bbox_.to_geometry, quadsum_)
109
100
  end
110
101
 
111
-
112
102
  def test_horiz_line_subdivide
113
103
  bbox_ = ::RGeo::Cartesian::BoundingBox.new(@factory)
114
104
  bbox_.add(@factory.point(1, 2))
115
105
  bbox_.add(@factory.point(5, 2))
116
106
  lines_ = bbox_.subdivide
117
- lines_.each{ |line_| assert_equal(2.0, line_.to_geometry.length) }
107
+ lines_.each { |line_| assert_equal(2.0, line_.to_geometry.length) }
118
108
  linesum_ = lines_[0].to_geometry + lines_[1].to_geometry
119
109
  assert_equal(bbox_.to_geometry, linesum_)
120
110
  end
121
111
 
122
-
123
112
  def test_vert_line_subdivide
124
113
  bbox_ = ::RGeo::Cartesian::BoundingBox.new(@factory)
125
114
  bbox_.add(@factory.point(1, 2))
126
115
  bbox_.add(@factory.point(1, 6))
127
116
  lines_ = bbox_.subdivide
128
- lines_.each{ |line_| assert_equal(2.0, line_.to_geometry.length) }
117
+ lines_.each { |line_| assert_equal(2.0, line_.to_geometry.length) }
129
118
  linesum_ = lines_[0].to_geometry + lines_[1].to_geometry
130
119
  assert_equal(bbox_.to_geometry, linesum_)
131
120
  end
132
-
133
-
134
121
  end
135
-
136
122
  end
137
123
  end