calcolo di coordinate geografiche

Buongiorno Carlo, non leggo bene le coordinate dei punti A e B nel tuo post di ieri, potresti rimetterle? Se poi mi dici anche a quale distanza si trova X da uno dei due punti, ti svolgo i calcoli in questi giorni (probabilmente non nel week end)...
 
Quel che volevo dire, prendendo un esempi: se hai un segmento pari a 5, lo lasci com'è oppure fai due segmenti da 2 e 3? Nel qual caso, il segmento più piccolo lo posizioni da una parte o dall'altra? Ti è indifferente?
questa domanda sinceramente non l'ho capita...
allora, se il segmento è pari a 5, cioè la distanza fra i due punti di coppia è pari a cinque, e supponendo di avere settato a 3 il valore di soglia, è chiaro che in quella coppia di punti andrà inserito un punto interpolato (dico uno in quanto la divisione 5:3=1,2 ed essendo la parte intera di questo risultato uguale a uno, tale valore di uno rappresenta il numero di punti di interpolazione da inserire nella coppia); e questo punto di interpolazione deve essere calcolato in modo tale che la sua posizione geografica, cioè le sue coordinate, coincidano esattamente con i 3 quinti della distanza totale dei due punti di coppia considerati; pertanto la coppia di punti "autentici" iniziale A-B, dopo l'interpolazione diventa una terna di punti A-C-B, dove C rappresenta un punto traccia (interpolato) la cui posizione geografica si trova a 3 quinti della distanza che separa il punto A dal punto B.
 
Ok, ma capisci che la funzione matematica è la stessa se vuoi ottenere 2+3 oppure 3+2 per comporre 5, però trattandosi di punti geografici, vai a individuare due luoghi ben diversi, quindi mi chiedevo se per te fosse indifferente.
 
ciao Pegasus 2000! intanto grazie per la disponibilità e la competenza....
ho provato a seguire i calcoli del tuo esempio con i miei dati reali ma non ci sono riuscito...
potresti per favore rifarmi questi calcoli con in dati di due punti reali che ti trascrivo qui sotto?
Punto A: latitudine N 45,80951 longitudine W 11,76212 (notazione decimale)
Punto B: latitudine N 45,80942 longitudine W 11,76218 (notazione decimale)
il valore di soglia è pari a 4 metri.
si tratta quindi di:
- calcolare la distanza in metri fra i due punti;
- dividere la distanza per il valore di soglia
- se il risultato della divisione è pari a zero o negativo, non si deve fare niente;
- se il risultato della divisione è positivo, la parte intera del risultato della divisione rappresenta come detto il nr. di punti "interpolati" da inserire nella coppia A-B a partire da A;
supponendo (ma questo ti deve risultare dai calcoli) che la parte intera del risultato della divisione della distanza fra i due punti per il valore di soglia sia ad esempio uguale a 2, dovresti quindi per favore calcolare le coordinate del primo punto da interpolare piazzandolo a 4 metri di distanza da A, e poi passare a calcolare le coordinate del secondo punto da interpolare piazzandolo a 8 metri da A.
se avrai la gentilezza di rifare questi calcoli sui valori che ti ho postato, questo sarebbe molto importante per aiutarmi a capire bene il procedimento di calcolo...
Grazie per la tua pazienza e...spero di leggerti presto!
Luigi
 
Ultima modifica:
Buonasera Luigi,
te lo faccio volentieri il calcolo, ma ora non posso per una serie di motivi:

1) sono dallo smartphone e non ci vedo un kaiser;
2) il mi' figliolo (per dirlo alla toscana) di tre anni e mezzo ha il raffreddore e ogni dieci secondi mi chiede di pulirgli il naso, anche se presumibilmente non gli cola;
3) mi sono ingurgitato una pizza ai wurstel e se mi metto alla scrivania è un casino;
4) varie ed eventuali.

Ovviamente ti sto dicendo tutto in modo scherzoso (è la mia indole), non per farti pesare la richiesta. Anche perché ormai è diventata una sfida, a quanto pare non solo per me... ;)

