Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/api/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
尝试使用googlemaps api和javascript查找两个LatLng对象之间的距离_Javascript_Api_Google Maps_Distance - Fatal编程技术网

尝试使用googlemaps api和javascript查找两个LatLng对象之间的距离

尝试使用googlemaps api和javascript查找两个LatLng对象之间的距离,javascript,api,google-maps,distance,Javascript,Api,Google Maps,Distance,您好,我正在玩html5地理定位,并使用navigator.geolocation.getCurrentPosition(success,fail)对象获取用户位置 在success函数中,我创建了一个名为coords的变量来保存坐标,并创建了一个名为coords2的变量来保存我创建的其他坐标 var coords = new google.maps.LatLng(position.coords.latitude position.coords.longitude); var coords

您好,我正在玩html5地理定位,并使用navigator.geolocation.getCurrentPosition(success,fail)对象获取用户位置

在success函数中,我创建了一个名为coords的变量来保存坐标,并创建了一个名为coords2的变量来保存我创建的其他坐标

 var coords = new google.maps.LatLng(position.coords.latitude position.coords.longitude); 
 var coords2 = new google.maps.LatLng(55.8619788, -4.2867578);
使用以下代码,我将地图上的两点定位为标记:

 var mapOptions = {

                zoom: 16,
                center: coords,
                mapTypeControl: false,
                navigationControlOptions: {style: google.maps.NavigationControlStyle.SMALL},
                mapTypeId: google.maps.MapTypeId.ROADMAP,

        };


 map = new google.maps.Map(document.getElementById("map_canvas"), mapOptions);  


 var marker = new google.maps.Marker({
                position: coords,
                map: map,
                title: "Your current location!"
        });


 var marker2 = new google.maps.Marker({
                position: coords2,
                map: map,
                title: "Nearest Person!"
        });
然后我想做的是计算出这些点之间的距离。我似乎找不到一种方法来做这件事

以下是我正在尝试的:

  var distance = computeDistanceBetween(coords, coords2);
  alert(distance);
知道我做错了什么吗?干杯! 保罗

在v2中,你可以

coords.distanceFrom(coords2);
记录在

编辑:我想您可能正在使用v3。如果是这样,我相信您将需要完整的名称空间:

var距离= google.maps.geometry.Spheremic.ComputedDistanceBeween(coords, 合作2)


新的

中存在默认情况下不加载的google.maps.geometry库。您必须在引导请求中明确指定要加载它:

<script type="text/javascript" src="http://maps.google.com/maps/api/js?libraries=geometry&sensor=true_or_false"></script>