PHPUG - Geo Maps for papaya CMS
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share

PHPUG - Geo Maps for papaya CMS

  • 5,237 views
Uploaded on

PHPUG - Geo Maps For papaya CMS - 2009-05-06 ...

PHPUG - Geo Maps For papaya CMS - 2009-05-06
>>>> Downloads:
- papaya CMS mit Patches http://goo.gl/NYtrH
- Geo Maps http://goo.gl/JOFge
- papaya CMS manual http://goo.gl/mz4Ry

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
5,237
On Slideshare
5,048
From Embeds
189
Number of Embeds
2

Actions

Shares
Downloads
1
Comments
0
Likes
3

Embeds 189

http://www.open-source-blog.de 186
http://www.slideshare.net 3

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Geo Maps For papaya CMS 05.06.09 Geo Maps - Martin Kelm 1
  • 2. Agenda 1. Google & Yahoo Maps 2. More Interfaces 3. Geo Maps 4. Geo Maps Modules 5. Sources And Links 05.06.09 Geo Maps - Martin Kelm 2
  • 3. 1. Google & Yahoo Maps 05.06.09 Geo Maps - Martin Kelm 3
  • 4. 1.1. Google Maps 8th february, 2005 Default view April 2005 Satellite view 22th july, 2005 Hybrid view 2nd january, 2006 Route maps 05.06.09 Geo Maps - Martin Kelm 4
  • 5. 1.1.1. Google Maps Overview 05.06.09 Geo Maps - Martin Kelm 5
  • 6. 1.1.2. More Google Maps Types Satellit e Hybrid Physical Mars Mars (Elevation) Mars (Infrared) Moon Mond (Elevation) Stars / Sky 05.06.09 Geo Maps - Martin Kelm 6
  • 7. 1.1.3. Google Maps API Free service with key June 2005: Javascript / XML Version 1 Own data / points without advertisements (so far)* New features a.o. 3rd april, 2006: Faster download Version 2 Own map overlays Memory optimization 11th june, 2006: Parser for addresses Geocoder and coordinates calculation * Alternative: Google Maps API Premier (controllable advertisments) 05.06.09 Geo Maps - Martin Kelm 7
  • 8. 1.1.4. Google Geocoder HTTP / JavaScript Address input request Address output Single string Address splitted in components No formatting specifications eXtensible Address Language Supports abbreviations Supports 200+ countries Client-side cache less Geocoder-requests More performance Simple Geocoder Coordinates Up to 50.000 Requests per API key / day (Latitude / Longitude) JavaScript request: GclientGeocoder() 05.06.09 Geo Maps - Martin Kelm 8
  • 9. 1.2. Yahoo Maps Free service with application ID since 03.11.2005 (Beta release) 05.06.09 Geo Maps - Martin Kelm 9
  • 10. 1.2.1. Yahoo Maps API First version in summer 2005 (released with Google Maps API) for USA only (at the beginning) with Geocoder Flash / Ajax 05.06.09 Geo Maps - Martin Kelm 10
  • 11. 2. More Interfaces Open Layers 05.06.09 Geo Maps - Martin Kelm 11
  • 12. 2.1. Google Earth Virtual 3D globe Different map layers Interchange format KML Basic version for free Windows, Mac OS X, Linux, SymbianOS, iPhone OS 05.06.09 Geo Maps - Martin Kelm 12
  • 13. 2.2. Open Layers Open Layers Open Geospatial Consortium (2008) Open map layers (standardized formats) Closed formats (Microsoft, Google, Yahoo) 05.06.09 Geo Maps - Martin Kelm 13
  • 14. 2.2.1. Open Layers Example 1 Draw functions 05.06.09 Geo Maps - Martin Kelm 14
  • 15. 2.2.2. Open Layers Example 2 GeoRSS with Flickr images var newl = new OpenLayers.Layer.GeoRSS('georss.xml'); map.addLayer(newl); 05.06.09 Geo Maps - Martin Kelm 15
  • 16. 2.2.2.1. GeoRSS Example GeoRSS according to W3C standard 05.06.09 Geo Maps - Martin Kelm 16
  • 17. 2.2.3. Open Street Map Collection of free usable geo data Wiki-like database with edit functions Creative Commons Share-Alike 2.0 05.06.09 Geo Maps - Martin Kelm 17
  • 18. 3. Geo Maps papaya CMS (RC1 and nightly) Developement since mai 2007 Google Maps / Yahoo Maps integration Markers and keys management 05.06.09 Geo Maps - Martin Kelm 18
  • 19. 3.1. API Functions In Geo Maps - (De-)Activate / configure map controls - Set map type / size and zoom level - Arange / center map - Descriptions by using mouse-events - Lines (Polyline) - Static maps - Get map coordinates by click OnClick-Event / Description 05.06.09 Geo Maps - Martin Kelm 19
  • 20. 3.1.1. More Examples Get map coordinates to set them into a input field. Set polygon lines 05.06.09 Geo Maps - Martin Kelm 20
  • 21. 4. Geo Maps Modules Geo Maps modules overview in the papaya CMS backend 05.06.09 Geo Maps - Martin Kelm 21
  • 22. 4.1. Administration Markers management Keys / application IDs management 05.06.09 Geo Maps - Martin Kelm 22
  • 23. 4.1.1. Manage Markers 05.06.09 Geo Maps - Martin Kelm 23
  • 24. 4.1.2. Manage Keys / Application IDs Manage Google API keys and / or Yahoo application IDs 05.06.09 Geo Maps - Martin Kelm 24
  • 25. 4.2. Map Boxes Google Maps Box Yahoo Maps Box Configuration Get data from Output class Link-URLs and configuration (setter) XML-output (getter) Base class 05.06.09 Geo Maps - Martin Kelm 25
  • 26. 4.2.1. - Configure Map Boxes Settings / options for map presentation 05.06.09 Geo Maps - Martin Kelm 26
  • 27. 4.2.2. - Configure Map Boxes Markers data / markers settings 05.06.09 Geo Maps - Martin Kelm 27
  • 28. 4.2.3. - Configure Map Boxes More configuration possibilities 05.06.09 Geo Maps - Martin Kelm 28
  • 29. 4.2.4. Dynamic And Static Map Static map request -> URL maps.google.com/staticmap Paramter - center = LAT,LNG - zoom = 15 - size = 212x212 - maptype = roadmap - markers = LAT,LNG,red - key = API-KEY Dynamic with control element Static map image 05.06.09 Geo Maps - Martin Kelm 29
  • 30. 4.2.4.1. Dynamic Map Request (1) Load API Java Script with API-key 1. Check browser compatibility: GBrowserIsCompatible() -> TRUE / FALSE 2. Get div-element from document: var mapElement = document.getElementById(quot;mapquot;); 3. Get map object with map size setting: var googleMap = new Gmap2( mapElement, {'size' : new GSize(width, height)} ); 4. Set a valid map type: googleMaps.setMapType(mapTypeConstant); 05.06.09 Geo Maps - Martin Kelm 30
  • 31. 4.2.4.1. Dynamic Map Request (2) 5. Add a control element: googleMap.addControl(new GLargeMapControl()); 6. Get a point coordinate object: var point = new GLatLng( parseFloat(latitude), parseFloat(longitude)); 7. Center map: googleMaps.setCenter(point); 8. Set markers: var marker = new GMarker(point); (more parameters for own icon images available) googleMaps.addOverlay(marker); 05.06.09 Geo Maps - Martin Kelm 31
  • 32. 4.3. - Connector Base class Connector class Class of external module Methods: Folders list as combo selection box Add marker Delete marker 05.06.09 Geo Maps - Martin Kelm 32
  • 33. 4.3.1. - Connector Example Map- and special box Geo Maps output class M1 Geo Maps base class M2 Click-Event function (overloaded) function coorModeAction(x, y) { if (lastMarker != null) googleMaps.removeOverlay(lastMarker); lastMarker = setMarker(new GLatLng(y, x)); Geo Maps connector locationInput.value = y+','+x; } 05.06.09 Geo Maps - Martin Kelm 33
  • 34. 4.4. Geo Maps Database Tables 05.06.09 Geo Maps - Martin Kelm 34
  • 35. 4.4.1. Markers Data Output KML Description in HTML XMLHttpRequest Styles for Google Earth 05.06.09 Geo Maps - Martin Kelm 35
  • 36. 4.4.1.1. Export Markers Data Export function in backend Download by using a KML output mode (markers data page) KML contains styles to get a marker icon 05.06.09 Geo Maps - Martin Kelm 36
  • 37. 4.5. MySQL Spatial Extensions Functions: Creation, storage and analysis of geographic characteristics Since MySQL 4.1 (for MyISAM) Since 5.0.16 for InnoDB, NDB, BDB and ARCHIVE too 05.06.09 Geo Maps - Martin Kelm 37
  • 38. 4.5.1. SE Class Hierarchy Point: 0-dimensional Curve: 1-dimensional Surface: 2-dimensional GeometryCollection: Collection of different geometries 05.06.09 Geo Maps - Martin Kelm 38
  • 39. 4.5.2. Geo Maps Functions For SE Base class for Spatial Extensions - Create database table Column type: polygon (for points and polygons) Index: SPATIAL KEY - Add / remove points - Add / remove polygons - Get nearest point Column type: point Index: SPATIAL KEY - Is point a within polygon x? 05.06.09 Geo Maps - Martin Kelm 39
  • 40. 4.5.3. SE Database Tables Extension tables for MySQL Spatial Extensions or rather polygon- and point-data. 05.06.09 Geo Maps - Martin Kelm 40
  • 41. 5. Sources And Further Links martinkelm.de en.wikipedia.org/wiki/Google_Maps en.wikipedia.org/wiki/Google_Earth en.wikipedia.org/wiki/Yahoo_Maps en.wikipedia.org/wiki/Open_Layers openlayers.org/dev/examples www.georss.org/Main_Page dev.mysql.com/doc/refman/5.0/en/spatial-extensions.html code.google.com/apis/maps/documentation/reference.html developer.yahoo.com/maps/ajax/V2/reference.html shrt.ws / weisse-liste.de ENDE 05.06.09 Geo Maps - Martin Kelm 41