Esri Labs Island at 2012 Esri International User Conference

Esri Labs island provides you for the first time an opportunity to experience, evaluate and discuss new and emerging innovations, technologies, experiments from Esri. This island is designed to foster collaborative show and tell, technical discussions and meet the researchers who drive the innovation engine.

At the Esri Labs Island, you will have access to:

-  Demoes and presentations on various topics such as HTML5, social networking, 3D GIS, imagery, mobile and many more

- A deeper look at how GIS and science are leveraged to solve problems and answer questions

- Demonstrations, best practices and technical deep dives

- Interaction with like-minded researchers, developers and geo-geeks

If you are forward thinking, enjoy challenging problems, want to play with latest technology and products (despite a few rough edges) we are looking forward to meet with you in the Esri Labs Island! You will not be disappointed!!

We have 40+ exciting sessions planned. Check it out http://t.co/NahtZc8o

Latest scoop and updates : labsuc2012.esri.com |OR| Twitter @esrilabs

Posted in Uncategorized | Leave a comment

Walking Papers and ArcGIS

Walking Papers is a service taking the approach of data contribution and data editing for OpenStreetMap and giving it a paper-based twist.
OpenStreetMap (OSM) itself is a wiki-style map project that creates and provides free geographic data and mapping to anyone who wants it. On a number of occasions though, access to the digital data is technically not possible or too overly complex when recording data in the field.
Walking Papers allows the user to take a printed map of the OSM data and to record handwritten eyes-on-the-street information. A scan of this annotated mapsheet is then uploaded to the Walking-Papers website and it can then serve as the basis for data capture with all your favorite OSM editors like Potlatch or the ArcGIS Editor for OpenStreetMap.

The traditional way of getting the Walking Papers scan into ArcGIS is to go the website itself and download a scan as a georeferenced TIFF file. You would then add the standalone raster to your map document and start the data automation process.

Very recently we have released a geoprocessing tool making the integration of Walking Papers into ArcGIS even easier.

The tool is called (by its boring yet descriptive title) ArcGIS Walking Papers Requester and it allows the user to request a Walking Papers scan by ID and to drop it into ArcMap.

  1. Upload the printed Walking Papers map.
  2. Go the URL of your scan like http://www.walking-papers.org/scan.php?id=8q88twn3
  3. Note the scan ID at the end of the URL, in this case ’8q88twn3′ (without the quotes)
  4. Open the Requester geoprocessing tool and enter the ID as the first parameter and a storage target location on disk as the second parameter.
  5. After the tool executes successfully right-click on the newly added raster dataset and start editing.

WalkingPapers Scan in ArcGIS

For a more detailed description on the workflow please refer to the OSM Editor documentation at the online help.
The geoprocessing tool is completely written in Python and is available for ArcGIS 10.0 at the ArcGIS Editor for OpenStreetMap site  and for ArcGIS 10.1 in the Analysis and Geoprocessing Tool Gallery

Contributed by Thomas.

Posted in Uncategorized | Tagged , , , | Leave a comment

Solar Eclipse Finder

This sample web application displays solar eclipses that have or will pass through a terrestrial location. To display eclipses that will visit your city, drag the icon with the question mark to map location of your city. Placing your cursor over the an eclipse path (as pictured above) to display additional information such as the date, duration and width of the eclipse.

The live application is accessible here.

The source code is available here.

The eclipse paths were prepared by Michael Zeiler from data courtesy of Xavier Jubier.  The data contains 905 solar eclipses from 1601 to 2200.  This dataset was published as a feature service using ArcGIS Server.

Contributed by Richie C.

Posted in Uncategorized | Leave a comment

Pivot for ArcGIS Online

YouTube Preview Image

Late last year Microsoft released the fifth and possibly final version of Silverlight. The most highly publicized improvement was the addition of 3d graphics support. A lesser known improvement was the inclusion of an updated PivotViewer control.

The first edition of the PivotViewer was used in a 2010 prototype entitled mosaic image finder, this app allowed users to display and filter a large collection of satellite imagery. Whilst it may have been technically possible to support dynamic collections, for simplicity, this and most other implementations used static collections.

The second and most recent edition of the PivotViewer is significantly improved. Developers can now bind viewers to dynamic collections and have the ability to style individual items (or tradecards).

