1

我正在尝试结合两种单独的方法在一张地图上同时显示标记和折线。可能吗?如果是这样,我将如何做到这一点。或者相反,我将如何将折线添加到我的标记样本中。

来自http://you.arenot.me/2010/06/29/google-maps-api-v3-0-multiple-markers-multiple-infowindows/

如果没有我的实际代码,我很欣赏这可能是一个浪费的帖子..但是我在添加代码时遇到了麻烦..也许这应该是我的第一个问题..

4

2 回答 2

0

当然可以在同一张地图上显示标记和折线:

  • 是一个同时显示标记和独立折线的示例。
  • 是一个使用第三方 geoxml3 KML 解析器从 KML 文件(或使用 KmlLayer)创建它们的示例。
于 2012-08-25T19:43:10.180 回答
0

该脚本将添加标记并在它们之间绘制一条折线:

<script>

  var poly;
  var map;

  function initialize() {
    var chicago = new google.maps.LatLng(41.879535, -87.624333);
    var mapOptions = {
      zoom: 7,
      center: chicago,
      mapTypeId: google.maps.MapTypeId.ROADMAP
    };

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

    var polyOptions = {
      strokeColor: '#000000',
      strokeOpacity: 1.0,
      strokeWeight: 3
    }
    poly = new google.maps.Polyline(polyOptions);
    poly.setMap(map);

    // Add a listener for the click event
    google.maps.event.addListener(map, 'click', addLatLng);
  }

  /**
   * Handles click events on a map, and adds a new point to the Polyline.
   * @param {MouseEvent} mouseEvent
   */
  function addLatLng(event) {

    var path = poly.getPath();

    // Because path is an MVCArray, we can simply append a new coordinate
    // and it will automatically appear
    path.push(event.latLng);

    // Add a new marker at the new plotted point on the polyline.
    var marker = new google.maps.Marker({
      position: event.latLng,
      title: '#' + path.getLength(),
      map: map
    });
  }

</script>

优秀的文档在这里可用:

https://developers.google.com/maps/documentation/javascript/reference

https://google-developers.appspot.com/maps/documentation/javascript/examples/polyline-complex

于 2012-08-25T19:17:34.290 回答