在谷歌地图或bing上移动对象显示

时间:2013-07-05 15:17:40

标签: google-maps bing-maps

我想开发一个用于在地图中跟踪的应用程序,因为我希望显示移动对象而不需要根据坐标重新加载整个页面。谁能建议我怎么做?

1 个答案:

答案 0 :(得分:0)

有关移动物体的信息在哪里? 它是实时系统还是只是模拟?

在任何情况下,您都可以尝试使用JS来轮询服务器以每秒几次获取新坐标,并在地图上更新标记位置。

修改

下面是您从谷歌教程(https://google-developers.appspot.com/maps/documentation/javascript/examples/full/overlay-symbol-animate)中获取移动对象而不进行投票的工作示例。你需要改变的是获得坐标的方法。

var line;

function initialize() {
  var mapOptions = {
    center: new google.maps.LatLng(20.291, 153.027),
    zoom: 6,
    mapTypeId: google.maps.MapTypeId.TERRAIN
  };

  var map = new google.maps.Map(document.getElementById('map-canvas'),
     mapOptions);

  var lineCoordinates = [
    new google.maps.LatLng(22.291, 153.027),
    new google.maps.LatLng(18.291, 153.027)
  ];

  var lineSymbol = {
    path: google.maps.SymbolPath.CIRCLE,
    scale: 8,
    strokeColor: '#393'
  };

  line = new google.maps.Polyline({
    path: lineCoordinates,
    icons: [{
      icon: lineSymbol,
      offset: '100%'
    }],
    map: map
  });

  animateCircle();
}

function animateCircle() {
    var count = 0;
    window.setInterval(function() {
      count = (count + 1) % 200;

      var icons = line.get('icons');
      icons[0].offset = (count / 2) + '%';
      line.set('icons', icons);
  }, 20);
}

google.maps.event.addDomListener(window, 'load', initialize);