【问题标题】:draw lines on coordinates retrieve from mysql not working在从mysql检索的坐标上画线不起作用
【发布时间】:2012-02-02 20:01:15
【问题描述】:

我正在尝试从这个位置画一条线到地图中显示的另一个位置。我已经检索了坐标并为每个位置放置了一个标记,但是我如何画一条连接它们的线?虽然我有代码,但我认为我用错了。任何帮助,将不胜感激。谢谢。

//create the markers    
        var marker1 = new google.maps.Marker({
            position: new google.maps.LatLng<?php echo $location['locationOne']; ?>,
            map: map,
            title: "First location"
        });
        var marker2 = new google.maps.Marker({ 
            position: new google.maps.LatLng<?php echo $location['locationTwo']; ?>,
            map: map,
            title: "Second location"
        });
        var marker3 = new google.maps.Marker({
            position: new google.maps.LatLng<?php echo $location['locationThree']; ?>,
            map: map,
            title: "Third location"
        });
        var marker4 = new google.maps.Marker({ 
            position: new google.maps.LatLng<?php echo $location['locationFour']; ?>,
            map: map,
            title: "Fourth location"
        });
        var marker5 = new google.maps.Marker({
            position: new google.maps.LatLng<?php echo $location['locationFive']; ?>,
            map: map,
            title: "Fifth location"
        });

这是我对如何添加感到困惑的代码。试了几次还是不行:

var line = new google.maps.Polyline({
        map: map, 
        path: [<?php echo $location['locationOne']; ?>, <?php echo $location['locationTwo']; ?>, <?php echo $location['locationThree']; ?>, <?php echo $location['locationFour']; ?>, <?php echo $location['locationFive']; ?>],
        strokeWeight: 7,
        strokeOpacity: 0.8,
        strokeColor: "#000000"
    });

【问题讨论】:

  • 您能否发布您的浏览器接收到的确切 JavaScript 代码?

标签: php mysql google-maps google-maps-api-3


【解决方案1】:

您将坐标对而不是 LatLngs 传递给路径选项。您需要为每个坐标对创建一个新的LatLng 对象(即new google.maps.LatLng(...))。如下:

    path: new google.maps.LatLng([<?php echo $location['locationOne']; ?>), new google.maps.LatLng(<?php echo $location['locationTwo']; ?>), ...,

顺便说一句,您输出的是带括号的 $location['locationXXX'] 变量吗?我猜你是。

【讨论】:

  • 顺便说一句,我发现了一个小错误。括号([)应该放在 new 之前而不是 php 开始标记之前。感谢您的解决方案:D
猜你喜欢
  • 2012-04-20
  • 1970-01-01
  • 2014-06-27
  • 2011-09-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多