Esiste una libreria esistente per convertire le funzionalità ArcGIS in Json?


Risposte:


6

ArcGIS 10 ha la AsShapefunzione per la conversione GeoJSON a geometrie ArcPy, che imita Shapely s' AsShape, e oggetti della geometria ArcPy implementano lo __geo_interface__standard (anche da Shapely) per ottenere geometrie ArcPy indietro come GeoJSON.


Anche se questo è un buon momento, mi sarebbe piaciuto che usassero un'idea simile all'interfaccia IXMLSerializer, ma con Json. Più coerente e disponibile in tutte le lingue che possono utilizzare ArcObjects.
BlinkyBill l'

1
Potresti realizzare il tuo in ArcGIS 10 con IJSONWriter e JSONWriter CoClass: help.arcgis.com/en/sdk/10.0/Arcobjects_CPP/componenthelp/…
Jason Scheirer

arcpy AsShape / __ geo_interface__ è utile ma non passa nessun poligono
valveLondon

6

Dovresti dare un'occhiata a GeoJSON.Net di Vish: http://viswaug.wordpress.com/2008/05/11/geojsonnet-a-net-library-to-produce-geojson-output/

Dovrebbe essere abbastanza facile estenderlo per usare le geometrie ArcObjects.

Inoltre, puoi dare un'occhiata all'esportatore GeoJSON che ho fatto per SharpMap (dovrai Google che poiché StackExchange non mi consente di pubblicare un secondo collegamento ipertestuale). Gli oggetti geometrici in SharpMap hanno una struttura molto simile a quella di ArcObjects, quindi dovrebbe essere abbastanza facile estenderla.


Un sacco di buoni suggerimenti lì, ma come la maggior parte delle altre opzioni, dovrei scrivere la mia implementazione, che è la strada che ho seguito.
BlinkyBill,


1

La tua scommessa migliore è scrivere il tuo framework. Usa gli oggetti arco in modo da poter usare le geometrie memorizzate in qualsiasi tipo di geodatabase / shapefile / copertura. Non dovrebbe essere troppo difficile farlo.


1
È abbastanza facile scriverne uno per geometrie semplici, tanto meno quando è necessario supportare i casi più esotici. Questa è comunque la strada che ho percorso.
BlinkyBill l'

0

Non vedo alcuna libreria esistente, ma questa interfaccia C # REST di ArcDeveloper fornisce un inizio. C'è anche questo toolbox Python con licenza CC-AO per esportare una classe di caratteristiche in GeoJSON che dovrebbe adattarsi al conto, gestisce i cinque principali tipi di vettori.

Le specifiche GeoJSON sono semplici e non dovrebbero essere troppo onerose da implementare, se la cassetta degli attrezzi non soddisfa le tue esigenze.


Purtroppo l'opzione python, sebbene si adatti al conto, deve essere utilizzata in un contesto server, in cui l'utilizzo dell'oggetto geoprocessing crea problemi di threading e ridimensionamento.
BlinkyBill l'

0

ESRI ha questo script Python gratuito che converte da feature class a json, geojson o csv. esri2open


0

Un po 'di un'aggiunta tardiva, ma ho pensato che fosse un'aggiunta utile ...

Uso ArcGIS.PCL che funziona molto bene. Ti permette di interagire con ArcGIS e sputare una qualsiasi delle geometrie come GeoJson.

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.