0

我有一个 GE 插件的 KMZ 文件。这个文件有很多 PNG 和几个 kml(poligons、lines、placemarks 等)。

运行此游览的功能是:

function loadKmztour(href){
google.earth.fetchKml(ge, kmlURL, function(kmlObject) {
     if (kmlObject){
        ge.getFeatures().appendChild(kmlObject);
        walkKmlDom(kmlObject, function(context) {
            if (this.getType() == 'KmlTour') {
                ge.getTourPlayer().setTour(this);
                ge.getTourPlayer().play();
            }
        });
    });

}

它运行良好,但只是我第二次进行巡回演出。当我第一次运行它时,它只运行游览但不显示 poligons、地标和 png,但如果我第二次单击游览,它工作正常。

如何强制第一次加载 kmz 信息?

感谢您的任何帮助。最好的问候, 俊秀。

更新:有时,kmz poligons 和 placemarks 会在第一次加载......但它只在某些时候起作用......我认为也许游览在附加 kmz 之前开始运行,所以问题是我如何强制等待appendChild 然后运行游览...谢谢!

4

1 回答 1

0

尝试等到加载完 kml 后再玩游览。我使用这段代码:

var interval = setInterval(function wait() { var streamingPercent = ge.getStreamingPercent(); if(streamingPercent > 98) { ge.getTourPlayer().setTour(tour); ge.getTourPlayer().play(); clearInterval(interval); } }

于 2012-11-06T09:21:16.117 回答