如何设置Google Maps API KML地面叠加层的动画

时间:2012-03-12 22:22:53

标签: api animation maps overlay kml

两个问题:

  1. 通过谷歌地图API V2通过12个KML文件创建流畅动画的最佳方法是什么?
  2. 如何整合fadeIn()/ fadeOut()以便在这些KML文件之间平滑转换?
  3. 我已经用我的KML中的2个用setTimeouts()进行了实验,但是还没有找到一种平滑或一致的方法来在它们之间制作动画。代码如下。

    function animate () {
    
    function series_1 () {
       geoXml = new GGeoXml("lake/colors_test.kml");
       map.addOverlay(geoXml);
       setTimeout("map.removeOverlay(geoXml)", 5000);
    
    }
    
    function series_2 () {
        geoXml1 = new GGeoXml("lake/colors_test_1.kml");
        map.addOverlay(geoXml1);
        setTimeout("map.removeOverlay(geoXml1)", 5000);
    
    }
    
    series_1();
    series_2();
    
    
    }
    
    
    animate();  
    

1 个答案:

答案 0 :(得分:0)

我认为你需要对基础图像应用淡化:

$("#mapContent").find("img[src*=\"lyrs=kml\"]").fadeOut();

这适用于V3 API,您可能需要为V2 API使用不同的选择器。

我假设地图是用

创建的
map = new google.maps.Map document.getElementById("mapContent");

jQuery也有fadeIn()方法,但是它很棘手,因为在添加新的KML图层时可能会重新创建图像。您需要找到一种方法,在创建它们时将其可见性设置为零。