Cosa significa mappa piastrellata vettoriale?


11

Sto lavorando a un'applicazione che esegue il rendering di GeoJSON nella mappa OpenLayers.

L'idea è di non scaricare immagini PNG da servizi esterni (OSM o Bing) ma di avere informazioni geografiche nel file GeoJSON e renderle in tempo reale. Dalla mia ricerca questa tecnologia sembra essere chiamata 'vector tile'. Ho dato un'occhiata ad alcuni dei siti Web dei ragazzi come http://openstreetmap.us/~migurski/vector-datasource/ e http://mike.teczno.com/notes/postgreslessness-mapnik-vectiles.html (stesso tipo).

Il suo lavoro sembra essere quello che voglio ottenere, ma non capisco come funzioni.

Da quanto ho capito, poiché utilizzo OpenLayers, un client recupera i dati della mappa in formato GeoJSON e li trasferisce in vettori utilizzando il parser GeoJSON di OpenLayers. Ma non sono solo i termini usati in questa tecnologia.

Nel suo blog ha descritto che ci sarà un server che fornisce dati che si chiama 'MapNik Vector Tile'formato. Qual è la differenza tra la piastrella vettoriale e GeoJSON? significa semplicemente GeoJSON piastrellato che corrisponde al rettangolo di selezione? O è un nuovo tipo di immagine?

Se dai un'occhiata al suo esempio, puoi osservare che le etichette sulle strade sono allineate con i tratti delle strade. Ho provato a fare lo stesso su OpenLayer modificando il codice Renderer in OpenLayers ma sono solo in grado di ruotare le etichette ma non farle piegare lungo le strade (ad esempio, quando le strade hanno angoli, la mappa visualizza le etichette a forma di "L". * * + reso molto bene!

Sembra che Mike (l'autore del blog) usi una mappa diversa oltre a OpenLayers ma non riesco a capire come abbia fatto. Ci sono così tante domande da porre, ma vorrei capire prima quanto sopra.


Ho difficoltà a comprendere l'obiettivo della tua domanda. Vuoi sapere quali tessere vettoriali sono in senso generale? Oppure vuoi conoscere i vari tipi di tessere vettoriali, perché dovresti usarle e quale formato sarebbe il migliore per te?
Devdatta Tengshe

@DevdattaTengshe Alla fine, vorrei sapere come posso implementare la mappa piastrellata vettoriale in OpenLayers. Ma dalla mia ricerca sembra che questa tecnologia sia sperimentale. Ma mi chiedo cosa sia diverso tra geoJSON piastrellato e MVT o altri tipi di tessere vettoriali. cosa sono le tessere vettoriali? esiste un formato per i vettori? o è solo un termine? aiutami sono molto confuso :(
Eugene Yu,

Risposte:


5

L'idea di trasferire i dati vettoriali anziché le immagini e renderli sul lato client non è nuova. Ci sono già molti strumenti / progetti che lo fanno. Vedi ad esempio questo plugin di depliant , polymap e anche il progetto cartagen . Lo sviluppatore OpenLayer sta cercando di introdurlo nella versione (tanto attesa) 3.0 . Ognuna di queste iniziative usa il proprio formato di tessera vettoriale (incluso quello mapnik) - uno standard dovrebbe sicuramente emergere in futuro.

Se sei interessato ai principi alla base e ad alcune pubblicazioni pertinenti, dovresti dare un'occhiata a questo eccellente documento (sì, faccio l'autopromozione :-):

Gaffuri, J., 2012. Verso la mappatura web con dati vettoriali. In: Xiao, N., Kwan, M.-P., Goodchild, MF, Shekhar, S. (Eds.), Scienze dell'informazione geografica. Vol. 7478 degli appunti delle lezioni in Informatica. Springer Berlin Heidelberg, Berlino, Heidelberg, Ch. 7, pagg. 87-101.

Una versione gratuita del documento è disponibile qui . Per riassumere: efficiente mappatura web vettoriale = formato intelligente per dati e stili + generalizzazione dipendente dallo zoom + (piastrellatura o indicizzazione spaziale). Un caso d'uso è visibile qui .


1

A quanto ho capito, il formato di tessera vettoriale viene utilizzato per alimentare un renderizzatore di piastrelle come Mapnik o TileMill, invece di utilizzare un database, come Postgresql.

Le geometrie non sono rese in tempo reale da un'app client web come OpenLayers, non ancora, ma è un'area di ricerca interessante :-)


UTFGrid è un formato di piastrellatura vettoriale che supporta OpenLayers nel browser. Si prega di vedere questo esempio: openlayers.org/dev/examples/utfgrid.html
Devdatta Tengshe

1
Non c'è alcuna relazione con UTFGrid qui.
Laurent Jégou,

2
Dipende dalla tua definizione di tessere vettoriali. Vedi questo: gis.stackexchange.com/questions/15240/… E wiki.openstreetmap.org/wiki/Vector_tiles
Devdatta Tengshe

1
Oh, capisco. Ma c'è una tecnologia chiamata piastrellatura vettoriale che consente al lato client di rendere quei vettori semplicemente passando geoJSON non i PNG reali. questo sembra essere molto sperimentale al momento, ma credo che presto diventerà popolare ...
Eugene Yu,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.