Se puoi aspettare lunedì, perché probabilmente neppure domani riuscirò a farteli...

Ah, dimenticavo, molto piacere, io sono Riccardo.
 
potresti per favore rifarmi questi calcoli con in dati di due punti reali che ti trascrivo qui sotto?
Punto A: latitudine N 45,80951 longitudine W 11,76212 (notazione decimale)
Punto B: latitudine N 45,80942 longitudine W 11,76218 (notazione decimale)
il valore di soglia è pari a 4 metri.
Le coordinate che hai postato, anche se in formato decimale, sono espresse in gradi, per lavorare con distanze in metri bisogna quindi convertirle in coordinate metriche UTM.

Ho fatto qualche conto in un foglio exel,

4f47c1393792160.jpg
clicca sull'immagine per ingrandire

in sostanza dopo aver convertito le coordinate dei punti A e B in formato metrico ho calcolato con Pitagora la distanza fra i 2 punti, che mi risulta essere 11,028549 mt.

Poi ho calcolato il rapporto fra la differenza delle coordinate X ed Y dei 2 punti e la distanza risultante, ottenendo questi valori:

0,453369 per l'asse X
-0,89132 per l'asse Y.

Ho moltiplicato i valori di cui sopra per 4 ed 8, ho sommato algebricamente questi valori alle cooordinate del Punto A ed ho ottenuto le coordinate dei punti C e D rispettivamente distanti 4 ed 8 metri dal punto A.

Oppure si possono sommare i valori relativi a 4 metri ad ogni punto intermedio successivo al primo.

Ho ricalcolato con Pitagora la distanza fra i punti A, C, D e B ed i conti tornano (salvo errori ed omissioni :))

Il foglio exel che ho postato è solo una bozza, basta predisporlo per il calcolo dei punti intermedi fra una serie di punti.

Come già scritto bisogna però prima convertire le coordinate da Gradi a coordinate UTM, e riconvertirle da UTM a Gradi dopo il calcolo.

Per la conversione ho usato un foglio exel trovato in rete inserendo manualmente le coordinate dei punti. Bisognerebbe trovare un programma che consenta di convertire una serie di punti, se trovo qualcosa ti faccio sapere.

francesco

P.S.
Hai scritto coordinata W, presumo sia E, non cambia comunque nulla nei conti.
 
Siete semplicemente fantastici!!!

E l’unica cosa che sono certo di avere capito leggendo le vostre risposte è che a far bene dovrei tornare sui banchi della terza elementare e ripartire da capo con le caselline…

Dunque, anzitutto ringrazio in modo particolare Frder e Pegasus 2000 per i loro contributi che per me rappresentano un passo decisivo verso la comprensione teorica di come dovrebbe funzionare l’algoritmo di calcolo da cablare nelle celle di un foglio Excel; come dicevo questi calcoli riguardano dei file gpx con migliaia di punti e quindi è assolutamente necessario trovare una soluzione per automatizzare completamente il procedimento di “interpolazione” dei punti traccia.

In effetti ora sono curioso di leggere anche i risultati dei calcoli di Francesco (pegasus 2000), che ringrazio per la sua cordialissima disponibilità e anche per quell’accento toscano beffardo e irriverente che conosco bene visto che da oltre quarant’anni ho imparato a convivere con una senese purosangue della peggiore specie…, sono curioso dicevo sia perché mi sembra di avere capito che lui e Frder hanno seguito due procedimenti diversi, sia perché la distanza calcolata da Frder fra i due punti dati discorda parzialmente con la distanza indicata dal software 3D Route Builder che utilizzo per visionare i file GPX; la cosa mi stupisce non tanto per la differenza in se stessa, che pure è notevole (10,08 di Route Builder contro 11,02… di Frder), ma soprattutto perché mi sembra, dico mi sembra, di capire che il procedimento di Frder si basa su una superficie piana il ché in teoria dovrebbe, ma non ne sono affatto sicuro, condurre ad una “sottostima” della distanza rispetto ai calcoli su una superficie curva quale in effetti è quella della terra. Ai miei fini però della curvatura della terra me ne frego altamente perché la sua influenza su distanze dell’ordine di pochissime decine di metri è assolutamente trascurabile, almeno credo e spero…

