创建交互式Google地球之旅(多个游览)

时间:2012-04-11 13:09:16

标签: google-earth google-earth-plugin

我正在创建一个Google地球之旅,我真的希望能够实现这种互动,以便用户可以选择去哪里。

我在想我可以将每个“场景”创建为一个单独的游览,每个游戏都以一个决定结束(最有可能通过带有包含问题的气球的地标和每个可能答案的链接)。

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

感谢任何帮助或指示。

戴夫

1 个答案:

答案 0 :(得分:1)

我认为你已经知道如何使用插件进行游览。如果没有,请检查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>');

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