A crash course to Coordinate Systems, Map Projections and Data Formats Ilkka Rinne Founder & CTO, Spatineo Oy GeoMashup CodeCamp 2011 University of Helsinki Department of Computer Science
About Us
Startup software company founded in 2011
Startup software company founded in 2011 Geospatial Data in the Web
Startup software company founded in 2011 Geospatial Data in the Web Software-as-a-Service (SaaS)
Ruoholahti Helsinki, Finland
Geo App Developer Data Providers Community
Empower Geo App Developer Data Providers Community Better access & powerful tools
Empower Encourage Geo App Developer Data Providers Community Better access & powerful tools Knowledge & Technical support
Empower Encourage Geo App Developer Better, more productive Data Providers Community communication Better access & powerful tools Knowledge & Technical support
In This Presentation Full material at the course web site: http://codecamp11.spatineo.com/lecture-material
In This Presentation Coordinates & Coordinate Systems Full material at the course web site: http://codecamp11.spatineo.com/lecture-material
In This Presentation Coordinates & Coordinate Systems (Map Projections) Full material at the course web site: http://codecamp11.spatineo.com/lecture-material
In This Presentation Coordinates & Coordinate Systems (Map Projections) Geospatial Data Formats in the Web Full material at the course web site: http://codecamp11.spatineo.com/lecture-material
In This Presentation Coordinates & Coordinate Systems (Map Projections) Geospatial Data Formats in the Web Open Standards for Web GeoData Access Full material at the course web site: http://codecamp11.spatineo.com/lecture-material
Coordinates My house is the center of the world, it s at (0,0)
Coordinates No, my house is the center of the world, it s at (0,0)
Coordinates (0,0) (0,0) Same coordinate pair, but in different Coordinate Systems
Coordinates (0,0) (-1,1) (1,1) Same Coordinate System, different coordinates for different places
Some Terminology Coordinate System (CS) Koordinaatisto in Finnish Set of mathematical rules for giving locations to places as set of coordinates. Number of axes defines the number of coordinates. Geodetic Coordinate System (GCS) Geodeettinen koordinaatisto Coordinate System, where the location is defined by geodetic longitude, geodetic latitude and height from an agreed height reference.
A Side Note: Latitude & Longitude Image from Wikimedia Commons, http://commons.wikimedia.org/wiki/file:latitude_and_longitude_of_the_earth.svg Originally by Djexplo, in public domain
More Terminology Geodetic Datum Datuumi in Finnish Set of parameters for relating a Geodetic Coordinate System to the Earth by setting it s origin, scale and orientation. Typically has a Reference Ellipsoid approximating the shape of the actual Earth s surface. (Geodetic) Coordinate Reference System (CRS) Koordinaattijärjestelmä A Geodetic Coordinate System fixed to the Earth using some Geodetic Datum.
Earth is not a sphere Image from Wikimedia Commons, http://commons.wikimedia.org/wiki/file:earth_western_hemisphere_transparent_background.png Originally by NASA, in public domain
Earth is not a sphere Image from Wikimedia Commons, http://commons.wikimedia.org/wiki/file:earth_western_hemisphere_transparent_background.png Originally by NASA, in public domain
Earth is not a sphere It s more like an ellipsoid Image from Wikimedia Commons, http://commons.wikimedia.org/wiki/file:earth_western_hemisphere_transparent_background.png Originally by NASA, in public domain
Actually, it s not an ellipsoid either Image by NASA, http://earthobservatory.nasa.gov/features/grace/page3.php
Actually, it s not an ellipsoid either Gravity anomalies make even the sea only shape of the Earth s surface slightly bumpy = Geoid Image by NASA, http://earthobservatory.nasa.gov/features/grace/page3.php
Actually, it s not an ellipsoid either Gravity anomalies make even the sea only shape of the Earth s surface slightly bumpy = Geoid Choose and orient an ellipsoid wisely get a fit that s good enough Image by NASA, http://earthobservatory.nasa.gov/features/grace/page3.php
Altitude Coordinates Ellipsoidal height Height from sea level (geoid) 8,848 m Surface of the Earth Geoid (mean sea level) Surface of the ellipsoid Geoid height Geoid: surface where the oceans would settle only based Earth s gravitational force. On continents, the fictional continuum of this mean sea level
Altitude Coordinates Ellipsoidal height Height from sea level (geoid) 8,848 m Surface of the Earth Geoid (mean sea level) Surface of the ellipsoid Geoid height Geoid: surface where the oceans would settle only based Earth s gravitational force. On continents, the fictional continuum of this mean sea level
Common Geodetic CRSs WGS84 (global, used by the GPS system) ETRS89 (For Europe, Eurasian plate is static) NAD83 (For US, Canada & Mexico, North American plate is static) All three use the same ellipsoid, but with a bit different parameters: more precise at the most important regions
CRS Realization
CRS Realization Coordinate Reference System + set of precisely measured positions on Earth. Makes it possible to define coordinates for new locations by measuring distances to the known reference positions.
CRS Realization Example: EUREF-FIN In Finland the practical realization of ETRS89 CRS is called EUREF-FIN. Precise locations of the reference points measured by the Finnish Geodetic Institute using satellite measurement networks and triangulation
Confusing Naming! CRS realization is also called a Coordinate System ( Koordinaatisto ). Datum can also mean CRS in English sometimes.
Limited Area CRS Coordinate Reference System may only be valid at certain parts of the world (where it s accurate enough)
Interpreting Coordinates <gml:boundedby> <gml:envelope srsname="epsg:4326"> <gml:lowercorner>63.1945-7.6639</gml:lowercorner> <gml:uppercorner>69.6897 11.3687</gml:upperCorner> </gml:envelope> </gml:boundedby>
Interpreting Coordinates Spatial Reference System <gml:boundedby> <gml:envelope srsname="epsg:4326"> <gml:lowercorner>63.1945-7.6639</gml:lowercorner> <gml:uppercorner>69.6897 11.3687</gml:upperCorner> Read: </gml:envelope> </gml:boundedby> CRS is WGS84 (2D), axis order: latitude, longitude
Interpreting Coordinates <gml:boundedby> <gml:envelope srsname="epsg:4326"> <gml:lowercorner>63.1945-7.6639</gml:lowercorner> <gml:uppercorner>69.6897 11.3687</gml:upperCorner> Read: </gml:envelope> </gml:boundedby> The EPSG:4326 is also known as urn:ogc:def:crs:epsg::4326 and Spatial Reference System http://www.opengis.net/def/crs/epsg/0/4326 CRS is WGS84 (2D), axis order: latitude, longitude
Interpreting Coordinates <gml:boundedby> <gml:envelope srsname="epsg:4326"> <gml:lowercorner>63.1945-7.6639</gml:lowercorner> <gml:uppercorner>69.6897 11.3687</gml:upperCorner> Read: </gml:envelope> </gml:boundedby> The EPSG:4326 is also known as urn:ogc:def:crs:epsg::4326 and Spatial Reference System http://www.opengis.net/def/crs/epsg/0/4326 CRS is WGS84 (2D), axis order: latitude, longitude When in doubt: http://spatialreference.org/
EPSG Codes European Petroleum Survey Group, currently part of the International Association of Oil & Gas Producers EPSG Geodetic Parameter Set: code names for a multitude of different CRSes, map projections, reference ellipsoids, datums etc., see EPSG Online Registry http://www.epsg-registry.org/ Some often needed EPSG Codes: 4326: WGS84 (2D) CRS, coordinates: lat, lon 4979.:WGS84 (3D) CRS, coordinates: lat, lon, ellipsoidal height 4258: ETRS89 (2D) CRS, coordinates: lat, lon 4258: ETRS89 (3D) CRS, coordinates: lat, lon, ellipsoidal height 5048: ETRS89-TM35FIN(N,E) CRS, coordinates: N, E 4123: KKJ (deprecated Finnish system), lat, lon 2393: YKJ (deprecated Finnish system), northing, easting 5717: N60 Vertical datum, mean sea level at Helsinki in 1960 3902: ETRS89-TM35FIN(N,E) + N60 vertical datum You need these for identifying in which CRS the given coordinates are, and when transforming coordinates (or points) from one CRS to another. Codes used widely in GIS software. More at: http://www.maanmittauslaitos.fi/sites/default/files/tiedostolataukset/kartat/koordinaatit/epsg_koodit.pdf
Map Projections Coordinate transformation from geodetic coordinates to planar coordinates
Map Projections Coordinate transformation from geodetic coordinates to planar coordinates
Map Projections Polar stereographic Mercator projection
Map Projections
Map Projections All projections distort the surface somehow. Select the least harmful way for each mapping task.
Common Map Projections General Perspective Projection as seen from space Only one half of the globe can be seen Ok if you can change the center point (rotate) Google Earth
Common Map Projections Stereographic Shapes are preserved locally Can be used for maps over the poles
Common Map Projections Mercator Google, Bing Maps, Ovi (Nokia)? Good for areas near the Equator, not suitable for polar regions
Common Map Projections Transverse Mercator The cylinder is rotated 90º Accurate near the chosen central meridian
Common Map Projections Universal Transverse Mercator (UTM) Earth divided into 6º wide zones, separate Transverse Mercator projection defined for each. Images: Wikimedia Commons, http://en.wikipedia.org/wiki/file:utm-zones.jpg Carlos Furuti, http://www.progonos.com/furuti/mapproj/normal/projnav/img/utm1.jpg
Common Map Projections Universal Transverse Mercator (UTM) Earth divided into 6º wide zones, separate Transverse Mercator projection defined for each. Images: Wikimedia Commons, http://en.wikipedia.org/wiki/file:utm-zones.jpg Carlos Furuti, http://www.progonos.com/furuti/mapproj/normal/projnav/img/utm1.jpg
Finnish Map Projections (ETRS-)TM35FIN Ellipsoid Cylinder Projection zone Scale (Mk) = 1.0 27ºE Central meridian Surface of the cylinder Surface of the ellipsoid Central meridian Equator Projection zone Central meridian UTM based, the whole Finland in one, widened zone, central meridian is 27ºE Images: Maanmittauslaitos http://www.maanmittauslaitos.fi/kartat/koordinaatit/ Equator (0,0 m) Make coordinates positive: move the origin (false easting). In TM35FIN the point where the Equator and the central meridian (27º) cross has coordinate N:0 E:500 000
Some Geometry Types Point - a single position Line - two positions connected to each other LineString - multiple lines connected to each other Polygon - a closed LineString (can have holes!) MultiPolygon - multiple polygons in one (ex. the islands of a lake) (types slightly differ from data format to another)
Geospatial Data Formats: GML Geography Markup Language Extensive toolbox for building languages for geospatial data, or GML Application Profiles Standard by Open Geospatial Consortium (OGC). Geospatial objects and especially their geometries as XML structures. Very complex geometry types available.
Geospatial Data Formats: GML Geography Markup Language Extensive toolbox for building languages for geospatial data, or GML Application Profiles Standard by Open Geospatial Consortium (OGC). Geospatial objects and especially their geometries as XML structures. Very complex geometry types available.
GML Simple Features Profile Restricted set of GML geometry property types and simplified CRS handling: This profile defines a restricted but useful subset of XML-Schema and GML to lower the implementation bar of time and resources required for an organization to commit for developing software that supports GML. GML simple features profile, OGC-05-033r9, 05-July-2005 Powerful enough for most use cases, geometry types can be stored as geospatial objects in geoenabled databases, like PostGIS & Oracle Spatial
Geospatial Data Formats: GeoJSON Geo-enabled object encoded in JavaScript Object Notation (JSON) GML Simple Features for JSON Supports the following geometry types: Point, LineString, Polygon, MultiPoint, MultiLineString, MultiPolygon, and GeometryCollection
Geospatial Data Formats: GeoJSON Geo-enabled object encoded in JavaScript Object Notation (JSON) GML Simple Features for JSON Supports the following geometry types: Point, LineString, Polygon, MultiPoint, MultiLineString, MultiPolygon, and GeometryCollection
Geospatial Data Formats: KML Formerly Keyhole Markup Language Developed for Google Earth (was: Keyhole Earth Viewer) Standardized by Open Geospatial Consortium in 2008 In addition to defining geometries & their visualization, also offers some GUI and data linking features. WGS84 CRS only: latitude, longitude(, altitude).
Geospatial Data Formats: KML Formerly Keyhole Markup Language Developed for Google Earth (was: Keyhole Earth Viewer) Standardized by Open Geospatial Consortium in 2008 In addition to defining geometries & their visualization, also offers some GUI and data linking features. WGS84 CRS only: latitude, longitude(, altitude).
Default altitude: sea level (ellipsoidal height)
Geospatial Data Formats: (Geo)RSS Basic idea: location & geometry info embedded into an Atom or RSS feed entries. Two profiles, GeoRSS Simple and GeoRSS GML GeoRSS Simple is very straightforward: elements for point, line, polygon, box and circle. GeoRSS GML is a subset of GML geometry properties (a profile)
GeoRSS Simple in Atom
GeoRSS Simple in Atom
GeoRSS GML in Atom
GeoRSS GML in Atom
Open Standard Geo Web Services Standardized by the Open Geospatial Consortium (OGC): Web Map Service (WMS) Web Feature Service (WFS) HTTP-based to access spatial information as pre-rendered maps (WMS) or GML objects (WFS)
OGC Web Map Service (WMS) Retrieve pre-rendered images of selected map layers for the given geographic bounding box, in the wanted map projection, using standard HTTP requests. Offered layers & available options as an XML document (GetCapabilities).
OGC Web Feature Service (WFS) Retrieve objects with geospatial properties filtered by custom queries, encoded as GML Features (XML), using standard HTTP requests. Also advertises the service offerings and options using GetCapabilities documents.
WMS & WFS Adoption OGC & ISO Standards, wide support in both Commercial & Open Source software. Huge boost for adoption in Europe: EU INSPIRE Directive requires that public sector agencies open a lot of their geospatial databases as WMS & WFS services. Gradual implementation 2010-2019.
Don t Go Anywhere Just Yet
Team Up Now Some of you probably like playing solo, but this is a teamwork course. Meet with your team before Monday to brainstorm about your app ideas and which data resources you re going to use. Come back here on Monday 24th at 14-16 to announce your selection of data resources (minimum of two), and to learn about the Google Web Toolkit demo application.