Pentru a înțelege mai bine ce presupune o aplicație web ArcGIS, vom porni de la harta creată anterior și funcția Create app > Instant Apps disponibilă în Map Viewer
Selectați modelul Basic, configurați componentele incluse, apoi publicați aplicația web și copiați link-ul generat într-o fereastra de browser.
Aceasta este o metodă simplă și rapidă de a crea aplicații web folosind portalul ArcGIS, dar nu este cea mai versatilă în cazul aplicațiilor mai complexe, cu funcționalități și integrări specifice. Enter ArcGIS for Developers:
Pentru a dezvolta o aplicație web folosind direct SDK-ul și API-urile ArcGIS, aveți nevoie de un API KEY generat pe contul Location ArcGIS.
JavaScript este un limbaj de programare aparent simplu (se poate face rapid o aplicație simplă, rulează în browser, nu necesită un toolkit avansat) dar în același timp complex (programare asincronă, multi-paradigmă). Există numeroase framework-uri de JavaScript pentru dezvoltarea aplicațiilor web, atât pe partea de front end (Angular, Vue, React), cât și de back end (Node.js).
Pentru acest laborator, vom realiza o aplicație simplă în browser, folosind SDK-ul ArcGIS pentru JavaScript, și un tutorial pas cu pas. Nu sunt necesare cunoștințe avansate de JavaScript, dar pentru o mai bună înțelegere a limbajului de programare și a modului de organizare a unei aplicații web, puteți consulta tutoriale disponibile online:
SDK-ul ArcGIS are la bază toolkit-ul Dojo și este construit pe bază de module ce suportă încărcare modulară dinamică (AMD) prin require.js.
Pentru a începe lucrul cu ArcGIS Maps SDK for JavaScript, găsiți aici un setup minimal pentru a afișa o hartă: Display a map
Structura aplicației ArcGIS are la bază sistemul modular bazat pe Dojo:
require([ "esri/config", "esri/Map", "esri/views/MapView" ], function(esriConfig, Map, MapView) {
Pentru a vă putea testa codul puteți folosi Sandbox-ul codepen.io Pentru a salva proiectele realizate în CodePen este necesar să vă creați un cont gratuit.
În proiecte mai complexe, separarea fișierelor (.html, .css, .js) permite o mai bună organizare a aplicației, și facilități de formatare și verificare a sintaxei în cazul folosirii unui IDE (de ex. Visual Studio Code).
Inițializați aplicația și afișați harta folosind ArcGIS Maps SDK for JavaScript:
https://developers.arcgis.com/javascript/latest/display-a-map/
Adăugați modulul esri/widgets/Locate
pentru a integra funcția de localizare și urmărire prin geolocație:
https://developers.arcgis.com/javascript/latest/display-your-location/
Se pot adăuga elemente grafice definite prin coordonate geografice (latitudine, longitudine). Aceste elemente definesc un layer grafic, ce poate fi gestionat direct la nivel de aplicație.
Elementele grafice de tip Point
, Polyline
, Polygon
se definesc prin coordonate și simboluri, și sunt afișate pe hartă folosind un obiect de tip Graphic
.
https://developers.arcgis.com/javascript/latest/add-a-point-line-and-polygon/
Se pot adăuga layere din surse externe în diferite moduri:
FeatureLayer
GeoJSONLayer
RasterLayer
Adăugați modulul esri/layers/FeatureLayer
pentru a integra layere de tip FeatureLayer
.
https://developers.arcgis.com/javascript/latest/add-a-feature-layer/
Adăugați modulul esri/layers/GeoJSONLayer
pentru a integra layere dintr-un fișier GeoJSON.
https://developers.arcgis.com/javascript/latest/sample-code/layers-geojson/
esri/layers/GeoJSONLayer
se pot integra layere din surse externe, fără a fi necesară crearea unui FeatureLayer pe platforma ArcGIS. Fișierul GeoJSON poate fi hostat pe un server, independent de platforma ArcGIS.
Layerele adăugate pot fi configurate programatic din aplicație.
https://developers.arcgis.com/javascript/latest/style-a-feature-layer/
Popup-urile pot fi configurate programatic din aplicație.
https://developers.arcgis.com/javascript/latest/display-a-pop-up/
Creați o (singură) aplicație web care să includă toate funcționalitățile din planul de laborator. Adăugați toate resursele specificate în tutorial.