在基于谷歌地图的标记时间中绘制多边形

本文关键字:时间 绘制 多边形 谷歌地图 | 更新日期: 2023-09-27 18:35:08

我想通过在谷歌地图中连接标记来绘制多边形。时间与每个标记相关联。所以我想根据时间连接每个点。我该怎么做。目前代码是这样实现的。我需要改变的地方。

       var marker = new Array();
       var points = new Array();
     for(var i=0;i<value.length;i++)
          {
               var tempar=value[i].split(',');
               var center = new GLatLng(tempar[0], tempar[1]);
               var mar = new GMarker(center, icon);
               var imgpth=tempar[3]; 
               var tme=tempar[2];
               marker.push(mar);   
               marker[i].time = tempar[2];
               points.push(marker[i].getLatLng());
               drawMarker(mar,imgpth,tme);                   
        }
          for(i=;i<marker.length;i++)
         {
            map.addOverlay(marker[i]);
          }
           var polyline = new GPolygon(points, "#f33f00", 2, 1, "#ff0000", 0.2);
           map.addOverlay(polyline);

在基于谷歌地图的标记时间中绘制多边形

最简单的方法是按时间对数组进行排序marker。假设 time 属性具有一些合理的值(不是字符串):

marker.sort(function(a,b){return a.time-b.time});

如果time是字符串,则:

marker.sort(function(a,b) {
 var date1 = new Date(a.time);
 var date2 = new Date(b.time);
 return date1.getTime() - date2.getTime();
});