# Findind distance between two POINTS help • ### Question

• So  i was trying to duplicate the distance formula on this page in C#

http://itouchmap.com/latlong.html

This is for distance between two locations.

This is my code

```  int R = 6371;
double Lat1 = ((Double.Parse(SLat))*(Math.PI/180));

double Lat2 = ((Double.Parse(SLat2)) * (Math.PI / 180));

double deltaOmega = (Double.Parse(SLat) - Double.Parse(SLat2)) * (Math.PI / 180);
double deltaLambda = (Double.Parse(SLong) - Double.Parse(SLong2)) * (Math.PI / 180);

double a = Math.Sin(deltaOmega / 2) * Math.Sin(deltaOmega / 2) + Math.Cos(Lat1) * Math.Cos(Lat2) * Math.Sin(deltaLambda / 2) * Math.Sin(deltaLambda/ 2);

double c = 2* Math.Atan2(Math.Sqrt(a), Math.Sqrt(1-a));

double dis = R * c;```

but i keep getting a distance that is two decimal places off

Can anyone verify that my translation of the equation is correct?

• Edited by Tuesday, October 21, 2014 4:25 AM
Tuesday, October 21, 2014 4:24 AM

### All replies

• Could you post the direct link to the formula you are implementing? I have not been able to find it on the website you linked to.
Tuesday, October 21, 2014 8:01 AM
• this is the correct one:

http://www.movable-type.co.uk/scripts/latlong.html

Wednesday, October 22, 2014 1:04 AM
• No one can verify this for me???  Come on guys. You just have to look at my code!
Thursday, October 23, 2014 2:22 PM
• So  i was trying to duplicate the distance formula on this page in C#

http://www.movable-type.co.uk/scripts/latlong.html

This is for distance between two locations.

This is my code

```int R = 6371;
double Lat1 = ((Double.Parse(SLat))*(Math.PI/180));

double Lat2 = ((Double.Parse(SLat2)) * (Math.PI / 180));

double deltaOmega = (Double.Parse(SLat) - Double.Parse(SLat2)) * (Math.PI / 180);
double deltaLambda = (Double.Parse(SLong) - Double.Parse(SLong2)) * (Math.PI / 180);

double a = Math.Sin(deltaOmega / 2) * Math.Sin(deltaOmega / 2) + Math.Cos(Lat1) * Math.Cos(Lat2) * Math.Sin(deltaLambda / 2) * Math.Sin(deltaLambda/ 2);

double c = 2* Math.Atan2(Math.Sqrt(a), Math.Sqrt(1-a));

double dis = R * c;```

but i keep getting a distance that is two decimal places off

Can anyone verify that my translation of the equation is correct?

Thursday, October 23, 2014 2:23 PM