如何创建kml地图叠加层?

时间:2017-03-28 03:25:17

标签: dictionary overlay kml

我正在尝试了解KML Ground Overlay Tutorial,其中包含以下代码作为示例:

<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
  <Folder>
    <name>Ground Overlays</name>
    <description>Examples of ground overlays</description>
    <GroundOverlay>
      <name>Large-scale overlay on terrain</name>
      <description>Overlay shows Mount Etna erupting 
          on July 13th, 2001.</description>
      <Icon>
        <href>https://developers.google.com/kml/documentation/images/etna.jpg</href>
      </Icon>
      <LatLonBox>
        <north>37.91904192681665</north>
        <south>37.46543388598137</south>
        <east>15.35832653742206</east>
        <west>14.60128369746704</west>
        <rotation>-0.1556640799496235</rotation>
      </LatLonBox>
    </GroundOverlay>
  </Folder>
</kml>

没有API密钥编号,因此我假设此KML旨在与某种地图组合。

我将kml保存到可公开访问的文件中: https://drive.google.com/file/d/0Bx17tEcqrzavTlc4ZHVmNFgyM1k/view?usp=sharing

当然,我必须制作一个嵌入式地图,并参考这个kml文件。

https://developers.google.com/maps/documentation/embed/guide 这里的第一个示例使用iframe,它使用Place Mode,我不想要。

<iframe
  width="600"
  height="450"
  frameborder="0" style="border:0"
  src="https://www.google.com/maps/embed/v1/place?key=YOUR_API_KEY
    &q=Space+Needle,Seattle+WA" allowfullscreen>
</iframe>

查看模式似乎最适合上述链接选项。

https://www.google.com/maps/embed/v1/view
  ?key=YOUR_API_KEY
  &center=-33.8569,151.2152
  &zoom=18
  &maptype=satellite

显然,这需要重新登上埃特纳火山和我的API密钥:

ttps://www.google.com/maps/embed/v1/view
  ?key=AIzaSyCrzeJMzJcHGCZj26Y9tHhmkSQ1zzJi8o0
  &center=37.91904192681665,15.35832653742206
  &zoom=14
  &maptype=satellite

是否需要放入iframe?

如何组合这两段代码来创建嵌入我网站的kml地图叠加?

有没有办法在不使用Java的情况下执行此操作?

1 个答案:

答案 0 :(得分:0)

KML文件不会直接在网络上呈现...需要在某个地图上呈现。自己查看KML文件的最简单方法是使用Google地球打开它。如果您想将其放在网络上,一种简单的方法是使用Google Maps JavaScript API在您的网站上嵌入地图,然后使用KmlLayer功能将KML文件添加到地图中。详细信息和示例代码在此处的文档中: https://developers.google.com/maps/documentation/javascript/kml

请注意,您在Google云端硬盘上的KML文件副本不会直接在地球上或您提供的网址上的任何其他位置打开,因为它会将您带到该文件的Google云端硬盘页面。相反,您希望在云端硬盘上为该文件生成直接下载URL,或将其置于其他位置。