嵌套的KMZ文件不显示图像

时间:2014-07-25 23:00:12

标签: kml google-earth kmz

我使用gedTiffs作为输入,使用gdal_translate创建了多个KMZ文件。单个KMZ文件全部在Google地球中打开并正确显示,但我想将KMZ文件分组到另一个KMZ文件中以便更好地组织。我在“Nesting KMZ file”帖子中尝试了JasonM1的建议,但图像没有显示出来。 Google地球会读取父级KMZ文件并飞到正确的位置,但不会显示叠加层。如何加载图像?顶级doc.kml文件如下所示。谢谢!

<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
    <Document>
      <NetworkLink>
         <open>1</open>
         <refreshVisibility>1</refreshVisibility>
         <flyToView>1</flyToView>
         <Link>
            <href>out_1.kmz</href>
         </Link>
      </NetworkLink>
      <NetworkLink>
         <Link>
            <href>out_2.kmz</href>
         </Link>
      </NetworkLink>
      <NetworkLink>
         <Link>
            <href>out_3.kmz</href>
         </Link>
      </NetworkLink>
   </Document>
</kml>

1 个答案:

答案 0 :(得分:0)

KMZ文件中的图像被引用为相对于根KML文档的相对URL。

假设out_1.kmz文件有一个名为doc.kml的root kml文件,并带有对叠加图像的引用:

<kml xmlns="http://www.opengis.net/kml/2.2">
    <GroundOverlay>
        <Icon>
          <href>overlay.jpg</href>
        </Icon>
    </GroundOverlay>
</kml>

但是,如果根KML访问子文件夹中的另一个KML文件,则目标KML文档中的引用将相对于目标KML文档位置(即相对于子文件夹)。

如果您从KML或KMZ文件中引用目标KMZ文件,则KMZ内图像的相对链接将保持不变。

如果您尝试重新构建一个或多个KMZ文件的内容,则引用图像的相对URL必须与新结构保持一致。