GeoJSON: differenze tra le versioni

Da Wikipedia, l'enciclopedia libera.
Vai alla navigazione Vai alla ricerca
Contenuto cancellato Contenuto aggiunto
Nuova pagina: '''GeoJSON'''<ref>[http://geojson.org/geojson-spec.html specifiche del formato GeoJSON ]</ref> è un formato_aperto utilizzato per archiviare una collezione di geom...
(Nessuna differenza)

Versione delle 07:06, 22 mag 2014

GeoJSON[1] è un formato_aperto utilizzato per archiviare una collezione di geometrie spaziali il cui attributi sono descritti attraverso JavaScript Object Notation. Le geometrie possibili sono punti (come ad esempio indirizzi o toponimi), linee spezzate (come percorsi, strade e confini), poligoni (paesi, province, laghi), e collezioni multiple di queste tipologie. Le geometrie GeoJSON non devono però necessariamente rappresentare entità geofrafiche; i), e collezioni multiple di queste tipologie. Le geometrie GeoJSON non devono però necessariamente rappresentare entità geofrafiche: ad esempio, i software di navigazione assistita possono usarlo per descrivere l'area di copertura del servizio.[2]

TIl formato GeoJSON si differisce dagli altri standard Geographical_Information_System in quanto è scritto e mantenuto da un gruppo di lavoro di sviluppatori[3] e non da organi di standard internazionali.

