Correctly displaying your current location

by Morten 20. November 2011 19:23

With GPS receivers integrated in phones, tablets and PCs, a lot of apps are being built that displays your current location. Usually the GPS API’s that these devices come with provides you with two values: Longitude and Latitude in decimal degrees, and often an estimated accuracy in meters. Most apps just display these values as is, without considering formatting or number of significant digits. This blog post attempts to show how this could be done. I’ll use C# for this, but it should apply to any device, language and API out there.

Formatting

Some people think of longitude as the “X” in an ordinary flat X,Y the coordinate system and latitude as Y/Up/North. It’s technically not correct because this is not a flat coordinate system, but a ‘polar’ coordinate system - I do however understand this simplification and I think of it the same way internally when working with code that deals with any type of coordinate system. However, how things work internally and how they are displayed are two very different things. An example of this are date objects: They are usually stored and handled as a ‘tick’ number, but we never display it like that. Geographical coordinates are the same way. They have one way they are stored in memory, and a completely different way to be displayed.

First of all lets get the order out of the way: If you still think of longitude as the ‘x’ you probably want to display this value first. However it’s commonly agreed upon that latitude is displayed before longitude.

Next are negative coordinates. Instead of showing a latitude/longitude as for instance -117,34 you would write 117°W 34°N. So we prefix the coordinate with N/S and E/W depending on weather the coordinate is positive or negative. So in C# this could look like this:

char ns = lat < 0 ? 'S' : 'N'; //Southern or Northern hemisphere?
char ew = lon < 0 ? 'W' : 'E'; //Eastern or Western hemisphere?
string formatted = string.Format("{0}°{1} , {2}°{3}", Math.Abs(lat), ns, Math.Abs(lon), ew);

Now this is still decimal degrees. A more ‘proper’ format would be to use the degrees, minutes, seconds (DMS) format . Some people do prefer decimal degrees though, so you might want to make this a configurable option. But if you expect people to be using this coordinate to plot a position on a map, you are better off using DMS, since this is the format maps uses along its edge - and it also looks prettier. Degrees are denoted with a °, minutes with a single quote ' and seconds with a double quote ". For example 117°W 23' 12.34”

To make this conversion you will first show the integer part of the degrees. Take the remainder multiply by 60, and you’ll get the minutes. Lastly take the remainder of that and do the same, and you got the seconds (and you can display the seconds with decimals, but see the part on ‘accuracy’ next).  Below is what that will look like in C#:

char ns = lat < 0 ? 'S' : 'N'; //Southern or Northern hemisphere?
char ew = lon < 0 ? 'W' : 'E'; //Eastern or Western hemisphere?
//Make positive
lon = Math.Abs(lon);
lat = Math.Abs(lat);
//Grab the part in front of the decimal
var majorLong = Math.Floor(lon);
var majorLat = Math.Floor(lat);
//the value after the decimal in minutes (*60)
var minorLong = (lon - majorLong) * 60;
var minorLat = (lat - majorLat) * 60;
//Minutes:
var minutesLong = Math.Floor(minorLong);
var minutesLat = Math.Floor(minorLat);
//Seconds:
var secondsLong = (minorLong - minutesLong) * 60;
var secondsLat = (minorLat - minutesLat) * 60;
string formatted = string.Format("{0}{1}°{2}'{3}\" {4}{5}°{6}'{7}\"", ns, majorLat, minutesLat, secondsLat, ew, majorLong, minutesLong, secondsLong);

Accuracy

Often I see a location displayed as for example -117.342817243 , 34.212381313. When I see this many digits I instantly think ‘oooooh that’s a very accurate location’. But this is very misleading. In college, several of our professors would fail our reports if the end result displayed more digits than the accuracy of the input data. The same thing applies here. If your GPS receivers accuracy is 1000m, how many digits should you display, and how many meters is one second?

First a little about the size and shape of earth: While earth is not a perfect sphere, it’s fairly close to an ellipsoid (this is still an approximation though). It’s widest at equator, and smallest (flattened) between the north and south pole. So in ellipsoid-speak the parameters are:

Semi-major axis: 6,378,137m
Semi-minor axis: 6,356,752.3142m
Mean radius (mR): 6,367,449m

