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 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