Interactive Mapping Blog

Mapping Solutions News

Archive for June, 2009

Bing Maps Silverlight control – top 10 wish list for release

Monday, June 22nd, 2009

UPDATED: As recommend by SoulSoltions in the comments I have marked each wish by whether it should be in the core control or in a separate toolkit (IMHO)

We have spent the last month working with the current Bing maps Silverlight CTP control (formally Virtual Earth) to create the new Bing Maps World Tour application which has been a really great experience. The current Silverlight control opens up a whole new world of possibilities when creating rich mapping solutions but as always we want MORE!

 

Here is our top 10 wish list for features and tweaks to be in the final map release in no particular order:

 

1.     Custom map view animations – include in core
Being able to quickly customise the speed and style of animation the map uses when navigating between map views would be great and allow developers and designers to add their own unique touch to their mapping projects.

 

2.     A basic pushpin & infobox control – include in toolkit


The Silverlight control team have deliberately left the creation of pushpins and popups to developers and designers as this gives us complete control and flexibility which is great and something missing from the current Ajax control. However, we can see some good reasons to have a basic pushpin and infobox offered by the final control release.

Firstly for new Silverlight developers coding a pushpin and infobox that works the same as the Ajax pushpin control is not a simple task so having a basic control they can style or build upon would allow people to get simple applications up and running faster.

Secondly for experienced developers being able to inherit from built-in controls will save a lot of repeated coding in different projects.

 

3.     Easy to style navigation controls – include in core
You can currently style the navigation controls, but getting access to this functionality is not straightforward (hopefully we will blog a tutorial on this soon). Being able to just apply a style or custom template as for normal Silverlight controls would be brilliant.

 

4.     Bird’s eye imagery – include in core


It goes without saying that Bird’s eye imagery is one of Bing maps greatest features, we hope it will make it into the first official release.

 

5.     Clustering – include in toolkit
Having a basic but extendable clustering solution would again help new and experienced developers quickly get applications online.

 

6.     Built in routing – include in toolkit
Although routing can currently be achieved quite simply using the examples from the interactive sdk, having this functionality built-in would save a lot of time and effort and again make it more open to new developers.

 

7.     Real time zoom level range data – include in core
The CTP release improves on the Ajax control by restricting zoom levels when the higher zoom levels are not available at a location. This is a great start but the data for this is not very detailed and you will still often get the dreaded camera icon appear.

Being able to get more detailed data, ideally in real time would be an excellent addition to the control ensuring we banish the camera icon forever! 

 

8.     Drawing controls – include in toolkit
Something that has often been requested for the ajax control is an officially supported set of drawing controls allowing polyline and polygon drawing as on bing.com. Having these available first in the Silverlight control would be great especially as it should be easier in Silverlight than it is in cross browser javascript. 

 

9.     KML / GeoRSS support – include in toolkit
The ability to quickly load a georss or kml file into the ajax control has been a massive help to new users and those of us wanting to quickly generate a map from existing content. Having this in the Silverlight control would encourage people to use the new control more as mashups would be quick to create.  

 

10.  Modular design
One issue with the ajax control has been that you need to download all the control code even if you don’t want to use all the features in your project. With the current Bing Maps Silverlight control dll coming in at 489kb it would be good to be able to optionally include features by having different dll’s for separate parts of the control. Another option would be to support assembly caching for the Silverlight map control similar to that in Silverlight 3 for the core framework dlls.

 

It was actually pretty difficult to come up with 10 sensible wishes as the current control has so many great features already. It would be great to see these all release but I have no doubt they are not all, if any, on the release list. Hopefully those that don’t make it might become part of the new direction that the codeplex project DeepEarth is taking, by creating a collection of reusable map controls in Silverlight.

 

We would love to hear comments about your own suggested features to see what the community as a whole want to see developed, so please add your comments below.

Earthware develops ‘Bing Maps World Tour’ for Microsoft

Monday, June 22nd, 2009

The Microsoft Bing Enterprise Mapping team approached Earthware two months ago, with an idea to communicate their monthly imagery releases to clients and partners in a more visually engaging format.

With each month’s imagery release potentially covering hundreds of updated locations worldwide the current system of publishing a simple list of all the locations was not demonstrating the full impact of each release. Microsoft was also keen to use their latest Bing Maps Silverlight control, to create a visually rich interactive mapping application which could be both a showcase for the monthly updates, and the possibilities that Silverlight and Bing maps can offer.

