Add kilometers to a map point

Posted by proveyourselfthom on Stack Overflow See other posts from Stack Overflow or by proveyourselfthom
Published on 2010-04-19T14:07:30Z Indexed on 2010/04/19 20:43 UTC
Read the original article Hit count: 257

Filed under:
|
|
|

Good morning.

I would like to know how do I add kilometers to a map point (latitude / longitude).

For example: The city Jaraguá do Sul is in latitude -26.462049, longitude -49.059448. I want to add 100 kilometers up, down, and on the sides. I want to do a square and get the new points.

How do I do that?

I tried it:

<?php
$distance = 100;
$earthRadius = 6371;
$lat1 = -26.4853239150483;
$lon1 = -49.075927734375;
$bearing = 0;

$lat2 = asin(sin($lat1) * cos($distance / $earthRadius) + cos($lat1) * sin($distance / $earthRadius) * cos($bearing));
$lon2 = $lon1 + atan2(sin($bearing) * sin($distance / $earthRadius) * cos($lat1), cos($distance / $earthRadius) - sin($lat1) * sin($lat2));

echo 'LAT: ' . $lat2 . '<br >';
echo 'LNG: ' . $lon2;
?>

But it's returning wrong cordinates. Thank you!

Thank you very much.

© Stack Overflow or respective owner

Related posts about latitude-longitude

Related posts about points