Oiva
Siis matematiikkaa kaipaat?
Jos N on desimaalinen asteluku, siitä saadaan D M S seuraavasti:
D = int(N)
M = int(60*frac(N))
S = 60*frac(60*frac(N))
jossa int() palauttaa luvun kokonaisosan ja frac() desimaaliosan.
Perlillä muunnos onnistuisi vaikkapa seuraavaan tyyliin...
#!/usr/bin/perl -w
use strict;
sub dms($) {
my $n=60*($_-int);
return sprintf("%d°%d'%.2f\"",int,int($n),60*($n-int($n)));
}
while(<>) { print join(" ",map { dms($_) } split(/\s+/)),"\n"; }'
--
/* * * Otto J. Makela <o...@iki.fi> * * * * * * * * * * * * * * * */
/* Phone: +358 40 765 5772, FAX: +358 42 7655772, ICBM: 60N 25E */
/* Mail: Mechelininkatu 26 B 27, FI-00100 Helsinki, FINLAND */
/* * * Computers Rule 01001111 01001011 * * * * * * * * * * * * */
Siis matematiikkaa kaipaat?
Jos N on desimaalinen asteluku, siitä saadaan D M S seuraavasti:
D = int(N)
M = int(60*frac(N))
S = 60*frac(60*frac(N))
jossa int() palauttaa luvun kokonaisosan ja frac() desimaaliosan.
Perlillä muunnos onnistuisi vaikkapa seuraavaan tyyliin...
#!/usr/bin/perl -w
use strict;
sub dms($) {
local $_=shift;
Vilkaiseppa saisitko tällä tehtyä mitä haluat:
http://www.gpsbabel.org/
--
Jonkunhan ne huonotkin kuvat täytyy ottaa:
http://www.petrilopia.net/
Paljon kiitosta vastauksista ja hyvistä linkeistä. Hätäisenä ehdin sen
sitten järkeillä itse Exclissä, jossa hämmästytti, ettei ollut mitään
fraction-funktiota kuten VB:ssä joka ei ollut nyt tässä koneessa
asennettuna. No, luku - int(luku) kehiin jne. ja saipa tuloksen sitten
asteineen ja hipsuineen kauniisti samaan soluun näillä &"° "& -muotoiluilla.
Oiva
Käsittääkseni yleensä tyydytään sekunnin tarkkuuteen, joka tarkoittaa
luonnossa noin 30 metrin paikannustarkkuutta.
-Asko
Riippuu aivan käyttötarkoituksesta. Maanmittarit pyrkivät usein
sentti- tai jopa millitarkkuuksiin. Silloin ruvetaan
koordinaatteihin latomaan desimaaleja.
Matti
--
Matti Grönroos -- http://www.mattigronroos.fi
-Mauri-
Noi meidän gepsit menevät noin metrin ympyrään, niin otetaan niitä
desimaalejakin mukaan mielellään.
Oiva
> Noi meidän gepsit menevät noin metrin ympyrään, niin otetaan niitä
> desimaalejakin mukaan mielellään.
Itse asiassa kansainväliset sopimukset nykyään määräävät merenkulkun
koordinaattien esittämiseen muodon DD°MM.MMM' (eli asteet ja
desimaaliminuutit), ja tämä onkin yleensä oletus GPS-laitteissa.
Asteen tuhannesosilla (eli meripeninkulman tuhannesosilla) päästään
parhaimmillaan Suomessa 1.852 metrin tarkkuuteen leveyssuunnassa ja
0.63-0.93 metrin tarkkuuteen pituussuunnassa.
http://www.geocaching.fi/wiki/Koordinaatit