12

地上に配置される KML に、特定の高さのポリゴン オブジェクトを配置できる必要があります。空域情報を KML に表示しようとしていますが、各空域には低高度と高高度の値があります。

私がこれまでにできる最も近いことは、空域を表示するために高度の異なる 2 つのポリゴンを作成することですが、ポリゴンを接続して中間領域を表示する方法がありません。

ご協力いただきありがとうございます

4

2 に答える 2

7

2 つのオプションがあります。空域のコラーダ モデルを作成するか、各面を定義する一連のポリゴン オブジェクトを作成できます。

垂直方向のポリゴンを定義できます。スタイルに影響するため、(時計回りまたは反時計回り) の方向に注意してください。ポリゴンを下から見ると少し暗くなります。

単純な長方形の形状の場合、6 つの面が必要です。

次の kml は、頂点の面の 1 つが塗りつぶされた五角形の例の修正版です。他の 4 つの頂点の面は完全である必要がありますが、アイデアは理解できます。

    <?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" xmlns:kml="http://www.opengis.net/kml/2.2" xmlns:atom="http://www.w3.org/2005/Atom">
<Document>
    <name>pm1.kml</name>
    <Style id="poly">
        <LineStyle>
            <color>f0ffed42</color>
        </LineStyle>
        <PolyStyle>
            <color>e8ff9257</color>
        </PolyStyle>
    </Style>



<Placemark>
    <styleUrl>#poly</styleUrl>
        <Polygon>
            <altitudeMode>relativeToGround</altitudeMode>
            <outerBoundaryIs>
                <LinearRing>
                    <coordinates>
-77.05844056290393,38.86996206506943,500 -77.05552622493516,38.868757801256,500 
-77.05315536854791,38.87053267794386,500 -77.05465973756702,38.87291016281703,500 -77.05788457660967,38.87253259892824,500 -77.05844056290393,38.86996206506943,500 </coordinates>
                </LinearRing>
            </outerBoundaryIs>
        </Polygon>
</Placemark>
<Placemark>
    <styleUrl>#poly</styleUrl>
        <Polygon>
            <altitudeMode>relativeToGround</altitudeMode>
            <outerBoundaryIs>
                <LinearRing>
                    <coordinates>
-77.05844056290393,38.86996206506943,400 -77.05552622493516,38.868757801256,400 
-77.05315536854791,38.87053267794386,400 -77.05465973756702,38.87291016281703,400 -77.05788457660967,38.87253259892824,400 -77.05844056290393,38.86996206506943,400 </coordinates>
                </LinearRing>
            </outerBoundaryIs>
        </Polygon>
</Placemark>

<Placemark>
    <styleUrl>#poly</styleUrl>
        <Polygon>
            <altitudeMode>relativeToGround</altitudeMode>
            <outerBoundaryIs>
                <LinearRing>
                    <coordinates>
 -77.05844056290393,38.86996206506943,500 -77.05844056290393,38.86996206506943,400 -77.05552622493516,38.868757801256,400  -77.05552622493516,38.868757801256,500  -77.05844056290393,38.86996206506943,500
</coordinates>
                </LinearRing>
            </outerBoundaryIs>
        </Polygon>
</Placemark>

</Document>
</kml>
于 2010-02-16T19:30:23.773 に答える
1

3D ポリゴンではなく 2 つの 2D ポリゴンを作成しているように聞こえますか? 通常の 3D ポリゴンを作成できます。

http://code.google.com/apis/kml/documentation/kml_tut.html#polygons

次に、KML の Alt モード タグを調べて、地表から「浮かせ」ます。

http://code.google.com/apis/kml/documentation/altitudemode.html

于 2010-02-06T15:59:00.193 に答える