Spa$al Cloud Compu$ng using Google Maps API Michael P. - - PowerPoint PPT Presentation

spa al cloud compu ng using google maps api
SMART_READER_LITE
LIVE PREVIEW

Spa$al Cloud Compu$ng using Google Maps API Michael P. - - PowerPoint PPT Presentation

Spa$al Cloud Compu$ng using Google Maps API Michael P. Peterson Nebraska - Omaha Introduc$on We can all agree that many GIS tasks that are


slide-1
SLIDE 1

Spa$al ¡Cloud ¡Compu$ng ¡using ¡ Google ¡Maps ¡API ¡

Michael ¡P. ¡Peterson ¡ Nebraska ¡-­‑ ¡Omaha ¡

slide-2
SLIDE 2

Introduc$on ¡

  • We ¡can ¡all ¡agree ¡that ¡many ¡GIS ¡tasks ¡that ¡are ¡

now ¡done ¡on ¡desktop ¡computers ¡with ¡ specialized ¡soDware ¡will ¡eventually ¡be ¡done ¡in ¡ the ¡cloud. ¡

  • Development ¡of ¡cloud ¡compu$ng ¡has ¡parallels ¡

to ¡computer ¡mapping ¡/ ¡GIS ¡in ¡the ¡1970s. ¡

  • Computer ¡mapping ¡preceded ¡GIS. ¡ ¡

– Integra$on ¡with ¡databases, ¡analy$cal ¡tools ¡

slide-3
SLIDE 3

Computer ¡mapping ¡to ¡GIS ¡

  • Map ¡mashups ¡with ¡APIs ¡is ¡the ¡computer ¡mapping ¡

stage ¡of ¡cloud ¡compu$ng ¡

– Presen$ng ¡data ¡with ¡maps ¡ – Mashups ¡as ¡thema$c ¡maps ¡ – Underlying ¡maps ¡from ¡Google ¡servers ¡but ¡data ¡being ¡ mapped ¡usually ¡on ¡local ¡server ¡

  • Now, ¡integra$on ¡with ¡databases ¡
  • How ¡to ¡integrate ¡into ¡the ¡cartography ¡/ ¡GIS ¡

classroom? ¡

– Book: ¡Maps ¡and ¡the ¡Internet: ¡Theory ¡and ¡Prac3ce ¡

slide-4
SLIDE 4

In ¡the ¡classroom ¡… ¡

  • Development ¡of ¡cloud ¡compu$ng ¡is ¡based ¡on ¡

what ¡we ¡can ¡teach ¡

  • Audience ¡– ¡students ¡with ¡oDen ¡have ¡limited ¡

programming ¡background ¡

  • Purpose ¡is ¡not ¡to ¡make ¡programmers ¡

– Create ¡an ¡understanding ¡of ¡the ¡technology ¡ – Provide ¡tools ¡to ¡allow ¡the ¡building ¡of ¡applica$ons ¡ – Develop ¡a ¡concep$on ¡of ¡what ¡is ¡possible ¡

slide-5
SLIDE 5

FOSS ¡

  • Free ¡and ¡open ¡source ¡soDware ¡
  • Advantages ¡for ¡educa$on ¡

– No ¡need ¡to ¡acquire ¡licenses, ¡funding ¡ – ArcGIS ¡funding ¡experience ¡

  • Emphasize ¡concepts, ¡not ¡training ¡on ¡

commercial ¡soDware ¡

– Universi$es ¡as ¡agents ¡of ¡ESRI ¡

  • Is ¡open ¡source ¡more ¡expensive? ¡
slide-6
SLIDE 6

Core ¡concepts ¡

  • The ¡Internet ¡map ¡landscape ¡
  • Meaning ¡of ¡mapping ¡
  • Development ¡of ¡maps ¡through ¡$me ¡
  • Map ¡scale ¡and ¡abstrac$on ¡
  • Maps ¡by ¡computer ¡and ¡GPS ¡
  • Points ¡and ¡point ¡data ¡
  • Lines ¡and ¡polygons ¡
  • Layers ¡of ¡informa$on ¡
  • Databases ¡
  • Local ¡mapping ¡

¡

slide-7
SLIDE 7

Core ¡technologies ¡

  • HTML ¡
  • JavaScript ¡
  • Google ¡Maps ¡API, ¡Fusion ¡Tables ¡
  • XML ¡
  • GeoRSS ¡
  • PHP ¡
  • MySQL ¡with ¡spa$al ¡extensions ¡
  • App ¡development, ¡both ¡iOS ¡and ¡Android ¡
slide-8
SLIDE 8

