Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用XML文件在Google Maps 3中创建多段线_Xml_Google Maps Api 3 - Fatal编程技术网

使用XML文件在Google Maps 3中创建多段线

使用XML文件在Google Maps 3中创建多段线,xml,google-maps-api-3,Xml,Google Maps Api 3,我正在升级到谷歌地图的v3版本,在加载多段线时遇到了一些问题。我的代码基于此链接中给出的答案:有几个变体与我的XML文件相匹配 downloadUrl("byway.xml", function(doc) { var xmlDoc = xmlParse(doc); var trks = xmlDoc.documentElement.getElementsByTagName("trk"); var bywaypath = []; for (v

我正在升级到谷歌地图的v3版本,在加载多段线时遇到了一些问题。我的代码基于此链接中给出的答案:有几个变体与我的XML文件相匹配

downloadUrl("byway.xml", function(doc) {
    var xmlDoc = xmlParse(doc);
        var trks = xmlDoc.documentElement.getElementsByTagName("trk");
        var bywaypath = [];
        for (var i = 0; i < trks.length; i++) {
            var trkPoints = trks[i].getElementsByTagName("trkpt");
            for (var j = 0; j<trkPoints.length; j++) {
    var lat = parseFloat(trkPoints[j].getAttribute("lat"));
  var lng = parseFloat(trkPoints[j].getAttribute("lng"));
  var point = new google.maps.LatLng(lat,lng);
  bywaypath.push(point);
            }
        }


  var myPath = new google.maps.Polyline({
  path: bywaypath,
  strokeColor: "#008eb0",
  strokeOpacity: 1.0,
  strokeWeight: 3
});
downloadUrl(“byway.xml”,函数(doc){
var xmlDoc=xmlParse(doc);
var trks=xmlDoc.documentElement.getElementsByTagName(“trk”);
var bywaypath=[];
对于(变量i=0;i您的XML有效吗
  • 这看起来不一致(您的代码正在查找属性“lng”,XML包含属性“lon”:

    var lng=parseFloat(trkPoints[j].getAttribute(“lng”);

  • 我很尴尬,你不得不帮我弄明白,但很感谢你看到了这个简单的错误。我把它改成了lon,现在一切都正常了。谢谢你!!!顺便说一句,谢谢你为谷歌地图在线提供的所有例子。他们在几个项目中帮助了我!如果答案对你有用,请回答。
    <gpx version="1.1" creator="RouteBuddy" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.topografix.com/GPX/1/1" xsi:schemaLocation="http://www.topografix.com/GPX/1/1 http://www.topografix.com/GPX/1/1/gpx.xsd">
    
    <wpt lat="30.23041000" lon="-88.02368200">
    <ele>935.481445</ele>
    <trk>
        <name>ACC</name>
        <trkseg>
    
    <trkpt lat="    30.23047759 " lon=" -88.02365995    "></trkpt>
    <trkpt lat="    30.23040677 " lon=" -88.02368044    "></trkpt>
    <trkpt lat="    30.23041    " lon=" -88.023682  "></trkpt>
    <trkpt lat="    30.230062   " lon=" -88.023445  "></trkpt>
    <trkpt lat="    30.229971   " lon=" -88.023339  "></trkpt>
    <trkpt lat="    30.229628   " lon=" -88.022956  "></trkpt>
    <trkpt lat="    30.229628   " lon=" -88.022956  "></trkpt>
    <trkpt lat="    30.22975762 " lon=" -88.02288814    "></trkpt>
    <trkpt lat="    30.22973402 " lon=" -88.02284032    "></trkpt>
    <trkpt lat="    30.22973402 " lon=" -88.02284032    "></trkpt>
    
    var lng = parseFloat(trkPoints[j].getAttribute("lng"));
    
    
    <trkpt lat="    30.23047759 " lon=" -88.02365995    "></trkpt>