So back to the question: How many meters is one second? This is pretty easy to determine for latitude, but unfortunately this is not a straightforward conversion for longitude, since this changes with the latitude. Let’s first start with the simpler latitude:
First we need the circumference of Earth along a meridian (a line that goes north/south) and Equator:

Circumference at Equator: 2 * Pi * 6,378,137 = 40,075,016 m
Circumference of a meridian : 2 * Pi *  6,356,752 = 39,940,652 m

For simplicity let's stick with a rough average of 40mio meters, since this is not going to really matter for the end result.
From that we get:

Horizontal length of one degree at Equator or along a meridian:
     40,000,000 / 360 = 111,111m
Horizontal length of one second at Equator or along a meridian:
    111111.111 / 60 minutes / 60 seconds = 31m

So from that we get that we should never display any decimals on seconds unless our accuracy is better than 31 meters. And we shouldn’t display more than one decimal unless the accuracy is 3m or better (which never happens with standard GPS equipment). Similarly if we are using decimal degrees instead of DMS for display, how much does the n'th digit matter at Equator or along a meridian?

5 digits: 0.000,01 * 40000000 = 400m 
6 digits: 0.000,001 * 40000000 = 40m
7 digits: 0.000,000,1 * 40000000 = 4m

So in this case we will only show 7 digits if accuracy is better than 40m, and probably never more than 7 digits.

Latitude always goes along a meridian, so the number of significant digits doesn't ever change with your location. But the length of one degree at a longitude changes with the latitude you're at.
The radius of a longitude at a given latitude is: cos(latitude)*mR*2*PI.
At 34 north or south that would be: 33,168,021m. So here the number is roughly 3m instead of 4m, meaning you are more likely to show more digits on the longitude portion for the coordinate, the further north you go. In general practice however, this is not going to matter too much, since it only gets better. so to keep it simple we’ll just stick with the same conversion at all latitudes.

Bringing it all together

So let’s bring all this together into a C# ValueConverter you can use for binding against a GeoCoordinate object returned by the GeoCoordinateWatcher in .NET and Windows Phone. A converter parameter is used for choosing whether you want DMS or decimal degrees as output.

using System;
using System.Device.Location;
using System.Globalization;
using System.Windows.Data;

namespace CoordinateDisplay
{
    /// <summary>
    /// Converts a GeoCoordinate to Degrees-Minutes-Seconds
    /// </summary>
    public class CoordinateConverter : IValueConverter
    {
        private const double MeanEarthRadius = 6367449; //meters
        private const double MeanEarthCircumference = 2 * Math.PI * MeanEarthRadius; //meters
        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            if (value is GeoCoordinate)
            {
                var coord = value as GeoCoordinate;
                if(coord.IsUnknown) return "Unknown";

                double lat = coord.Latitude;
                double lon = coord.Longitude;
                if ((parameter is string) &&
                    string.Compare("decimal", parameter as string, StringComparison.OrdinalIgnoreCase) == 0)
                //show as decimal degrees
                {
                    var decimalsLat = 7;
                    var decimalsLon = 7;
                    int val = 4;
                    if (coord.HorizontalAccuracy > val * 100) decimalsLat = 5;
                    else if (coord.HorizontalAccuracy > val * 10) decimalsLat = 6;
                    val = (int)Math.Floor(Math.Cos(lat / 180 * Math.PI) * MeanEarthCircumference / 10000000d);
                    if (coord.HorizontalAccuracy > val * 100) decimalsLon = 5;
                    else if (coord.HorizontalAccuracy > val * 10) decimalsLon = 6;
                    return string.Format("{0}°,{1}°", Math.Round(lat, decimalsLat), Math.Round(lon, decimalsLon));
                }
                else //Show as degrees/minutes/seconds
                {
                    char ns = lat < 0 ? 'S' : 'N'; //Southern or Northern hemisphere?
                    char ew = lon < 0 ? 'W' : 'E'; //Eastern or Western hemisphere?
                    //Make positive
                    lon = Math.Abs(lon);
                    lat = Math.Abs(lat);
                    //Grab the part in front of the decimal
                    var majorLong = Math.Floor(lon);
                    var majorLat = Math.Floor(lat);
                    //the value after the decimal in minutes (*60)
                    var minorLong = (lon - majorLong) * 60;
                    var minorLat = (lat - majorLat) * 60;
                    //Seconds:
                    var minutesLong = Math.Floor(minorLong);
                    var minutesLat = Math.Floor(minorLat);

                    //one digit accuracy on one second equals ~3m or better
                    //this changes with the latitude, but this is good enough for now
                    int decimals = 1;
                    if (coord.HorizontalAccuracy > 30)
                        decimals = 0; //With this accuracy we don't need to show sub-second accuracy
                    //Seconds:
                    var secondsLong = Math.Round((minorLong - minutesLong) * 60, decimals);
                    var secondsLat = Math.Round((minorLat - minutesLat) * 60, decimals);
                    return string.Format("{0}{1}°{2}'{3}\" {4}{5}°{6}'{7}\"",
                        ns, majorLat, minutesLat, secondsLat,
                        ew, majorLong, minutesLong, secondsLong);
                }
            }
            return value;
        }