Interleaving ¡core ¡concepts ¡and ¡core ¡ technologies ¡

  • Two ¡classroom ¡environments ¡

– One ¡mee$ng ¡a ¡week ¡with ¡no ¡computers, ¡no ¡wifi, ¡ no ¡mobile ¡technology, ¡no ¡tex$ng ¡

  • Seminar ¡or ¡lecture, ¡depending ¡on ¡class ¡size ¡

– One ¡mee$ng ¡a ¡week ¡in ¡a ¡computer ¡room, ¡ demonstra$on ¡but ¡no ¡lecture ¡

  • Individual ¡and ¡dis$nc$ve ¡web ¡pages/resources ¡created ¡

in ¡a ¡group ¡environment. ¡

slide-9
SLIDE 9

Web ¡page ¡development ¡

For ¡everyone ¡to ¡see ¡-­‑ ¡

slide-10
SLIDE 10

Point ¡Maps ¡

  • Single ¡points ¡

– Markers ¡ – Type, ¡size, ¡posi$oning ¡

  • Source ¡of ¡data ¡

– XML ¡files ¡ – GeoRSS ¡ – Fusion ¡Tables ¡ – MySQL ¡database ¡

slide-11
SLIDE 11

Lines ¡and ¡polygons ¡

  • Straight ¡and ¡ ¡

geodesic ¡lines ¡

  • Graduated ¡lines ¡
  • Polygons ¡
slide-12
SLIDE 12

Layers ¡

  • Image ¡on ¡Map ¡
  • Image ¡on ¡Image ¡

¡

slide-13
SLIDE 13

Layers ¡

  • Map ¡on ¡Map ¡

¡

Cost ¡of ¡Iowa ¡Farmland ¡

slide-14
SLIDE 14

Free ¡Webhos$ng ¡

cpanel ¡

slide-15
SLIDE 15

Files ¡and ¡databases ¡

slide-16
SLIDE 16

PHP ¡

Server-­‑based ¡scrip$ng ¡language ¡

slide-17
SLIDE 17

Query ¡

<?php ¡ ¡ ¡ ¡//define ¡coordinates ¡and ¡draw ¡rectangle ¡to ¡map ¡ ¡ ¡ ¡ ¡ ¡ ¡include ¡'mysql_connect.php'; ¡ ¡$table ¡ ¡ ¡ ¡= ¡"us_capitals"; ¡ ¡$sql ¡=" ¡SELECT ¡name, ¡Y(loca$on), ¡X(loca$on), ¡usstate, ¡popula$on ¡FROM ¡us_capitals ¡ ¡ ¡ ¡WHERE ¡Intersects( ¡loca$on, ¡GeomFromText( ¡'POLYGON((40 ¡-­‑96, ¡44 ¡-­‑96, ¡44 ¡-­‑70, ¡40 ¡-­‑70, ¡40 ¡-­‑96))' ¡) ¡) ¡"; ¡ ¡

slide-18
SLIDE 18

JOIN ¡

¡FROM ¡( ¡( ¡( ¡ ¡ ¡dl_routes ¡AS ¡rt ¡ ¡ ¡INNER ¡JOIN ¡dl_airports ¡AS ¡ap1 ¡ON ¡rt.airportcode ¡= ¡ap1.code ¡ ¡ ¡ ¡ ¡ ¡) ¡ ¡ ¡INNER ¡JOIN ¡dl_airports ¡AS ¡ap2 ¡ON ¡rt.des$na$oncode ¡= ¡ap2.code ¡ ¡ ¡ ¡ ¡ ¡) ¡ ¡ ¡INNER ¡JOIN ¡ci$es ¡AS ¡cDep ¡ON ¡cDep.city ¡= ¡ap1.city_name ¡ ¡ ¡ ¡ ¡ ¡ ¡) ¡ ¡ ¡INNER ¡JOIN ¡ci$es ¡AS ¡cDst ¡ON ¡cDst.city ¡= ¡ap2.city_name"; ¡

slide-19
SLIDE 19

Geoloca$on ¡

iPad ¡

slide-20
SLIDE 20

Conclusion ¡

  • Teaching ¡in ¡the ¡cloud ¡

– Concepts ¡and ¡core ¡technologies ¡

  • Non-­‑computer ¡and ¡computer ¡classrooms ¡

– Online ¡assignments ¡

  • Web ¡pages ¡and ¡apps ¡

– FOSS ¡and ¡Webhos$ng ¡

  • Important ¡part ¡of ¡online ¡experience ¡

– Use ¡of ¡mul$ple ¡APIs ¡

  • Google ¡Maps ¡