Il mio intento a questo punto è quello di cercare di adottare il modo più semplice e lineare fra quelli da voi indicati (ammesso che le varie soluzioni siano effettivamente diverse fra loro…) per cercare di automatizzare il tutto in un foglio Excel….

Vi ringrazio ancora per la vostra straordinaria competenza e la vostra graditissima disponibilità.

Luigi
 
....sia perché la distanza calcolata da Frder fra i due punti dati discorda parzialmente con la distanza indicata dal software 3D Route Builder che utilizzo per visionare i file GPX; la cosa mi stupisce non tanto per la differenza in se stessa, che pure è notevole (10,08 di Route Builder contro 11,02… di Frder), ma soprattutto perché mi sembra, dico mi sembra, di capire che il procedimento di Frder si basa su una superficie piana il ché in teoria dovrebbe, ma non ne sono affatto sicuro, condurre ad una “sottostima” della distanza rispetto ai calcoli su una superficie curva quale in effetti è quella della terra.
Le coordinate in Gradi che hai postato sono approssimate a circa 1 metro, molto probabile che Route Builder invece utilizzi coordinate con un maggior numero di decimali e quindi più precise, da qui la differenza della misura che guarda caso è proprio intorno al metro.

D'altra parte ho verificato il calcolo della distanza in un paio di siti online usando le coordinate in Gradi ed ottengo lo stesso risultato che ottengo con le coordinate UTM.

http://www.csgnetwork.com/gpsdistcalc.html

Per distanze cosi brevi ovviamente non c'è nessuna differenza significativa fra la misura della distanza su un piano orizzontale e quella su una superficie curva.

francesco
 
Ultima modifica:
ah! certo Francesco, e comunque non è scritto da nessuna parte che 3D Route Builder sia la Verità rivelata... giustamente i risultati variano anche in funzione dei decimali considerati....
fra l'altro nel mio caso queste differenze sono del tutto irrilevanti, perché la cosa essenziale è che i punti traccia siano distribuiti in modo uniforme, solo questo per me è importante...
 
Mi sembra di aver capito che la longitudine sia E invece che W. Ma cambia poco per i calcoli, al limite se fossero stati punti ad W di Greenwich, avrei messo un segno meno davanti...

Poi ha ragione Francesco: il mio metodo funzione bene con la geometria analitica, ma se vuoi fare dei calcoli che abbiano un senso, bisogna prima convertire le coordinate. Ad esempio (sempre che non abbia sbagliato i conti, fatti velocemente con la calcolatrice del cellulare) la distanza tra i due punti con le coordinate spurie è pari a 0,000108166538.

Non ho mai avuto bisogno di convertire coordinate, ma adesso capisco cosa intendessero dire i vari software dei navigatori GPS quando mi chiedevano quale "datum" volessi usare... :lol:
 
Ultima modifica:
Ciao Luigi,

Punto A: latitudine N 45,80951 longitudine E 11,76212 (notazione decimale)
Punto B: latitudine N 45,80942 longitudine E 11,76218 (notazione decimale)
Il valore di soglia è pari a 4 metri.

Converto con la calcolatrice le coordinate decimali da te fornite in gradi, primi e secondi ed ottengo