        public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
        {
            throw new NotSupportedException();
        }
    }
}

Here’s an example of using that in XAML where the datacontext is the GeoCoordinate:

<Grid>
    <Grid.Resources>
        <local:CoordinateConverter x:Name="dmsConverter" />
    </Grid.Resources>
    <StackPanel>
        <TextBlock Text="Degrees minutes seconds:" />
        <TextBlock Text="{Binding Converter={StaticResource dmsConverter}}" />
        <TextBlock Text="Decimal degrees:" />
        <TextBlock Text="{Binding Converter={StaticResource dmsConverter}, ConverterParameter=decimal}" />
        <TextBlock Text="{Binding Path=HorizontalAccuracy, StringFormat=Accuracy: \{0:0\}m}" />
    </StackPanel>
</Grid>

And what this can look like on a Windows Phone with different accuracies (notice the different number of digits):

imageimage

You can download this sample app here.

Tags:

Silverlight | WPF | Windows Phone | Windows Runtime

Comments (3) -

11/22/2011 8:37:29 AM

Jacob Reimers

I would have expected it to show 47°N 38' 41.4" 163°E 19' 39.2". Is that just when you are out at sea?

Jacob Reimers Denmark

11/27/2011 7:48:06 PM

Alexander Lee

Your calculation of the n-th digits accuracy at decimal degree is wrong.  As your calculation:
Circumference at Equator: 2 * Pi * 6,378,137 = 40,075,016 m
Circumference of a meridian : 2 * Pi *  6,356,752 = 39,940,652 m
Horizontal length of one degree at Equator or along a meridian:
     40,000,000 / 360 = 111,111m
Therefore the n-th digits accuracy should be:
    5 digits: 0.000,01 * 111,111 = 1.111m
    6 digits: 0.000,001 * 111,111 = 0.111m
    7 digits: 0.000,000,1 * 111,111 = 0.011m
Therefore, for most of handheld GPS, the 5 digits at DD system is already good enough!  Usually, this type handheld GPS the accuracy of its GPS chips is 4~10m.  And BTW, you also need to correct your following calculations
.

Alexander Lee United States

2/8/2012 1:52:06 AM

Thomas Schmidt

Yesterday I found out that some of the land surveying offices in Germany maintain reference points where you can go to and compare the display of your GPS receiver with the 'official' coordinates. Here's a link to the web page of the land surveying office of Rhineland-Palatine showing the addresses of 11 reference points (in German only):
www.katasteramt.rlp.de/.../

Thomas Schmidt Germany

3/28/2012 6:16:27 PM

five finger shoes vibram

YC- Any training Vibram shoes gets stale after four to six weeks and michael kors watch stops working http://www.vibramfive-sales.com/. So whether you're looking to Vibram Bikila learn how to use kettle vibrams five fingers bells for the first time or if you're a seasoned vet and looking for a new michael kors mid-size mercer chronograph watch, golden challenge, kettle bell books, DVD's and five finger vibram bikila instructional courses are always a good bet. No amount of vibram fivefinger shoes for women instructional articles, videos, books, or DVD's can replace in-person instruction michael kors sale when it comes to kettle bell five fingers uk sale training. Look up your local RKC and purchase some vibram five fingers kso training sessions as a gift to get your kettle bell aficionado going on the right foot - or watches michael kors to perfect their technique. These vibram 5 fingers sale may look a little different and special but actually they are really quite cool and can be used for a five fingers shoes uk shop multitude of purposes http://www.michael-kors-sale.net/. Whether you just want something to walk around the home or to the speed shoes, perhaps you climb or do some light trekking or you may want the Vibram Five Fingers for running. There is vibram five finger toes very little padding on the shoes, as Vibram have designed them in a way that reflects the michael kors mens watches natural properties of feet; this means five fingers uk sale that there is very little interference from the shoes, which effectively mimic barefoot movement. http://www.vibram-five-finger.net/

