Se vuoi io ho scritto un codice Mathematica che fa un po' delle cose che richiedi. Il linguaggio è un po' particolare, ma dovresti capire:
{minlat, maxlat} = {...@latitudes, m...@latitudes} {minlon, maxlon} = {...@longitudes, m...@longitudes} minlat e maxlat sono per esempio la minima e la massima latitudine di una serie di punti che appartengono ad una traccia. {xStart, yStart} = Deg2Tile[maxlat, minlon, zoom] {xEnd, yEnd} = Deg2Tile[minlat, maxlon, zoom] dove la funzione Deg2Tile è la funzione che trasforma le coordinate nel numero di tile; la trovi nel wiki già pronta in vari linguaggi, per esempio: Deg2Num[lat_, lon_, zoom_] := {2^zoom (lon + 180)/360, 2^(zoom - 1) (1 - Log[Tan[lat Degree] + Sec[lat Degree]]/\[Pi])} Deg2Tile[lat_, lon_, zoom_] := IntegerPart[Deg2Num[lat, lon, zoom]] importiamo le immagini png: mapnikserver = "http://tile.openstreetmap.org"; osmarender = "http://tah.openstreetmap.org/Tiles/tile"; servername = mapnikserver Table[Import[ servername <> "/" <> ToString[zoom] <> "/" <> ToString[xi] <> "/" <> ToString[yi] <> ".png"], {yi, yStart, yEnd}, {xi, xStart, xEnd} in pratica sto facendo un doppio ciclo for, dove gli iteratori sono xi e yi, la stringa prodotta è del tipo: http://tile.openstreetmap.org/12/100/200 Il 30 aprile 2009 15.41, Alessandro De Noia <alessandro.den...@gmail.com> ha scritto: > Salve a tutti, > mi trovo in difficoltà per il mini software [1] che sto scrivendo per > OSMit. > Oltre alla mappa dinamica, per la quale ho già contattato Mario > Piccinelli, vorrei riuscire a produrre una mappa statica formata > dall'unione delle diverse tiles su cui posizionare un marker per ogni > evento. > Ho guardato la pagina del wiki [2] che spiega come, data una coordinata > e il livello di zoom, trovare la tile che contiene quel punto e come > navigare nel tile server a partire dalla tile principale, ma ho ancora > qualche dubbio: > 1) La coordinata usata per calcolare la tile si trova in un punto > qualunque della stessa o è l'angolo superiore sinistro? > 1a) Se si, significa allora che la tile viene generata al momento con > l'angolo superiore sinistro come coordinata? > 1b) Se no, esiste una funzione (formula?) che permette di calcolare > tutte le coordinate interne al tile? > 2) Dato un certo bounding box ed un certo livello di zoom è possibile > calcolare quante tiles servono per coprire tutta la zona (sul wiki la > formula (2^n)^2 si riferisce a tutto il pianeta)? > > Grazie > Alessandro De Noia aka Sdonk > > [1] http://sdonk.netsons.org/2009/04/eventi-sismici-sito-ingv/ > [2] http://wiki.openstreetmap.org/wiki/Slippy_map_tilenames > > _______________________________________________ > Talk-it mailing list > Talk-it@openstreetmap.org > http://lists.openstreetmap.org/listinfo/talk-it > _______________________________________________ Talk-it mailing list Talk-it@openstreetmap.org http://lists.openstreetmap.org/listinfo/talk-it