jtsk 0.0.2 → 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 91e7e547f73d42cdd5861937515fe48fe5f99eab
4
- data.tar.gz: 99cc4244ea6359550256db462d0c92b2c1676f41
3
+ metadata.gz: 8a6dc951d53022e8f5a394254d3988d2c7dbf46b
4
+ data.tar.gz: d01f2dd21ce03cc0f8b8860da0e807448d84af13
5
5
  SHA512:
6
- metadata.gz: 8355cde78c03fa359bf6cf1a96d07726bd0a3b36cbf0e8d985f398d61735cb1f5bbde0abe94e000ff80adaa53fc116b558d9827c8859a3bd21346ffb78651b1a
7
- data.tar.gz: 55d2765c09975a7e67e0e2d3eab03e08ed65c3cf329acb0a65096edca14be0945ad5528d2e176eab36ed0aa63840bdad24c8dcb5d77acbbacea2d1a8964bf33a
6
+ metadata.gz: 686cfdc5c5b8eaa78e7e9ef1cbf5b565b276fe1cb020ab8bf4d419958fcbc54ad57560b8ca33667ba62e139982d69824cd81404c89cef0b8bf57ab3951a1c6ef
7
+ data.tar.gz: f268b20aea3db8cb08e9dee94141f7147690a6fcf2a2e1a01edc9fab9b2fa89c031b2efb921dffd9c6f8750014e7601156a69ee6f52580ea67e545f0417ebfd9
@@ -0,0 +1,3 @@
1
+ language: ruby
2
+ rvm:
3
+ - 2.3.0
data/Gemfile CHANGED
@@ -1,6 +1,4 @@
1
1
  source 'https://rubygems.org'
2
2
 
3
- gem 'rspec', '3.0.0.beta2'
4
-
5
3
  # Specify your gem's dependencies in jtsk.gemspec
6
4
  gemspec
data/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # JTSK [![Build Status](https://travis-ci.org/simi/jtsk.svg?branch=master)](https://travis-ci.org/simi/jtsk)
2
2
 
3
- Convert from JTSK to WGS48.
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.to_wgs48(x, y) #=> #<struct JTSK::Wgs48Result latitude=50.092696246901404, longitude=14.482746557404647>
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
  ```
@@ -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")
@@ -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")
@@ -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 WGS48.}
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
@@ -2,7 +2,13 @@ module JTSK
2
2
  class Converter
3
3
  EPS = 1e-4
4
4
 
5
- def to_wgs48(x, y)
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.wgs48_to_jtsk(latitude - delta, longitude - delta)
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.wgs48_to_jtsk(latitude - delta, longitude + delta)
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.wgs48_to_jtsk(latitude + delta, longitude - delta)
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.wgs48_to_jtsk(latitude + delta, longitude + delta)
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::Wgs48Result.new(latitude, longitude)
73
+ JTSK::Wgs84Result.new(latitude, longitude)
68
74
  end
69
75
 
70
- def wgs48_to_jtsk(latitude, longitude)
71
- if ((latitude < 40.0) || (latitude > 60.0) || (longitude < 5.0) || (longitude > 25.0))
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.wgs48_to_bessel(latitude, longitude);
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 wgs48_to_bessel(latitude, longitude, altitude = 0.0)
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
 
@@ -1,4 +1,6 @@
1
1
  module JTSK
2
+ class Wgs84Result < Struct.new(:latitude, :longitude)
3
+ end
2
4
  class Wgs48Result < Struct.new(:latitude, :longitude)
3
5
  end
4
6
  class BesselResult < Struct.new(:latitude, :longitude)
@@ -1,3 +1,3 @@
1
1
  module Jtsk
2
- VERSION = "0.0.2"
2
+ VERSION = "0.0.4"
3
3
  end
@@ -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.to_wgs48(x,y) }
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::Wgs48Result)
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.2
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: 2014-05-13 00:00:00.000000000 Z
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: '0'
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: '0'
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.2.1
98
+ rubygems_version: 2.5.1
96
99
  signing_key:
97
100
  specification_version: 4
98
- summary: Convert from JTSK to WGS48.
101
+ summary: Convert from JTSK to WGS84.
99
102
  test_files:
100
103
  - spec/jtsk/converter_spec.rb
101
104
  - spec/spec_helper.rb