Virtual Earth, ehm, bing

Syndicate content
Make it happen.
Updated: 1 day 9 hours ago

Add Bing (Maps) to Your Safari Browser Extensions

Thu, 07/29/2010 - 17:38

A while back I blogged about Internet Explorer Accelerators that used Bing services for quickly highlighting text and performing subsequent searches (see, “Internet Explorer 8 Beta 2 Includes Virtual Earth”). Well, Apple’s Safari browser has extensions that allow 3rd party services, such as Bing, to add on capabilities such as Bing Search, Bing Travel and arguably most important Bing Maps.

If you have Safari installed, go to the Safari Extensions page and download the Bing Highlights extension (from within Safari). Once you’ve installed the Bing Highlights extender for Safari, you can go to any web page within the Safari browser, highlight an address with your mouse or touchpad and you’ll see a pushpin icon in the extender. Clicking the pushpin will load a Bing Map right within Safari with links to view the address in Bing Maps or get directions to or from the respective location. Alternatively, click the magnifying glass and you’ll see some options for searching Bing. Select “Search for a map” and you will be magically transported over to Bing Maps with the location geocoded and centered at the respective match. So, now we’ve made it so easy to get maps even if you’re on Safari with a simple select and click.

Also, in case you were wondering, you can switch your default search in the Safari browser (upper right) to Bing too. Just click the down arrow in the search box and select Bing. Get your browser all Bing’d out! To learn more about the Bing Extension for Safari, read up on the Bing Search Blog.

 

 

 

Follow me @BingMaps, ^CP

Categories: , Cool Stuff

Facebook Maps Out User Stories with Bing

Wed, 07/21/2010 - 16:30

Today, Facebook is launching a new application highlighting shared stories about people who have leveraged Facebook to reconnect. The application dubbed Facebook Stories uses stories that have been authored by users who’ve found family, friends and flames on Facebook after having been long disconnected and used the social network to find one another amongst the 500 million Facebook users. Of the stories that have been published, Facebook is providing you with location context via a Bing Map. For those users that are reading the stories a map provides that visual representation to further immerse you into the story bringing you closer to the town being discussed.

Facebook’s intent with the Facebook Stories application is to celebrate all these types of stories and to help you share your story with people around the world. The application lets you scroll through stories on a Bing Map (by location), as well as by dozens of themes like “Love,” “Family,” Reunions,” “Sports” and “College” (by theme). Fill out the short form at the bottom and select a theme, and you’ll be able to share your story in the application and with your friends through News Feed.

Facebook wants your stories. They’re hitting the road on a US tour to meet the people, towns and organizations behind these stories in our first ever Facebook Stories road trip. They’ll be sharing more details of the trip and initial stops in future posts on this blog and the Facebook Page. However, they’ve made it a bit more interesting by asking people to submit their stories on Facebook Stories which could determine whether or not they’ll visit your town. Submissions are limited to 420 characters, so think about what makes your story unique and about the impact you or a group of people made by using Facebook. Read the full blog post on the Facebook blog for more details.

Follow me @BingMaps, ^CP

Categories: , Cool Stuff

Following Tweets Along The Tour de France

Mon, 07/19/2010 - 16:57

 Exciting news of digitally showcasing the renowned Tour De France happening in real time this summer. Bing Maps and Team Radioshack are proudly teaming up to make social media a big part of this year's Tour De France. If you are a Tour De France fan and love this event, you need to check this out. This summer, everyone will be able to get live tour updates via geo-tagged tweets straight from the course in France and around the world on a Bing Twitter Map hosted by Team Radioshack and LIVESTRONG.com.

 

For the first time ever fans will be able to get real time geo-location based reactions and content from spectators, journalists, and even competitors during the big race. Fans will also be able to embed a customized Tour De France twitter map onto their own blogs to share with their own community and spread the excitement. Many Tour riders are active Twitter users including Lance Armstrong of Team Radioshack, who has over 2.5 million followers.

This map interface may look familiar to you. That’s because it’s based on the EMBED function from the Bing Twitter Map App. The Bing Twitter Map App allows you to embed a Bing map with respective tweets and and users filtered by location. Well, Tour de France is so big we built a site dedicated to our map app just for you. Tweet de France.com is a web site where you can take a Bing Map with the entire Tour de France trail drawn atop it and have geolocated Twitter feeds coming through on the map. The tweets are based on location / proximity to the race and a filter of “Tour de France.” You can now take this map and using the EMBED code below the map you can add a cool Bing Map element to your web site, blog or application.  Just copy the code, paste it into your HTML editor and view the page.

Follow me @BingMaps, ^CP

Categories: , Cool Stuff

Data Connector: SQL Server 2008 Spatial & Bing Maps

Tue, 07/13/2010 - 17:31

For those of you who read my blog, by now I’m sure you are all too aware of SQL Server 2008’s spatial capabilities. If you’re not up to speed with the spatial data support in SQL Server 2008, I suggest you read up on it via the SQL Server site. Now, with the adoption of spatial into SQL Server 2008 there are a lot of questions around Bing Maps rendering support. Since we are one Microsoft I’m sure you heard the announcement of SQL Server 2008 R2 Reporting Services natively supporting Bing Maps. Okay, so let’s complete the cycle. Now, I want more than just Reporting Services – I want access to all those spatial methods natively built into SQL Server 2008. I want to access the geography and geometry spatial data types for rendering on to the Bing Maps Silverlight Control. Enter, the Data Connector. OnTerra has created an simple, open source way to complete the full cycle of importing data into SQL Server 2008 and rendering onto Bing Maps as point, lines and polygons. Data Connector is available now on CodePlex, so go get it.

 

Do you know what this means??? It means with only a few configurations (and basically no coding) you can pull all of your wonderful geo-data out of SQL Server 2008 and render it onto Bing Maps Platform! You get to tweak the functions for colors and all that jazz; but, holy smokes this will save you a bunch of time in development. Okay, so using SQL Server 2008 as your database for normal data, also gets you free spatial support and now you have a simple way to visualize and visually analyze all of the information coming out of the database. Did you know that SQL Server 2008 Express (you know, the free desktop version of SQL Server 2008) has spatial support. Did you know that we launched SQL Server 2008 into Windows Azure calling it SQL Azure? So, if you’re moving to the cloud out of the server farm you have access to all the spatial methods in SQL Server 2008 from the Windows Azure cloud. Any way you want to slice and dice the data we have you covered – desktop, server, cloud; and, Bing Maps with the Data Connector is now ready to easily bring all the SQL Server 2008 data to life without any other software, webware or middleware needed!

Oh, and we have a HUGE Bing Maps booth at the ESRI User Conference going on RIGHT NOW in San Diego. If you’re there, stop by and chat it up with some of the Bing Maps boys. Wish I was there. Also, a reminder that Bing Maps (and OnTerra) are at the Microsoft Worldwide Partner Conference, so if you’re there stop by and talk shop with them too.

Here are some helpful links:

Follow me @BingMaps, ^CP

Categories: , Cool Stuff

Microsoft Research and NASA Add Mars to WorldWide Telescope and Bing Maps

Mon, 07/12/2010 - 21:00

Today the Microsoft Research team behind WorldWide Telescope added the much anticipated Mars imagery from NASA. Microsoft Research and NASA are providing an entirely new experience to users of the WorldWide Telescope, which will allow visitors to interact with and explore our solar system like never before. Viewers can now take exclusive interactive tours of the Red Planet, hear directly from NASA scientists, and view and explore the most complete, highest-resolution coverage of Mars available. To experience Mars up close, Microsoft and NASA encourage viewers to download the new WWT|Mars experience. Read the full press release.

