[Gfoss] conversione da coordinate sessagesimali a coordinate sessadecimali

Luca Sigfrido Percich sigfrido a tiscali.it
Mer 22 Giu 2011 12:39:54 CEST


Ciao,

se l'input è file di testo e LON/LAT è nel formato

dd°mm'ss"

si può usare la seguente regexp con parentesi per catturare i diversi
elementi: 

/([0-9]+)°[[:space:]]*([0-9]+)'[[:space:]]*([0-9]+)"/

diversi linguaggi e ambienti danno diversi modi per farlo, ad esempio le
funzioni preg_match_all (PHP) o match (AWK) scrivono in un array le
sottoespressioni trovate, ovvero

match[0] = intera stringa in input
match[1] = gradi
match[2] = primi
match[3] = secondi

che possono essere usate per applicare la formula fornita da flavio. in
PHP:

$degrees = '15° 30\' 30"';
if
(preg_match_all('/([0-9]+)°[[:space:]]*([0-9]+)\'[[:space:]]*([0-9]+)"/',$degrees, $matches)) {
		$decimal_degrees = $matches[1][0] + ($matches[2][0] / 60) +
($matches[3][0] / 3600);
		print $decimal_degrees . "\n";
}


Sig


Il giorno mer, 22/06/2011 alle 11.52 +0200, flavio rigolon ha scritto:
> Il 22 giugno 2011 11:07, marco zanieri <marcozanieri a gmail.com> ha scritto:
> > Salve,
> > dovrei eseguire una conversione batch di coordinate da formato sessagesimale
> > a formato sessadecimale, qualcuno ha qualche tool da propormi?
> >
> 
> ciao Marco,
>  non è quel che cerchi per una operazione in batch
> ma passo comunque un piccolo programmino in C (un timido tentativo di
> programmazione
> fatto tempo fa) per convertire da dms a dd da riga di comando. Trovi
> sorgente e compilato nell'allegato.
> Nel mio lavoro torna utile spesso.
> 
> ciao
> flavio
> _______________________________________________
> Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione
> Gfoss a lists.gfoss.it
> http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
> Questa e' una lista di discussione pubblica aperta a tutti.
> Non inviate messaggi commerciali.
> I messaggi di questa lista non rispecchiano necessariamente
> le posizioni dell'Associazione GFOSS.it.
> 518 iscritti al 3.6.2011


_____________
PRIVACY
Le informazioni contenute in questo messaggio sono riservate e confidenziali. Il loro utilizzo e' consentito esclusivamente al destinatario del messaggio, per le finalità indicate nel messaggio stesso. Qualora Lei non fosse la persona a cui il presente messaggio è destinato, La invitiamo ad eliminarlo dal Suo Sistema e a distruggere le varie copie o stampe, dandone gentilmente comunicazione all’indirizzo mail del mittente. Ogni utilizzo improprio e' contrario ai principi del D.lgs 196/03 e alla legislazione europea (Direttiva 2002/58/CE).

PRIVACY
Le informazioni contenute in questo messaggio sono riservate e confidenziali. Il loro utilizzo e' consentito esclusivamente al destinatario del messaggio, per le finalità indicate nel messaggio stesso. Qualora Lei non fosse la persona a cui il presente messaggio è destinato, La invitiamo ad eliminarlo dal Suo Sistema e a distruggere le varie copie o stampe, dandone gentilmente comunicazione all’indirizzo mail del mittente. Ogni utilizzo improprio e' contrario ai principi del D.lgs 196/03 e alla legislazione europea (Direttiva 2002/58/CE).


Maggiori informazioni sulla lista Gfoss