# Calculating Distance From 2 GeoCoordinates in Windows Phone 8

This is a support post for the Inside Windows Phone show on location and mapping in Windows Phone 8 published here.

Calculating the distance between two GeoCoordinates in Windows Phone 8 is about as simple as it can get. First, get a GeoCoordinate. One handy way of doing this is to get the location of a tap on the Map control.

Set up the tap event hander on your Map:

`````` <maps:Map x:Name="myMap" Tap="ReadMapTap" />
``````

And then translate the tap location into a GeoCoordinate like so:

`````` void ReadMapTap(object sender, System.Windows.Input.GestureEventArgs e)
{
GeoCoordinate tapLocation =
distanceMap.ConvertViewportPointToGeoCoordinate(e.GetPosition((UIElement)sender));
}
``````

Then we just create another GeoCoordinate, like maybe Microsoft campus:

`````` GeoCoordinate Msft = new GeoCoordinate(47.6396, -122.1300);
``````

And just ask one of our GeoCoordinates how far it is to the other one.

`````` double distanceToMSFT = tapLocation.GetDistanceTo(Msft);
MessageBox.Show("It is " + distanceToMSFT.ToString() + " meters from there to Microsoft!");
``````

The result will be in meters and is based on the haversine formula for calculating distance over the surface of the earth (my favorite!)