0

所以我正在开发一个移动应用程序,并且一直在研究最简单的方法来让标记捕捉到您在地图上单击的最近的道路。我想出了以下解决方案,还没有看到它在网上的任何地方列出,只是想看看这样做有什么问题吗?

我会发布我的代码,但它散布在几个对象中。这就是它的要点。

所以基本上...... - 为返回点击的纬度/经度坐标的地图建立点击处理程序(简单)

然后像.. `var DirectionsService = new google.maps.DirectionsService();

DirectionsService.route({
        'origin': clickLatLngPosition,
        'destination': clickLatLngPosition,
        'travelMode': google.maps.TravelMode.DRIVING
    }, function(response, status){
        testLat = response.routes[0].legs[0].start_location.lat();
        testLng = response.routes[0].legs[0].start_location.lng();
        testPosition = new google.maps.LatLng(testLat, testLng);
        slammedNavigator.snMapElement.gmap('addMarker', {
            'position': testPosition
        });
    });` 

这是基于用户点击将标记捕捉到道路的好解决方案吗?是还是不是?有没有更好的办法?

4

1 回答 1

0

如果您使用以下代码,您可以为自己节省三行代码:

position: response.routes[0].legs[0].start_location

现在您正在使用 LatLng 对象的各个统计信息来创建一个新的 LatLng 对象

于 2013-04-03T10:03:25.350 回答