Un formato molto interessante derivato da GeoJSON [[#TopoJSON|TopoJSON]. Si tratta di una estensione di questo formato di file che archivia topologie spaziali e, pertanto, genera file di dimensioni inferiori.

Storia

Il grouppo di lavoro e di discussione del formato GeoJSON è nato nel marzo 2007[4] è le specifiche finali del formato sono state completate nel giugno 2008.

Esempio

{
  "type": "FeatureCollection",
  "features": [
    {
      "type": "Feature",
      "geometry": {
        "type": "Point",
        "coordinates": [46.0677293, 11.1215698]
      },
      "properties": {
        "name": "Fontana dell'Aquila"
      }
    },
    {
      "type": "Feature",
      "geometry": {
        "type": "LineString",
        "coordinates": [
          [11.1212678, 46.0686443],[11.1212316,46.0688409]
        ]
      },
      "properties": {
        "lanes": 1,
        "name": "Via Rodolfo Belenzani"
      }
    },
    {
      "type": "Feature",
      "geometry": {
        "type": "Polygon",
        "coordinates": [
          [
            [11.1209262, 46.0676632],[11.1209201, 46.0676444],[11.1209473, 46.0675811],
            [11.1210082, 46.0674396],[11.1209909, 46.0674359],[11.1209669, 46.0674306],
            [11.120973, 46.067375],[11.1209798, 46.067318],[11.1209906, 46.067313],
            [11.1210021, 46.0673079],[11.1210102, 46.0672175],[11.1210154, 46.0670829],
            [11.1209979, 46.0670731],[11.1209861, 46.0670671],[11.121003, 46.0670034],
            [11.1210228, 46.0670051],[11.1210484, 46.0670073],[11.1216367, 46.0670503],
            [11.1216304, 46.0670981],[11.1217471, 46.0671064],[11.1218604, 46.0671144],
            [11.1218662, 46.0670763],[11.1218916, 46.0670783],[11.1218655, 46.0672963],
            [11.1218347, 46.0675014],[11.1218793, 46.0675034],[11.1219202, 46.0675053],
            [11.121918, 46.067554],[11.1220355, 46.0675565],[11.1220264, 46.067619],
            [11.1220237, 46.0676378],[11.1219858, 46.0676408],[11.121853, 46.0676517],
            [11.1217408, 46.0676621],[11.1215635, 46.0677421],[11.1214686, 46.0677385],
            [11.1213621, 46.0677348],[11.121226, 46.067723],[11.1210982, 46.067711],
            [11.1210937, 46.0677159],[11.1209933, 46.0677017],[11.1209337, 46.0676859],
            [11.1209262, 46.0676632]
          ]
        ]
      },
      "properties": {
        "name": "Piazza del Duomo",
        "surface": "cobblestone"
      }
    }
  ]
}

Geometries

Geometry primitives
Type Examples
Point
{
    "type": "Point", 
    "coordinates": [46.0677293, 11.1215698]
}
LineString
{
    "type": "LineString", 
    "coordinates": [
        [11.1212678, 46.0686443],[11.1212316,46.0688409]
    ]
}
Polygon
{
    "type": "Polygon", 
    "coordinates": [
        [[30, 10], [40, 40], [20, 40], [10, 20], [30, 10]]
    ]
}
{
    "type": "Polygon", 
    "coordinates": [
        [[35, 10], [45, 45], [15, 40], [10, 20], [35, 10]], 
        [[20, 30], [35, 35], [30, 20], [20, 30]]
    ]
}
Multipart geometries
Type Examples
MultiPoint
{
    "type": "MultiPoint", 
    "coordinates": [
        [10, 40], [40, 30], [20, 20], [30, 10]
    ]
}
MultiLineString
{
    "type": "MultiLineString", 
    "coordinates": [
        [[10, 10], [20, 20], [10, 40]], 
        [[40, 40], [30, 30], [40, 20], [30, 10]]
    ]
}
MultiPolygon
{
    "type": "MultiPolygon", 
    "coordinates": [
        [
            [[30, 20], [45, 40], [10, 40], [30, 20]]
        ], 
        [
            [[15, 5], [40, 10], [10, 20], [5, 10], [15, 5]]
        ]
    ]
}
{
    "type": "MultiPolygon", 
    "coordinates": [
        [
            [[40, 40], [20, 45], [45, 30], [40, 40]]
        ], 
        [
            [[20, 35], [10, 30], [10, 10], [30, 5], [45, 20], [20, 35]], 
            [[30, 20], [20, 15], [20, 25], [30, 20]]
        ]
    ]
}

Supported software

GeoJSON è supportato da moltissimo software GIS, inclusi OpenLayers,[5] Leaflet, Geoforge,[6] GeoServer,[7] GeoDjango,[8] GDAL,[9] Safe Software FME,[10] and CartoDB,[11] È inoltre possibile utilizzare GeoJSON con PostGIS[12] e Mapnik,[13] entrambi attraverso l'uso della libreria di conversione GDAL OGR. Bing Maps, Yahoo! e Google supportano anche GeoJSON nello loro API.

L'integrazione con Google Maps è possibile attraverso l'uso di una apposita libreria[14].

GitHub offre inoltre la visualizzazione dei dati in GeoJSON.[15]

TopoJSON

TopoJSON è una estensione di GeoJSON che codifica le geometrie in topologie spaziali. Le geometrie vengono pertanto rappresentante dividendole in archi.[16] Gli archi sono sequenze di punti, mentre le linee e i poligoni sono definiti come sequenze di archi. Ogni arco è definito una volta sola, ma può essere riutilizzato infinite volte per descrivere una geometria, l'effetto che se ne produce è una notevole riduzione di ridondanza di informazioni e, pertanto, la riduzione delle dimensioni del file.[17] Inoltre, TopoJSON facilità le applicazioni che fanno uso di topologia come la colorazione automatica di mappe o cartogrammi.

Una referenza dell'implementazione delle TopoJSON specifiche è disponibile attraverso linea di comando per generare un TopoJSON da GeoJSON (o ESRI Shapefiles) e un javascript client side JavaScript library per trasformare i dati archiviati in TopoJSON in GeoJSON. TopoJSON è inoltre supportato da famoso tool OGR dalla versione 1.11[18] e da PostGIS dalla versione 2.1.0.[19]

References

Sources