five finger shoes vibram People's Republic of China

3/31/2012 7:48:03 PM

annora coast dress

LF- Barbour jackets are a clothing manufacturer originating from the north of coast clothing England; they have gained a solid http://www.uk-barbour-jacket.org/ reputation in the creation and manufacturing of barbour jacket women hardwearing, durable and fashionable coast irah red designed for outdoor use. The reason that they are so popular at present is largely due to the recent country/townie barbour quilted jacket fashions that are set to be big coast fashion news this season. As a hunting-type barbour quilted jacket ladies, the Barbour quilted jacket is perfect for adapting to recent coast victory dress styles. Founded in 1894, the company red barbour jacket has never been far from the minds of floral dresses fashion conscious individuals throughout the world. Often considered the sophisticated man's style of fashion, these coats form part of a classical style of womens barbour jackets dress. Renowned for their coast maxi dresses hardwearing, high-quality garments, Barbour really are head and shoulders above the rest. They are famous for providing clothing for many barbour shop of the country's high-flying elite; as such, they have a fantastic reputation, which is coast evening dresses uk much warranted. http://www.uk-womendresses.biz/

annora coast dress People's Republic of China

4/5/2012 1:36:55 PM

asdfasdf

great site

asdfasdf United States

4/9/2012 11:24:11 PM

beats by dre


Schmidt also said that the day before did not resign,why <a href="www.economico-beatsbydrdre.it/">beats by dre headphones</a> would a change of attitude? Reporters that several factors, all the opposition parties are calling for his resignation, the public opinion he was very unfavorable for these pressures, he can not afford; <a href="www.beatsbydre-boutiqueenligne.fr/casque-beats-by-drdre-studio-c-87.html">Casque Beats By Dre Studio
</a>

beats by dre United States

4/14/2012 1:04:34 AM

red bottom shoes

Miu Miu sale online with free shipping to every corner of the world! Bag lovers are sure to adore Miu Miu's leather handbags with a quirky oversized zip and elegant detailing that add easy glamour and high-fashion forward taste! The Iconic Miu Miu bags’ outfit will be the perfect complement to all your favorite looks that each woman just cannot stop being attracted! A standout way to work the trend, our highly appraised Miu Miu bags now hot discount sale online with up to 60% off in Miu Miu outlet store and a wide collection of all the styles with versatile colors available! Enjoy shopping and greatest Miu Miu fun! http://www.miumiu-outlets.com/
Are you now bothering with choosing a perfect pair of shoes for big days or parties? Our Christian Louboutin Outlet online sale store here is very honored and proud to recommend our fabulous Red Bottom shoes to you and we’re sure that you will be greatly pleased with these superbly fashionable while supremely comfortable shoes! Besides, free, fast door-to-door free shipping are offered on all the Christian Louboutin sale shoes in our store! Welcome to come by and have a look and you will find your favorite Louboutin high heel shoes at cheap price without knowing in advance! http://www.redbottomshoes-style.com
With the impeccable fusion of romantic breath, innovative inspiration and lasting classic appealing, while paying so many attention to styling details and the use of body-flattering fabric for perfect comfort, Polo Ralph Lauren releases customers the most simple, stylish, concise and fluent casual apparel for modern leisure classic representative, and has become the gentlemen casual clothing pronoun! To be flexible, comfortable but always cool with high-end fashion force is the right polo spirit of the brand, and its semi formal clothing soon spreads world wide popularity! Especially its famous Ralph Lauren Polo Shirts, polo shirts have now become a very common and classic male wearing for summer, and now, more and more people also start to pay their attention to Ralph Lauren T-Shirts for more casual options! Buy Ralph Lauren Sale online, to choose from wide series of polo shirts, hoodies and t-shirts from Ralph Lauren! http://www.poloralphlauren4sale.com/

