shp2wkt 1.0.0
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 +7 -0
- data/bin/shp2wkt +29 -0
- data/lib/shp2wkt.rb +53 -0
- metadata +89 -0
checksums.yaml
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
---
|
|
2
|
+
SHA1:
|
|
3
|
+
metadata.gz: d5012533d87a6aa402d255e87ca092ea44aff937
|
|
4
|
+
data.tar.gz: 0e3436d14191256a100281f8bb1c4939ae62481d
|
|
5
|
+
SHA512:
|
|
6
|
+
metadata.gz: 3d64eb5ccaef48723b170190869fc06b7c6d2cdd4628a91377b8374714527c2058a27799a017715895caa30b61c5a35364eb3e0193404cbe6d1760a67a7af7d8
|
|
7
|
+
data.tar.gz: 1ddb99fecea7097dbc1c9390c9eefb723772ea719f5e6a542cc50e44fd51d58bbfdb9715dc6c8d85e76ec6d520f5ff7bc3edd0a879d0448c2c0f7dd979d14c06
|
data/bin/shp2wkt
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
$LOAD_PATH.unshift File.dirname(__FILE__) + '/../lib'
|
|
3
|
+
require 'shp2wkt'
|
|
4
|
+
require 'optparse'
|
|
5
|
+
|
|
6
|
+
options = {}
|
|
7
|
+
|
|
8
|
+
opt_parser = OptionParser.new do |opt|
|
|
9
|
+
opt.banner = "Usage: shp2wkt FILENAME"
|
|
10
|
+
opt.separator ""
|
|
11
|
+
opt.separator "Example"
|
|
12
|
+
opt.separator " shp2wkt /home/gis/india_rivers.shp"
|
|
13
|
+
opt.separator "Options"
|
|
14
|
+
|
|
15
|
+
opt.on("-h","--help") do
|
|
16
|
+
puts opt_parser
|
|
17
|
+
end
|
|
18
|
+
opt.separator ""
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
opt_parser.parse!
|
|
22
|
+
|
|
23
|
+
if ARGV[0].nil?
|
|
24
|
+
puts opt_parser
|
|
25
|
+
else
|
|
26
|
+
shp2wkt = Shp2Wkt::Shp2Wkt.new(ARGV[0])
|
|
27
|
+
shp2wkt.write
|
|
28
|
+
end
|
|
29
|
+
|
data/lib/shp2wkt.rb
ADDED
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
# Author - Sagar Arlekar
|
|
2
|
+
# Email - sagar.arlekar@gmail.com
|
|
3
|
+
|
|
4
|
+
require 'rgeo'
|
|
5
|
+
require 'rgeo/shapefile'
|
|
6
|
+
require 'rgeo/geos'
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
module Shp2Wkt
|
|
10
|
+
# * This class will convert a shapefile to WKT
|
|
11
|
+
class Shp2Wkt
|
|
12
|
+
|
|
13
|
+
attr_accessor :filename
|
|
14
|
+
#
|
|
15
|
+
# * +filename+ - The path to the shape file. E.g. /home/user/bangalore_roads.shp. The name is stored in @filename
|
|
16
|
+
|
|
17
|
+
def initialize(filename)
|
|
18
|
+
# absolute path to the shapefile e.g. /home/user/roads.shp
|
|
19
|
+
@filename = filename
|
|
20
|
+
read
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
# Will read the shapefile in @filename and convert each geometry in text_geom array as text.
|
|
24
|
+
def read
|
|
25
|
+
@text_geom = []
|
|
26
|
+
RGeo::Shapefile::Reader.open(@filename) do |file|
|
|
27
|
+
|
|
28
|
+
file.each do |record|
|
|
29
|
+
@text_geom << record.geometry.as_text
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
@text_geom
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
# Will write the geometries in text_geom to a file. One geom per line.
|
|
36
|
+
def write
|
|
37
|
+
|
|
38
|
+
outfile_filename = @filename.gsub(".shp", ".txt")
|
|
39
|
+
|
|
40
|
+
begin
|
|
41
|
+
File.open(outfile_filename, 'w') do |op|
|
|
42
|
+
@text_geom.each do |geom|
|
|
43
|
+
op.puts "#{geom}"
|
|
44
|
+
end
|
|
45
|
+
end
|
|
46
|
+
@text_geom.length
|
|
47
|
+
rescue
|
|
48
|
+
raise Exception
|
|
49
|
+
end
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
end
|
|
53
|
+
end
|
metadata
ADDED
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
|
2
|
+
name: shp2wkt
|
|
3
|
+
version: !ruby/object:Gem::Version
|
|
4
|
+
version: 1.0.0
|
|
5
|
+
platform: ruby
|
|
6
|
+
authors:
|
|
7
|
+
- Sagar Arlekar
|
|
8
|
+
autorequire:
|
|
9
|
+
bindir: bin
|
|
10
|
+
cert_chain: []
|
|
11
|
+
date: 2014-07-13 00:00:00.000000000 Z
|
|
12
|
+
dependencies:
|
|
13
|
+
- !ruby/object:Gem::Dependency
|
|
14
|
+
name: rgeo
|
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
|
16
|
+
requirements:
|
|
17
|
+
- - ">="
|
|
18
|
+
- !ruby/object:Gem::Version
|
|
19
|
+
version: 0.3.13
|
|
20
|
+
type: :runtime
|
|
21
|
+
prerelease: false
|
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
23
|
+
requirements:
|
|
24
|
+
- - ">="
|
|
25
|
+
- !ruby/object:Gem::Version
|
|
26
|
+
version: 0.3.13
|
|
27
|
+
- !ruby/object:Gem::Dependency
|
|
28
|
+
name: rgeo-shapefile
|
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
|
30
|
+
requirements:
|
|
31
|
+
- - ">="
|
|
32
|
+
- !ruby/object:Gem::Version
|
|
33
|
+
version: 0.2.3
|
|
34
|
+
type: :runtime
|
|
35
|
+
prerelease: false
|
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
37
|
+
requirements:
|
|
38
|
+
- - ">="
|
|
39
|
+
- !ruby/object:Gem::Version
|
|
40
|
+
version: 0.2.3
|
|
41
|
+
- !ruby/object:Gem::Dependency
|
|
42
|
+
name: geos-extensions
|
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
|
44
|
+
requirements:
|
|
45
|
+
- - ">="
|
|
46
|
+
- !ruby/object:Gem::Version
|
|
47
|
+
version: 0.5.0
|
|
48
|
+
type: :runtime
|
|
49
|
+
prerelease: false
|
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
51
|
+
requirements:
|
|
52
|
+
- - ">="
|
|
53
|
+
- !ruby/object:Gem::Version
|
|
54
|
+
version: 0.5.0
|
|
55
|
+
description: A utility to convert a shapefile to well-known-text
|
|
56
|
+
email: sagar.arlekar@gmail.com
|
|
57
|
+
executables:
|
|
58
|
+
- shp2wkt
|
|
59
|
+
extensions: []
|
|
60
|
+
extra_rdoc_files: []
|
|
61
|
+
files:
|
|
62
|
+
- bin/shp2wkt
|
|
63
|
+
- lib/shp2wkt.rb
|
|
64
|
+
homepage: http://github.com/sagarlekar/shp2wkt
|
|
65
|
+
licenses: []
|
|
66
|
+
metadata: {}
|
|
67
|
+
post_install_message:
|
|
68
|
+
rdoc_options:
|
|
69
|
+
- "--charset=UTF-8"
|
|
70
|
+
require_paths:
|
|
71
|
+
- lib
|
|
72
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
|
73
|
+
requirements:
|
|
74
|
+
- - ">="
|
|
75
|
+
- !ruby/object:Gem::Version
|
|
76
|
+
version: '0'
|
|
77
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
78
|
+
requirements:
|
|
79
|
+
- - ">="
|
|
80
|
+
- !ruby/object:Gem::Version
|
|
81
|
+
version: '0'
|
|
82
|
+
requirements: []
|
|
83
|
+
rubyforge_project:
|
|
84
|
+
rubygems_version: 2.3.0
|
|
85
|
+
signing_key:
|
|
86
|
+
specification_version: 4
|
|
87
|
+
summary: A utility to convert a shapefile to well-known-text
|
|
88
|
+
test_files: []
|
|
89
|
+
has_rdoc:
|