2010-02-04 6 views
10

Devo essere in grado di posizionare un oggetto poligonale con una determinata altezza in un KML che si troverà sopra il terreno. Sto cercando di visualizzare le informazioni sullo spazio aereo in un KML e ogni spazio aereo ha un valore di altitudine e altitudine elevata.Come si crea una forma poligonale in un KML posizionato nell'aria?

La cosa più vicina che ho potuto fare finora è creare due poligoni con altitudini diverse per mostrare lo spazio aereo ma non ho modo di collegare i poligoni per mostrare l'area centrale.

Grazie per il vostro aiuto

+0

Hai mai trovato una risposta a questa domanda? Sono interessato a fare qualcosa di simile me stesso e vorrei "fluttuare" un poligono a mezz'aria –

risposta

6

tuo hanno due opzioni, può creare un modello collada dello spazio aereo o una serie di oggetti poligonali che definiscono ciascuna faccia,

poligoni orientati verticalmente possono essere definiti la direzione della vostra (in senso orario o antiorario) in quanto questo influenzerà lo stile, la visualizzazione di un poligono dal basso lo rende leggermente più scuro

per una semplice forma rectancular si avrà bisogno di 6 facce

il seguente KML è un versione modificata dell'esempio del pentagono con una delle facce del vertice compilate, le altre 4 facce del vertice devono essere complete, ma avrete l'idea.

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

Grazie Berwyn, questo è quello che stavo cercando. –

1

suona come si sta creando 2 poligoni 2D piuttosto che un 3d uno? È possibile creare un poligono regolare 3d:

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

quindi controllare il tag altitudeMode in KML a "galleggiare" sopra la superficie:

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

+0

Grazie per la risposta geographika. Hai ragione, i poligoni hanno una modalità di altitudine, ma tutti sono basati sul terreno, tranne l'assoluto, che farà solo galleggiare il poligono ma non gli darà una profondità. –

+0

Hai utilizzato il tag nel poligono per "unire" il poligono dalla sua altitudine al suolo? – geographika

+0

Il tag estrusione è solo se si desidera estendere a esso non funzionerà per gli oggetti nell'aria. –

Problemi correlati