red bottom shoes Slovakia

4/24/2012 7:15:10 PM

asdfasdf

asdfasdf

asdfasdf United States

4/29/2012 6:37:11 PM

on

adfasdfsdf

on United States

5/4/2012 1:30:52 AM

beats dr dre headphones

Online shopping is increasingly popular, and "the first<a href="http://www.cheapbeatsbydrdre.ca">beats by dr dre canda</a>  signature inspection"<a href="www.cheapbeatsbydrdre.ca/.../beats-by-dr-dre-pro">beats dr dre pro headphones</a> almost
<a href="www.cheap-beats-by-dr-dre.co.uk">cheap beats by dre UK</a>has become the
<a href="www.cheap-beats-by-dr-dre.co.uk/beats-by-drdre-pro-c-3.html">beats by dre pro</a>norm of the<a href="http://acheterbeatsbydrdre.fr/">pas cher casque beats by dre</a> courier industry.
<a href="acheterbeatsbydrdre.fr/beats-by-dre-pour- cher casque dre beats</a>This line <a href="http://www.authkeys.co.uk/en/">cheap windows 7 product key</a>regulation
<a href="www.authkeys.co.uk/.../7-norton-antivirus-key">norton antivirus key</a> are also
<a href="www.genusoftware.com/"><strong>windows 7 product key</a></strong>consumers are<a href="www.genusoftware.com/.../...ton.html">sell windows Norton serial</a> most dissatisfied s<a href="www.genusoftware.com/.../...nder.html">buy windows Bitdefender</a>with the online <a href="http://www.boxux.com/">windows 7 product key</a>shopping, the <a href="www.boxux.com/windows-7-product-key-uk-on-sale">cheap windows 7 product key</a>most hope that<a href="http://www.boxux.com/norton-antivirus">buy genuine norton product key</a> one of the businesses to improve the<a href="www.boxux.com/windows-7-anytime-upgrade-uk">windows 7 anytime upgrade key</a> problem.<a href="www.boxux.com/bitdefender-antivirus">buy bitdefender key</a> April 24, <a href="http://www.cheapbeatsbydrdre.ca">cheap beats by dre outlet</a>the reporter<a href="www.cheapbeatsbydrdre.ca/.../beats-by-dr-dre-pro">beats dr dre pro headphones</a> learned <a href="www.cheap-beats-by-dr-dre.co.uk">monster beats online shop</a>from relevant<a href="www.cheap-beats-by-dr-dre.co.uk/beats-by-drdre-studio-c-4.html">dr dre beats studio</a> departments, <a href="http://acheterbeatsbydrdre.fr/">casque beats by dre france</a>will come into <a href="acheterbeatsbydrdre.fr/...-c-2.html">beats by dre pro</a>force on May 1 <a href="http://www.authkeys.co.uk/en/">windows vista product key</a>this year, "courier service" <a href="http://www.genusoftware.com/">windows 7 home premium key</a>national standards explicitly<a href="http://www.boxux.com/">cheap windows 7 serial</a> stopped <a href="www.cheapbeatsbydrdre.ca/.../buy-beats-by-dr-dre-studio-transformers-limited-edition-on-ear-headphones-canada-online-outlet">transformers beats by dre headphones</a>
first after<a href="www.cheapbeatsbydrdre.ca/.../buy-beats-by-dr-dre-studio-black-diamond-limited-edition-on-ear-headphones-canada-online-outlet">black diamand dr dre headphones</a> the signing of
<a href="www.cheapbeatsbydrdre.ca/.../buy-beats-by-dr-dre-studio-blue-diamond-limited-edition-on-ear-headphones-canada-online-outlet">beats blue diamond headphones</a> inspection "of the norm, has been criticized by consumers <a href="www.cheapbeatsbydrdre.ca/.../buy-beats-by-dr-dre-studio-colorware-chrome-limited-edition-canada-online-outlet">beats by dre colorware headphones</a>inspection after<a href="www.cheapbeatsbydrdre.ca/.../buy-justbeats-solo-purple-on-ear-with-controltalk-headphones-canada-online-outlet">justin biebers beats cheap</a> the first signature<a href="www.cheapbeatsbydrdre.ca/.../buy-dr-dre-detox-special-limited-edition-professional-headphones-canada-online-outlet">beats dr dre detox pro headphones</a> "behavior is<a href="www.cheapbeatsbydrdre.ca/.../buy-beats-by-dr-dre-studio-red-sox-limited-edition-headphones-canada-online-outlet">beats red sox headphones</a> expected to end.

