data acquisition using mashup and 3-d technologyrahr/geoweb.pdfcomponents of a mashup {data – you...
TRANSCRIPT
Data Acquisition using Mashup and 3-D Technology
Matt RahrCollege of Agriculture and Life Sciences
University of Arizona
Let’s Do It!
A “hybrid” website or web applicationContent from multiple sourcesCreates a completely new service
What is a Mashup?
+
Your Data
Characteristics of Mashups
Open sourceMultipurposeCan be used by communities to share or collect informationCan be interactive = “pin-maps” e.g. KatrinaThey are not GIS, but could become so…
&
Independent Site
HousingMaps.com
Craigslistdb
Mash Data Together
Mashup Example
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
Using the API
Building a Mashup - using the API
Getting a key
Obtained at http://www.google.com/apis/maps/signup.html
Terms of use…Unlimited hits50k geocode requestsGoogle 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 divfunction 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 APIvar 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 MapsIn 3-Dimension within Google EarthIn 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 ToolsArcGIS 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-BasedSharable via menu…
Send in emailCopy to clipboardBlog itLink to it
Geometric Measurements built-inRelief data just addedOblique imagery3D-Built in
Data AcquisitionCreating New Data within a Mashup
Google Maps “My Maps”Web-BasedSharable via menu…
Send in emailLink to it…Save as KML*
Embed HTML in your tagExtra content can be added to your mashup
3rd Party Mashup Sites
www.communitywalk.comwww.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.
Community Walk
Community Walk (cont.)
Community Walk (cont.)
Using Mashup Providers
Pro’sNo programming requiredQuick startup time
Con’sThe 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.
Katrina Info Map
Data AcquisitionWriting your own Mashup
Write a custom interface for your usersProgrammatically input data using the API.
Benefits:Get to collect multiple Attribute FieldsStore the data how you want to…
XML, KML, CSV, plain-text fileDatabase – MySQL, Oracle, SQLServerSpatial 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 APIArcObjects, PostGIS API
Web ServiceArcGIS Server Geoprocessing Service
Mobile Data Acquisition
Data can be aqquired 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 Appshttp://www.3dtracking.nethttp://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, PolygonsSimple 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.
Insert DRG
Close up of fly through
Non-geographical uses
You can make your z-value some other parameter, like populations statistics
e.g. states of Mexico
Example – states of Mexico
Example (cont.)
3D in Microsoft Virtual Earth
Built as a web-plugin.
Sits on the “webtop”, not a separate program.
Similar to Google Earth, butData 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 [email protected] presentation can be downloaded at
http://cals.arizona.edu/calsnet/presentations/geoweb2007/