5

私はanimated updateグーグルアースの機能をかなり使いこなしており、それを使ってmodels動き回っています。私が本当にやりたいことはline、Google Earth で (たとえば、上下に) アニメーション化できるようにすることですが、これは難しいと感じています。

開始時のラインの経度と緯度があります。たとえば、ライン座標は次のとおりです。

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

raise次に、この線の一端を 5 秒間で高度 500 まで上げたいと思います。

私は次を使用して線を引きました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>

<gx:AnimatedUpdate>しかし、私は今、1つの端を100から500に移動する方法について迷っています.

簡単だと思います-誰かが私を正しい方向に向けることができますか??

4

1 に答える 1

5

トリックは、Placemark ではなく、LineString 要素 (ID を含む) を更新することです。

これは、相対高度 100 から 500 m に変化する線をアニメーション化する、実際の KML ツアーの例です。

<?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>

詳細については、https://developers.google.com/kml/documentation/touring#tourtimelinesを参照してください。

于 2012-11-16T20:17:24.110 に答える