Conversion d'ArcGIS JSON en GeoJSONThere dans un navigateur pur
il y a 2 façons de faire
1) TERRAFORMER
Note: utilisation dans node.js et utilisation dans le navigateur sont différentes , détails voir lien
2) Esri / arcgis-to-geojson-utils
utiliser dans le navigateur, ArcgisToGeojsonUtils est une référence var globale du point d’entrée de ce module
<script src="https://unpkg.com/@esri/arcgis-to-geojson-utils@1.2.0/dist/arcgis-to-geojson.js"></script>
// parse ArcGIS JSON, convert it to GeoJSON
const geojson = ArcgisToGeojsonUtils.arcgisToGeoJSON({
"x":-122.6764,
"y":45.5165,
"spatialReference": {
"wkid": 4326
}
});
Toutefois, si vous souhaitez regrouper par vous-même, juste pour apprendre, suivez les étapes
a) Vous devez compiler tout le fichier source du module dans un seul bundle.js
rollup.js installer par
npm install --global rollup
puis allez dans votre dossier racine js lib, recherchez le fichier js du point d’entrée, dans ce cas c’est index.js
$ rollup index.js --format umd --name "esri_arcgis_to_geojson" --file bundle.js
Vous devriez trouver un nouveau fichier bundle.js dans votre répertoire racine.
Maintenant, dans le fichier html de votre navigateur, incluez ce fichier bundle.js
<script src='.../.../.../bundle.js'>
Vous pouvez l'utiliser maintenant par
// parse ArcGIS JSON, convert it to GeoJSON
var geojson = esri_arcgis_to_geojson.arcgisToGeoJSON({
"x":-122.6764,
"y":45.5165,
"spatialReference": {
"wkid": 4326
}
});
// take GeoJSON and convert it to ArcGIS JSON
var arcgis = esri_arcgis_to_geojson.geojsonToArcGIS({
"type": "Point",
"coordinates": [45.5165, -122.6764]
});enter code here
Rappelez-vous que esri_arcgis_to_geojson est le nom que vous avez appelé la lib
Cela devient le nom de la variable globale, disponible dans le navigateur.
Le truc, c’est que le processus de groupement ajoute une fonction d’implémentation instantanée comme (fonction xx {}), voici la partie supérieure de bundle.js
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ?
factory(exports) :
typeof define === 'function' && define.amd ? define(['exports'],
factory) :
(factory((global.arcgis_to_geojson = {})));
}(this, (function (exports) { 'use strict';
***ORIGINAL SOURCE CODE OF JS MODULE***
})));
arcgis-to-geojson-utils