The Applications Prototype Lab used the new edition of PivotViewer and the ArcGIS Portal API to render search results from ArcGIS Online. Searching ArcGIS Online for content related to “usa” reveals approximately 3,000 results. Unfortunately these search results can only be browsed ten at a time on www.arcgis.com. With the PivotViewer, all 3,488 map items can be viewed simultaneously or interrogated individually.

To use the live application, click here.

To download the source code, click here.

Contributed by Richie C.

Posted in Uncategorized | Tagged , , , | Leave a comment

Puzzle Map for Silverlight

Puzzle Map for Silverlight

Firstly it was a pleasure to meet many of you at the 2012 Esri developer summit in Palm Springs. If you were unable to attend you will be able to view our group’s presentation via streaming video very shortly. In the meantime you can watch last year’s presentation here (search for “innovation”).

This posting introduces an app premeired at the developer summit called puzzle map. The app is a Silverlight-based web application that cut and splits a regular map into nine jigsaw pieces. A timer in the lower left hand corner displays the time it takes solve the puzzle.

The live application is availble here.

The source code is available here.

This app was inspired by the Microsoft Surface v1 sample called scatter puzzle.  However, as a substitute for the Surface SDK, we used the open source multi-touch library for Silverlight hosted on codeplex. This library in turn makes use of the manipulations and inertia sample available from Microsoft’s download center.

When the puzzle is formed and shatters, each piece is actually an individual map that has been clipped (see uielement.clip) to conform to the shape of a puzzle piece. To demonstrate that each piece is a real map, hold down the space key and dragging your mouse inside the puzzle piece. This action will invoke standard panning operation, and because all pieces are linked, all other pieces will pan accordingly.

Hope you find this app intriguing, challenging and fun!

Contributed by Richie C.

Posted in Uncategorized | Tagged , , , , , , | Leave a comment

Mapping Health Indicators using Dynamic Layers in ArcGIS Server 10.1

ArcGIS Server 10.1 will introduce dynamic layers, which is the ability to change a map’s symbology (color, fill pattern, and outline characteristics, among others) on a per-request basis. Those who have used ArcIMS in the past may remember this capability fondly.

This Flex-based client application uses dynamic layer functionality, along with a variety of data filtering techniques, to let users explore relationships among various attributes in the data. It was built around data intended for users in the health care industry, but it could be used with any dataset containing numeric attributes.

You can find the application here.

Requirements

This application first and foremost requires map services running on an instance of the next release of ArcGIS Server–version 10.1. Also, due to technical reasons explained later in this post, the Firefox browser will probably produce unwanted network warnings as you use the application. Either use a different browser or apply the configuration-setting workaround to Firefox, as detailed below. (This issue should go away once the Flex API version 3 is released.)

The app currently requires a mapping service with a main layer (having some numeric attributes for viewing) and a background backing layer (with geometry only).

How to use the application

The map service behind this application stores a variety of health-related numeric attributes for the counties in the United States. The application can show up to four maps at one time; each one depicts one of the available numeric attributes in the map service. It can show a default attribute at load-time; in this case, it loads total population.

Find “Diabetes (percent), 2009” in the table of contents. Click it to show the map of diabetes rates, and close the 2010 Total Population map (you’ll see a close button in the upper right-hand corner, or you can click the highlighted “2010 Total Population” item in the table of contents).

You may click the left mouse button on any county to see a pop-up window with all attribute values for that county.

The counties shaded with a diagonal stripe pattern have no valid data associated with them. The counties are colored according to a quantile algorithm, meaning the map has a roughly equal number of counties from each of the legend categories at the top. You can change the renderer by clicking the legend and choosing a different algorithm, number of categories, or color ramp.

As you’re looking for patterns in diabetes rates around the country, you might want to examine one legend category at a time (for instance, only the counties with the highest rates of the disease). A quick way to do this is to hold the Ctrl key, click on a legend color, and hold the left mouse button down.

Filter criteria

The “Select counties…” dropdown offers a number of ways to filter counties based on their diabetes rates. “Top 10%” will show only the ten percent of all counties in the U.S. with the highest rates of diabetes. “Bottom 10%” will show only the counties below the 10th percentile. “Above average” and “Below average” do the same thing with respect to the 50th percentile.

The “Specify %” option lets you choose your own percentile for filtering the data.

Note that counties which don’t meet the filter are rendered transparent, allowing the background layer color to show through. In this screen capture, the worst 30% of counties (with respect to diabetes rates) are shown, whereas the rest—the best 70% of counties—are not displayed. Counties with no data continue to be rendered with the same diagonal pattern.

