mapwarper o'reilly ignite talk, where2.0

Download MapWarper O'Reilly Ignite Talk, Where2.0

Post on 18-Dec-2014

1.163 views

Category:

Technology

1 download

Embed Size (px)

DESCRIPTION

MapWarper O'Reilly Ignite Talk, Where2.0 about crowd sourced open source map geo rectifier

TRANSCRIPT

  • 1. Tim Waters thinkwhere.wordpress.com tim@geothings.net @tim_waters Leeds, UK Map Warper mapwarper.net georectify / georeference / warp / stretch
  • 2. Wt? 2 examples
  • 3. Yahoo map mixer Microsoft map cruncher Metacarta map rectifier Desktop GIS solutions
  • 4. Free Open Source For people who love maps OpenStreetMap Project http://svn2.geothings.net/mapwarper/
  • 5. Thanks Mikel Thanks John
  • 6. Map List of types of maps Upload a new map
  • 7. Warp map Error
  • 8. GDAL Gdalwarp Gdal_translate gdal_translatea_srs'+init=epsg:4326'ofVRT gdal_translate /home/tim/work/warper/mapwarper/public/mapimages/src/orig6985.tif /home/tim/work/warper/mapwarper/public/mapimages/dst/28_temp.vrt gcp1100.2,2332.0,83.9654296874,41.8320690697gcp3782.0,1676.12, 78.9996093751,42.710039226gcp2703.45,3760.35,81.196875,40.675794242 gdalwarprndstalpha /home/tim/work/warper/mapwarper/public/mapimages/dst/28_temp.vrt /home/tim/work/warper/mapwarper/public/mapimages/dst/28.tifcoTILED=YES
  • 9. Output crop
  • 10. Whooms upload geotiff, serve as wms http://github.com/timwaters/whooms/tree/master get'/wms'do @map=params["layer"] ows=Mapscript::OWSRequest.new ok_params=Hash.new params.each{|k,v|ok_params[k.upcase]=v} [:request,:version,:transparency,:service,:srs,:width,:height, :bbox,:format,:srs].eachdo|key| ows.setParameter(key.to_s,ok_params[key.to_s.upcase])unless ok_params[key.to_s.upcase].nil? end ows.setParameter("STYLES","") ows.setParameter("LAYERS","image") ows.setParameter("COVERAGE","image") mapsv=Mapscript::MapObj.new(File.join(map_directory,'/wms.map')) mapsv.applyConfigOptions mapsv.setMetaData("wms_onlineresource","http://"+request.host+ "/wms/#{@map}") raster=Mapscript::LayerObj.new(mapsv) raster.name="image" raster.type=Mapscript::MS_LAYER_RASTER; raster.data=File.join(map_directory,@map) raster.status=Mapscript::MS_ON raster.dump=Mapscript::MS_TRUE raster.metadata.set('wcs_formats','GEOTIFF') raster.metadata.set('wms_title',("wmsfromwhooms"+@map)) raster.metadata.set('wms_srs','EPSG:4326') raster.debug=Mapscript::MS_TRUE Mapscript::msIO_installStdoutToBuffer result=mapsv.OWSDispatch(ows) content_type=Mapscript::msIO_stripStdoutBufferContentType||"text/plain" result_data=Mapscript::msIO_getStdoutBufferBytes send_dataresult_data,:type=>content_type,:disposition=>"inline" Mapscript::msIO_resetHandlers end
  • 11. Layers Mosaic
  • 12. GDAL Tileindex gdaltindex gdaltindexwrite_absolute_path/home/tim/work/warper/mapwarper/db/maptileindex/7.shp /home/tim/work/warper/mapwarper/public/mapimages/dst/91.tif /home/tim/work/warper/mapwarper/public/mapimages/dst/41.tif
  • 13. Export options
  • 14. Crowd sourced but you can be private if you like
  • 15. The OpenStreetMap Project WMS
  • 16. Applications obvious to work with map libraries and digital collections.
  • 17. Licences and Terms Google maps vs Google Satellite Derivative works through using Ordnance Survey maps to rectify anti pattern Councils
  • 18. Free our Old Maps! Open Historical Map Project Lets build up a database for the past!
  • 19. @tim_waters tim@geothings.net http://mapwarper.net http://svn2.geothings.net/mapwarper/