The beauty of this is that the Bing WorldWide Telescope Map App has been updated with the new imagery, as well. This means users of Bing Maps can immediately enjoy the new imagery of the Red Planet from within their browser via our Silverlight site. Navigate to the Silverlight site, click the “Map Apps” button, Select the “WorldWide Telescope” map app. Once it loads, select “Mars” from the Collections list and you can see a bunch of options for viewing the photos.

The Mars imagery is out of this world. ;)

So, this Bing Map App is hard to beat, but it’s not in the running for being the King of Bing Maps. Throw your hat in the ring and exchange it for a crown!

Follow me @BingMaps, ^CP

Categories: , Cool Stuff

Overlaying Parcel Boundaries on Bing Maps

Mon, 07/12/2010 - 16:00

In coordination with Digital Map Products (DMP), developers can now easily overlay over 100 million US parcels to more easily identify boundaries between properties. Using a simple, native method in Bing Maps and DMP’s ParcelStream API with just 7 lines of code (yes, SEVEN) you can tap into this wonderful trove of parcel information. So, how is it done? Luckily, DMP even provides code samples and working applications that you can just copy, paste and run.

The sample below uses both Bing Maps Platform APIs (AJAX) and DMP’s ParcelStream API. To walk you through the logic…you’ll first load both APIs by linking through JavaScript script tags. You’ll instantiate the Bing Map control (LoadMap()), then assign the parcels' via DMP’s API onto a map tile layer (layer = new Dmp.Layer.TileLayer()), and overlay the layer onto Bing Maps (addLayer()). The sample includes a toggle button and navigation which are optional by provide additional benefits to the user.

<html>
<head>
    <title>Adding Parcel Tile Layer with DMP API</title>
    <link href="http://spatialstream.com/samples/css/Style.css" rel="STYLESHEET" type="text/css" />
    <script src="http://ecn.dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=6.2" type="text/javascript"></script>
    <script src="http://parcelstream.com/api/DmpApi.aspx?map=Bing&host=parcelstream.com/&v=3" type="text/javascript"> </script>
    <script type="text/javascript">
    var layer = null;
    var map = null;
    window.onload = function() {
        //Instantiate Bing Map instance
        map = new VEMap('myMap');
        map.SetDashboardSize(VEDashboardSize.Tiny);
        map.LoadMap(new VELatLong(33.85, -117.8), 17, VEMapStyle.Aerial);
        Dmp.Env.Connections["SS"].init("/dc1/_T80/219e3105-167c-4538-b449-2c8dddadb09d");
        layer = new Dmp.Layer.TileLayer("ParcelTiles", "SS", "Dmp_License/ParcelTiles", {zoomRange:{min:16,max:20}});
        map.addLayer(layer);
    };   //window.onload
    function toggleLayer()
    {
        layer.attr("visibility", document.getElementById('toggleLayer').checked);
    }
    </script>
</head>
<body>
    <h2>
        Adding Parcel Tile Layer with DMP API</h2>
    <p>
        Parcel boundary lines are displayed on the map below as a tile layer. Click the
        Toggle Layer box to turn off/on
        <br />
        the parcel lines tile layer.</p>
    <input id='toggleLayer' type='checkbox' name="Toggle Layer" checked='checked' onclick='toggleLayer()' />Toggle
    Layer
    <div id="myMap">
    </div>
</body>
</html>

 

That’s it! I’m not sure they could’ve made it any easier. Developers can create a free 30 day account with DMP to test it out and considering it takes all of 5 minutes to create an app you’ll have 43,195 more minutes to convince your CTO to easily add parcel layers atop your Bing Maps application. The code above requires registration associated with your domain, so if it doesn’t run for you it’s because I’m using my key and you need to get your own.

Obviously, this will also work with the Silverlight control as a tile layer too, so if your preference is to use the Bing Maps Silverlight control you can reference the DMP API’s and pull the parcel layers into the Deep Zoom experience.

Of note, the Bing Maps team will be at the Inman Connect Real Estate Conference July 13 – 15 in case you want to talk shop. We have 3 speaking sessions for you to learn about Bing Maps.

Follow me @BingMaps, ^CP

Categories: , Cool Stuff

Bing Maps at Microsoft Worldwide Partner Conference

Fri, 07/09/2010 - 18:13

Going to the Microsoft Worldwide Partner Conference in Washington DC next week? We are too. The Bing Maps team will be there in full force with lots of activities for you to immerse yourself with knowledge about Bing Maps, how Bing Maps are being used by Microsoft Partners via presentation by those partners, a hands on lab and Microsoft Partner awards (solutions have used Bing Maps!). Check out the full roster of activities and how you can get more involved with Bing Maps.

Sessions:

  • Cloud Track Interactive session, July 12, Whit Crump leading with partner panel.
  • App Plat Interactive session, July 14, Kevin Adler leading.

 

Theater Presentations:

  • Business Productivity Partner Theater:
    • Rolta, July 13
    • IDV Solutions, July 15
  • WPC Expo Theater:
    • Bing Maps, Kevin Adler, July 13
    • SpeakTECH, July 13
    • IDV Solutions, July 13
    • ISC & Avalara, July 14

 

Hands On Labs:

Get hands-on experience integrating Bing Maps with SharePoint and SQL Server proctored by Bing Maps Technical Solutions Professional, Mark Merchant on July 13 & July 14, available as self paced throughout WPC.

Bing Maps Kiosk:

Talk with the team and see a demo at the Bing Maps kiosk in the Business Productivity area, 155. Get your copy of the Bing Maps Partner Business Case at the Bus. Productivity Collateral Center.

WPC – The Contest:

We are participating in The WPC contest which offers cool prizes and a chance to win a car! Get your Contest Playing Card at WPC and then attend a Bing Maps presentation at the Expo Theater as a qualifying action for The Contest.

Partner of The Year Awards:

  • Congratulations to Borchert who will receive the Country Partner of the Year Award for their BGI ThematicMapper solution which is based on Bing Maps and Silverlight.
  • Congratulations to Avalara who will be receiving the Software Plus Services Partner of the Year award for their GeoSalesTax solution developed with Bing Maps, Silverlight, MapDotNet and Azure.

For more information about The Microsoft Worldwide Partner Conference, visit the WPC web site or follow them on Twitter @WPCDC.

Follow me @BingMaps, ^CP

Categories: , Cool Stuff

Bing Maps Keyboard Shortcuts

Fri, 07/09/2010 - 17:47

It’s Friday. The sun is shining in Seattle and I’m personally coming out from under a set of dark clouds that has covered me for the last 6 weeks. I’m in a good mood suddenly and feel a few quips coming on, so figured I’d post something on the light side to satiate your technical hunger while keeping the information interesting and useful. So, why not document the keyboard shortcuts we support on Bing Maps (both AJAX and Silverlight)? I’m actually more of a keyboard than mouse kinda guy, so there’s a vested interest in getting this out there for those of you who feel the same. Now, put down your mouse and try these on Bing Maps.

AJAX

Zoom in:    +, =

Zoom out: -,_

Pan: Arrow keys

Change Map Styles:

Road: r

Aerial no labels: a

Aerial with Labels: h

