2012-04-11 83 views
1

我正在创建Google地球旅游,我非常希望能够进行互动,以便用户可以选择他们去的地方。创建交互式Google地球旅游(多个导览)

我在想我可以创建每个“场景”作为一个单独的旅游,每个旅游结束与一个决定(很可能通过一个包含问题的气球的地标和每个可能的答案的链接)。

但是我很难找到一种方法来加载下一个这样的旅程。每次巡演都将以KMZ格式提供,如果新的巡演应该从现有巡展中加载,或者从Google Earth API中的外部eventListener加载,我将开放。

任何帮助或指针将受到感谢。

戴夫

回答

1

我想你已经摸索出如何发挥使用plugin.If不是旅游,检查this link

,那么你需要在每个巡演,这是年底开放气球两个步骤。确定游览结束的时间,然后打开一个有一个按钮或多个按钮的气球来选择下一个游览。

要确定游览结束使用此功能

function checkTour() { 
     // checks to see if it can read the time of the tour 
     // if it can it completes rest of function 
    try { 
      var duration = ge.getTourPlayer().getDuration(); 
      var cTime = ge.getTourPlayer().getCurrentTime(); 
    } catch (e) { 
      alert('error'); 
      return false; 
    } 

    if (duration == cTime) { 
      // tour is over 
      tourOverSoOpenBalloonFunction(); 
    } else { 
      // wait 1 second and check again 
      setTimeout('checkTour()',1000); 
    } 

}

然后use this example page用一个按钮创建一个气球执行一些JavaScript加载下一个旅游

基本上你会改变这条线

 balloon.setContentString(
    '<a href="#" onclick="alert(\'Running some JavaScript!\');">Alert!</a>'); 

 balloon.setContentString(
    '<a href="#" onclick="loadTour('tour1');">Tour 1</a><br/><a href="#" onclick="loadTour('tour2');">Tour 2</a>'); 

我可能错过了一些东西,但是这应该让你在正确的方向前进