Version 55 (modified by 14 years ago) ( diff ) | ,
---|
Table of Contents
GeoExplorer
Work has started to integrate OpenGeo's GeoExplorer as an alternate/replacement Map Viewing Client.
Why?
- Good for Users to use consistent tools across applications
- Good for Developers to be part of a bigger community
- We want to rewrite to have most of the app in static JavaScript with module pattern anyway
- ease contributions from JavaScript developers (who may be put off the Python part)
- support caching
- There are some cool features available which we'd like to make use of
Links
- Sahana Demo site
- OpenGeo Demo site
- Geoexplorer Documentation
- OpenGeo Wiki
- OpenGeo are using GeoExplorer as part of GeoNode:
- These tools will be merged with GeoExplorer:
How
- GeoExplorer GitHub
- GXP GitHub - toolset upon which GeoExplorer is built
- OpenGeo Community Forum
- GeoExplorer extends gxp.Viewer
- Composer extends GeoExplorer (adds left 3 buttons)
Server shouldn't write out JavaScript:
- config should be passed between client & server using JSON config objects
Feature Comparison
GeoExplorer has which MVC doesn't
- Save personalised, bookmarkable map views (layers / viewport)
- Browse for new WMS servers/layers
- Google Earth 'layer'
- Legend panel for WMS layers
- Print support more complete
- Warning for unsupported layers
- Implementation of 'group' for different layer folders (can use this for Internal/External feeds)
- Icons in top toolbar ('north') instead of Map panel title: more screen real-estate for map & potentially space for more icons (although good to keep uncluttered if possible)
MVC has which GeoExplorer doesn't
NB It should be relatively easy to patch some of these in within Sahana (using a slightly-modified version of the existing Python code) as an interim measure to getting them added to the GeoExplorer JavaScript libraries
(crossed-out lines here have been implemented, some like that).
- WFS Layers
- Extra Google layers (MapMaker)
- Yahoo layers
- WMS Browser (do we need this with the multi-server browser?)
- Overview map
Internal feature layersKML/GeoRSS/GPX layersExtra OSM layers (CycleMap, Hillshading, Taiwan, Custom)Potlatch2 integrationHTML5 GeoLocation supportGeoNames SearchMouse Pointer: Lat/Lon & MGRS- Configurability
- can we embed a map into a page?
- should be possible by using an Ext.Panel:
config[portalConfig]: ``Ext.Panel`` if it has a ``renderTo`` property, or an ``Ext.Viewport`` otherwise
- should be possible by using an Ext.Panel:
- can we have a popup window for the LocationSelector?
- Switching to Ext.Window isn't easy. Overriding initPortal in Sahana.js means we lose the toolbar/layerContainer/legendContainer
- can each button have an enabled option?
- can we embed a map into a page?
Issues with GeoExplorer
Outstanding
- Internal Feature Layers need to populate the Legend
- Localisation
- get the i18n strings added to the PO files on Pootle (via Python .py? or separate process?)
- text strings are sometimes still hidden in private methods not separate public variables
- http://www.sencha.com/learn/Tutorial:Localizing_Ext
- Published maps:
geoexplorer/viewer.html#id
- Doesn't appear to read the config at all!
- Viewer sends about to geoexplorer/about.html
- How to edit Title/Abstract(Description)/Contact when saving a map?
- How to save a WMS Server when saving a Map? (
"source":"source78"
) - Not clear when saving whether this is a New map or an Update
- Should have a 'Save As' option
- scaleLinePanel ugly: remove the Scale Chooser?
- Layer-Switcher in Embedded View not as nice...why different UI (just that we have less space not a reason since we can collapse mini)
- HTML5 geoLocation isn't always reliable (sometimes screen just flashes & the viewport doesn't go to correct location)
- Rewrite KML/GeoRSS/GPX feeds:
- Parse config from
/eden/gis/layer_kml.json
- Single Store for all layers. (No need to support pulling config from multiple Sahana's. Also makes it easier for the caching/unzipping)
- Future: Make it easy to Add new Feeds within GeoExplorer via
/eden/gis/layer_kml/create.json
- Caching / unzipping of KMZs means that we don't just want to read the config but also to initiate the server-side processes for this functionality
- Parse config from
Changed
Local to Sahana:
- OSM uses
TMSSource.js
to allow displaying across the dateline [gxp/loader.js
] - Base layers above Overlays [
GeoExplorer.js
]- NB if try to
//expanded: true,
then get weird effects with 1 baselayer appearing on load & a different one when the Base Layers folder is opened
- NB if try to
Composer.js
showEmbedWindow shows wrong link: geoexplorer/viewer.html (can't redirect as web2py doesn't see the '#')
Fixed
Can go upstream: https://github.com/opengeo/GeoExplorer/pull/1
- Ext 3.0.0 -> 3.3.1 (Test they work ok with 3.0.0 too):
header: false
(westPanel) [GeoExplorer.js
]
- OpenLayers 2.9 -> 2.10
- Can remove the 'Patch the SphericalMercator layer' from the top of
GeoExplorer.js
- Can remove the 'Patch the SphericalMercator layer' from the top of
- GeoExt - >Trunk
- Can
//,items: []
[GeoExplorer.js
] since http://trac.geoext.org/ticket/305 is fixed
- Can
Note:
See TracWiki
for help on using the wiki.