Blueprint:MapViewer
Integration of a Map Viewing Client
Background
Maps are an integral part of an emergency management application, for many use-cases to facilitate situational awareness, geospatial analysis and reporting.
As of version 6.0, Eden is still using the original map viewer based on OpenLayers 2, with its own JS-based back-end integration.
Problems
The original Eden map viewing client (s3.gis.js resp. S3MAP) uses an outdated version of OpenLayers that is no longer supported. It also uses an old version of ExtJS to render the layer tree that allows layer selection, based on a custom JS-based interface.
While it is working well, it lacks some essential features (e.g. download of maps in PDF-format, user-editing of layer configurations).
We also want to support a OGC Web Services Context based interface for the map configuration, which would allow sharing of the map configuration with external map clients or service brokers.
Additionally, it would be good to remove the dependency on ExtJS so as to minimize the amount of JS needed for viewing maps.
Analysis / Requirements
The map viewer has four principal use-cases:
- the main map (/gis/index)
- context maps (/<prefix>/<name>/map)
- the location selector in forms (locating an entity by drawing on a map)
- the location filter (filtering spatial entities by drawing e.g. a polygon or circle on a map)
Solution Ideas / Proposals
We could consider integrating a 3rd party map client, e.g. Sebastian Pauli's NetGIS client.