[Talk-it] [forse OT] Calcolo del livello di zoom necessario

Luca 'remix_tj' Lorenzetto lorenzetto.luca a gmail.com
Dom 23 Nov 2014 13:56:20 UTC


2014-11-21 21:11 GMT+01:00 sabas88 <sabas88 at gmail.com>:
>
>
> Il giorno 21 novembre 2014 19:20, Luca 'remix_tj' Lorenzetto
> <lorenzetto.luca at gmail.com> ha scritto:
>>
>> Ciao,
>>
>> sto lavorando ad un programmino per fare reporting delle mie
>> escursioni mostrandole su una mappa. Sto lavorando per avere delle
>> tiles renderizzate con maperitive per poterle anche visualizzare
>> offline.
>> Purtroppo, come ben sapete, renderizzare tutti i livelli di zoom
>> possibili è decisamente pesante, sia in termini di risorse che di
>> spazio.
>>
>> Avrei bisogno quindi di calcolare il livello di zoom ottimale per
>> visualizzare la traccia gpx, data un ipotetica dimensione dello
>> schermo. In questo caso potrei limitare il numero di livelli di zoom
>> da renderizzare.
>> Ho visto che le librerie, tipo leaflet e openlayers, fanno questo
>> calcolo, ma non ho capito come.
>>
>> Avete qualche idea?
>
>
> Idea di algoritmo:
> - step1: bounding box della traccia (un ciclo for con cui trovi minimo e
> massimo delle coordinate);
> - step2: dal bounding box calcoli le dimensioni (cfr
> https://github.com/sabas/sabas.github.io/blob/master/tools/bboxcalculator.html
> o live http://stefanosabatini.eu/tools/bboxcalculator/ )
> - step3: seguendo la pagina segnalata da emmexx, una tile corrisponde a
> 256px, con il rapporto metri/pixel trovi quante tile coprono quella distanza
> ad un dato livello
>
> (per sapere quante tile stanno sullo schermo ragionamento simile, una tile =
> 256px di lato se non è retina, altrimenti 4 tile coprono una tile normale)
>


Grazie mille, mi sono stati molto utili i vostri suggerimenti.

Intanto ho applicato l'algoritmo allo script che genera i report, poi
quando integrerò la parte di maperitive mi sarà utile anche in quello
:-)

https://github.com/remixtj/makemap.py/commit/09e9db12c69b5334124b6fcc67d397947c05e15e

Ciao ciao,

Luca

-- 
"E' assurdo impiegare gli uomini di intelligenza eccellente per fare
calcoli che potrebbero essere affidati a chiunque se si usassero delle
macchine"
Gottfried Wilhelm von Leibnitz, Filosofo e Matematico (1646-1716)

"Internet è la più grande biblioteca del mondo.
Ma il problema è che i libri sono tutti sparsi sul pavimento"
John Allen Paulos, Matematico (1945-vivente)

Luca 'remix_tj' Lorenzetto, http://www.remixtj.net , <lorenzetto.luca at gmail.com>



Maggiori informazioni sulla lista Talk-it