Web gis implementation notes


Published on

Presentation notes used to introduce WebGIS building process to a non-programmers audience.

Published in: Education

Web gis implementation notes

  1. 1. Notes from a WebGIS implementation (for non-programmers and desktop GIS users) Paolo Verri <paolo.verri@gmail.com>
  2. 2. From Desktop GIS to WebGIS: architecture
  3. 3. Desktop GIS Architecture Local GIS Program Local Data (everything is near you, on your PC)
  4. 4. Web GIS Architecture Browser Web Local GIS GIS Client Client Network Remote Data MapServer (GIS Database)
  5. 5. Build a WebGIS: 4 main activities
  6. 6. 1 WebGIS architecture setup ! IT skills
  7. 7. 2 data production & manipulation ! Geo & SQL skills, data structure design is critical
  8. 8. 3 web map configuration & styling !! Geo skills, styling can be time- consuming
  9. 9. 4 map-user interaction !!! IT & Geo skills, lots of javascript programming, time-consuming
  10. 10. From Geodatabases to PostGIS (Vector data)
  11. 11. Shapefiles, Geodatabase DBF files 1
  12. 12. Shapefiles, SQL files DBF files 2 shp2pgsql myshapefile.shp myschema.mytable > mytable.sql ! SRID Input encoding Identifier’s case
  13. 13. SQL files PostGIS 3 pgsql mytable.sql ! Database configuration Output encoding Dataset size
  14. 14. From PostGIS to Web Maps (with MapServer)
  15. 15. Web Map ? Image, representing geographic information, with an internet address (URL), displayed in a web browser
  16. 16. Image Address (URL) Map Web Browser
  17. 17. MapServer ? Receives browser requests, queries PostGIS database, produces images, sends them back to browser
  18. 18. Publishing Web Maps = Tell MapServer how to build images out of geographic data when requested by web browsers.
  19. 19. How to tell MapServer: configuration example. Web Map Name Geographic Extent and Geometry Type PostGIS connection Styling
  20. 20. From Web Maps to Web GIS (interacting with maps)
  21. 21. geographic data storage, calculations and maps production happen far far away. map interaction happens near you (yes, in your browser, thanks to javascript)
  22. 22. Basic Web Map Interaction (read only) = Pan Zoom Layers switch = Openlayers javascript library
  23. 23. Complex Web Map Interaction (read, write) = Query features infos Select features Calculations (distance, area...) Input data forms = GeoExt javascript library
  24. 24. Tools of the trade
  25. 25. Store and organize the data Postgres (SQL database) + PostGIS (geo extensions and utilities) + pgAdmin (GUI, database front end) (but there’s a command line too) http://postgis.refractions.net/
  26. 26. Manipulate the data GDAL (raster geospatial data formats) + OGR (vector geospatial data formats) (ESRI shapefiles!) + PROJ.4 (cartographic projections) Packages found at: http://www.maptools.org/
  27. 27. Generate and Publish Maps Mapserver (generate maps and more...) + PHP/Mapscript (programming language, for dynamic map generation) (it happens server side!) + Web Server (send maps to the browser) (and HTML pages too) Packages found at: http://www.maptools.org/
  28. 28. Manage User Interaction javascript + Openlayers (maps in html pages) + ExtJS (javascript library, complex GUIs) http://www.geoext.org/