heron mc - javascript for sysadmins and lazy developers

21
Heron Mapping Client JavaScript za sistemaše i lijene programere Davor Racić - Hrvatske šume d.o.o. HR OSGeo Meetup, Zagreb, 13.02.2014.

Upload: davor-racic

Post on 15-Apr-2017

187 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: Heron MC - JavaScript for sysadmins and lazy developers

Heron Mapping Client

JavaScript za sistemaše i lijene programere

Davor Racić - Hrvatske šume d.o.o.

HR OSGeo Meetup, Zagreb, 13.02.2014.

Page 2: Heron MC - JavaScript for sysadmins and lazy developers

GeoFLOSS u HŠ d.o.o. ???

● QGIS već u upotrebi od verzije 1.6● Modernizacija postojećeg ArcIMS rješenja – recesija,

troškovi održavanja, licence, troškovi održavanja...● 11/2012 – demonstracija GeoFLOSS rješenja –

OpenGeo Suite● 01/2013 – Projekt – Izrada WEB Mapping Servisa i

Geoportala HŠ d.o.o.● 09/2013 – Produkcija – Baza prostornih podataka,

Servisi i preglednik za korisnike HŠ d.o.o.● 06/2014 – Javni servisi – INSPIRE, NIPP

Page 3: Heron MC - JavaScript for sysadmins and lazy developers

Infrastruktura Geoportala HŠ d.o.o.

Page 4: Heron MC - JavaScript for sysadmins and lazy developers

Izazovi

● Odabir tehnologije za izradu web preglednika● Programeri zauzeti drugim projektima● Vrijeme – ograničavajući faktor● Lijeni sistemaš odgovoran za tehničku izvedbu

projekta

Page 5: Heron MC - JavaScript for sysadmins and lazy developers

Izvor: http://geotux.tuxfamily.org/index.php/en/geo-blogs/item/291-comparacion-clientes-web-v6

Page 6: Heron MC - JavaScript for sysadmins and lazy developers

Web GIS Client

● Framework za konfiguraciju GIS web preglednika ili GIS web aplikacija sa ili bez alata za authoring

● Konfiguracija je aplikacija - Aplikacija je konfiguracija● Primjeri – Heron MC, QGIS Web Client, MapGuide

OS Ajax Viewer, Mapbender

Page 7: Heron MC - JavaScript for sysadmins and lazy developers

Heron Mapping Client

● Open source WEB GIS klijent baziran na većinom client-side JavaScript bibliotekama – ExtJS, OpenLayers, GeoExt, GXP

● Manji, serverski dio komponenti većinom napisan u Python-u koji se na poslužitelju izvršavaju kao CGI skripte (OL AJAX Proxy, Download/upload komponenta, Mapfish print)

● Koristi kao izvor podataka u prvom redu OGC servise i sve ostalo što podržava OpenLayers

Page 8: Heron MC - JavaScript for sysadmins and lazy developers

Arhitektura Heron MC WEB aplikacije

Izvor: http://www.justobjects.nl/jo/assets/presentation/bolsena-2012-heron

Page 9: Heron MC - JavaScript for sysadmins and lazy developers

Arhitektura Heron Mapping Client-a

Izvor: http://www.justobjects.nl/jo/assets/presentation/bolsena-2012-heron

Page 10: Heron MC - JavaScript for sysadmins and lazy developers

Heron App

● Definiran je kao JSON/JavaScript objekt u config.js datoteci

● Definira opći izgled sučelja (Heron.layout objekt)● Uključivanje komponenti (widgets) i njihovih

svojstava● Komponente – Heron, GeoExt, GXP, ExtJS● Dodatne komponente● “Builder” Design Pattern (baziran na ExtJS 'xtype')

Page 11: Heron MC - JavaScript for sysadmins and lazy developers

Ugrađene komponente● Uobičajene komponente Web GIS preglednika –

mappanel, acivelayerspanel, pan, zoom, measure, featureinfo itd...

● PrintPreviewWindow – printanje uz Mapfish print na serverskoj strani

● Više opcija za feature info – GridPanel, InfoPanel, PopupPanel

● Više kontrola za pretraživanje – FormSearchPanel, QXP_QueryPanel

● Upload/editiranje/download prostornih podataka (shp, kml, gpx, GeoJSON, GML itd...)

Page 12: Heron MC - JavaScript for sysadmins and lazy developers

Komponente planirane u narednim verzijama

● Napredne mogućnosti crtanja i stiliziranja vektora● Dodavanje dodatnih OGC layera iz sučelja - katalog● Spremanje i učitavanje postavki – WMC● Fleksibilniji način odabira atributa i mapiranja naziva

atributa prostornih podataka● FeatureInfo – vertikalni prikaz● Google Street View integracija● Sublayers

Page 13: Heron MC - JavaScript for sysadmins and lazy developers

Komponente planirane u budućnost

● Integracija dodatnih komponenti iz OpenGeo SDK● WFS - editiranje podataka● WPS integracija● CSW katalog metapodataka i pretraživač

metapodataka

Page 14: Heron MC - JavaScript for sysadmins and lazy developers
Page 15: Heron MC - JavaScript for sysadmins and lazy developers

Full-featured Heron MC aplikacija

Page 16: Heron MC - JavaScript for sysadmins and lazy developers

Nedostaci Heron MC● Ne postoji authoring alat● Potrebno je osnovno poznavanje programiranja u

JavaScriptu● Potrebno je solidno poznavanje OpenLayers API za

izradu aplikacije● Promjena dizajna sučelja je ograničena opcijama u

Heronu● Dokumentacija u povojima● Relativno mali community● Nije pogodan za razvoj mobilnih aplikacija

Page 17: Heron MC - JavaScript for sysadmins and lazy developers

Prednost Heron MC● Laka i brza izrada Web GIS preglednika● Izrada aplikacije kroz konfiguraciju● Koristi funkcionalnost postojećih biblioteka● Minimalni udio serverskih komponenti● Orijentiran na OGC servise kao izvore podataka● Izvrsno dokumentirani kod i primjeri● Lako proširiv dodatnim komponentama● Veliki broj kontrola● Projekt se brzo razvija

Page 18: Heron MC - JavaScript for sysadmins and lazy developers

Potencijalno korištenje Heron MC

● Zamjena Desktop GIS alata za nezahtjevne korisnike● Web GIS preglednici za INSPIRE geoportale● GIS preglednici za koje smo sigurni da će dodatni

zahtjevi biti samo vezani uz dodavanje novih slojeva● Izrada Web GIS preglednika od strane GIS

specijalista, uz minimalne troškove edukacije● Sistemaši i lijeni programeri zaposleni na projektima

vezanima uz GIS tehnologije

Page 19: Heron MC - JavaScript for sysadmins and lazy developers

Linkovi

http://heron-mc.orghttps://code.google.com/p/geoext-viewerhttp://groups.google.com/group/geoext-viewer-develhttp://nieuwsinkaart.nl/pdokhttp://inspire.kademo.nl/

Page 20: Heron MC - JavaScript for sysadmins and lazy developers

HVALA NA PAŽNJI!

Page 21: Heron MC - JavaScript for sysadmins and lazy developers

HR OSGeo Meetup #3

10.04.2014. - Šumarski FakultetSvetošimunska cesta 25, Zagreb