better readme, do scaling properly
implement pan/zoom on topo
R to reset pan/zoom
require meta to drag or select nodes

Change-Id: I15e20296e76d5cd8656b144b2d61a6923a5509ad
diff --git a/web/gui/src/main/webapp/json/map/README.txt b/web/gui/src/main/webapp/json/map/README.txt
index 1f72bae..5cd2634 100644
--- a/web/gui/src/main/webapp/json/map/README.txt
+++ b/web/gui/src/main/webapp/json/map/README.txt
@@ -5,11 +5,57 @@
 
 To generate continental US map:
 
-$ wget 'http://www.naturalearthdata.com/http//www.naturalearthdata.com/download/50m/cultural/ne_50m_admin_1_states_provinces_lakes.zip'
-$ unzip ne_50m_admin_1_states_provinces_lakes.zip
-$ ogr2ogr -f GeoJSON -where "sr_adm0_a3 IN ('USA')" states.json ne_50m_admin_1_states_provinces_lakes.shp
+    $ wget 'http://www.naturalearthdata.com/download/50m/cultural/ne_50m_admin_1_states_provinces_lakes.zip'
+    $ unzip ne_50m_admin_1_states_provinces_lakes.zip
+    $ ogr2ogr -f GeoJSON -where "sr_adm0_a3 IN ('USA')" states.json ne_50m_admin_1_states_provinces_lakes.shp
 
 edit states.json to remove data for Hawaii and Alaska
 
-$ topojson states.json > topology.json
+    $ topojson states.json > topology.json
+
+
+The .shp file above is incomplete (USA and part of Candada.)
+So it may be that each region requires a bit of research to generate.
+Ideally a source for public domain shp files can be found that covers all geographic regions.
+
+
+For Canada:
+
+    # wget 'http://www12.statcan.gc.ca/census-recensement/2011/geo/bound-limit/files-fichiers/gpr_000b11a_e.zip'
+    # unzip gpr_000b11a_e.zip
+    # ogr2ogr -f "GeoJSON" -s_srs EPSG:21781 -t_srs EPSG:4326 canada.json gpr_000b11a_e.shp
+    # topojson --id-property CFSAUID -p name=PRNAME -p name canada.json > topology.json
+
+
+This produces a very large (5MB) file and draws very slowly in Chrome.
+So some additional processing is required to simplify the geometry. (It is not checked in.)
+
+Also, the specification of object structure within the geojson is unclear.
+In the US map the geojson structure is
+
+    json.objects.states
+
+but in the Canadian data it's
+
+    json.objects.canada
+
+
+Lastly, the projection that is used may be tailored to the region.
+The preferred projection for the US is "albers" and d3 provides a "albersUSA" which can be used to
+    project hawaii and alaska as well
+
+For Canada, apparantly a "Lambert" projection (called conicConformal in d3) is preferred
+
+see:
+    https://github.com/mbostock/d3/wiki/Geo-Projections
+    http://www.statcan.gc.ca/pub/92-195-x/2011001/other-autre/mapproj-projcarte/m-c-eng.htm
+
+
+Summary:
+- some additional work is required to fully generalize maps functionality.
+- it may be worthwhile for ON.LAB to provide the topo files for key regions since producing these
+    files is non-trivial
+
+
+