“Specify % range” lets you choose both a top and bottom percentile; in this case, we’re seeing the 40% of counties whose diabetes rates are clustered around the median:

Finally, you can use “Specify range” to choose counties falling within a maximum and a minimum percentage. A histogram shows the distribution of data across the entire set of counties.

Summary map

You might want to explore the relationship between diabetes and another variable—say the availability of fresh fruits and vegetables. Find “Few Fruits and Vegetables (percent), 2009” in the table of contents and click on it. A second map for that attribute will show up on screen. You can apply the same kinds of filters to the new map as were discussed above. Choose “Top 10%” as the filter for both maps.A glance suggests that both maps have some counties in common, but by no means all counties. Click the “Summary Map” button at the bottom left to see a combined map with only the counties shared by both maps.

These are the counties that are among the very worst for diabetes rates, and are also among the very worst for fruit and vegetable availability.

Post to ArcGIS Online

If you’re satisfied with this map and are ready to share your results with others, click the “Save to ArcGIS Online” button in the upper right. Enter your ArcGIS.com credentials (your Esri global account ID and password) and this map will be saved to your ArcGIS Online content list. After saving, you have the option to click a link to view the new map online in a web browser. You may need to enter your ArcGIS Online credentials again in the web application; after this, you should see the map displayed in your browser window.

Technical details

This application extends the DynamicMapServiceLayer class. Given a variety of parameters (class breaks algorithm, number of class breaks, desired colors, et al) it has logic to build a JSON renderer object and add it to the REST “export map” request; you can see this information if you have a browser debugger such as Firebug, Fiddler, or the Chrome Developer tools. ArcGIS Server version 10.1 can recognize that renderer and generate the proper symbology in the map image that gets generated and returned to the client for display.

Once the Flex API is updated and released for use with Server 10.1, this DynamicMappingLayer class can be scrapped and replaced with native Flex API calls to accomplish the same thing. During development, we ran into situations in which the export map request exceeded the maximum amount of data accepted by the Esri web adapter. For that reason, the DynamicMappingLayer makes all its requests via POST operations, not via GET.

We discovered that some versions of Firefox see these requests as an HTTP redirect operation, and end up warning the user (in a very annoying way) upon every new map request. So it’s easier to just useChrome or Internet Explorer with this application. If you’re set on using Firefox, however, you may use this workaround:

  1. Enter “about:config” in the Firefox address bar;
  2. Look for a config key called “network.http.prompt-temp-redirect” and set its value to false

I want to thank Patrick Mowrer for making available his multi-thumb slider control via the MIT License. His blog post on the component is here. I tried to use the (older) mx HSlider control for this, but found it had troubles when asked to handle very small fractional values. Mr. Mowrer’s control has no such limitations, although I did have to make a number of small modifications in order to be able to control the numeric precision of its dataTip.

Contributed by Mark D.

Posted in Uncategorized | Tagged , , , , , | 1 Comment

Animated Cartograms

YouTube Preview Image

A cartogram is a map where areas or lengths are distorted to represent thematic content such as population or GDP. This sample is a Silverlight-based web application that maps cartograms of international tourism, immigration and trade in dairy, meat and fruit.

The live application is available here.

The source code can be downloaded from here.

The data used in this application is derived from spreadsheets downloaded from Worldmapper. Cartograms of this data were generated using this geoprocessing tool developed by Tom Gross and published on ArcScripts. For data analysis and presentation we selected the Geood homolosine projection because it is equal-area and looks cool.

In my opinion, the most interesting aspect of this sample is its ability to animate between various cartograms. This is achieved using an inherited Graphics class that can interpolate geometry at a giving instance in time. This will be the subject of a future posting that will discuss this in more detail.

In summary, cartograms are useful technique for showing the distribution of thematic values particular when the data has a wide distribution. However cartograms are not suitable if the map reader is unfamiliar with the original shape of geometries.

Contributed by Richie C.

Posted in Uncategorized | Tagged , , , | Leave a comment

Dynamic Image Service Directory

This post describes a new sample published by the Applications Prototype Lab to browse and preview image services hosted on multiple ArcGIS Servers.

The live application is available here.

The source code can be downloaded from here.

Out-of-the-box Esri’s ArcGIS Server provides a web-based catalog view of published services called the service directory as shown below. The directory lists all available geospatial services, folders and contains links to view mapping services in a variety of clients.