It<a href="www.cheap-beats-by-dr-dre.co.uk/beats-by-drdre-tour-with-controltalk-headphones-black-p-61.html">beats by dre tour</a> is understood<a href="www.cheap-beats-by-dr-dre.co.uk/drdre-powerbeats-sportin-ear-headphones-black-p-55.html">powerbeats sportin black headphones</a> that will<a href="www.cheap-beats-by-dr-dre.co.uk/monster-beats-by-drdre-solo-hd-headphones-graphite-p-42.html">graphite beats by dr dre</a> be implemented
<a href="www.cheap-beats-by-dr-dre.co.uk/dre-beats-solo-onear-with-controltalk-headphones-black-p-27.html">beats solo headphones black</a> from May 1 <a href="www.cheap-beats-by-dr-dre.co.uk/beats-by-dre-studio-highdefinition-headphones-white-p-32.html">beats dr dre white studio</a>courier services <a href="www.cheap-beats-by-dr-dre.co.uk/beats-by-drdre-studio-chicago-blackhawks-limited-edition-headph-p-2.html">chicago blackhawks beats studio</a>national <a href="www.cheap-beats-by-dr-dre.co.uk/monster-beats-by-dre-studio-kobe-bryant-limited-headphones-p-92.html">kobe bryant beats headphones</a>standards for the<a href="www.cheap-beats-by-dr-dre.co.uk/drdre-beats-studio-michael-jackson-limited-edition-headphones-p-91.html">michael jackson beats dr dre</a> courier
<a href="www.cheap-beats-by-dr-dre.co.uk/drdre-beats-studio-limited-edition-headphones-blackyellow-p-90.html">beats by dre black yellow</a>company received <a href="www.cheap-beats-by-dr-dre.co.uk/dr-beats-lebron-james-headphones-dull-gold-limited-edition-p-88.html">beats lebrom james dull gold</a>staff will express to the recipient, it shall inform the <a href="www.cheap-beats-by-dr-dre.co.uk/beats-studio-diamond-headphones-limited-edition-white-p-86.html">beats diamond headphones white</a>recipient acceptance express<a href="www.cheap-beats-by-dr-dre.co.uk/beats-graffiti-limited-headphones-fire-and-characterred-p-84.html">beats graffiti fire characterred</a> face to face. For the collection of money express, <a href="www.cheap-beats-by-dr-dre.co.uk/beats-by-dre-lamborghini-studio-limited-edition-headphones-p-82.html">dr dre lamborghini beats</a>online shopping, TV <a href="www.cheap-beats-by-dr-dre.co.uk/beats-by-drdre-studio-superman-for-dwight-howard-special-editio-p-80.html">beats by dre superman</a>shopping and mail-order shipment, the recipient can then sign before acceptance. Acceptance, can be internally which Hong Kong residents reportedly inventory appearance and the number, but not the internal parts of trial or product functional testing. This provision means that the courier company will not be entitled to require the consumer to first after the <a href="www.cheap-beats-by-dr-dre.co.uk/beats-by-drdre-studio-colorware-chrome-limited-edition-p-75.html">beats colorware chrome</a>signing of inspection ".
<a href="www.cheapbeatsbydrdre.ca/.../beats-by-dr-dre-for-teams">soccer teams beats by dre</a>
<a href="www.cheapbeatsbydrdre.ca/.../beats-by-dr-dre-pro">beats dr dre pro headphones</a>
<a href="www.cheapbeatsbydrdre.ca/.../beats-by-dr-dre-solo">dr dre solo headphones</a>
<a href="www.cheapbeatsbydrdre.ca/.../beats-by-dr-dre-studio">beats by dr dre studio</a>
<a href="www.cheap-beats-by-dr-dre.co.uk/beats-by-drdre-pro-c-3.html">beats by dre pro</a>
<a href="www.cheap-beats-by-dr-dre.co.uk/beats-by-drdre-studio-c-4.html">dr dre beats studio</a>
<a href="www.cheap-beats-by-dr-dre.co.uk/beats-by-drdre-solo-c-5.html">beats by dr dre solo</a>
<a href="www.cheap-beats-by-dr-dre.co.uk/beats-by-drdre-inear-c-8.html">cheap inear beats by dre</a>

