在KML描述中添加FlyTo链接

时间:2011-08-12 13:00:57

标签: kml google-earth

我正在尝试指定地标的说明,以指向另一个地球位置的超链接,但不指定其他地标。点击链接后,我只想飞到地球上的那个位置。我不知道该怎么做。我在下面尝试了以下KML标签的变体,但无济于事。该链接显示在气球描述中,但不会更改视图或执行flyto。可以这样做吗?以下示例包括MGRS位置,Google Earth的搜索栏会理解该位置。

<Placemark>
    <name>Untitled Placemark</name>
    <description><![CDATA[<a href="18S UH 27103 98673;flyto">Click Me</a>]]></description>
    <styleUrl>#msn_ylw-pushpin</styleUrl>
    <Point>
        <altitudeMode>clampToGround</altitudeMode>
        <gx:altitudeMode>clampToSeaFloor</gx:altitudeMode>
        <coordinates>-76.99418723939422,48.82106388888889,0</coordinates>
    </Point>
</Placemark>

1 个答案:

答案 0 :(得分:0)

您需要另一个包含该位置的Kml文件,类似下面的内容应该有效。创建以下文件。

<?xml version="1.0" encoding="UTF-8"?>
<kml>
<Document>
  <LookAt id="Location1">
    <longitude>-76.99156472538761</longitude>
    <latitude>38.81988094612709</latitude>
    <altitude>0</altitude>
    <heading>0</heading>
    <tilt>0</tilt>
    <range>1010</range>
    <altitudeMode>relativeToGround</altitudeMode>
  </LookAt>
  <LookAt id="Location2">
    <longitude>-76</longitude>
    <latitude>38</latitude>
    <altitude>0</altitude>
    <heading>0</heading>
    <tilt>0</tilt>
    <range>1010</range>
    <altitudeMode>relativeToGround</altitudeMode>
  </LookAt>
</Document>
</kml>

将该文件保存到公共服务器(例如“http://yourserver.com/your.kml”),然后只需链接到该文件并指定Flyto行为。

<Placemark>
<description>
  <![CDATA[ 
    <a href="http://yourserver.com/your.kml#Location1;Flyto">Click Me</a>
  ]]>
</description> 
</Placemark>

如果使用ID向文件添加其他LookAt元素,则可以使用片段标识符指定要引用的外观。即

<a href="http://yourserver.com/your.kml#Location2;Flyto">Click Me</a>