IT:OSM Binary Format

From OpenStreetMap Wiki
Jump to: navigation, search
Help
Lingue disponibili
English Italiano

Contents

Formato binario OSM

Questa è una alternativa al formato XML comunemente utilizzato per la distribuzione dei dati cartografici OSM. Ci sono anche delle aggiunte per l'utilizzo in dispositivi mobili OSM_Mobile_Binary_Protocol.

Esso non si riferisce al formato OSMbin.

Il formato

La struttura di base di questo formato è costituita da una serie di blocchi binari che specificano la loro dimensione seguita da un tipo, seguito a sua volta dai dati codificati.

Per risparmiare spazio, i valori di longitudine e latitudine sono codificati come interi con segno a 32bit a partire dai valori decimali fino alla sesta cifra decimale (es. latitudine/longitudine * 1000000). Questo permette una precisione di ~11cm che soddisfa la maggior parte dei progetti cartografici. I campi Ora/Data sono specificati come il numero di secondi trascorsi dalla Unix Epoch (1 Gennaio 1970 00:00:00 GMT). Le stringhe sono troncate a 255 caratteri e sono specificate come una lunghezza seguita dai caratteri codificati in UTF8.

I nodi OSM non sono trasmessi nella loro totalità, bensì sono inclusi solamente i nodi significativi (nodi con meta dati aggiuntivi - punti di interesse).

I percorsi riducono i dati necessari ad essere trasmessi inviando solamente le posizioni dei nodi mediante coppie longitudine/latitudine, la prima coppia longitudine/latitudine utilizza 32bit e le seguenti sono i valori a 16bit dello scostamento rispetto alla posizione del nodo precedente, se lo scostamento è troppo grande allora vengono inseriti dei nodi immaginari per riempire la mancanza.

Testata

[dimensione del blocco=0x02 0x00 0x00 0x00] 0x05 0x3B

C'è una testata opzionale di 6 byte all'inizio di un file in formato binario OSM. (motivo della decisione: 0=O, 5=S, 3=M, B=B)

Questo indica semplicemente ai programmi di riconoscimento dei file che il contenuto è obf.

Punti di interesse (POI)

Percorsi

Relazioni

Utilizzo

Il formato binario OSM è stato progettato per i tipi di programma seguenti:

Non è stato progettato per:

E' ottimizzato per:

Questo formato è supportato dai seguenti programmi:

Personal tools
Namespaces
Variants
Actions
site
Toolbox