jtsk 0.0.2 → 0.0.4
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/.travis.yml +3 -0
- data/Gemfile +0 -2
- data/README.md +2 -2
- data/bin/rake +16 -0
- data/bin/rspec +16 -0
- data/jtsk.gemspec +2 -3
- data/lib/jtsk/converter.rb +22 -14
- data/lib/jtsk/result.rb +2 -0
- data/lib/jtsk/version.rb +1 -1
- data/spec/jtsk/converter_spec.rb +8 -2
- metadata +19 -16
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8a6dc951d53022e8f5a394254d3988d2c7dbf46b
|
4
|
+
data.tar.gz: d01f2dd21ce03cc0f8b8860da0e807448d84af13
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 686cfdc5c5b8eaa78e7e9ef1cbf5b565b276fe1cb020ab8bf4d419958fcbc54ad57560b8ca33667ba62e139982d69824cd81404c89cef0b8bf57ab3951a1c6ef
|
7
|
+
data.tar.gz: f268b20aea3db8cb08e9dee94141f7147690a6fcf2a2e1a01edc9fab9b2fa89c031b2efb921dffd9c6f8750014e7601156a69ee6f52580ea67e545f0417ebfd9
|
data/.travis.yml
ADDED
data/Gemfile
CHANGED
data/README.md
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# JTSK [](https://travis-ci.org/simi/jtsk)
|
2
2
|
|
3
|
-
Convert from JTSK to
|
3
|
+
Convert from JTSK to WGS84.
|
4
4
|
|
5
5
|
Based on [JTSK Converter](https://github.com/josefzamrzla/JTSK_Converter) by [@josefzamrzla](https://github.com/josefzamrzla).
|
6
6
|
|
@@ -24,7 +24,7 @@ Or install it yourself as:
|
|
24
24
|
converter = JTSK::Converter.new
|
25
25
|
x = 1043033.89
|
26
26
|
y = 738371.58
|
27
|
-
result = converter.
|
27
|
+
result = converter.to_wgs84(x, y) #=> #<struct JTSK::Wgs84Result latitude=50.092696246901404, longitude=14.482746557404647>
|
28
28
|
result.latitude #=> 50.092696246901404
|
29
29
|
result.longitude #=> 14.482746557404647
|
30
30
|
```
|
data/bin/rake
ADDED
@@ -0,0 +1,16 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
#
|
3
|
+
# This file was generated by Bundler.
|
4
|
+
#
|
5
|
+
# The application 'rake' is installed as part of a gem, and
|
6
|
+
# this file is here to facilitate running it.
|
7
|
+
#
|
8
|
+
|
9
|
+
require "pathname"
|
10
|
+
ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile",
|
11
|
+
Pathname.new(__FILE__).realpath)
|
12
|
+
|
13
|
+
require "rubygems"
|
14
|
+
require "bundler/setup"
|
15
|
+
|
16
|
+
load Gem.bin_path("rake", "rake")
|
data/bin/rspec
ADDED
@@ -0,0 +1,16 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
#
|
3
|
+
# This file was generated by Bundler.
|
4
|
+
#
|
5
|
+
# The application 'rspec' is installed as part of a gem, and
|
6
|
+
# this file is here to facilitate running it.
|
7
|
+
#
|
8
|
+
|
9
|
+
require "pathname"
|
10
|
+
ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile",
|
11
|
+
Pathname.new(__FILE__).realpath)
|
12
|
+
|
13
|
+
require "rubygems"
|
14
|
+
require "bundler/setup"
|
15
|
+
|
16
|
+
load Gem.bin_path("rspec-core", "rspec")
|
data/jtsk.gemspec
CHANGED
@@ -8,16 +8,15 @@ Gem::Specification.new do |spec|
|
|
8
8
|
spec.version = Jtsk::VERSION
|
9
9
|
spec.authors = ["Josef Šimánek"]
|
10
10
|
spec.email = ["josef.simanek@gmail.com"]
|
11
|
-
spec.summary = %q{Convert from JTSK to
|
11
|
+
spec.summary = %q{Convert from JTSK to WGS84.}
|
12
12
|
spec.homepage = ""
|
13
13
|
spec.license = "MIT"
|
14
14
|
|
15
15
|
spec.files = `git ls-files -z`.split("\x0")
|
16
|
-
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
17
16
|
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
18
17
|
spec.require_paths = ["lib"]
|
19
18
|
|
20
19
|
spec.add_development_dependency "bundler", ">= 1.5"
|
21
20
|
spec.add_development_dependency "rake"
|
22
|
-
spec.add_development_dependency "rspec"
|
21
|
+
spec.add_development_dependency "rspec", ">= 3.4"
|
23
22
|
end
|
data/lib/jtsk/converter.rb
CHANGED
@@ -2,7 +2,13 @@ module JTSK
|
|
2
2
|
class Converter
|
3
3
|
EPS = 1e-4
|
4
4
|
|
5
|
-
def to_wgs48(x,
|
5
|
+
def to_wgs48(x,y)
|
6
|
+
warn "to_wgs84 is deprecated and will be removed in next version. Please use to_wgs84 method."
|
7
|
+
result = to_wgs84(x,y)
|
8
|
+
JTSK::Wgs48Result.new(result.latitude, result.longitude)
|
9
|
+
end
|
10
|
+
|
11
|
+
def to_wgs84(x, y)
|
6
12
|
delta = 5.0
|
7
13
|
latitude = 49.0
|
8
14
|
longitude = 14.0
|
@@ -10,28 +16,28 @@ module JTSK
|
|
10
16
|
|
11
17
|
loop {
|
12
18
|
|
13
|
-
jtsk = self.
|
19
|
+
jtsk = self.wgs84_to_jtsk(latitude - delta, longitude - delta)
|
14
20
|
if(jtsk.x && jtsk.y)
|
15
21
|
v1 = self.dist_points(jtsk.x, jtsk.y, x, y)
|
16
22
|
else
|
17
23
|
v1 = 1e32
|
18
24
|
end
|
19
25
|
|
20
|
-
jtsk = self.
|
26
|
+
jtsk = self.wgs84_to_jtsk(latitude - delta, longitude + delta)
|
21
27
|
if(jtsk.x && jtsk.y)
|
22
28
|
v2 = self.dist_points(jtsk.x, jtsk.y, x, y)
|
23
29
|
else
|
24
30
|
v2 = 1e32
|
25
31
|
end
|
26
32
|
|
27
|
-
jtsk = self.
|
33
|
+
jtsk = self.wgs84_to_jtsk(latitude + delta, longitude - delta)
|
28
34
|
if(jtsk.x && jtsk.y)
|
29
35
|
v3 = self.dist_points(jtsk.x, jtsk.y, x, y)
|
30
36
|
else
|
31
37
|
v3 = 1e32
|
32
38
|
end
|
33
39
|
|
34
|
-
jtsk = self.
|
40
|
+
jtsk = self.wgs84_to_jtsk(latitude + delta, longitude + delta)
|
35
41
|
if(jtsk.x && jtsk.y)
|
36
42
|
v4 = self.dist_points(jtsk.x, jtsk.y, x, y)
|
37
43
|
else
|
@@ -60,23 +66,25 @@ module JTSK
|
|
60
66
|
|
61
67
|
delta = delta * 0.55;
|
62
68
|
steps = steps + 4.0;
|
63
|
-
|
69
|
+
|
64
70
|
break if (((delta < 0.00001) || steps > 1000.0));
|
65
|
-
}
|
71
|
+
}
|
66
72
|
|
67
|
-
JTSK::
|
73
|
+
JTSK::Wgs84Result.new(latitude, longitude)
|
68
74
|
end
|
69
75
|
|
70
|
-
|
71
|
-
|
76
|
+
protected
|
77
|
+
|
78
|
+
def wgs84_to_jtsk(latitude, longitude)
|
79
|
+
if ((latitude < 40.0) || (latitude > 60.0) || (longitude < 5.0) || (longitude > 25.0))
|
72
80
|
JTSK::JtskResult.new(0.0, 0.0)
|
73
81
|
else
|
74
|
-
bessel = self.
|
82
|
+
bessel = self.wgs84_to_bessel(latitude, longitude);
|
75
83
|
self.bessel_to_jtsk(bessel.latitude, bessel.longitude);
|
76
84
|
end
|
77
85
|
end
|
78
86
|
|
79
|
-
def
|
87
|
+
def wgs84_to_bessel(latitude, longitude, altitude = 0.0)
|
80
88
|
b = deg2rad(latitude)
|
81
89
|
l = deg2rad(longitude)
|
82
90
|
h = altitude;
|
@@ -93,7 +101,7 @@ module JTSK
|
|
93
101
|
end
|
94
102
|
|
95
103
|
def bessel_to_jtsk(latitude, longitude)
|
96
|
-
a = 6377397.15508
|
104
|
+
# a = 6377397.15508
|
97
105
|
e = 0.081696831215303
|
98
106
|
n = 0.97992470462083
|
99
107
|
rho_0 = 12310230.12797036
|
@@ -126,7 +134,7 @@ module JTSK
|
|
126
134
|
|
127
135
|
eps = n * Math.atan(sinD / cosD)
|
128
136
|
rho = rho_0 * Math.exp(-n * Math.log((1 + sinS) / cosS))
|
129
|
-
|
137
|
+
|
130
138
|
JTSK::JtskResult.new(rho * Math.cos(eps), rho * Math.sin(eps))
|
131
139
|
end
|
132
140
|
|
data/lib/jtsk/result.rb
CHANGED
data/lib/jtsk/version.rb
CHANGED
data/spec/jtsk/converter_spec.rb
CHANGED
@@ -4,7 +4,13 @@ describe JTSK::Converter do
|
|
4
4
|
let(:converter) { described_class.new }
|
5
5
|
let(:x) { 1043033.89 }
|
6
6
|
let(:y) { 738371.58 }
|
7
|
-
let(:result) { converter.
|
7
|
+
let(:result) { converter.to_wgs84(x,y) }
|
8
|
+
|
9
|
+
it 'to_wgs48 is deprecated' do
|
10
|
+
expect(converter).to receive(:warn)
|
11
|
+
deprecated_result = converter.to_wgs48(x,y)
|
12
|
+
expect(deprecated_result).to be_kind_of(JTSK::Wgs48Result)
|
13
|
+
end
|
8
14
|
|
9
15
|
it 'EPS is properly set' do
|
10
16
|
expect(described_class::EPS).to eq(1e-4)
|
@@ -15,7 +21,7 @@ describe JTSK::Converter do
|
|
15
21
|
end
|
16
22
|
|
17
23
|
it 'result is JTSK::Result' do
|
18
|
-
expect(result).to be_kind_of(JTSK::
|
24
|
+
expect(result).to be_kind_of(JTSK::Wgs84Result)
|
19
25
|
end
|
20
26
|
|
21
27
|
context 'Club Velbloud' do
|
metadata
CHANGED
@@ -1,57 +1,57 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: jtsk
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Josef Šimánek
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2016-03-16 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- -
|
17
|
+
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
19
|
version: '1.5'
|
20
20
|
type: :development
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- -
|
24
|
+
- - ">="
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '1.5'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: rake
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- -
|
31
|
+
- - ">="
|
32
32
|
- !ruby/object:Gem::Version
|
33
33
|
version: '0'
|
34
34
|
type: :development
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- -
|
38
|
+
- - ">="
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '0'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: rspec
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
|
-
- -
|
45
|
+
- - ">="
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: '
|
47
|
+
version: '3.4'
|
48
48
|
type: :development
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
|
-
- -
|
52
|
+
- - ">="
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: '
|
54
|
+
version: '3.4'
|
55
55
|
description:
|
56
56
|
email:
|
57
57
|
- josef.simanek@gmail.com
|
@@ -59,12 +59,15 @@ executables: []
|
|
59
59
|
extensions: []
|
60
60
|
extra_rdoc_files: []
|
61
61
|
files:
|
62
|
-
- .gitignore
|
63
|
-
- .rspec
|
62
|
+
- ".gitignore"
|
63
|
+
- ".rspec"
|
64
|
+
- ".travis.yml"
|
64
65
|
- Gemfile
|
65
66
|
- LICENSE.txt
|
66
67
|
- README.md
|
67
68
|
- Rakefile
|
69
|
+
- bin/rake
|
70
|
+
- bin/rspec
|
68
71
|
- jtsk.gemspec
|
69
72
|
- lib/jtsk.rb
|
70
73
|
- lib/jtsk/converter.rb
|
@@ -82,20 +85,20 @@ require_paths:
|
|
82
85
|
- lib
|
83
86
|
required_ruby_version: !ruby/object:Gem::Requirement
|
84
87
|
requirements:
|
85
|
-
- -
|
88
|
+
- - ">="
|
86
89
|
- !ruby/object:Gem::Version
|
87
90
|
version: '0'
|
88
91
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
89
92
|
requirements:
|
90
|
-
- -
|
93
|
+
- - ">="
|
91
94
|
- !ruby/object:Gem::Version
|
92
95
|
version: '0'
|
93
96
|
requirements: []
|
94
97
|
rubyforge_project:
|
95
|
-
rubygems_version: 2.
|
98
|
+
rubygems_version: 2.5.1
|
96
99
|
signing_key:
|
97
100
|
specification_version: 4
|
98
|
-
summary: Convert from JTSK to
|
101
|
+
summary: Convert from JTSK to WGS84.
|
99
102
|
test_files:
|
100
103
|
- spec/jtsk/converter_spec.rb
|
101
104
|
- spec/spec_helper.rb
|