2012-11-16 8 views
5

Jestem całkiem zadowolony z używania funkcji animated update w Google Earth i używam jej do przenoszenia models wokół. Naprawdę chciałbym móc animować line (np. W górę iw dół) w Google Earth, ale znajduję to podchwytliwe.Animowanie linii w Google Earth przy użyciu kml

Mam długość i szerokość geograficzną linii na początku. Na przykład współrzędne liniowe są:

-88,17,100 -88.20270841086835,17.21899813162266,100

Następnie chcę raise jeden koniec tej linii aż do wysokości 500 przez okres 5 sekund .

Narysowaliśmy linię używając LineString:

<Placemark id="path1"> 
    <name>Untitled Path man</name> 
    <LineString> 
     <tessellate>1</tessellate> 
     <coordinates> 
      -88.,17,100 -88.20270841086835,17.21899813162266,100 
     </coordinates> 
    </LineString> 
</Placemark> 

ale im teraz stracił, jak używać <gx:AnimatedUpdate> przenieść jeden koniec się od 100 do 500.

Im na pewno jej łatwo - CAN ktoś wskazuje mnie w dobrym kierunku?

Odpowiedz

5

Sztuką jest aktualizacja elementu LineString (o tym id) zamiast oznaczenia miejsca.

Oto działająca przykładowa wycieczka KML, która ożywia linię zmieniającą się z względnej wysokości od 100 do 500 metrów.

<?xml version="1.0" encoding="UTF-8"?> 
<kml xmlns="http://www.opengis.net/kml/2.2" xmlns:gx="http://www.google.com/kml/ext/2.2"> 
    <Document> 
     <name>gx:AnimatedUpdate example</name> 
     <open>1</open> 

     <LookAt> 
      <longitude>-88.1351880996469</longitude> 
      <latitude>17.09943637744042</latitude> 
      <altitude>0</altitude> 
      <heading>49.91874373078863</heading> 
      <tilt>84.43764019949967</tilt> 
      <range>1929.311316966288</range> 
      <gx:altitudeMode>relativeToSeaFloor</gx:altitudeMode> 
     </LookAt> 

     <Placemark> 
      <name>Untitled Path man</name> 
      <LineString id="path1"> 
       <tessellate>1</tessellate> 
       <altitudeMode>relativeToGround</altitudeMode> 
       <coordinates> 
      -88,17,100 -88.20270841086835,17.21899813162266,100 
       </coordinates> 
      </LineString> 
     </Placemark> 

     <gx:Tour> 
      <name>Play me!</name> 
      <gx:Playlist> 
       <gx:AnimatedUpdate> 
        <gx:duration>5</gx:duration> 
        <Update> 
         <targetHref/> <!-- Left empty to refer to the current file --> 
         <Change>       
          <LineString targetId="path1"> 
           <coordinates> 
            -88,17,100 -88.20270841086835,17.21899813162266,500    
           </coordinates>       
          </LineString> 
         </Change> 
        </Update> 
       </gx:AnimatedUpdate> 

       <!-- Wait for the animation to complete (see the touring 
       tutorial for an explanation of how AnimatedUpdate's 
       duration isn't enough to guarantee this). --> 
       <gx:Wait> 
        <gx:duration>5.0</gx:duration> 
       </gx:Wait> 
      </gx:Playlist> 
     </gx:Tour> 
    </Document> 
</kml> 

Po szczegóły patrz https://developers.google.com/kml/documentation/touring#tourtimelines

+0

pytanie odpowiedział wielkie dzięki – user1829877

Powiązane problemy