将标记放在折线的中心

时间:2013-05-06 23:02:01

标签: google-maps-api-3

我正在使用Google的方向服务与Polyline课程一起在自定义颜色的道路上绘制线条。我希望能够在折线的中心放置一个市场。我尝试使用以下代码:

function Marker(start, end) {
    var midP = google.maps.geometry.spherical.interpolate(start, end, 0.5);
    // console.log(map);
    // console.log(midP);
    var options = {
        position: midP
    };
    marker = new google.maps.Marker(options);
    marker.setMap(map);
}

开始和结束是给定折线的起点和终点。

然而,标记不会落在折线上。它似乎直到你放大。 如果能做到这一点,我将不胜感激。感谢

1 个答案:

答案 0 :(得分:0)

我认为您所寻找的是折线的中点,即您行进的点与路线之后的距离。是吗?

然后我会使用像this one which finds the midpoint of a polyline这样的算法。该答案中的代码是针对“定义为一系列[x,y]点”的折线而编写的,但可以轻松调整以使用Maps API折线。