0

そのため、GEのドキュメントを調べて、LineStyleとLineStringを使用して線のスタイルを設定して表示する方法を見つけましたが、実際には実際に機能させることはできません。これが私のKMLです。

<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2"><Document><Style id="thisStyle">
<LineStyle>
<color>500078F0</color>
<colorMode>Normal</colorMode>
<width>5</width>
</LineStyle>
</Style>
<Placemark>
<name>502-2012-11-19 05:27:03</name>
<description>Speed:0</description>
<Point>
<coordinates>-76.0513,42.0894,247</coordinates>
</Point>
</Placemark>
<Placemark>
<name>502-2012-11-19 05:26:46</name>
<description>Speed:0</description>
<Point>
<coordinates>-76.0517,42.0886,287</coordinates>
</Point>
</Placemark>
....
<Placemark>
<name>525-2012-11-19 04:38:25</name>
<description>Speed:0</description>
<Point>
<coordinates>-76.0512,42.0894,178</coordinates>
</Point>
</Placemark>
<styleUrl>#thisStyle</styleUrl>
<LineString>
<tessellate>1</tessellate>
<altitudeMode>clampToGround</altitudeMode>
<coordinates>
-76.0513,42.0894,247 
-76.0517,42.0886,287 
....
-76.0512,42.0894,178 
</coordinates></LineString></Document></kml>

注:上記の「...」が表示される場所には、さらに約50の座標セットがあるため、簡潔にするために削除しましたが、すべての座標はスクリプトによって生成されるため、1つが機能すれば、すべての座標セットが作成されます。誰かが私の目印がすべて表示されるのに線が表示されない理由について正しい方向に私を動かすことができますか?

4

2 に答える 2

1

LineString要素は、目印内(または目印内のMultiGeometry)でのみ有効です。

<Placemark>
  <LineString>
    <tessellate>1</tessellate>
    <altitudeMode>clampToGround</altitudeMode>
    <coordinates>
      -76.0513,42.0894,247 
      -76.0517,42.0886,287 
      -76.0512,42.0894,178 
    </coordinates>
  </LineString>
</Placemark>
于 2012-11-20T01:50:23.423 に答える
1

目印のスタイルをインライン化するか、styleUrl要素を使用して目印のスタイルを参照する必要があります。

例の最後の目印は、次のように書き直す必要があります。

<Placemark>
    <name>525-2012-11-19 04:38:25</name>
    <description>Speed:0</description>
    <styleUrl>#thisStyle</styleUrl>
    <LineString>
        <tessellate>1</tessellate>
        <altitudeMode>clampToGround</altitudeMode>
        <coordinates>
            -76.0513,42.0894,247 
            -76.0517,42.0886,287
             ...
            -76.0512,42.0894,178 
        </coordinates>
    </LineString>
</Placemark>

KMLが正しく表示されない場合は、通常、KMLの検証に役立ちます。KMLValidatorを使用できます。

于 2012-11-20T01:53:30.180 に答える