Oblique no labels: b

Oblique with labels: o

Silverlight

Zoom in:    +, =

Zoom out: -,_

Pan: Arrow keys

Happy sunny, Friday everyone! If it’s not sunny where you, ironically, you’re welcome to come to Seattle anytime.

Follow me @BingMaps, ^CP

Categories: , Cool Stuff

New Bing Map App: 2010 Tour de France

Thu, 07/01/2010 - 16:00

Well, with the USA soccer (futbol) team exiting the FIFA World Cup for 2010 my attention gets focused elsewhere. Enter, Le Tour de France. Le Tour de France runs from Saturday July 3rd to Sunday July 25th 2010. The 97th Tour de France will be made up of 1 prologue and 20 stages and will cover a total distance of 3,642 kilometers. I was looking at Le Tour de France site and they have this PDF route map – a bit antiquated. I’m going to go out on a limb and say you might want to check out the Bing 2010 Tour de France map app for a better experience.

 

Fans of cycling's best known tour, the Tour de France, can now preview the course and check the standing of their favorite teams! During this three-week long event each stage is displayed on the map along with pushpins to indicate the start and finish. Various waypoints, such as the feed zones and hill climbs are included. Displayed along the top of the map is an interactive profile for which a user can see elevation and slope changes for the selected stage. The stage description and weather prediction are shown in the "Stages" tab on the left panel. Fans can view daily results in the "Results" tab.

A little better than the PDF. Arguably the best experience is in Bird’s Eye view (enhanced). We’ve reprojected the ortho photos to provide a unique visual context; however, that combined with the elevation information gives you a great feel for just how tough these hills really are.

Side note, if you’re team is still in the FIFA World Cup you can still follow the action with the Bing World Cup map app or find your fellow international peeps with the Bing Home Turf Finder map app.  

Got a better Bing Map App idea? Submit it to become The King of Bing Maps!

Follow me @BingMaps, ^CP

Categories: , Cool Stuff

Evo Conference Musings and A Woman’s Touch

Tue, 06/29/2010 - 20:55

This weekend I attended the Evo Conference – a new conference dedicated to “The Evolution of Women in Social Media.” It wasn’t like any conference I’d ever been to and since my dear friend Kelly Olexa invited me to be on her panel, I agreed and made the trip out to Park City, UT for the weekend…I know, life’s rough. The panel was dedicated to “The Future of Location and Mobile technologies and how they apply to Social Media.

My discussion focused on awareness of how location information is proliferating across the web. I spent time updating the ladies on where we are today with mapping and location (everyone loves imagery); what mobile applications are relevant today (foursquare, Twitter, Gowalla); what location applications are about to bust out (StreetSpark, Flook, Facebook) and my thoughts on where the world was going, why location can be powerful and with power comes much responsibility in both the companies that are using it and the users that are contributing to it. I talked about my vision of real time camera feeds being broadcast over wireless networks with map data and any relevant location data being augmented over the reality as it streams in real time. I talked about the disappearance of the base map and the constant complaints of outdated imagery and how we could change that by tapping into camera feeds from both cameras around the world and people switching their text-based Twitter feeds to a streaming video channel of what it’s like to look out my eyes simply by turning on my camera phone. I ended the discussion with a brief synopsis of how all this location information is being fed out through these different mediums, appearing in search results and could at some point put everything about you in the palm of someone’s hand via web services.

Let me talk through this most critical slide – I called it “Knowing You Before You Know I Know You.” First, I have dinner with my dear friend Blake (we take a photo). I upload the photo to Facebook and tag her, so my friends can see us together. I tweet it out over Twitter so the world knows about it. Facebook and Twitter are both pushing data into Bing (and Google) for indexing. It’s rumored that Google is working on some facial recognition search queries so that you can identify a person by their picture. In fact, both Bing and Google have image searches that when you put in text you can find pictures of the people – text-based, of course. Now, let’s say a friend of mine sees Blake walking down the street and wants to learn about her. He whips out his phone, turns on the camera which identifies her using the facial recognition software. Queries are made over the web to find all kinds of information about my girl and next thing you know my friend knows more about her than I do! Hmm. That is some powerful stuff. Perhaps a little scary, but as a celebrity the more people know about you the more they feel they know you; thus, the more they’ll see your movies, buy your albums or listen to your Bing Maps Webcasts. Okay, wishful thinking.

At the end of the day, my talk was to provide awareness. This conference was about women. Women tend to worry about different things than men (I know, a HUGE generalization, but you know what I mean). Security, privacy and the information about you on the web is critical to their well-being. We all want to control what information is divulged how, so it’s important to understand the relevant technologies that are immerging that could affect that.

The conference as a whole was extremely well put together and jam packed with good speakers touching on sensitive topics about empowering women. If you’re a woman and you have any kind of presence online, you just missed the conference of the year. So, plan for next year. I can only hope to be invited back. For more recap about the Evo Conference, check out Rachael Herrscher’s blog post on Today’s Mama. And, hey, you know a conference is awesome when it ends up with 30 women jumping in a pool at once.


Well done, ladies. Well done.

Follow me @BingMaps, ^CP

Categories: , Cool Stuff

New Bing Map App: Imagine Cup 2010

Tue, 06/29/2010 - 17:43

In coordination with my post last night about the Imagine Cup, 2010 Apps Focus on Location, my friends at Soul Solutions have created a Bing Map App to pinpoint the finalists, judges and team captains from around the world. The new map app dubbed Imagine Cup 2010 has different colored pins to represent the different types of people associated with the competition – blue pins are finalists; red pins are judges; green pins are captains.

Clicking a pin will open a popup with photos and/or information about the our Imagine Cup peeps. You can also filter the types of application submissions by checking off the different types on the left-hand navigations. The categories include Software Design, Embedded Development, Game Design, Digital Media and IT Challenge. These future leaders of the tech world have submitted some crazy, killer applications that are inspiring us all to stretch our imaginations especially in the use of location via Bing Maps. If you’re a college (or High School!) student and want to get involved next year, get involved! For more information about the Imagine Cup, visit the web site. Who knows; maybe next year, I’ll be writing about your application.

Also, this is one of the submission for the King of Bing Maps competition. Got something better? Submit your app today!

Follow me @BingMaps, ^CP

Categories: , Cool Stuff

Imagine Cup, 2010 Apps Focus on Location

Mon, 06/28/2010 - 23:42

 The Imagine Cup, 2010 is in full swing and at least 16 of the applications are using Bing Maps to represent their focus on visualizing location information. Open to students around the world, the Imagine Cup is a serious challenge that draws serious talent, and the competition is intense. The contest spans a year, beginning with local, regional and online contests whose winners go on to attend the Worldwide Finals held in a different location every year.  The intensity of the work brings students together, and motivates the competitors to give it their all. The bonds formed here often last well beyond the competition itself. Watch these videos for a full overview:

What’s really great is YOU get to vote for the best application. Go vote for your favorite application (preferably one with Bing Maps like those listed below).

Oman: "Show Me The Traffic"  is a web application that provides graphical information that describes the level of the traffic on roads using Microsoft "Bing Maps". The web server of the solution will receive data from traffic detectors. By this solution, drivers will not be stuck in traffic anymore if they got our alerts. Also, the traffic itself won't take long time to be resolved because of the decrease of number of cars towards that specific traffic.

 

