【问题标题】:How to getPaths() with geoXML3如何使用 geoXML3 获取路径()
【发布时间】:2015-07-14 08:23:11
【问题描述】:

我有超过 600 个 kml 文件要加载到一个谷歌地图中。 最初我尝试使用KmlLayer(),但由于kml 文件的数量,它不起作用,所以我找到了GeoXML3,它确实很好用。

现在我需要为使用 GeoXML3 创建的每个多边形检索路径坐标。 Here 我找到了 getPaths() 方法,这似乎正是我正在寻找的,但它不起作用,因为现在我不使用类 Polygon 创建多边形,而是使用类 geoxml3

for (i=0; i < controlli.length; i++)
{   
    appo = kmlurl + controlli[i].id + ".kml";
    appo = appo.replace(" ", '_');
    area[controlli[i].id] = new geoXML3.parser({
        map: map,
        zoom: false,
    });
    area[controlli[i].id].parse(appo);
    //here I would like to do something like: 'area[controlli[i].id].getPaths()'
}

我该怎么做?

【问题讨论】:

    标签: javascript google-maps google-maps-api-3 polygon geoxml3


    【解决方案1】:

    geoXml3 创建的代表 KML 多边形的 google.maps.Polygon 对象可以通过两种方式访问​​:

    1. area[controlli[0].id].docs[0].placemarks[0].polygon.getPath()

    working jsfiddle

    1. area[controlli[0].id].docs[0].gpolygons[0].getPath()

    working jsfiddle

    geoXml 是对解析器对象的引用(您的 area[controlli[i].id]) i 是对 KML 中地标(或多边形)的顺序引用)。

    如果您在异步加载的KML文件上使用它,则需要等待parsed事件,或者使用afterParse函数中的数据。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-09-01
      • 1970-01-01
      • 2020-11-23
      • 1970-01-01
      • 1970-01-01
      • 2011-02-19
      • 2020-02-22
      相关资源
      最近更新 更多