我正在尝试了解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
¢er=-33.8569,151.2152
&zoom=18
&maptype=satellite
显然,这需要重新登上埃特纳火山和我的API密钥:
ttps://www.google.com/maps/embed/v1/view
?key=AIzaSyCrzeJMzJcHGCZj26Y9tHhmkSQ1zzJi8o0
¢er=37.91904192681665,15.35832653742206
&zoom=14
&maptype=satellite
是否需要放入iframe?
如何组合这两段代码来创建嵌入我网站的kml地图叠加?
有没有办法在不使用Java的情况下执行此操作?
答案 0 :(得分:0)
KML文件不会直接在网络上呈现...需要在某个地图上呈现。自己查看KML文件的最简单方法是使用Google地球打开它。如果您想将其放在网络上,一种简单的方法是使用Google Maps JavaScript API在您的网站上嵌入地图,然后使用KmlLayer功能将KML文件添加到地图中。详细信息和示例代码在此处的文档中: https://developers.google.com/maps/documentation/javascript/kml
请注意,您在Google云端硬盘上的KML文件副本不会直接在地球上或您提供的网址上的任何其他位置打开,因为它会将您带到该文件的Google云端硬盘页面。相反,您希望在云端硬盘上为该文件生成直接下载URL,或将其置于其他位置。