Croatia: Think Green is a system design to bring technology and knowledge to the farmers, helping them to increase food production. The system is used for monitoring and regulating conditions in a greenhouse. The greatest feature of all is its ability to circumference the geographical limitations that numerous cultures have, allowing growth of required cultures virtually anywhere.

Slovakia: The aim of our project is to motivate people to reuse items because it is a good way of saving natural resources and our environment and people can help each other as well. We use a Bing Maps interface to show where what is situated and we let them invite their friends or let their friends to know about their activities via largest social networks.

Italy: Global warming and sustainability are big buzz topics, particularly in terms of individuals wanting to make a conscious effort to reduce their carbon emissions. 31% of carbon emissions are generated by cars and this figure increases dramatically in urban areas. Car pooling is a system recognized in many European countries as a way of helping people to lower their emissions, however, despite several attempts, it has failed to take off in Italy due to locals being wary of sharing their cars with strangers. The Error 404 team developed the Lift4u software which searches a number of data paths allowing users to find the ideal route, mode of transport (public and private) or people to car pool with and providing useful feedback and ratings as those seen on Facebook and Ebay. The app incorporates Bing maps and Azure services to provide a reliable, safe and effective system to optimize travels all over the world, cutting traffic and pollution back. It’s usable by a PC but already works on Windows Phone 7 too and integrates a smart system to make it safer, more secure and reliable thanks to a deep integration with Facebook.)

Tunisia: Our project, the Nature Protector, is basically geared toward governments in order to improve the quality of life for all. It aims to prevent disaster, help with better transportation issues and prevent ozone hole dangers. Our solution is a Silverlight Business project which runs on Web, desktop, cloud and Windows Phone 7. It collects information such as weather, pollution percentages and many other things from reliable sources for governmental administrations. It also works in conjunction with social networks like Twitter, Facebook, Bing and Google. It shows alerts of incidents to government administrators before they happen. It is not only for government use but also for a simple user who can choose a specific region and have access to all the requested information they need.

Singapore: Teacher's Think Tank (T3) is a website and SMS system that provides a support network for teachers.    T3 hopes to do three things: to improve the quality of teaching in schools through harnessing the collective wisdom of the online community, to motivate teachers to improve their teaching methods, and reduce the rate of attrition and repetition in primary schools. This system enables teachers to SMS questions to other like-minded professionals in another region about subject matters and teaching pedagogy in their native language. Responses are generated and sent as an answer, in the teacher's native language, via SMS. In this way, teachers are able to share their problems, learn from the suggestions and teach their students better.   In addition, T3 serves as a one-stop centre for organizations to assist schools/teachers to receive targeted aid.  Schools/Teachers may publicize their needs for resources via SMS. A Bing Map is used to display these requests, and filters information according to the needs of the schools/teachers.  When organizations learn about these needs, resources could be shared more efficiently, allowing schools/teachers to make use of these resources in their teaching.  Through T3, we aim to improve the quality of education in schools and reduce attrition and repetition rates.

Here’s a list of most of the countries with software design finalists using BingMaps:

  • Australia
  • Belgium
  • Brazil
  • Bulgaria
  • Côte d'Ivoire
  • Italy
  • Oman
  • Philippines
  • Portugal
  • Puerto Rico
  • Romania
  • Saudi Arabia
  • Singapore
  • Slovakia
  • Sri Lanka
  • Tunisia
  • United Arab Emirates

 Follow me @BingMaps, ^CP 

Categories: , Cool Stuff

Bing Map App Development Resources

Tue, 06/22/2010 - 19:47

As part of the King of Bing Maps contest, I wanted to share some resources available to help you rise to the crown.

First, download the SDK from Microsoft Connect. Bring it down into Visual Studio 2010 and ensure you have Silverlight 4 installed.

Second, Ben Lemmon, Bing Maps Developer, posted a code sample on the Bing Developer Blog outlining how to create a map app illustrating where the planets in our solar system are at any given time. This is a great tutorial for getting started with writing your first Bing Map App (below). You can access the full solution from this link.

Next, if you have a KML file hosted somewhere on the web, you can import that KML file, wrap it up and call it a Bing Map App. Remember, content is king…if you want to be king. You do this via the Bing Maps Portal (this is also where you submit your application).

There’s also a template application in the SDK. So, check that out once you download the SDK from Microsoft Connect.

Within the Bing Community we created the Bing Map App developers forum. You’ll want to go there to ask questions of the community. Plus, we’re monitoring the Bing Map App forums for comments, questions and clarifications so if someone in the community doesn’t answer your questions one of us will.

Finally, check out the video Earthware created which provides a useful overview of Bing Map Apps, how apps are created and submission guidelines.

Developing Bing Map Apps - Overview from Brian Norman on Vimeo.

/////////////////

//Ben Lemmon’s Planet Tracker App

////////////////

With the Bing Maps Apps SDK just released, it’s time to get started writing apps using the Bing Maps platform. The first thing you need is something to map. I wanted to do something a little more interesting than your typical “Hello World!” app, so I chose to map the locations of the planets relative to the earth. The necessary calculations are taken care of by the CodePlex project AAPlus. To get started, download the AAPlus code from CodePlex, and compile it against the Silverlight runtime, or use the DLL included in the attached source project. After you have that ready, you should set up your solution by following the steps in this post.

Now that you’re set up and ready to go, let’s get to coding! We’ll start by making a class that extends Microsoft.Maps.Plugins.Plugin. The Plugin class is used to import and export functionality needed, and it also acts as the entry point for your app. We will need to use several contracts provided by the SDK. To get a reference to those contracts, simple create public properties on your plugin class, and decorate them with an ImportSingleAttribute, and the name of the contact to import. For this sample, we will add the following properties to import the desired functionality.

/// <summary>

/// Import the LayerManagerContract so we can add the AstronomyLayer upon activation

/// </summary>

[ImportSingle("Microsoft/LayerManagerContract", ImportLoadPolicy.Synchronous)]

public LayerManagerContract LayerManagerContract { get; set; }

/// <summary>

/// Import the PushpinFactoryContract so we can add standard pushpins to the map

/// </summary>

[ImportSingle("Microsoft/PushpinFactoryContract", ImportLoadPolicy.Synchronous)]

public PushpinFactoryContract PushpinFactoryContract { get; set; }

/// <summary>

/// Import the PopupContract so we can register each entity to show a popup on hover

/// </summary>

[ImportSingle("Microsoft/PopupContract", ImportLoadPolicy.Synchronous)]

public PopupContract PopupContract { get; set; }

/// <summary>

/// Import the map contract so we can zoom out to world view upon activation

/// </summary>

[ImportSingle("Microsoft/MapContract", ImportLoadPolicy.Synchronous)]

public MapContract MapContract { get; set; }

These properties will automatically be set before Initialize is called. In Initialize, we just want to set up our primary layer. A layer is what allows you to add items to the map, and show UI in the left pane. A plugin can have multiple layers, but it’s more common to just have one layer per plugin, which is the case here. Since there will only ever be one layer, we set it up in our Initialize method.

// The singleton layer that contains each of the AstronomyEntities

private AstronomyLayer _layer;

/// <summary>

/// Called after all the imports are populated

/// </summary>

public override void Initialize()

{

base.Initialize();

_layer = new AstronomyLayer(this);

}

Activate can be thought of as one of the entry points to your application. The other entry point is layer deserialization via permalinks, but I won’t cover that in this post. In the Activate method, we want to add our layer or bring it to the front. This is done by using the LayerManagerContract which we previously imported. We also set the map view using the MapContract to show the entire world.

