Bing Maps Hybrid Imagery Style Generation 700 and Broken Labels

If you’ve examined the tile requests that Bing Maps makes using Fiddler, Firebug, or similar, you’ve probably seen that every tile request has a parameter, g, which represents the generation of the tile.

For example, the URL http://ecn.t2.tiles.virtualearth.net/tiles/h120200223312?g=671 requests the 671 generation hybrid map style (that’s the “h” prefix on the filename) tile at quadkey 120200223312. Until this morning, that would give you the following image:

image

However, at some point today it seems that Microsoft have decided to roll out a new generation (g=700) of map tiles, which particularly affects the hybrid (aerial + label) style. All requests made from http://www.bing.com/maps now append the g=700 parameter onto the end, so the latest version of the hybrid map tile for the above quadkey is now http://ecn.t2.tiles.virtualearth.net/tiles/h120200223312?g=700, as shown below:

image

Now, what if you don’t like the new “lavender” labelling style used in generation 700 tiles? No problem, you might think – surely that’s the point of versioning each tile generation… if you don’t want to upgrade then just keep on using the previous g=671. Right?

And there’s the problem. It seems that, whatever generation of tiles you request, you’ll always get the latest version, making the g parameter completely pointless. So long as g is an integer less than or equal to 700, in fact, you’ll get the same style. Here’s generation 36, for example:

image

And here’s generation –123456789 (yes, that’s a negative sign in front):

image

It’s not that I’m resistant to change. I don’t like the new lavender style, but perhaps I could grow accustomed to it. It’s not even that I’m bitter that, once again, Microsoft have rolled out a significant change to Bing Maps without any warning or announcement. But they always handle it so badly.

Right now, for example, if you go to http://www.bing.com/maps, and select the Birds’ Eye style (and keeping the “show labels” box checked), you’ll get a map made from a bizarre mixture of old and new style labelled tiles.

image

I thought maybe this was because my browser had cached the old tiles but, no, after completely clearing the cache and checking again – these are the mixed images being served right now as generation 700 tiles:

image

Ok, so this is an annoyance, and you get odd words cut off from labels at the edges of tiles, but it doesn’t actually break any features and it’s hopefully just a by-product of the MS CDN being in the middle of changing styles. However, what is broken is the fact that you can no longer display labels when showing birds’ eye mode in “angled view” mode. Since this is the default, the behaviour a user now experiences as they zoom into the map is that, at level 12, you get a map looking like this:

image

Zoom in one level to zoom level 13 and you get this. Dude, where’s my labels?

image

I’ve no idea if this is a planned change, a known bug, or whether MS are oblivious to the fact that their flagship mapping product has just undergone a significant loss of functionality. And, meanwhile, since the upgrade to generation 700 tiles is non-optional, you have to come up with workarounds for missing labels, or explain to customers why the map colour scheme now clashes with their site design.

Oh, and it appears to have broken the Ordnance Survey and Collins Bartholomew map styles too, which are just returning the normal road style.

Sigh.

This entry was posted in Bing Maps, Spatial and tagged , , . Bookmark the permalink.

4 Responses to Bing Maps Hybrid Imagery Style Generation 700 and Broken Labels

  1. Sasha dos Santos says:

    I was aware (at least as a commercial user) that the change to the tiles was coming today, July 6th. They had sent out a newsletter a month or two ago warning that the tiles for v6.3 users would automatically switch to the newest Bing tiles (version 1.2 of the lavender tiles). Of course, they should have reminded everyone of the change. They really have a poor communication system in place.

    I sent an email to Bing support earlier because I got a mix of tiles myself and it was not a caching issue on my end. Here is the response I just recieved about 1 pm EST.
    “As per your communication, I understand that you were asking about the mix of old and new Road styles on the AJAX map control. There was Microsoft internal communication sent out (Bing Maps Sales included) late last night notifying of the possibility of this issue.

    This is a known issue and customers can expect it to be ongoing for around 3 to 10 hours, depending on when the cached old images are refreshed with the newer ones. As far as we’re aware, no other functionality is affected apart from the visible difference in the tiles.”

    I did not complain about labels because I was not aware of the problem, I guess lets see what happens in a few hours.

    P.S. – I also hate the lavendar style and have complained. We all need to complain loudly and maybe someone will listen.

  2. alastaira says:

    Thanks for the input, Sasha. I believe the announcement you’re referring to is the same as that repeated at the top of the page at http://msdn.microsoft.com/en-us/library/ff701721.aspx:
    “…starting November 2010, you can opt-in to the new map style when you use the Bing Maps APIs. This opt-in period will end on July 5, 2011. On July 6, 2011, the new “road” map style will become the only “road” style available.”

    However, this relates only to the *road* map style – I’m not aware of any announcements that were made in regards to changes to the hybrid (i.e. birds eye with labels) view as described above.

  3. rbrundritt says:

    I think the point of versioning is that it makes the new versions a unique URL thus allowing cached tiles to be overwritten. You can do this with dynamic tile layers that change constantly by appending the datetime to it as a parameter.This would then make every tile request a unique request so no caching occurs.

    • But, if the sole purpose of the g parameter is to eliminate issues that might occur with caching of old tiles, didn’t it completely fail to meet its objective when, as shown in the screenshot above, the tile servers are sending out a mixture of tile styles all requested using g=700?!

Leave a comment