410 likes | 640 Views
Data Acquisition using Mashup and 3-D Technology. Matt Rahr College of Agriculture and Life Sciences University of Arizona. Let’s Do It!. A “hybrid” website or web application Content from multiple sources Creates a completely new service. What is a Mashup?. +. Your Data.
E N D
Data Acquisition using Mashup and 3-D Technology Matt Rahr College of Agriculture and Life Sciences University of Arizona
Let’s Do It! • A “hybrid” website or web application • Content from multiple sources • Creates a completely new service What is a Mashup? + Your Data
Characteristics of Mashups • Open source • Multipurpose • Can be used by communities to share or collect information • Can be interactive = “pin-maps” e.g. Katrina • They are not GIS, but could become so…
HousingMaps.com Craigslist db Mashup Example Mash Data Together & Independent Site
Components of a Mashup • Data – you normally supply some of this • The API is published by Google, Microsoft, Yahoo – you tie your data to their maps/aerials • Web browser is the client interface
Getting a key • Obtained at http://www.google.com/apis/maps/signup.html • Terms of use… • Unlimited hits • 50k geocode requests • Google reserves the right to include advertising. • Must be freely accessible to end-user. • Must have a Google Account (@gmail) • Must provide domain name… http://
Google Conditions (others do not have these, or these may change)
You get a key randomly generated for this domain – all your pages with maps must be at this file level.
API Steps Create <div>’s = empty boxes where the content will go, e.g. a map or data <div id="map" style="width: 500px; height: 300px"></div> Use Javascript functions to “fill” the div function load() { var map = new GMap2(document.getElementById("map")); map.setCenter(new GLatLng(37.4419, -122.1419), 13); }
API Steps (cont.) Previous code will create this:
API Steps (cont.) • Add additional commands (“methods”, “properties” and “events”) to enable or constrain the map environment e.g. zoom, scroll, get xy center of map, add pins, etc. • Explore other ways to enhance your site
Data AcquisitionExisting Spatial Data into the Mashup • Write Javascript via the API var oldMainXY = new GLatLng(32.23153, -110.9529); var oldMainMarker = new GMarker(oldMainXY); map.addOverlay(oldMainMarker); • Using free webtools… http://www.mapbuilder.net/ http://www.wayfaring.com/ • Convert existing spatial data to KML
What is KML? • Keyhole Markup Language • Its simple-text… readable! • Its XML based… organized, parsable • It can be easily edited… text editor
KML under the hood… <Placemark> <name>GeoWeb 2007</name> <description> Conference held in Vancouver, BC. </description> <Point> <coordinates> -123.112324, 49.284336, 0 </coordinates> </Point> </Placemark>
KML Other cool things… • KML can be searchable via Google • KML can be viewed across different clients… • On the web via Google Maps • In 3-Dimension within Google Earth • In a mobile environment via Google Maps for Mobile • KML can be “network-linked” • Auto-refreshes when new data is added to the KML layer.
Converting to KML • Plenty of Tools • ArcGIS 9.2 tool in Arc Toolbox • ArcScripts for 9.1 and below • Arc2Earth for Enterprise level…
Data AcquisitionCreating New Data within a Mashup • Microsoft Virtual Earth “Collections” • Web-Based • Sharable via menu… • Send in email • Copy to clipboard • Blog it • Link to it • Geometric Measurements built-in • Relief data just added • Oblique imagery • 3D-Built in
Data AcquisitionCreating New Data within a Mashup • Google Maps “My Maps” • Web-Based • Sharable via menu… • Send in email • Link to it… • Save as KML* • Embed HTML in your tag • Extra content can be added to your mashup
3rd Party Mashup Sites • www.communitywalk.com • www.wayfaring.com • Built on top of an existing mapping API, such as Google or Virtual Earth • A good selection, each with their pro’s and cons.
Using Mashup Providers • Pro’s • No programming required • Quick startup time • Con’s • The data you enter stays within the 3rd Party’s database. • Difficult to extract data for use in a GIS. • Requires users to be registered to yet another site. • Map’s are shared, but only allows visiting users to view data, not edit.
Data AcquisitionWriting your own Mashup • Write a custom interface for your users • Programmatically input data using the API. • Benefits: • Get to collect multiple Attribute Fields • Store the data how you want to… • XML, KML, CSV, plain-text file • Database – MySQL, Oracle, SQLServer • Spatial Database – SDE, Oracle Spatial, PostGIS
Data stored on backend • AJAX passes javascript requests to the server… • Server code then does your… • ODBC – JDBC – ADO Connection • Spatial Database API • ArcObjects, PostGIS API • Web Service • ArcGIS Server Geoprocessing Service
Mobile Data Acquisition • Data can be acquired in the field with a smartphone, a cellular data plan, and a GPS. • GPS sends X,Y locations to the smartphone via Bluetooth or serial cable. • The phone initiates an IP connection to your database via its cellular data protocol (EVDO, EDGE, HSPDA). Requires mobile software… • The web-mashup reads data out of database in real-time.
Mobile Data Acquisition Solutions • Use 3rd Party Apps • http://www.3dtracking.net • http://goopstechnologies.com/ • Or roll out your own. • same pro’s and con’s
Using 3D Technologies in Data Acquisition • Helps with visualizing an application. • Potential for orientation in the field but there are issues… • Resolution • Bandwidth • How to integrate with open source mapping like Google Earth? • How to add GIS capability?
3-Dimension in Google Earth • Google Earth reads KML… • Points, Lines, Polygons • Simple attributes • Real-time data can be added on-the-fly with KML’s “Network Link” attribute. • Real-time data can also be aggregated from a GeoRSS feed. • Raster Data can also be converted to KML… Draped over terrain.
Non-geographical uses You can make your z-value some other parameter, like populations statistics e.g. states of Mexico
3D in Microsoft Virtual Earth • Built as a web-plugin. • Sits on the “webtop”, not a separate program. • Similar to Google Earth, but • Data cannot be exported/imported on a standard such as KML* • Oblique photography automates 3D objects. • Google Earth relies on users to graphically create 3D objects and add to the collection.
Data Acquisition Mashups - summary • Powerful, easy-to-use and cheap. • Data integrates nicely into 3D • Data can move to the field for data collection and collaboration. • Custom mashups allow users to store data in spatial databases for GIS analysis
Thanks! • Any questions an be directed to me at rahr@ag.arizona.edu • This presentation can be downloaded at http://cals.arizona.edu/calsnet/presentations/geoweb2007/