/// <summary>

/// Called when the user launches the application

/// Either add the AstronomyLayer or bring it to the front, then zoom out so the entire world is visible.

/// </summary>

public override void Activate(IDictionary<string, string> activationParameters)

{

base.Activate(activationParameters);

if (LayerManagerContract.ContainsLayer(_layer))

{

LayerManagerContract.BringToFront(_layer);

}

else

{

LayerManagerContract.AddLayer(_layer);

}

// The the view to show the whole world

MapContract.SetView(new LocationRect(90, -180, -90, 180));

}

We now need to provide an implementation of AstronomyLayer which will add each planet to the layer, and update their positions based on the simulated time.

// Add each planet to the list of enties

// Each entity in this.Entites will be rendered by Entity.Primitive on the map.

this.Entities.Add(new AstronomyEntity(Elliptical.EllipticalObject.Mercury, plugin.PushpinFactoryContract));

this.Entities.Add(new AstronomyEntity(Elliptical.EllipticalObject.Venus, plugin.PushpinFactoryContract));

this.Entities.Add(new AstronomyEntity(Elliptical.EllipticalObject.Mars, plugin.PushpinFactoryContract));

this.Entities.Add(new AstronomyEntity(Elliptical.EllipticalObject.Jupiter, plugin.PushpinFactoryContract));

this.Entities.Add(new AstronomyEntity(Elliptical.EllipticalObject.Saturn, plugin.PushpinFactoryContract));

this.Entities.Add(new AstronomyEntity(Elliptical.EllipticalObject.Uranus, plugin.PushpinFactoryContract));

this.Entities.Add(new AstronomyEntity(Elliptical.EllipticalObject.Neptune, plugin.PushpinFactoryContract));

this.Entities.Add(new AstronomyEntity(Elliptical.EllipticalObject.Pluto, plugin.PushpinFactoryContract));

An entity on a layer is a point of interest, business, location, region or other item that you want to place on the map surface. We create a custom entity class called AstronomyEntity which holds information about which planet the entity represents, and calls the AAPluss library to find the location of the planet at a given time.

/// <summary>

/// Represents a planet we are tracking on the map

/// </summary>

public class AstronomyEntity : Entity

{

/// <summary>

/// The planet enum value

/// </summary>

private Elliptical.EllipticalObject _ellipticalObject;

/// <summary>

/// Creates a new AstronomyEntity

/// </summary>

/// <param name="ellipticalObject">The planet to track</param>

/// <param name="pushpinFactory">The PushpinFactoryContract used to create pushpins</param>

public AstronomyEntity(Elliptical.EllipticalObject ellipticalObject, PushpinFactoryContract pushpinFactory)

{

_ellipticalObject = ellipticalObject;

// Create a pushpin with the first letter of the planet name in it

// Setting the primitive is what will give the entity a visual representation

// We can use the default constructor on Location, because we just replace the location as soon as UpdateLocation is called.

Primitive = pushpinFactory.CreateStandardPushpin(new Location(), _ellipticalObject.ToString().Substring(0, 1));

// Set the entity's name to show in the popup

Name = _ellipticalObject.ToString();

}

/// <summary>

/// Updates the location of the entity to match where the planet would be at a given julian day.

/// </summary>

/// <param name="julianDay">The julian day</param>

public void UpdateLocation(double julianDay)

{

EllipticalPlanetaryDetails details = Elliptical.Calculate(julianDay, _ellipticalObject);

((PointPrimitive)Primitive).Location = new Location(details.ApparentGeocentricLatitude, details.ApparentGeocentricLongitude);

}

/// <summary>

/// The name of the planet

/// </summary>

public string Name { get; private set; }

}

In our AstronomyEntityClass we set the Primitive to a PointPrimitive which is generated using the PushpinFactoryContract we imported. In UpdateLocation, we set the PointPrimitive’s location to the position of the planet at the given time. Now we just need to call UpdateLocation to get the planets to their correct location. We add the following line to the AstronomyLayer’s constructor:

// Initialize the planet locations to their position today

DisplayDate = DateTime.Now;

Then add the display date property that converts the DateTime to a Julian day, and updates each AstronomyEntity’s location.

/// <summary>

/// The current date that the planets are positioned to.

/// </summary>

public DateTime DisplayDate

{

get { return _displayDate; }

set

{

_displayDate = value;

DateTime utcDate = _displayDate.ToUniversalTime();

Date date = new Date(utcDate.Year, utcDate.Month, utcDate.Day, true);

double julianDay = date.Julian();

foreach (AstronomyEntity entity in this.Entities)

{

entity.UpdateLocation(julianDay);

}

}

}

We now have enough code to get some pins on the map. Go ahead and try your plugin out and you’ll see the planets placed on the map surface near the equator!

I’ve added a few more features (noted below) to the attached sample. Download it and try it out, then try extending it further or writing your own app.

  • Animating the DisplayDate so you can watch the planets follow their path over the earth
  • Showing popups over the pushpins so you can tell the difference between Mercury and Mars
  • Showing custom UI in the left panel

Follow me @BingMaps, ^CP

Categories: , Cool Stuff

Become The King of Bing Maps!

Wed, 06/16/2010 - 14:42

We’re searching for someone to worship. Someone to lead the way in Bing Map App development. Someone who will set the bar for what a Bing Map App should be. We’re looking for a King of Bing Maps. You think you’ve got it? Let’s see it. Leave your college computer class coding in the dorm and bring something awe-inspiring to the Bing team. Be the best of the best and we’ll crown you The King of Bing Maps.

Here’s what you need to do:

  1. Read about the King of Bing Maps contest at www.KingOfBingMaps.com.
  2. Download the Bing Map App SDK (Live ID required). If you don’t know anything about it or if you haven’t read my blog post, read my post about the launch of the Bing Map App SDK – “Announcing the Bing Map App SDK…and 3 New Bing Map Apps”.
  3. Start with the template provided in the SDK. The template is our Hello World for Bing Map Apps. Visual Studio 2010 and Silverlight 4 SDK required.
  4. Build a sick ass application. I mean disgusting.
  5. Submit your application to the Bing Maps Portal.
  6. Wait for the judges to determine your fate.

Your application MUST be submitted by July 25, 2010. We’ll announce the winners August 20, 2010.

Plus, we even have consolation prizes for other apps that aren’t quite as good as yours, but you know it isn’t about the prize…it’s all about bragging rights.

Grand Prize:
Winner will get the royal treatment by receiving a $1,000 Bing Travel gift card and be celebrated as King of Bing Maps on the Bing Maps website and blog.

2nd Prize:
$500 Bing Travel gift card

3rd Prize:
$250 Bing Travel gift card

And, hey, I’ll even throw in my own perk – the next time I present at some conference, I’ll demo your map app on stage for the world to see AND drop your name for being the one who built it. I’ll just further promote you and your app. So, go do it. Oh, and for those of your who have data jammed into KML and are wondering what to do with it…yeah, the Bing Map Apps have a template for uploading KML into a map app. Not the most innovative map app, but hey if it’s good data you never know.

Someone become the KING OF BING MAPS! See the official rules.

Follow me @BingMaps, ^CP

Categories: , Cool Stuff

(Bing) Mapping Your Friends with the Facebook Map App

Fri, 06/11/2010 - 17:00