Punto A (45°48'34,24" N ; 11°45'43,63" E)
Punto B (45°48'33,91" N ; 11°45'43,85" E)

Inserisco i dati nel tool http://www.ultrasoft3d.net/Conversione_Coordinate.aspx per convertire le coordinate in metri ed ottengo

Punto A [ 5076792,528 N (a) ; 714692,529 E (b) ]
Punto B [ 5076782,508 N (c) ; 714697,63 E (d) ]

La distanza tra i due punti è:

D^2 = 100,4004 + 26,020201 = 126,420601

D = 11,24369161 metri

Cambio i valori delle coordinate dei punti A e B in a,b,c e d per semplificarmi i calcoli... ;)

A questo punto cerco la retta passante per A e B

( Y - b ) ( X - a )
-------- = -------
( d - b ) ( c - a )

da cui ricavo l'equazione (tralasciando i vari passaggi)

Y = (33.057.930 - 5,101X)/10,02

Divido la distanza trovata prima per il valore di soglia:

11,24369161 : 4 = 2,810922903

A questo dovrei trovare le coordinate dei punti a 4 e a 8 metri rispetto al punto A utilizzando la formula delle distanze, ma prima di fare ciò ho provato a sostituire il valore 5076792,528 (a) nell'equazione della retta e mi dà un risultato diverso da 714692,529 (b). C'è qualcosa che non mi torna e prima di imputt... ehm impantanarmi in calcoli astrusi mi fermo qua...

Ho voluto provare ad usare anche Google Maps e sembra che il risultato della distanza sia in linea con quanto trovato da me e Francesco.

Distanza%20AB.jpg


Ti converrebbe effettuare un controllo con una rotella metrica, tanto la distanza non è eccessiva... :lol:
 
Ultima modifica:
grazie a tutti ragazzi, e scusate questo lungo blackout; il mio pc si è beccato il tifo petecchiale e da oltre una settimana è in rianimazione....
dunque, tirando le somme sulla base delle vostre risposte mi sono reso conto che mi trovo esattamente nella condizione alla quale alludeva il grande Alighieri "... sua disianza vuol volar senz'ali!...."; in altre parole ho capito che la complessità dei calcoli necessari per venire a capo di questo casino non è assolutamente compatibile con una semplice procedura di importazione dei record in un foglio Excel, elaborazione, ed esportazione dei dati....
eventualmente l'approccio deve essere di tipo diverso, cioè scrivere un software ad hoc capace di leggere in input i valori di latitudine, longitudine ed elevazione dei singoli track point del file gpx di cui dispongo, elaborarli nel senso descritto, ovvero calcolare per "interpolazione" i nuovi track point a distanza regolare dal primo termine di ogni coppia di track point "reali" presente nel file e creare in output un nuovo file contenente all'interno di ogni coppia di punti "reali" i nuovi track point calcolati per "interpolazione".
La cosa è senza dubbio fattibile da chi dispone delle competenze necessarie sia a livello di tecnica di programmazione che a livello di calcoli teorici, ma a questo punto tanto vale, prima di percorrere questa ipotesi, sondare la possibilità di ottenere dal produttore (Hybridgeotools) del software 3D Route Builder (che già è in grado di calcolare ed inserire in un file gpx dei nuovi track point "interpolati" esattamente a metà strada della coppia di punti considerata), una versione personalizzata del software funzionante secondo le specifiche descritte nel topic.
In questi giorni mi metterò in contatto con Hybridgeotools e vediamo cosa rispondono.
se loro non saranno disponibili per questa personalizzazione, magari ne riparliamo su questo Forum per vedere se qualcuno di voi è in grado di indirizzarmi verso un programmatore con le competenze necessarie per venire a capo di questo casino...
in ogni caso grazie infinite a tutti voi per la vostra gradita disponibilità...
Luigi
 
il programma di per sè non è complesso. una volta capito il formato d'origine ci vogliono non più di 20 righe di script per ottenere il risultato.
il problema è che io non programmo da un po' di anni e sono piuttosto arrugginito :D
se non risolvi altrimenti, iscriviti al forum di HTML.it, dove troverai sicuramente qualche programmatore disposto ad aiutarti.
 
Intanto nel frattempo anch'io ho scoperto per quale motivo se inserivo il valore di X non ottenevo il corrispondente valore di Y nelle coordinate...

Molto semplice: il valore che calcolavo era sì giusto, ma su una RETTA non sulla SUPERFICIE TERRESTRE quindi, per forza di cose, l'equazione mi sputava fuori valori molto vicini a quelli reali ma approssimati...

Almeno credo che sia così... :rofl:
 
Ultima modifica:
salve a tutti ragazzi!
fortunatamente la ditta olandese si è dichiarata disponibile a fare le personalizzazioni richieste al loro software, e quindi il problema è risolto!
grazie a tutti voi e complimenti per la vostra competenza!

Luigi
 
Alto Basso