Google Maps Web API - KML IconStyle颜色不起作用

时间:2015-09-18 18:02:17

标签: javascript api google-maps kml

我在使用KML和Google Maps Web API时遇到问题。 如果我在ColorStyle标签中使用颜色标签,则标记不会在地图上显示。 如果我删除颜色标签,它会在地图上显示。 我确信KML在2-3个月前正常工作。

这是我的KML文件:

<?xml version='1.0' encoding='UTF-8'?>
<kml xmlns='http://www.opengis.net/kml/2.2'>
    <Document>
        <name>MAP</name>
        <description><![CDATA[]]></description>
        <Folder>
            <name>MAP</name>
            <Placemark>
                <styleUrl>#icon-961-62AF44</styleUrl>
                <name>BLA BLA BLA</name>
                <description><![CDATA[DESCRIPTION BLA BLA BLA]]></description>
                <Point>
                    <coordinates>12.429284000000052,41.899191,0.0</coordinates>
                </Point>
            </Placemark>
    </Folder>
    <Style id='icon-961-62AF44'>
        <IconStyle>
            <color>ff44AF62</color>
            <scale>1.1</scale>
            <Icon>
                <href>http://www.gstatic.com/mapspro/images/stock/961-wht-square-blank.png</href>
            </Icon>
        </IconStyle>
    </Style>
    </Document>
</kml>

这是我的javascript:

   <script>
      var map;

      function initialize() {
         var mapOptions = {
           center: new google.maps.LatLng(41.7,12.6),
           zoom: 9
         };
         map = new google.maps.Map(document.getElementById("map"), mapOptions);
         var ctaLayer = new google.maps.KmlLayer('http://test.com/test.kml', {preserveViewport: true});
         ctaLayer.setMap(map);
      }

      google.maps.event.addDomListener(window, 'load', initialize);
   </script>

有人建议吗? 谢谢。

1 个答案:

答案 0 :(得分:0)

这是Google Maps Javascript API v3中的一个问题。

8551: Bug: KmlLayer-Placemarks with color different to ffFFFFFF will not be displayed

  

哪些步骤会重现问题?

     
      
  1. 使用Point创建KML并应用具有与ffFFFFFF不同的颜色值的IconStyle
  2.   
  3. 使用KML创建KmlLayer
  4.         

    根据KmlLayers中的文档,IconStyle根本不支持颜色,应该忽略(因此不应以任何方式影响Layer)。

         

    当然可以简单地删除颜色,但是当你使用从其他应用程序导出的KML时,这并不总是一个选项。

         

    特别是我的意思是我的地图,当您想在KmlLayer中使用导出的KML时,无法使用符号(白色符号除外)

         

    相关的SO问题:Google Maps JavaScript API won't display markers from KML exported from My Maps

  

感谢您举报。我们已在内部提交,并将相应地确定优先顺序。

     

状态:已接受

     

标签:内部-24115271