The newest Bing Map App to enter the Bing Maps Gallery uses Facebook APIs to pull in your friends from Facebook. Also, effective today, the Bing Maps preview I discussed in my blog post, “Bing Maps Adds Map App Ratings, Map Overlays and More” is no longer a preview, but is fully supported greatness for the world to see. All the features such as Bing Map App ratings, ICE Photosynth Panoramas, map overlays, etc. can now be viewed on the Bing Maps site (Silverlight 4 required).

 My Friends – Finding your Facebook friends just got a heck of a lot easier. The new My Friends map app lets you view all of your friends right in Bing Maps! Fire up the new application, log in via Facebook Connect, select “Allow” to allow Bing Maps to connect to your profile (to get your friend list) and any of your friends who have listed a “Current City” in their profile will have their profile picture pinned to the map. Look at where all of your Facebook friends are at any given time! Clicking their picture will show you their picture and status. We also have the de-clustering algorithm in place so if you have a number of friends in one place it will spin their photos into a circle and tether them back to the location with a line. This is a great new way to watch your Facebook friends move around the world…especially if you’re friends with me! Finally, you can write directly on someone’s Facebook wall from within in Bing Maps. Ah, the power of APIs.

Build your own Bing Map App Now! Think you have a killer map app? Submit your map app to be the King of Bing Maps!

Follow me @BingMaps, ^CP

Categories: , Cool Stuff

Follow the Soccer Madness Anywhere with Bing Maps

Fri, 06/11/2010 - 16:30

As the world gets ready to celebrate the most popular sport in the world, Bing has you covered. We’re providing you with a unique view into the world of futbol and right in Bing Maps. Spatial Search capabilities continue to be a focus for Bing and these applications are the latest example of how we’re bringing information to maps to make more informed decisions.

As teed up in a blog post earlier this week, “Football Fans Get Ready For Kick-Off” Bing Maps is launching a couple new map apps today to help you stay up to date with all the action in South Africa, wherever you may be.

World Cup – The New World Cup map app highlights all the different countries participating in the 2010 FIFA World Cup. Countries are pinned to the map with their respective flags as pushpin icons. Clicking a flag pin will tell you when their next game is and against who they play with links to the FIFA web site for the respective match. Additionally, we’re pushing down tons of information such as teams, stats and standings right in Bing Maps. Now millions of World Cup fans can easily follow the month-long soccer finals with the Bing Maps World Cup app. In addition to group standings, the app will link by country to team stats including results and fixtures. The latest World Cup news will be supplied via an RSS feed from FIFA. Also, Stadiums will be pinned on the map; selecting a stadium will automatically zoom in on the map to the level that will display an aerial image of the stadium. Tweets that include World Cup terms will be shown. And for users who want to feel like they are there, they can check out World Cup specific 3D scenes from Photosynth. And, wouldn’t you know it we’ve updated the aerial photos just in time for World Cup. So, if you zoom to the areas in and around the stadiums you’ll see some high resolution aerial photos with the new stadiums in clear view.

 

  World Cup Home Turf Finder – Can’t get your tickets to South Africa to support your favorite team? You’re not alone. The new World Cup Home Turf Finder map app will help you find your hive of bees to gather and watch your favorite team wherever you are. In select cities, venue information such as name, country affiliation, hours of operation and website will be populated onto a Bing map courtesy of Thrillist. In addition, the Foursquare and Twitter APIs will be leveraged to display current check-ins, venue tips and tweets. Deep Focus, Foursquare and Thrillist will partner to create a Bing Badge Program that rewards users with badges and specials for check-ins during the World Cup. And, don’t forget to get your Bing foursquare badge!

 

 

Hot! If you want to build your own Bing Map App check out the details on our developer site! Think you have a killer map app? Submit your map app to be the King of Bing Maps!

Follow me @BingMaps, ^CP

Categories: , Cool Stuff

Announcing the Bing Map App SDK…and 3 New Bing Map Apps

Mon, 06/07/2010 - 14:02

Today is a big day for Bing Maps fans who have been eagerly awaiting their chance to strut their stuff in the Bing Map App Gallery. Beginning today, developers can download the Bing Map App SDK and start building, testing and submitting applications to Bing Maps to be featured in the gallery.

“OMG! Where do I go to get it??”

To access the Bing Map App SDK, login to Microsoft Connect at http://connect.microsoft.com/bingmapapps (you’ll need a Live ID, so make sure you have one). Download the SDK which comes with a Bing Map App template and start cranking away on your project in Visual Studio (note: the Bing Maps site was upgraded to Silverlight 4 - read more about the changes to Bing Maps). Once you’ve created your application, you can test it on the site itself. That’s right! The developer sandbox is the actual site. You simply need to go to http://www.bing.com/maps/explore/?developer=1&preview=1, click the map apps button and you’ll unlock our secret map app test tool.

The Bing Map App Test Tool is what you need to test your applications prior to submission to Bing Maps for display and use in the Map Apps Gallery. To use the Bing Map App Test Tool you’ll need to append “?Developer=1” to the Bing Maps URL which will load a specific catalog of Bing Map Apps. Click the Map Apps button and select the tool. To test your application, you’ll need to load all of your plug-in by clicking the “Choose Plug-in Assemblies” button. Then, click the “Add Supporting Assemblies” button to and load your supporting assemblies. When complete, select Next and Bing Maps will verify the build. Provide a name, description and a set of optional parameters describing your map app. To submit your application, login into The Bing Maps Portal at http://www.bingmapsportal.com/. Click the “Submit a map app” link. Complete the form with map app name, description, publisher, select custom map app, choose an icon for your map app and attached your assemblies all zipped up. Agree to the Bing map app submission addendum, then click submit. Your application will be reviewed, so check the status on the portal until it’s published.

In the spirit of our Bing Map App SDK release, we’ve also published 2 new map apps from external developers – Weather by Weatherbug and EveryScape by Everscape.

The Weather Map App from WeatherBug brings 3 layers of weather information to Bing Maps. Enable the Weather Map App and by default you’ll see all 3 layers enabled - (1) U.S. Doppler Images, Worldwide Satellite and WeatherBug Stations. Clicking on a station pin will bring up the current temperature, the heat index, the high and low for the day, date and time of last update and wind speed and direction. In the left hand navigation, you’ll find web cams set up for some locations and a 2 day forecast for the respective area. You can turn off any of the 3 layers if you want to limit the data in view. Tie this app with WorldWide Telescope to see if the weather will be permitting to get a glance up at the stars. Or, maybe the Local Events app to see if tonight you consider an outdoor concert venue to something indoor. Lots of cool implications for having a weather layer on Bing Maps.

The EveryScape Eats for Bing by EveryScape, Inc. map app brings panoramic photos inside restaurants in the Boston, MA area. Firing up the map app will center the map on Boston and load 10 restaurants on the map. Select a restaurant to get a preview image of what’s inside. Click the “Step Inside” link and up will pop a 360 degree panorama inside the venue. For some locations there is also an option to view the outside. Load up the Everyscape Eats for Bing Map App alongside the Twitter Maps app to see what people are tweeting about from within the bar. Or, load the foursquare Everywhere map app to see if earning your Swarm badge is worth cramming into a large or small venue.

And, lastly, if you think you’ve got a killer app you should vie for the title – King of Bing Maps. We’re holding a contest for the best Bing Map Apps and the winner will be dubbed the King of Bing Maps. Check out the contest web site for more details @ http://www.kingofbingmaps.com/.