Microsoft were also keen to host the new application on the Windows Azure platform to show the flexibility of combining Azure services with the Bing Enterprise maps.

Windows Azure Development    Bing Maps     Microsoft Silverlight Development

Why Earthware?

Earthware already had extensive experience with Bing maps and the new Silverlight control after taking part in the closed beta program in early 2009. As part of this Earthware produced a Twitter map demo application which Microsoft demoed as part of the Bing Maps Silverlight control’s release publicity. The Twitter demo also used the Azure platform.

What did we deliver?

Bing Maps World Tour

  • A visually rich mapping application using Microsoft’s Bing Maps Silverlight Control and hosted on the Windows Azure platform.
     
  • A secure back office administration area to allow the Microsoft team to quickly, and easily, add and update monthly imagery release information.
     
  • A back end database built upon the Windows Azure table storage service.
     
  • The entire first release of the Bing Maps World Tour application was delivered in less than six weeks and in time for the challenging May 2009 imagery release deadline.
     

Try the finished Bing Maps World Tour application for yourself on the Bing Maps Website or read more about the application at the official Bing maps blog. You can also see the reaction of the developer community to the applications release on twitter.

If you are interested in Earthware helping you to create similar interactive animated mapping applications for your products please visit our interactive mapping consultancy page.

Add a bit of ‘Bing’ to your silverlight maps

Tuesday, June 2nd, 2009

As you cannot have missed in the news recently Microsoft has re-branded its search offering to be called “Bing”. This means Virtual Earth is now called Bing Maps for Enterprise.

Yesterday Microsoft automatically updated the Ajax Virtual Earth control to use the new Bing logo and you may have wondered why the Silverlight map control was not also updated? The reason is that the logo is a resource in the Silverlight control assembly and is not pointing to an external file.

So does that mean we have to wait for a new release of the Bing Silverlight map control before the logo will get changed? Well yes and no, if you want it to be automatically changed you will have to wait for the next release but there is nothing stopping you changing it yourself now by following the steps below.

Step 1 – Getting your project setup

If you don’t already have a Silverlight project setup with the Bing silverlight maps (Virtual Earth) control working see Chris Pietschmann’s excellent getting started tutorial.

Step 2 – Getting the new logo

You can download the new Bing logo from the url below:

http://www.bing.com/maps/i/logo_powered_by.png

Save this to a folder in your Silverlight project (for example Images) and then in Visual Studio ensure you include the new image in your Silverlight project and set it to be “Content” so that it gets included in the Silverlight xap file.

1

Step 3 – Hiding the existing logo

You may be asking how we turn off the existing logo? Well luckily the current Silverlight control allows us to hide the logo using the “LogoVisbility” attribute. You can do this in the XAML code as follows:

   1: <UserControl x:Class="BingLogoDemo.Page"
   2:     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
   3:     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
   4:     xmlns:m="clr-namespace:Microsoft.VirtualEarth.MapControl;assembly=Microsoft.VirtualEarth.MapControl">
   5:     <Grid x:Name="LayoutRoot" Background="White">
   6:         <m:Map x:Name="mainmap" LogoVisibility="Collapsed">
   7:             
   8:         </m:Map>
   9:     </Grid>
  10: </UserControl>

 

Step 4 – Adding the new logo

Now we need to add the new Bing logo. This is done by adding an image control and setting its “Source” attribute to point to the new logo file we downloaded in step 2. With a little alignment and margins we can get the logo to be in the same position as the original one. Below is the XAML showing you how to do this.

   1: <UserControl x:Class="BingLogoDemo.Page"
   2:     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
   3:     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
   4:     xmlns:m="clr-namespace:Microsoft.VirtualEarth.MapControl;assembly=Microsoft.VirtualEarth.MapControl">
   5:     <Grid x:Name="LayoutRoot" Background="White">
   6:         <m:Map x:Name="mainmap" LogoVisibility="Collapsed">
   7:             
   8:         </m:Map>
   9:         <Image Source="/Images/logo_powered_by.png" Width="93" Height="29" Margin="7 0 0 25" VerticalAlignment="Bottom" HorizontalAlignment="Left"  />
  10:     </Grid>
  11: </UserControl>

 

2

That’s it your all done.

Summary

Hopefully this tutorial has shown you just how easy this is to update. We could of course have used the online image file as the source of the image control, rather than including the new file in our application, but that might cause issues in future if Microsoft change the name of the file, or resize it. You can download a sample project showing the new logo below: