Google maps API

Forum dedicato alla programmazione.

Moderatore: Staff

Regole del forum
1) Citare in modo preciso il linguaggio di programmazione usato.
2) Se possibile portare un esempio del risultato atteso.
3) Leggere attentamente le risposte ricevute.
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Rispondi
Avatar utente
rfringuello89
Linux 2.x
Linux 2.x
Messaggi: 246
Iscritto il: sab 21 feb 2009, 18:47
Nome Cognome: Renato Fringuello
Slackware: 64 current
Kernel: 3.13.3
Desktop: kde 4.12.4 [Alien]

Google maps API

Messaggio da rfringuello89 »

Salve a tutti!
Sapete se esiste un'API o una libreria che consenta di scoprire se una serie di punti (definiti con latitudine e longitudine) fanno parte di una precisa circonferenza tracciata a partire da un punto. Ovvero immaginando la geolocalizzazione, a partire da dove mi trovo io vorrei sapere se una serie di punti appartengono alla circonferenza tracciata a partire dalla posizione corrente con un certo raggio.

Grazie a tutti ;)
"When you know Slackware, you know Linux… when you know Red Hat, all you know is Red Hat."

Avatar utente
ZeroUno
Staff
Staff
Messaggi: 5441
Iscritto il: ven 2 giu 2006, 14:52
Nome Cognome: Matteo Rossini
Slackware: current
Kernel: slack-current
Desktop: ktown-latest
Distribuzione: 01000000-current
Località: Roma / Castelli
Contatta:

Re: Google maps API

Messaggio da ZeroUno »

fermo restando che non conosco la risposta per eventuali api prefatte, che c'entra google map?

Io direi che basta trattare il mondo come un piano cartesiano; ti prepari la formula del cerchio, che non ricordo a memoria ma dovrebbe essere una semplice disequazione di secondo grado tipo (x-A)^2+(y-B)^2<=R in cui A e B sono le coordinate del centro del cerchio, R é il raggio del cerchio, x e y le coordinate che vuoi testare (ma potrei sbagliare visto che l'ho studiata c.a. 20 anni fa).
Metti il tutto in una if del tuo programma e hai fatto.

Se il cerchio é largo diverse migliaia di kilometri il risultato potrebbe risulta meno attendibile ai bordi del cerchio; potresti trovare problemi ai poli e nelle vicinanze della latitudin4e 0/360
Packages finder: slakfinder.org | Slackpkg+, per aggiungere repository a slackpkg

Codice: Seleziona tutto

1011010 1100101 1110010 1101111 - 0100000 - 1010101 1101110 1101111

Avatar utente
rfringuello89
Linux 2.x
Linux 2.x
Messaggi: 246
Iscritto il: sab 21 feb 2009, 18:47
Nome Cognome: Renato Fringuello
Slackware: 64 current
Kernel: 3.13.3
Desktop: kde 4.12.4 [Alien]

Re: Google maps API

Messaggio da rfringuello89 »

Si ovviamente ho omesso di scrivere che l'idea riguarda un APP android che dovrebbe contenere una parte con google maps, quindi l'idea era capire se alcuni luoghi stanno entro una certa distanza (ovvero entro un certo raggio) da dove si trovare lo smartphone.

Ho visto che esiste una particolare libreria che permette di "disegnare" su google maps delle aree ma devo ancora indagare se è possibile sfruttarla in modo semplice per sapere quali punti fanno parte o meno di essa.

Per quanto riguarda la formula algebrica, ne sono ovviamente a conoscenza ma volevo evitare di eseguire calcoli matematici in quanto potrebbero esserci centinaia di punti...

Grazie e attendo aiuto!!
"When you know Slackware, you know Linux… when you know Red Hat, all you know is Red Hat."

Avatar utente
Trotto@81
Iper Master
Iper Master
Messaggi: 3559
Iscritto il: sab 26 giu 2004, 0:00
Nome Cognome: Andrea
Slackware: Slackware64 14.2 bet
Kernel: default
Desktop: KDE 4.14.14
Località: Monasterace M. (RC)
Contatta:

Re: Google maps API

Messaggio da Trotto@81 »

Sinceramente non ho capito cosa tu voglia fare. Le coordinate terrestri sono riferite al centro della Terra e valgono per una sfera. La Terra non è piatta!

Avatar utente
lennynero
Linux 3.x
Linux 3.x
Messaggi: 641
Iscritto il: lun 3 mag 2004, 0:00
Nome Cognome: Luigi Picaro
Slackware: 15.0-x64
Kernel: 6.1
Desktop: Xfce-4.16
Località: Salerno

Re: Google maps API

Messaggio da lennynero »

Come diceva ZeroUno il tuo problema si risolve semplicemente con una formula matematica. Io ho esperienza con le API di Google e ho costruito una logica simile a quella che vuoi tu, quindi posso dirti che è fattibile. In sostanza io ho creato una funzione che controlla se un poligono contiene un dato punto; magari a te non interessa questo nello specifico, ma puoi semplicemente usare la formula che descrive il poligono(cerchio, quindi semplice nel tuo caso) e successivamente verificare se il punto è contenuto. Non ho la formula sottomano, ma con un pò di algebra e google search ci metterai un attimo per scriverla. Ricordati che il limite, nel software, è dato solo dalla creatività di chi lo scrive;)

Avatar utente
puzuma
Linux 2.x
Linux 2.x
Messaggi: 482
Iscritto il: mar 4 lug 2006, 17:14
Nome Cognome: Stefano Salvador
Slackware: current
Kernel: 2.6.32.2
Desktop: KDE 4.4.0
Località: Udine
Contatta:

Re: Google maps API

Messaggio da puzuma »

rfringuello89 ha scritto:Si ovviamente ho omesso di scrivere che l'idea riguarda un APP android che dovrebbe contenere una parte con google maps, quindi l'idea era capire se alcuni luoghi stanno entro una certa distanza (ovvero entro un certo raggio) da dove si trovare lo smartphone.
la libreria standard per fare questi tipo di calcoli (e che tiene conto della corretta forma della terra) è GDAL: http://www.gdal.org . Se la tua circonferenza non è molto estesa puoi approssimare la terra ad un piano e usare della semplice trigometria, però devi stare attento che non puoi usare le coordinate geografiche (quelle espresse in gradi) ma coordinate proiettate (di solito espresse in metri). Puoi passare dalle prime alle seconde sempre con GDAL o PROJ4. Semplificando al massimo puoi anche approssimare la terra ad una sfera (quello che fa google) e utilizzare formule molto semplificate.

Tutto dipende dalla precisione che vuoi avere e da quanto è estesa la tua circonferenza.
The quiet ones are the ones who change the world. The loud ones only take the credit.

Rispondi