Plus, Ben Lemmon (Bing Maps Dev) was nice enough to author a blog post and sample application for you to jumpstart your application development. Check out his post on the Bing Developer’s Blog. And, just for those of you who are developing applications and get stuck, we’ve built a Bing Map App Developer Forum just for you on the Bing Community site.

Hopefully, the release of the Bing Map App SDK and these apps will inspire you to get coding and add your application to Bing Maps!

Follow me @BingMaps, ^CP

Categories: , Cool Stuff

Bing Maps Adds Map App Ratings, Map Overlays and More

Mon, 06/07/2010 - 14:01

The evolution of Bing Maps continues with another round of improvements. For the June 2010 release we’re focusing on Bing Map Apps, improving the user experience and exposing some new content layers. You can check out the new features in our Silverlight site which has continued to be an incredible test bed for innovation. And, speaking of Silverlight, with this Bing Maps release we’ve built everything on Silverlight 4, so get ready for some cutting edge maps technology coming this week, but for a sneak peak check out the Bing Maps Preview site.

Here’s a list of new features you can check out in Bing Maps:

Bing Map App Ratings – For those of you not familiar with Bing Map Apps, you should check out any of my posts describing the concept of building applications that access data via web services from around the web and using Bing Maps as the canvas to visualize them. Not to be confused with the Bing Maps Platform which allows you to add Bing Maps to your site, Bing Map Apps allow you to highlight your data on Bing Maps. There are quite a few map apps available today and now you as a user can rate them! Using the standard 5-star rating system (including half stars) you can voice your opinion on an application. To rate a map app just run the app then hover over the stars on the map app card or flyout and click to rate. Note: you can only rate an app once. You can also sort Bing Map Apps by rating now. So, if you only want to see map apps that the community likes the new filter will pull up only those respective apps. All of this, of course, is setting the stage for the introduction of the Bing Map App SDK which was also released today. Read more about that in my other blog post.

Photosynth Panoramas – Are you familiar with Microsoft Research’s Image Composite Editor (ICE)? How about Photosynth? Did you hear we brought the two together? That’s right – you can take large, gigapixel panoramas from ICE and publish them to Photosynth. And, since Photosynth allows you to geotag your synths and those geotagged synths get pulled into Bing Maps, you can effectively pull ICE panoramas into Bing Maps! Hot. No, cool! The ICE synths will be displayed in Bing Maps via the Photosynth Map App. You can view a full list of ICE panoramas on the Photosynth site. Read more about this on the Photosynth blog.

Map Overlays – We’re taking our first stab at trying out some map overlays. The idea of these map overlays is to provide users with additional context of a larger map location such as a mall or theme park. With this release we’ll have overlays for The Woodland Park Zoo, The Seattle Art Museum, Discovery Park, The Seattle Arboretum, The Center for Urban Horticulture and The Bravern (the cozy little mall we work in). It’s a great reference and for certain searches we provide store level accuracy about where in the mall the actual store is – now that’s some high precision geocoding! To enable the feature, you simply search for one of these locations and select the respective location - Bing Maps will zoom down a bit closer. In the left hand navigation, you’ll see a link to “See Attractions” or “See Mall Directory” (the text will vary based on the venue). Click the link and the map overlay will appear with a few (or all) of the listings clickable for you to see exactly where in the venue to find what you’re looking for. That is the whole point of maps right? To find what you’re look for. Bing!

Action Bar – The Action Bar is the set of buttons along the lower left corner of Bing Maps which provide shortcuts to functionality native within Bing Maps. First, you’ll notice we’ve added a splash of color to liven things up. Next, we’ve added a Traffic button since traffic is one of the most commonly used features on Bing Maps. We’ve changed the “Legend” button which provided users with the ability to see active map data layers and remove them as needed. The Legend button is now called “History” and is both a history of your map data layers, as well as an interactive tool for enabling and disabling the different map layers you’re interacting with. Users can now turn on a number of previous searches or disable them as desired simply by checking the box next to the item.

Reverse Address Lookup – Ever wondered what business was at a specific address? Or, just wanted to verify that the business your searching for is at the actual address you have in hand? Wonder no more. For U.S. business listings, you can now search for an address and we’ll tell you the business at that address. Just enter an address in the search box and the businesses at that address will appear in the search results.

Right-Click Menu – Since we’ve upgraded our site to Silverlight 4 with this release we’re taking advantage of one of the most requested features – right-click support. Now, you get a full menu of options when you right-click on a location in Bing Maps. Want to drop a pin on a location? Right-click. Want to get directions to or from a specific location? Right-click. The right-click menu allows you to right-click anywhere are you’ll see the address reversed (based on the pixel you selected). Oh, and how about right-clicking on a location and jumping down into Streetside. It does that too. It’s like a food processor – it does it all!

Full Screen Maps – Silverlight also has a feature that lets users go full screen with their applications. Now, I’m not talking about the F11 button which takes away the chrome from the browser. I’m talking about a full screen, exclusive map. No chrome. No search box. Just a big, beautiful map. And, don’t forget about imagery – they look just as beautiful. I can finally get all of Petco Park (in all its glory) in one giant screen grab without having to zoom out and sacrifice the image quality. To go full screen, you’ll want to click the symbol (four arrows) in the upper right hand corner.

Breadcrumb – A nice touch to further understanding where in the world you are when you’re looking at a map is the new Breadcrumb feature. The Breadcrumb lets you see the highest zoom level geographic boundary you’re looking at. For example, if you’re zoomed into the above picture of Petco Park, the Breadcrumb will show you that you’re in San Diego, San Diego (county), California, United States, World. All of these entity types are clickable so you can quickly zoom out to whichever level you want.

Brandfinder – About 5 years ago (back in the Virtual Earth days), we instituted Brandfinder (formerly Highlighted Listings) – a program that allowed businesses to get more from their brand out of Bing Maps search results. Brandfinder was offered as an advertising campaign which replaced the generic color pushpins with branded icons. The campaign also inserted branded logos inline with the search results, plus allowed the campaign owner to insert custom data into the pushpin popup, such as links to specific pages, logos, hours, etc. So, doing a search for “Gap in New Orleans”  shows a couple things: (1) 2 results are shown on the map (no link overload - following the Bing mantra); (2) the 2 results are Gap and Banana Republic (owned by Gap), so the search heuristics are built to understand what you’re looking for without giving you data overload; and, (3) a branded Gap experience on Bing Maps. Well, we weren’t taking on new Brandfinder customers…until now. If you’re interested in getting your branded icons on the map, send mail to maplic@microsoft.com and we’ll get you hooked into the program.

 

Good stuff and only a milestone in the continuous evolution of Bing Maps. There were several other announcements today, so you’ll want to check out all of the posts on my blog.

CP – Follow me on Twitter @ChrisPendleton

Categories: , Cool Stuff

REST Easy; Bing Maps Has You Covered

Mon, 06/07/2010 - 14:00

It was just 6 months ago that the Bing Maps Platform team officially launched support for the Silverlight control. This was in addition to the Bing Maps SOAP Service (via Windows Communication Foundation) and the AJAX Control that have been in use for years now. Today, we’re announcing a REST interface into those wonderful maps, aerial images, and geocoding and routing systems for your grubby coding hands to get all dirty. And, the beauty with REST is that you simply need to build URL queries and handle the JSON or XML responses. It’s quite beautiful actually and it’s essentially the way the WWW was architected, so the learning curve will be fairly flat. If you’re too excited to read on and want the SDK now, you can view it online or download it from the Bing Maps Platform site.