<a href="acheterbeatsbydrdre.fr/beats-by-dre-pour- cher casque dre beats</a>
<a href="acheterbeatsbydrdre.fr/...-c-2.html">beats by dre pro</a>
<a href="acheterbeatsbydrdre.fr/...olo-c-3.html">dr dre solo</a>
<a href="acheterbeatsbydrdre.fr/...c-4.html">casque beats studio</a>

<a href="http://www.authkeys.co.uk/en/">windows 7 anytime upgrade key</a>
<a href="http://www.authkeys.co.uk/en/">profession microsoft windows 7 key</a>

<a href="www.authkeys.co.uk/.../7-norton-antivirus-key">norton antivirus key</a>
<a href="http://www.genusoftware.com/">discount windows 7 serial</a>
<a href="http://www.genusoftware.com/">windows vista license key</a>

<a href="http://www.boxux.com/">cheap windows 7 serial</a>
<a href="http://www.boxux.com/">buy win 7 key</a>

<a href="www.boxux.com/windows-7-product-key-uk-on-sale">cheap windows 7 product key</a>
<a href="http://www.boxux.com/norton-antivirus">buy genuine norton product key</a>

beats dr dre headphones People's Republic of China

5/4/2012 7:52:08 PM

gucci sneakers

[url=www.guccimylove.com/...key-handbags-c-130_134.html]Gucci sukey large tote[/url]
[url=www.guccimylove.com/...ton-handbags-c-130_135.html]Gucci  boston bag[/url]
[url=www.guccimylove.com/gucci-men-bags-c-138.html]Gucci men messenger bag[/url]
[url=www.guccishoesvips.com/...cci-high-shoes-c-68.html]Men Gucci high  shoes[/url]
[url=www.guccishoesvips.com/...ci-pumps-shoes-c-67.html]Women Gucci pump  shoes[/url]
[url=www.guccishoesvips.com/...i-sandal-shoes-c-84.html]Women Gucci Sandal  shoes[/url]
[url=www.freerunnow.com/nike-free-run-2-men-c-124.html]Nike Free Run 2[/url]
[url=www.cheapsunglasseshats.com/...sunglasses-c-6.html]Louis Vuitton Sunglasses[/url]
[url=www.cheapsunglasseshats.com/...sunglasses-c-5.html]Gucci Sunglasses[/url]
[url=www.cheapsunglasseshats.com/...sunglasses-c-8.html]Chanel Sunglasses[/url]
[url=www.cheapsunglasseshats.com/...unglasses-c-12.html]Coach Sunglasses[/url]
[url=www.cheapsunglasseshats.com/...unglasses-c-38.html]Oakley Sunglasses[/url]
[url=www.cheapsunglasseshats.com/...unglasses-c-39.html]Ray-Ban Sunglasses[/url]

gucci sneakers People's Republic of China

5/14/2012 12:46:54 AM

Oakley Sunglasses

Oakley Inc.a California company known for its sports equipment,sunglasses and ski goggles,is developing glasses that use smartphone features and project information directly onto the lenses.The news comes from a Bloomberg report based on an interview with <a href="http://www.replica-oakleys-sunglasses.com Fake Oakleys</a> CEO Colin Baden.
"As an organization,we've been chasing this beast since 1997,"Baden is quoted as saying."Ultimately,everything happens through your eyes,and the closer we can bring it to your eyes,the quicker the consumer is going to adopt the platform."<a href="http://www.replica-oakleys-sunglasses.com Replica Oakley Sunglasses</a> did not respond to a request for information before deadline.According to Bloomberg, Baden said the company is initially focusing on smart glasses for athletes and the military.

Oakley Sunglasses People's Republic of China

Pingbacks and trackbacks (2)+

Comments are closed

About the author

Morten Nielsen

Silverlight MVP

Morten Nielsen
<--That's me
E-mail me Send mail

Twitter @dotMorten 

Disclaimer

The opinions expressed herein are my own personal opinions and do not represent my employer's view in any way.

© Copyright 2005-2011

Month List

RecentComments

Comment RSS