equationoftime 4.1.5 → 4.1.6
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +13 -5
- data/.ruby-version +1 -1
- data/Gemfile +8 -2
- data/Gemfile.lock +18 -18
- data/Manifest.txt +5 -1
- data/README.rdoc +40 -17
- data/Rakefile +3 -3
- data/examples/{Equation_of_Time.jpg → Equation_of_Time.png} +0 -0
- data/examples/my_lst.rb +3 -1
- data/ext/eot/ceot.c +31 -6
- data/ext/eot/ceot.h +4 -0
- data/ext/eot/eot.c +19 -0
- data/lib/eot.rb +12 -10
- data/lib/eot/angle_displays.rb +3 -20
- data/lib/eot/angles.rb +39 -19
- data/lib/eot/constants.rb +2 -1
- data/lib/eot/deltas.rb +1 -0
- data/lib/eot/geo_lat_lng_smt.rb +1 -2
- data/lib/eot/init.rb +41 -35
- data/lib/eot/time_displays.rb +21 -4
- data/lib/eot/times.rb +37 -65
- data/lib/eot/trigonometric.rb +7 -7
- data/lib/eot/utilities.rb +15 -2
- data/lib/eot/version.rb +3 -1
- data/run_tests_eclipse.rb +1 -0
- data/test/eot/aliased_angles_spec.rb +45 -43
- data/test/eot/aliased_displays_spec.rb +10 -9
- data/test/eot/aliased_utilities_spec.rb +15 -13
- data/test/eot/angles_spec.rb +130 -127
- data/test/eot/constants_spec.rb +2 -1
- data/test/eot/displays_spec.rb +54 -51
- data/test/eot/geo_spec.rb +5 -5
- data/test/eot/init_spec.rb +4 -4
- data/test/eot/times_spec.rb +127 -65
- metadata +42 -59
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +0 -1
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,15 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
|
2
|
+
!binary "U0hBMQ==":
|
3
|
+
metadata.gz: !binary |-
|
4
|
+
YWNhMGU3ZGYzZWY3YjAxMzNmMTI5ZjY5YWQxY2VjNjRjNTc5ODRlMw==
|
5
|
+
data.tar.gz: !binary |-
|
6
|
+
ZTIwMDE4ODE3NGYyNmMyZjFkOGIzMGFkZTY0MGRkNGUwMmUyY2IwMw==
|
5
7
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
|
8
|
+
metadata.gz: !binary |-
|
9
|
+
YjZjMjU5NjBkMjcyMzRiYTcwM2FmYmI5ZGYwYjY2MzA0MmI3MjVjN2FhYzU3
|
10
|
+
NzM2MjFjN2M3ZGNhNGQ2YWEwZmVlZTBiYzU3NTgwZDJhODg5NzA5ODUwZDhm
|
11
|
+
Yzc4MjQzMDZmNWYzMGMzZWUwMmY4MjgyZjdjYmE2OWQ0OGY2MDc=
|
12
|
+
data.tar.gz: !binary |-
|
13
|
+
MjYxODJkODNhYzBjYjMyYjk2YzU2NzE3MzNhNzQ4NWY3NTc2Njk3NzFlN2Iz
|
14
|
+
ZTZjZjZiNDY0MjNmYmExZTE0ZDg3OGRiNjcwYzA4YmEzOGVhNDRhMjFlZmU1
|
15
|
+
MzYwYzQxMTA3MTlhNTM4ZGU2OGY4NTZiNDE0OWJhYzQzYWU5ODg=
|
data/.ruby-version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
1.9.3
|
data/Gemfile
CHANGED
@@ -1,9 +1,15 @@
|
|
1
1
|
source 'https://rubygems.org'
|
2
|
-
ruby '
|
2
|
+
ruby '1.9.3'
|
3
|
+
# ruby '2.0.0'
|
4
|
+
# ruby '2.1.0'
|
5
|
+
# ruby '2.1.1'
|
6
|
+
# ruby '2.1.2'
|
7
|
+
# ruby '2.1.3'
|
8
|
+
# ruby '2.1.4'
|
3
9
|
|
4
10
|
gemspec
|
5
11
|
|
6
|
-
group :development do
|
12
|
+
group :development, :test do
|
7
13
|
gem 'rubocop'
|
8
14
|
gem 'hoe'
|
9
15
|
gem 'rake'
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
equationoftime (4.1.
|
4
|
+
equationoftime (4.1.6)
|
5
5
|
addressable (~> 2.3.6)
|
6
6
|
celes (~> 0.0.1)
|
7
7
|
rest-client
|
@@ -9,7 +9,7 @@ PATH
|
|
9
9
|
GEM
|
10
10
|
remote: https://rubygems.org/
|
11
11
|
specs:
|
12
|
-
ZenTest (4.
|
12
|
+
ZenTest (4.11.0)
|
13
13
|
addressable (2.3.6)
|
14
14
|
ast (2.0.0)
|
15
15
|
astrolabe (1.3.0)
|
@@ -19,9 +19,9 @@ GEM
|
|
19
19
|
timers (~> 4.0.0)
|
20
20
|
coderay (1.1.0)
|
21
21
|
diff-lcs (1.2.5)
|
22
|
-
ffi (1.9.
|
22
|
+
ffi (1.9.6)
|
23
23
|
formatador (0.2.5)
|
24
|
-
guard (2.
|
24
|
+
guard (2.8.1)
|
25
25
|
formatador (>= 0.2.4)
|
26
26
|
listen (~> 2.7)
|
27
27
|
lumberjack (~> 1.0)
|
@@ -31,19 +31,19 @@ GEM
|
|
31
31
|
guard (~> 2.0)
|
32
32
|
minitest (>= 3.0)
|
33
33
|
hitimes (1.2.2)
|
34
|
-
hoe (3.
|
34
|
+
hoe (3.13.0)
|
35
35
|
rake (>= 0.8, < 11.0)
|
36
36
|
json (1.8.1)
|
37
|
-
listen (2.7.
|
37
|
+
listen (2.7.11)
|
38
38
|
celluloid (>= 0.15.2)
|
39
39
|
rb-fsevent (>= 0.9.3)
|
40
40
|
rb-inotify (>= 0.9)
|
41
41
|
lumberjack (1.0.9)
|
42
42
|
method_source (0.8.2)
|
43
|
-
mime-types (2.3)
|
44
|
-
minitest (5.4.
|
45
|
-
netrc (0.
|
46
|
-
parser (2.2.0.pre.
|
43
|
+
mime-types (2.4.3)
|
44
|
+
minitest (5.4.2)
|
45
|
+
netrc (0.8.0)
|
46
|
+
parser (2.2.0.pre.7)
|
47
47
|
ast (>= 1.1, < 3.0)
|
48
48
|
slop (~> 3.4, >= 3.4.5)
|
49
49
|
powerpack (0.0.9)
|
@@ -67,26 +67,26 @@ GEM
|
|
67
67
|
rspec-core (~> 3.1.0)
|
68
68
|
rspec-expectations (~> 3.1.0)
|
69
69
|
rspec-mocks (~> 3.1.0)
|
70
|
-
rspec-core (3.1.
|
70
|
+
rspec-core (3.1.7)
|
71
71
|
rspec-support (~> 3.1.0)
|
72
|
-
rspec-expectations (3.1.
|
72
|
+
rspec-expectations (3.1.2)
|
73
73
|
diff-lcs (>= 1.2.0, < 2.0)
|
74
74
|
rspec-support (~> 3.1.0)
|
75
|
-
rspec-mocks (3.1.
|
75
|
+
rspec-mocks (3.1.3)
|
76
76
|
rspec-support (~> 3.1.0)
|
77
|
-
rspec-support (3.1.
|
78
|
-
rubocop (0.
|
77
|
+
rspec-support (3.1.2)
|
78
|
+
rubocop (0.27.0)
|
79
79
|
astrolabe (~> 1.3)
|
80
|
-
parser (>= 2.2.0.pre.
|
80
|
+
parser (>= 2.2.0.pre.6, < 3.0)
|
81
81
|
powerpack (~> 0.0.6)
|
82
82
|
rainbow (>= 1.99.1, < 3.0)
|
83
83
|
ruby-progressbar (~> 1.4)
|
84
|
-
ruby-progressbar (1.
|
84
|
+
ruby-progressbar (1.7.0)
|
85
85
|
slop (3.6.0)
|
86
86
|
thor (0.19.1)
|
87
87
|
timers (4.0.1)
|
88
88
|
hitimes
|
89
|
-
yard (0.8.7.
|
89
|
+
yard (0.8.7.6)
|
90
90
|
|
91
91
|
PLATFORMS
|
92
92
|
ruby
|
data/Manifest.txt
CHANGED
@@ -1,9 +1,12 @@
|
|
1
1
|
.autotest
|
2
2
|
.buildpath
|
3
|
+
.git
|
3
4
|
.minitest.rb
|
4
5
|
.project
|
6
|
+
.settings
|
5
7
|
.rspec
|
6
8
|
.ruby-version
|
9
|
+
.yardoc
|
7
10
|
CHANGELOG.rdoc
|
8
11
|
Gemfile
|
9
12
|
Gemfile.lock
|
@@ -14,7 +17,7 @@ Manifest.txt
|
|
14
17
|
README.rdoc
|
15
18
|
Rakefile
|
16
19
|
equationoftime.gemspec
|
17
|
-
examples/Equation_of_Time.
|
20
|
+
examples/Equation_of_Time.png
|
18
21
|
examples/my_lst.rb
|
19
22
|
examples/use_addr.rb
|
20
23
|
examples/use_ajd.rb
|
@@ -44,5 +47,6 @@ test/eot/displays_spec.rb
|
|
44
47
|
test/eot/geo_spec.rb
|
45
48
|
test/eot/init_spec.rb
|
46
49
|
test/eot/times_spec.rb
|
50
|
+
run_tests_eclipse.rb
|
47
51
|
wiki.md
|
48
52
|
wiki2.md
|
data/README.rdoc
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
Home :: http://equationoftime.herokuapp.com/
|
4
4
|
Code :: https://github.com/DouglasAllen/equationoftime
|
5
|
-
RDoc :: http://rubydoc.info/gems/equationoftime/4.1.
|
5
|
+
RDoc :: http://rubydoc.info/gems/equationoftime/4.1.5/frames
|
6
6
|
Issues :: https://github.com/DouglasAllen/equationoftime/issues
|
7
7
|
|
8
8
|
|
@@ -22,36 +22,59 @@ Lots of examples to play with for learning about Eot.
|
|
22
22
|
require 'eot'
|
23
23
|
eot = Eot.new
|
24
24
|
eot.string_eot # todays eot
|
25
|
-
eot.
|
26
|
-
|
25
|
+
eot.ajd # was initialized to noon today ei. jd
|
26
|
+
# Try the real AJD
|
27
|
+
eot.ajd = DateTime.now.to_time.utc.to_datetime.ajd.to_f
|
28
|
+
|
29
|
+
eot.string_eot # nothing changes so...
|
30
|
+
eot.ma_ta_set # recalculate ma and ta after initialization
|
31
|
+
eot.string_eot # should be different than before
|
32
|
+
|
33
|
+
# check and set a new address
|
27
34
|
geo = GeoLatLng.new
|
28
|
-
geo.addr
|
29
|
-
geo.
|
30
|
-
|
31
|
-
eot.
|
32
|
-
eot.
|
33
|
-
|
34
|
-
|
35
|
+
geo.addr
|
36
|
+
geo.addr = "houston, tx" # set new location
|
37
|
+
geo.set_coordinates # set new coordinates
|
38
|
+
eot.latitude = geo.lat # set the Eot class attributes
|
39
|
+
eot.longitude = geo.lng
|
40
|
+
|
41
|
+
# Be shure you have the date set right
|
42
|
+
eot.ajd = DateTime.new(2014,11,07).to_time.utc.to_datetime.jd.to_f
|
43
|
+
|
44
|
+
eot.ma_ta_set # recalculate ma and ta after initialization
|
45
|
+
|
46
|
+
eot.sunrise_jd # the dates sunrise as a jd
|
47
|
+
eot.sunset_jd # the dates sunset as a jd
|
48
|
+
eot.sunrise_dt # the dates sunrise as DateTime
|
49
|
+
eot.sunset_dt # the dates sunset as a DateTime
|
50
|
+
|
51
|
+
|
52
|
+
eot.ajd += 1 # the days after times can be read
|
53
|
+
eot.ma_ta_set # recalculate ma and ta after initialization
|
35
54
|
eot.ajd = 2451545 # ajd set to 2001-01-01 12:00
|
36
55
|
|
37
56
|
|
57
|
+
== Gem patch:
|
58
|
+
|
59
|
+
$ gem install eot
|
60
|
+
|
61
|
+
After realizing this name was available I decided to use it.
|
62
|
+
It installs the needed requirements as for some reason
|
63
|
+
gem install equationoftime doesn't always. Hoe hoe hoe!
|
64
|
+
|
38
65
|
== REQUIREMENTS:
|
39
66
|
|
40
|
-
|
67
|
+
$ bundle install
|
41
68
|
|
42
69
|
== INSTALL:
|
43
70
|
|
44
|
-
|
71
|
+
$ bundle exec rake install
|
45
72
|
|
46
73
|
== DEVELOPERS:
|
47
74
|
|
48
75
|
After checking out the source, run:
|
49
76
|
|
50
|
-
$ rake newb
|
51
|
-
|
52
|
-
Or use patch to install as gem
|
53
|
-
|
54
|
-
$ gem install eot
|
77
|
+
$ bundle exec rake newb
|
55
78
|
|
56
79
|
This task will install any missing dependencies, run the tests/specs,
|
57
80
|
and generate the RDoc.
|
data/Rakefile
CHANGED
@@ -7,11 +7,11 @@ require 'rake/testtask'
|
|
7
7
|
require 'rdoc/task'
|
8
8
|
require 'rspec/core/rake_task'
|
9
9
|
require 'yard'
|
10
|
-
# rake release VERSION=4.1.
|
10
|
+
# rake release VERSION=4.1.6
|
11
11
|
Hoe.spec 'equationoftime' do
|
12
12
|
developer('Douglas Allen', 'kb9agt@gmail.com')
|
13
13
|
license('MIT')
|
14
|
-
self.version = '4.1.
|
14
|
+
#self.version = '4.1.6'
|
15
15
|
self.readme_file = 'README.rdoc'
|
16
16
|
self.history_file = 'CHANGELOG.rdoc'
|
17
17
|
self.extra_rdoc_files = FileList['*.rdoc']
|
@@ -49,7 +49,7 @@ Rake::RDocTask.new(:rdox) do |rd|
|
|
49
49
|
|
50
50
|
rd.rdoc_dir = 'rdocs'
|
51
51
|
|
52
|
-
rd.rdoc_files.include 'lib/**/*.rb', 'README.
|
52
|
+
rd.rdoc_files.include 'lib/**/*.rb', 'README.rdoc', 'wiki.md'
|
53
53
|
|
54
54
|
rd.options << '--line-numbers'
|
55
55
|
|
File without changes
|
data/examples/my_lst.rb
CHANGED
@@ -3,7 +3,9 @@ eot = Eot.new
|
|
3
3
|
puts 'My Local Apparent Sidereal Time'
|
4
4
|
loop do
|
5
5
|
eot.ajd = DateTime.now.to_time.utc.to_datetime.ajd
|
6
|
-
|
6
|
+
gst = eot.string_deg_to_time(eot.tl_aries - -88.75 * Eot::D2R)
|
7
|
+
era = eot.string_deg_to_time(eot.era - -88.75 * Eot::D2R)
|
8
|
+
puts "LST gst #{gst} LST era #{era}"
|
7
9
|
# the number is syncing my machine. machine may vary in this.
|
8
10
|
sleep 0.99613381875
|
9
11
|
end
|
data/ext/eot/ceot.c
CHANGED
@@ -21,9 +21,7 @@ double eoe(double t)
|
|
21
21
|
double e;
|
22
22
|
|
23
23
|
/* Eccentricity of Earth orbit */
|
24
|
-
e = (0.016708617
|
25
|
-
t * (-0.000042037 +
|
26
|
-
t * -0.0000001235));
|
24
|
+
e = (0.016708617 + t * (-0.000042037 + t * -0.0000001235));
|
27
25
|
|
28
26
|
return e;
|
29
27
|
}
|
@@ -72,6 +70,11 @@ double alSun(double ma, double t, double o)
|
|
72
70
|
return a;
|
73
71
|
}
|
74
72
|
|
73
|
+
double raSun(double y0, double cos_al_Sun)
|
74
|
+
{
|
75
|
+
return atan2(-y0, -cos_al_Sun);
|
76
|
+
}
|
77
|
+
|
75
78
|
double cosZ(double zenith)
|
76
79
|
{
|
77
80
|
|
@@ -107,7 +110,7 @@ double cos_lat(double lat)
|
|
107
110
|
|
108
111
|
double ca;
|
109
112
|
|
110
|
-
ca = cos(lat);
|
113
|
+
ca = cos(lat * 0.017453292519943295769236907684886);
|
111
114
|
|
112
115
|
return ca;
|
113
116
|
}
|
@@ -157,7 +160,7 @@ double sin_lat(double lat)
|
|
157
160
|
|
158
161
|
double sa;
|
159
162
|
|
160
|
-
sa = sin(lat);
|
163
|
+
sa = sin(lat * 0.017453292519943295769236907684886);
|
161
164
|
|
162
165
|
return sa;
|
163
166
|
}
|
@@ -182,4 +185,26 @@ double sin_to_earth(double to_earth)
|
|
182
185
|
return sa;
|
183
186
|
}
|
184
187
|
|
185
|
-
|
188
|
+
double sun(double zenith, double dec_sun, double lat)
|
189
|
+
{
|
190
|
+
double cos1 = cosZ(zenith);
|
191
|
+
double sin2 = sin_dec_sun(dec_sun);
|
192
|
+
double sin3 = sin_lat(lat);
|
193
|
+
double cos2 = cos_dec_sun(dec_sun);
|
194
|
+
double cos3 = cos_lat(lat);
|
195
|
+
double top = cos1 - sin2 * sin3;
|
196
|
+
double bot = cos2 * cos3;
|
197
|
+
double ca = top / bot;
|
198
|
+
double c;
|
199
|
+
c = (ca > 1.0 || ca < -1.0) ? 1.0: ca;
|
200
|
+
return acos(c);
|
201
|
+
}
|
202
|
+
|
203
|
+
double sun_dec(double al_sun, double to_earth)
|
204
|
+
{
|
205
|
+
double sin1 = sin_to_earth(to_earth);
|
206
|
+
double sin2 = sin_al_sun(al_sun);
|
207
|
+
double a = asin(sin1 * sin2);
|
208
|
+
return a;
|
209
|
+
}
|
210
|
+
//
|
data/ext/eot/ceot.h
CHANGED
@@ -5,6 +5,7 @@ double eoe(double t);
|
|
5
5
|
double eqc(double ma, double t);
|
6
6
|
double tlSun(double ma, double t);
|
7
7
|
double alSun(double ma, double t, double o);
|
8
|
+
double raSun(double y0, double cos_al_Sun);
|
8
9
|
double cosZ(double zenith);
|
9
10
|
double cos_al_sun(double al_sun);
|
10
11
|
double cos_tl_sun(double tl_sun);
|
@@ -16,3 +17,6 @@ double sin_dec_sun(double dec_sun);
|
|
16
17
|
double cos_dec_sun(double dec_sun);
|
17
18
|
double sin_lat(double lat);
|
18
19
|
double cos_lat(double lat);
|
20
|
+
double sun_dec(double al_sun, double to_earth);
|
21
|
+
double sun(double zenith, double dec_sun, double lat);
|
22
|
+
|
data/ext/eot/eot.c
CHANGED
@@ -87,6 +87,21 @@ VALUE func_cos_lat(VALUE klass, VALUE vlat) {
|
|
87
87
|
return DBL2NUM(cos_lat(NUM2DBL(vlat)));
|
88
88
|
}
|
89
89
|
|
90
|
+
VALUE func_sun(VALUE klass, VALUE vz, VALUE vds, VALUE vlat) {
|
91
|
+
rb_ivar_set(klass, id_status, INT2FIX(0));
|
92
|
+
return DBL2NUM(sun(NUM2DBL(vz), NUM2DBL(vds), NUM2DBL(vlat)));
|
93
|
+
}
|
94
|
+
|
95
|
+
VALUE func_sun_dec(VALUE klass, VALUE vals, VALUE vtoe) {
|
96
|
+
rb_ivar_set(klass, id_status, INT2FIX(0));
|
97
|
+
return DBL2NUM(sun_dec(NUM2DBL(vals), NUM2DBL(vtoe)));
|
98
|
+
}
|
99
|
+
|
100
|
+
VALUE func_sun_ra(VALUE klass, VALUE vy0, VALUE vcas) {
|
101
|
+
rb_ivar_set(klass, id_status, INT2FIX(0));
|
102
|
+
return DBL2NUM(raSun(NUM2DBL(vy0), NUM2DBL(vcas)));
|
103
|
+
}
|
104
|
+
|
90
105
|
VALUE cEot;
|
91
106
|
void
|
92
107
|
Init_eot(void) {
|
@@ -109,4 +124,8 @@ Init_eot(void) {
|
|
109
124
|
rb_define_method(cEot, "sin_dec_sun", func_sin_dec_sun, 1);
|
110
125
|
rb_define_method(cEot, "cos_lat", func_cos_lat, 1);
|
111
126
|
rb_define_method(cEot, "sin_lat", func_sin_lat, 1);
|
127
|
+
rb_define_method(cEot, "sun_dec", func_sun_dec, 2);
|
128
|
+
rb_define_method(cEot, "sun", func_sun, 3);
|
129
|
+
rb_define_method(cEot, "sun_ra", func_sun_ra, 2);
|
130
|
+
|
112
131
|
}
|
data/lib/eot.rb
CHANGED
@@ -1,19 +1,21 @@
|
|
1
1
|
# eot.rb
|
2
2
|
# require 'multi_xml'
|
3
3
|
require 'addressable/uri'
|
4
|
-
require 'rest-client'
|
5
|
-
require 'json'
|
6
4
|
require 'celes'
|
7
5
|
require 'date'
|
8
|
-
require '
|
9
|
-
require '
|
10
|
-
require 'eot/constants'
|
11
|
-
require 'eot/init'
|
12
|
-
require 'eot/utilities'
|
6
|
+
require 'json'
|
7
|
+
require 'rest-client'
|
13
8
|
require 'eot/angles'
|
9
|
+
require 'eot/angle_displays'
|
10
|
+
require 'eot/constants'
|
14
11
|
require 'eot/deltas'
|
15
|
-
require 'eot/
|
12
|
+
require 'eot/delta_times'
|
13
|
+
require 'eot/eot'
|
14
|
+
require 'eot/geo_lat_lng_smt'
|
15
|
+
require 'eot/init'
|
16
|
+
require 'eot/jd_times'
|
16
17
|
require 'eot/times'
|
17
|
-
require 'eot/angle_displays'
|
18
18
|
require 'eot/time_displays'
|
19
|
-
require 'eot/
|
19
|
+
require 'eot/trigonometric'
|
20
|
+
require 'eot/utilities'
|
21
|
+
require 'eot/version'
|
data/lib/eot/angle_displays.rb
CHANGED
@@ -1,29 +1,12 @@
|
|
1
1
|
# class Eot file = angle_displays.rb
|
2
|
+
# methods for display of angles
|
2
3
|
class Eot
|
3
|
-
def deg_string(sgn, d, m, s, ds)
|
4
|
-
sgn +
|
5
|
-
format('%03d', d) +
|
6
|
-
':' +
|
7
|
-
format('%02d', m) +
|
8
|
-
':' +
|
9
|
-
format('%02d', s) +
|
10
|
-
'.' +
|
11
|
-
format('%3.3d', ds)
|
12
|
-
end
|
13
|
-
|
14
4
|
# From displays.rb
|
15
5
|
# String formatter for d:m:s display
|
16
6
|
def degrees_to_s(radians = 0.0)
|
17
7
|
radians.nil? ? radians = 0.0 : radians
|
18
|
-
|
19
|
-
|
20
|
-
int_deg = Integer(deg)
|
21
|
-
min = 60.0 * (deg - int_deg)
|
22
|
-
int_min = Integer(min)
|
23
|
-
sec = 60.0 * (min - int_min)
|
24
|
-
int_sec = Integer(sec)
|
25
|
-
int_ds = Integer(1000.0 * (sec - int_sec))
|
26
|
-
deg_string(sign, int_deg, int_min, int_sec, int_ds)
|
8
|
+
s, idmsf = Celes.a2af(3, radians)
|
9
|
+
f_string(s, idmsf[0], idmsf[1], idmsf[2], idmsf[3])
|
27
10
|
end
|
28
11
|
|
29
12
|
# From displays.rb
|