Javascript 如何查找道路距离圆范围内的位置名称?

Javascript 如何查找道路距离圆范围内的位置名称?,javascript,php,codeigniter,api,Javascript,Php,Codeigniter,Api,我使用此代码查找半径为200 km(即与特定点的道路距离)以下位置的最小-最大latlong。但它返回的结果基于径向距离,而不是道路距离。有人能帮我解决这个问题吗 <?php $lat = 28.6663433; $long = 77.067959; $radius = 200; // Kilometers $earth_radius = 6371; $lat_max = $lat + rad2deg($radius / $earth_radius); $long_max = $lon

我使用此代码查找半径为200 km(即与特定点的道路距离)以下位置的最小-最大latlong。但它返回的结果基于径向距离,而不是道路距离。有人能帮我解决这个问题吗

<?php

$lat = 28.6663433;
$long = 77.067959;
$radius = 200; // Kilometers
$earth_radius = 6371;

$lat_max = $lat + rad2deg($radius / $earth_radius);
$long_max = $long + rad2deg($radius / $earth_radius / cos(deg2rad($lat)));

$lat_min = $lat - rad2deg($radius / $earth_radius);
$long_min = $long - rad2deg($radius / $earth_radius / cos(deg2rad($lat)));


echo 'max lat: '.$lat_max.'<br/>';
echo 'max long: '.$long_max.'<br/>';
echo 'min lat: '.$lat_min.'<br/>';
echo 'min lat: '.$long_min.'<br/>';

?>

关于道路距离,您可以看一下,有不同的示例:

var origin1 = new google.maps.LatLng(55.930385, -3.118425);
var origin2 = "Greenwich, England";
var destinationA = "Stockholm, Sweden";
var destinationB = new google.maps.LatLng(50.087692, 14.421150);

var service = new google.maps.DistanceMatrixService();
service.getDistanceMatrix(
  {
    origins: [origin1, origin2],
    destinations: [destinationA, destinationB],
    travelMode: google.maps.TravelMode.DRIVING,
    transitOptions: TransitOptions,
    drivingOptions: DrivingOptions,
    unitSystem: UnitSystem,
    avoidHighways: Boolean,
    avoidTolls: Boolean,
  }, callback);

function callback(response, status) {
  // See Parsing the Results for
  // the basics of a callback function.
}
您需要一个API密钥。

在此处查找google地图API