Okay, so here’s the scoop on the Bing Maps REST APIs. There are main 4 APIs that allow you to do Geocoding, Render Maps and Imagery, Calculate Routes and Perform Batch Geocoding. Let me break it down for you...

Locations API. The Locations API is for geocoding on the fly. So, in your application when a user enters an address you’ll want to hit the Location API to get a response. The Location API contains 3 main functions:

Location by Address – Pass in an address and we’ll send back a lat/lon pair.

Sample: http://dev.virtualearth.net/REST/v1/Locations/US/WA/98052/Redmond/1 Microsoft Way?o=xml&key=BingMapsKey

Location by Point – Pass in a lat/lon pair and we’ll send back an address (reverse geocoding).

Sample: http://dev.virtualearth.net/REST/V1/Locations/47.64054,-122.12934?o=xml&key=BingMapsKey

Location by Query – Pass in a string (address or landmark) and we’ll send back a lat/lon pair.

Sample: http://dev.virtualearth.net/REST/v1/Locations/1 Microsoft Way Redmond WA 98052?o=xml&key=BingMapsKey

Imagery API. The Imagery API is for getting maps and aerial photos. When you’re ready to show a map of a location you will want to use the Imagery API. Also, the Imagery API grants you access to imagery metadata such as capture date and provider information.

Map – Getting a map image based on an address, landmark or lat/lon pair.

Sample (Road): http://dev.virtualearth.net/REST/V1/Imagery/Map/Road/space needle,seattle?mapLayer=TrafficFlow&key=BingMapsKey

Sample (Aerial with Labels): http://dev.virtualearth.net/REST/v1/Imagery/Map/AerialWithLabels/statue of liberty nyc?mapSize=800,600&key=BingMapsKey

Imagery Metadata – Getting imagery vintage or provider information based on a lat/lon pair.

Sample: http://dev.virtualearth.net/REST/V1/Imagery/Metadata/Aerial/40.714550167322159,-74.007124900817871?zl=15&output=xml&key=BingMapKey

Routes API. The Routes API is for calculating driving directions. The Routes API allows you to get route distance calculations, route geometry and step-by-step directions via driving, walking or traffic based algorithms. You can also pass in up to 25 points on your route to calculate a multiple stop route in a single request.

Route – Calculating a route.

Sample: http://dev.virtualearth.net/REST/V1/Routes/Walking?wp.0=Eiffel%20Tower&wp.1=louvre%20museum&optmz=distance&output=xml&key=BingMapsKey

Spatial Data API. The Spatial Data API is for batch geocoding. Batch geocoding lets you up load a file for processing addresses through our backend systems without having to make multiple requests using the Locations API. If you have thousands of addresses to geocode at one time, you’re better off using the Spatial Data API.

Upload Data – Creates a batch geocoding job and uploads data into the cloud for geocoding.

Sample: http://spatial.virtualearth.net/REST/v1/Dataflows/Geocode?input=xml&description=My dataflow&key=BingMapsKey

Check Job Status – Checks to see whether the job is complete.

Sample: http://spatial.virtualearth.net/REST/v1/Dataflows/e14b1d9bd65c4b9d99d267bbb8102ccf?key=b1c323ea234

Download Data – Once the job is complete, you’ll download the geocoded data.

Sample: https://spatial.virtualearth.net/REST/v1/dataflows/Geocode/5bf10c37df944083b1879fbb0556e67e/output/succeeded&key=MyDataflowJobKey

The REST API also has contextual and cultural properties. Optionally, if you want to shorten the URLs you’re using, you can substitute many of them with acronyms. If you want to show maps in French instead of English, you can set the culture to fr-FR. Also note that all of the sample requests I provided have the “key=BingMapsKey” parameter appended to them. You will need a Bing Maps Key to do any development; but worry not! Keys are free for all to use for developing applications. Get a key in the Bing Maps Portal.

Bing Maps AJAX Control Update – We also enhanced the Bing Maps AJAX Control with some streamlined features and a stripped down mode for light mapping techniques. The new AJAX Control is version 6.3 and has the following changes.

Core functionality version of the map control. The Bing Maps AJAX Control is now available in both full functionality and core functionality versions. If you do not have advanced mapping needs, you can enhance the performance of your map control application by using the core version of the latest map control. Note the version number (v=6.3c) for the core control which is now a slimmed down 35kb!

Sample: <script charset="UTF-8" type="text/javascript" src="http://ecn.dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=6.3c&mkt=en-us"></script>

New Search and Geocode methods. The new VEMap.Search Method and the VEMap.Geocode Method provide an easier way to return the most accurate search results. The current VE.Find Method has like 11 arguments for making your request more specific. If you know what you want and would rather slim your request down to 3 (query, callback, options).

Sample (Geocode): map.Geocode(‘1 Microsoft Way, Redmond, WA’, findCallback, options);

Sample (Search): map.Search(‘Fish Tacos in San Diego’, findCallback, options);

Drag-able pushpins. With the latest version of the Bing Maps AJAX Control, your pushpins become drag-able by simply setting the VEShape.Draggable Property of the pushpin to true. There are also optional events associated with the dragging motion that you can capture and fire off additional events such as search queries or grabbing pixels to convert to lat/lons.

Sample:

var pushpin = null;

pushpin = new VEShape(VEShapeType.Pushpin, map.GetCenter());

pushpin.Draggable = true;

pushpin.onstartdrag = StartDragHandler;

pushpin.ondrag = DragHandler;

pushpin.onenddrag = EndDragHandler

All good stuff for you Bing Maps Platform developers! I certainly hope to see some cool applications coming from these new APIs. And, if you are a developer, don’t forget to check out the Bing Map Apps API that was also released today. The Bing Map Apps API allows you to submit your Silverlight application to be published on Bing Maps!

Follow me @BingMaps, ^CP

Categories: , Cool Stuff

The City of Miami Shows Value in the Cloud [Webcast]

Fri, 06/04/2010 - 18:49

Date: June 07, 2010
Event Start Time: 1:00 PM Eastern Daylight Time (UTC - 4 hours)
Duration: 1 hour

The City of Miami, even when limited by a tight budget, looks for ways to improve the services it offers citizens. The city wanted to develop an online application to record, track and report on nonemergency incidents, but the customer's traditional heavy GIS technology would require significant computing resources. Further constrained by long hardware-procurement cycles, the city needed a cost-effective, scalable solution that would maximize its available resources. The city developed its 311 application with cloud services from Microsoft including the Windows Azure Platform and Bing Maps Platform, taking advantage of scalable storage, processing power and hosting provided by Microsoft. As a result, the city was able to reduce IT costs, improve the services it offers citizens and deliver those services faster than before. Come hear about the city's solution, their future in the cloud and ask them questions during this free, 60 minute webcast.

Speakers:

  • James Osteen, Assistant IT Director, City of Miami
  • Conrad Salazar, Project Manager, City of Miami
  • Derrick Arias, Assistant Director of IT, City of Miami
  • Benton Belcher, MapDotNet Business Developer
  • Dean Lacovelli, Microsoft SLG Director of Collaboration Sales

Register for the event now.

Follow me @BingMaps, ^CP

Categories: , Cool Stuff