ffi-geos 1.1.0 → 1.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/MIT-LICENSE +22 -22
- data/lib/ffi-geos.rb +1 -2
- data/lib/ffi-geos/coordinate_sequence.rb +2 -2
- data/lib/ffi-geos/geometry.rb +12 -12
- data/lib/ffi-geos/geometry_collection.rb +3 -3
- data/lib/ffi-geos/line_string.rb +1 -1
- data/lib/ffi-geos/point.rb +4 -4
- data/lib/ffi-geos/polygon.rb +1 -1
- data/lib/ffi-geos/strtree.rb +1 -1
- data/lib/ffi-geos/utils.rb +1 -1
- data/lib/ffi-geos/version.rb +1 -1
- metadata +9 -9
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8a4b9c08a3bc02eae724aa2cadfc9ece840ac21a
|
4
|
+
data.tar.gz: f7cd4fad310f187c6d89314c286ac541c7c9ab43
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8948b1bb43ed78ae20cfbe273b77c9795b6ec90f475ae7b42b627c76ae11cbdebc4e9ad7e31b63b3e20cc21283595c422e3fd14e2878988b350cff859fc6f50f
|
7
|
+
data.tar.gz: 4280e8773e0ad61616e54066a98131fcbc9849a692e1c433e5d93534e2294cefa39926b751e7a0fddeee61bbe1cb764ec256b68ded7757a45d0832e4f89e3e6c
|
data/MIT-LICENSE
CHANGED
@@ -1,22 +1,22 @@
|
|
1
|
-
Copyright (c) 2010-
|
2
|
-
|
3
|
-
Permission is hereby granted, free of charge, to any person
|
4
|
-
obtaining a copy of this software and associated documentation
|
5
|
-
files (the "Software"), to deal in the Software without
|
6
|
-
restriction, including without limitation the rights to use,
|
7
|
-
copy, modify, merge, publish, distribute, sublicense, and/or sell
|
8
|
-
copies of the Software, and to permit persons to whom the
|
9
|
-
Software is furnished to do so, subject to the following
|
10
|
-
conditions:
|
11
|
-
|
12
|
-
The above copyright notice and this permission notice shall be
|
13
|
-
included in all copies or substantial portions of the Software.
|
14
|
-
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
16
|
-
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
17
|
-
OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
18
|
-
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
19
|
-
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
20
|
-
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
21
|
-
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
22
|
-
OTHER DEALINGS IN THE SOFTWARE.
|
1
|
+
Copyright (c) 2010-2016 J Smith <dark.panda@gmail.com>
|
2
|
+
|
3
|
+
Permission is hereby granted, free of charge, to any person
|
4
|
+
obtaining a copy of this software and associated documentation
|
5
|
+
files (the "Software"), to deal in the Software without
|
6
|
+
restriction, including without limitation the rights to use,
|
7
|
+
copy, modify, merge, publish, distribute, sublicense, and/or sell
|
8
|
+
copies of the Software, and to permit persons to whom the
|
9
|
+
Software is furnished to do so, subject to the following
|
10
|
+
conditions:
|
11
|
+
|
12
|
+
The above copyright notice and this permission notice shall be
|
13
|
+
included in all copies or substantial portions of the Software.
|
14
|
+
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
16
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
17
|
+
OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
18
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
19
|
+
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
20
|
+
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
21
|
+
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
22
|
+
OTHER DEALINGS IN THE SOFTWARE.
|
data/lib/ffi-geos.rb
CHANGED
@@ -56,7 +56,6 @@ module Geos
|
|
56
56
|
elsif FFI::Platform::IS_WINDOWS
|
57
57
|
ENV['PATH'].split(File::PATH_SEPARATOR)
|
58
58
|
else
|
59
|
-
[ '/usr/local/{lib64,lib}', '/opt/local/{lib64,lib}', '/usr/{lib64,lib}' ]
|
60
59
|
[ '/usr/local/{lib64,lib}', '/opt/local/{lib64,lib}', '/usr/{lib64,lib}', '/usr/lib/{x86_64,i386}-linux-gnu' ]
|
61
60
|
end
|
62
61
|
end
|
@@ -67,7 +66,7 @@ module Geos
|
|
67
66
|
ENV['GEOS_LIBRARY_PATH']
|
68
67
|
else
|
69
68
|
Dir.glob(search_paths.map { |path|
|
70
|
-
File.expand_path(File.join(path, "#{lib}.#{FFI::Platform::LIBSUFFIX}"))
|
69
|
+
File.expand_path(File.join(path, "#{lib}.#{FFI::Platform::LIBSUFFIX}{,.?}"))
|
71
70
|
}).first
|
72
71
|
end
|
73
72
|
end
|
@@ -155,7 +155,7 @@ module Geos
|
|
155
155
|
self.to_a[*args]
|
156
156
|
end
|
157
157
|
end
|
158
|
-
|
158
|
+
alias_method :slice, :[]
|
159
159
|
|
160
160
|
def has_z?
|
161
161
|
self.dimensions == 3
|
@@ -220,7 +220,7 @@ module Geos
|
|
220
220
|
FFIGeos.GEOSCoordSeq_getSize_r(Geos.current_handle, self.ptr, int_ptr)
|
221
221
|
int_ptr.read_int
|
222
222
|
end
|
223
|
-
|
223
|
+
alias_method :size, :length
|
224
224
|
|
225
225
|
def empty?
|
226
226
|
self.length == 0
|
data/lib/ffi-geos/geometry.rb
CHANGED
@@ -59,7 +59,7 @@ module Geos
|
|
59
59
|
|
60
60
|
self
|
61
61
|
end
|
62
|
-
|
62
|
+
alias_method :normalize, :normalize!
|
63
63
|
|
64
64
|
def srid
|
65
65
|
FFIGeos.GEOSGetSRID_r(Geos.current_handle, self.ptr)
|
@@ -156,7 +156,7 @@ module Geos
|
|
156
156
|
:srid_copy => pick_srid_from_geoms(self.srid, geom.srid)
|
157
157
|
})
|
158
158
|
end
|
159
|
-
|
159
|
+
alias_method :symmetric_difference, :sym_difference
|
160
160
|
|
161
161
|
def boundary
|
162
162
|
cast_geometry_ptr(FFIGeos.GEOSBoundary_r(Geos.current_handle, self.ptr), :srid_copy => self.srid)
|
@@ -205,20 +205,20 @@ module Geos
|
|
205
205
|
def point_on_surface
|
206
206
|
cast_geometry_ptr(FFIGeos.GEOSPointOnSurface_r(Geos.current_handle, self.ptr), :srid_copy => self.srid)
|
207
207
|
end
|
208
|
-
|
208
|
+
alias_method :representative_point, :point_on_surface
|
209
209
|
|
210
210
|
if FFIGeos.respond_to?(:GEOSClipByRect_r)
|
211
211
|
# Available in GEOS 3.5.0+.
|
212
212
|
def clip_by_rect(xmin, ymin, xmax, ymax)
|
213
213
|
cast_geometry_ptr(FFIGeos.GEOSClipByRect_r(Geos.current_handle, self.ptr, xmin, ymin, xmax, ymax))
|
214
214
|
end
|
215
|
-
|
215
|
+
alias_method :clip_by_rectangle, :clip_by_rect
|
216
216
|
end
|
217
217
|
|
218
218
|
def centroid
|
219
219
|
cast_geometry_ptr(FFIGeos.GEOSGetCentroid_r(Geos.current_handle, self.ptr), :srid_copy => self.srid)
|
220
220
|
end
|
221
|
-
|
221
|
+
alias_method :center, :centroid
|
222
222
|
|
223
223
|
def envelope
|
224
224
|
cast_geometry_ptr(FFIGeos.GEOSEnvelope_r(Geos.current_handle, self.ptr), :srid_copy => self.srid)
|
@@ -261,7 +261,7 @@ module Geos
|
|
261
261
|
def extract_unique_points
|
262
262
|
cast_geometry_ptr(FFIGeos.GEOSGeom_extractUniquePoints_r(Geos.current_handle, self.ptr), :srid_copy => self.srid)
|
263
263
|
end
|
264
|
-
|
264
|
+
alias_method :unique_points, :extract_unique_points
|
265
265
|
|
266
266
|
def disjoint?(geom)
|
267
267
|
check_geometry(geom)
|
@@ -346,7 +346,7 @@ module Geos
|
|
346
346
|
check_geometry(geom)
|
347
347
|
bool_result(FFIGeos.GEOSEquals_r(Geos.current_handle, self.ptr, geom.ptr))
|
348
348
|
end
|
349
|
-
|
349
|
+
alias_method :equals?, :eql?
|
350
350
|
|
351
351
|
def ==(geom)
|
352
352
|
if geom.is_a?(Geos::Geometry)
|
@@ -360,15 +360,15 @@ module Geos
|
|
360
360
|
check_geometry(geom)
|
361
361
|
bool_result(FFIGeos.GEOSEqualsExact_r(Geos.current_handle, self.ptr, geom.ptr, tolerance))
|
362
362
|
end
|
363
|
-
|
364
|
-
|
363
|
+
alias_method :equals_exact?, :eql_exact?
|
364
|
+
alias_method :exactly_equals?, :eql_exact?
|
365
365
|
|
366
366
|
def eql_almost?(geom, decimal = 6)
|
367
367
|
check_geometry(geom)
|
368
368
|
bool_result(FFIGeos.GEOSEqualsExact_r(Geos.current_handle, self.ptr, geom.ptr, 0.5 * 10 ** (-decimal)))
|
369
369
|
end
|
370
|
-
|
371
|
-
|
370
|
+
alias_method :equals_almost?, :eql_almost?
|
371
|
+
alias_method :almost_equals?, :eql_almost?
|
372
372
|
|
373
373
|
def empty?
|
374
374
|
bool_result(FFIGeos.GEOSisEmpty_r(Geos.current_handle, self.ptr))
|
@@ -519,7 +519,7 @@ module Geos
|
|
519
519
|
:srid_copy => pick_srid_from_geoms(self.srid, geom.srid)
|
520
520
|
})
|
521
521
|
end
|
522
|
-
|
522
|
+
alias_method :snap_to, :snap
|
523
523
|
|
524
524
|
def shared_paths(geom)
|
525
525
|
check_geometry(geom)
|
@@ -25,7 +25,7 @@ module Geos
|
|
25
25
|
cast_geometry_ptr(FFIGeos.GEOSGetGeometryN_r(Geos.current_handle, self.ptr, n), :auto_free => false)
|
26
26
|
end
|
27
27
|
end
|
28
|
-
|
28
|
+
alias_method :geometry_n, :get_geometry_n
|
29
29
|
|
30
30
|
def [](*args)
|
31
31
|
if args.length == 1 && args.first.is_a?(Numeric) && args.first >= 0
|
@@ -34,7 +34,7 @@ module Geos
|
|
34
34
|
self.to_a[*args]
|
35
35
|
end
|
36
36
|
end
|
37
|
-
|
38
|
-
|
37
|
+
alias_method :slice, :[]
|
38
|
+
alias_method :at, :[]
|
39
39
|
end
|
40
40
|
end
|
data/lib/ffi-geos/line_string.rb
CHANGED
data/lib/ffi-geos/point.rb
CHANGED
@@ -13,7 +13,7 @@ module Geos
|
|
13
13
|
self.coord_seq.get_x(0)
|
14
14
|
end
|
15
15
|
end
|
16
|
-
|
16
|
+
alias_method :x, :get_x
|
17
17
|
|
18
18
|
if FFIGeos.respond_to?(:GEOSGeomGetY_r)
|
19
19
|
def get_y
|
@@ -26,7 +26,7 @@ module Geos
|
|
26
26
|
self.coord_seq.get_y(0)
|
27
27
|
end
|
28
28
|
end
|
29
|
-
|
29
|
+
alias_method :y, :get_y
|
30
30
|
|
31
31
|
if FFIGeos.respond_to?(:GEOSGeomGetZ_r)
|
32
32
|
def get_z
|
@@ -39,7 +39,7 @@ module Geos
|
|
39
39
|
self.coord_seq.get_z(0)
|
40
40
|
end
|
41
41
|
end
|
42
|
-
|
42
|
+
alias_method :z, :get_z
|
43
43
|
|
44
44
|
def area
|
45
45
|
0
|
@@ -60,7 +60,7 @@ module Geos
|
|
60
60
|
def normalize!
|
61
61
|
self
|
62
62
|
end
|
63
|
-
|
63
|
+
alias_method :normalize, :normalize!
|
64
64
|
|
65
65
|
%w{
|
66
66
|
convex_hull
|
data/lib/ffi-geos/polygon.rb
CHANGED
data/lib/ffi-geos/strtree.rb
CHANGED
data/lib/ffi-geos/utils.rb
CHANGED
@@ -78,7 +78,7 @@ module Geos
|
|
78
78
|
|
79
79
|
cs.ptr.autorelease = false
|
80
80
|
|
81
|
-
|
81
|
+
cast_geometry_ptr(FFIGeos.GEOSGeom_createLinearRing_r(Geos.current_handle, cs.ptr), {
|
82
82
|
:srid => options[:srid]
|
83
83
|
})
|
84
84
|
end
|
data/lib/ffi-geos/version.rb
CHANGED
metadata
CHANGED
@@ -1,24 +1,24 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ffi-geos
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.1.
|
4
|
+
version: 1.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- J Smith
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2016-01-31 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
|
-
name: ffi
|
15
14
|
requirement: !ruby/object:Gem::Requirement
|
16
15
|
requirements:
|
17
16
|
- - ">="
|
18
17
|
- !ruby/object:Gem::Version
|
19
18
|
version: 1.0.0
|
20
|
-
|
19
|
+
name: ffi
|
21
20
|
prerelease: false
|
21
|
+
type: :runtime
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - ">="
|
@@ -84,7 +84,7 @@ homepage: http://github.com/dark-panda/ffi-geos
|
|
84
84
|
licenses:
|
85
85
|
- MIT
|
86
86
|
metadata: {}
|
87
|
-
post_install_message:
|
87
|
+
post_install_message:
|
88
88
|
rdoc_options: []
|
89
89
|
require_paths:
|
90
90
|
- lib
|
@@ -99,9 +99,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
99
99
|
- !ruby/object:Gem::Version
|
100
100
|
version: '0'
|
101
101
|
requirements: []
|
102
|
-
rubyforge_project:
|
103
|
-
rubygems_version: 2.
|
104
|
-
signing_key:
|
102
|
+
rubyforge_project:
|
103
|
+
rubygems_version: 2.4.8
|
104
|
+
signing_key:
|
105
105
|
specification_version: 4
|
106
106
|
summary: An ffi wrapper for GEOS, a C++ port of the Java Topology Suite (JTS).
|
107
107
|
test_files:
|