The sample discussed in this post is somewhat similar to Server’s service directory in that it can be used to navigate a Server’s catalog of services. However the differentiator is that the sample can support multiple Servers and only image services.

In the screenshot below, a user has added a Server hosting imagery for Japan. As the user moves his or her mouse over the service names, the extent of the imagery is highlighted on the map as a red box.

When an image service is selected, it is added to the map and the map zooms to the extent of the imagery. In the screenshot below, a user selected the Sendaiwan80 image service from the Geospatial Information Authority of Japan (GSI) that shows the devastation immediately following the March 11th Tohoku earthquake and tsunami.

Zooming to the township of Watari, the devastation caused by the tsunami is quite obvious.

Using the built-in transparency slider it is possible compare the post-tsunami imagery with one of the preset base maps such as the world streetmap as shown below.

A single image service can be comprised of hundreds, thousands or even millions of individual images. At a single location there could be many overlapping images taken by different sensors and or at different times. To find all overlapping images at a specific location, use one of the four selection tools at the bottom right of the application to sketch an area of interest.

When the selection sketch is complete, a slide-out panel will appear containing preview thumbnails and associated data for all overlapping images. Depending on the source imagery, data displayed in the table may include the date of capture, cloud cover and the name of the sensor used.

In summary, this sample allows the browsing image services on an ArcGIS Server. The sample is built using Silverlight but it could easily have been Flex or JavaScript. All three web mapping APIs are functionally equivalent and use the same REST API to communicate with ArcGIS Server.

Contributed by Richie C.

Posted in Uncategorized | Tagged , , , , | Leave a comment

Applications Prototype Lab @ Esri Developer Summit

We are happy to announce that the Applications Prototype Lab will be presenting a session entitled “Latest Innovations” at next month’s developer summit in Palm Springs.  The sessions is scheduled for Wednesday, March 28 @ 2:45pm in the Mojave Learning Center (Renaissance Hotel).  Click here for details.

We look forward to sharing our work and meeting you all!

Session description:
“Don’t miss this opportunity to view an array of thought-provoking demonstrations from Esri’s Applications Prototype Lab. Located at Esri’s headquarters, this fourteen-member team specializes in rapid prototyping and the construction of pre-sales demonstrations covering a wide range of topics.” (from DevSummit Agenda)

Contributed by Richie C.

Posted in Uncategorized | Tagged | Leave a comment

How to apply Map Effects using a Proxy Server

Last month the Applications Prototype Lab published samples, and associated blog posts, demonstrating how apply client-side effects to map layers in Silverlight and Flex.  The ability to change the appearance of certain layers, base maps in particular, could be very useful in some scenarios.  For example, a developer may wish to apply a night effect to a base map to make a map more legible for evening drivers.  Or perhaps a developer would like to desaturation an imagery base map layer to accentuate an operation layer.

The two techniques referenced above rely on plug-in technology to perform client-side rendering of graphics and a lot of custom development.  Secondly, what happens if the client browser or operating system does not support these plug-in technologies?

This blog post explores the use of web proxies to perform server-side map effects.  The technique requires minimal coding and a single proxy can be shared by all three Esri web mapping technologies (Silverlight, Flex and JavaScript).  Disadvantages include extra network latency and effects cannot be as dynamic as the client side alternative.

Normally, a Silverlight map with a topographical base map would look something like this:

<esri:Map>
    <esri:ArcGISTiledMapServiceLayer
       Url="http://services.arcgisonline.com/ArcGIS/rest/services/World_Topo_Map/MapServer" />
</esri:Map>

To apply an inverted color map effect the developer need only insert the following code*:

 <esri:Map>
    <esri:ArcGISTiledMapServiceLayer
        ProxyURL="http://maps.esri.com/sldemos/delta/invert.ashx"
      
Url="http://services.arcgisonline.com/ArcGIS/rest/services/World_Topo_Map/MapServer" />
</esri:Map>

* Due to limited capacity this proxy service has been engineered to only respond to requests from the sample app linked below.

To view the live app please click here.

To download the source to the web app and proxy service please click here.

In summary, the server-side approach does not support the interactively of the client-side alternative but it requires minimal coding and can accommodate all Esri web technologies.  The author encourages you to experiment with server-side map effects as a way to provide end-users an enhanced experience without duplication of content.  Additional effects can be downloaded from sources such as the WPF Pixel Shader Effects Library or you can create your own.

Sample screenshots.

Contributed by Richie C.

Posted in Uncategorized | Tagged , , , , | 1 Comment