1

私のKMLファイルは次のとおりです。

<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://earth.google.com/kml/2.1">
    <Document>
      <NetworkLink>
        <Link>
          <href>http://localhost/test.php</href>
          <refreshMode>onInterval</refreshMode>
          <refreshInterval>1</refreshInterval>
        </Link>
      </NetworkLink>
    </Document>
</kml>

Localhost/test.phpは以下を返します。

<Document>
  <Placemark>
    <name>Testing</name>
    <description>
      Test
    </description>
    <Point>
      <altitudeMode>absolute</altitudeMode>
      <coordinates>0,0,0</coordinates>
    </Point>
  </Placemark>
</Document>

アイコンをクリックすると、「テスト」というバルーンが開き、1秒後、kmlが更新されるとバルーンが閉じます。これを修正するにはどうすればよいですか?

4

1 に答える 1

3

バルーンを開くには<open>1</open>、目印にタグを追加するだけです

<Document>
  <Placemark>
    <name>Testing</name>
    <open>1</open>
    <description>
      Test
    </description>
    <Point>
      <altitudeMode>absolute</altitudeMode>
      <coordinates>0,0,0</coordinates>
    </Point>
  </Placemark>
</Document>

ただし、これは、リンクが更新されたときに目印が常に開いている(バルーンが表示されている)ことを意味します。

kmlを更新し、現在の状態に応じてバルーンを開いたままにしたり閉じたりしたい場合は、代わりにUPDATEコマンドを調べて、置換(再読み込み)するのではなく、現在読み込まれているKMLの特定の部分のみを更新する必要があります。 )KML全体。

つまり、そもそもなぜKMLを更新するのですか?

編集:コメントで質問に答える

CHANGEの機能を使用するUPDATE

<Update> 
    <targetHref>http://www.domain.com/file.kml</targetHref> 
    <Change> 
      <Point targetId="point123"> 
        <coordinates>-95.48,40.43,0</coordinates>
      </Point> 
    </Change> 
  </Update> 

これにより、 (を介して読み込まれた)として言及されているkmlに読み込まれた目印idの座標が変更されます。point123targetHrefNetworkLink

于 2012-09-28T17:54:23.317 に答える