2016-11-08 8 views
0

У меня есть путь, который я хотел бы показать в Google Earth.Путь в KML следует за экватором вместо координат

KML, ниже производит путь вдоль экватора между 28 градусов 45 минут Е и 81 градусов 52 минут W.

я не вижу, что, вероятно, будет очевидно, что проблема с KML. Может ли кто-нибудь посоветовать мне проблему?

<?xml version="1.0" encoding="utf-8"?> 
<kml xmlns="http://www.opengis.net/kml/2.2"> 
    <Document> 
     <name>Paths</name> 
     <Style id="transPurpleLineGreenPoly"> 
     <LineStyle> 
      <color>7f00ff00</color> 
      <width>4</width> 
     </LineStyle> 
     <PolyStyle> 
      <color>7f00ff00</color> 
     </PolyStyle> 
     </Style> 
     <Placemark> 
     <visibility>1</visibility> 
     <description>Path from Chile to Florida</description> 
     <styleUrl>#transPurpleLineGreenPoly</styleUrl> 
     <LineString> 
      <tessellate>1</tessellate> 
      <altitudeMode>clampToGround</altitudeMode> 
      <coordinates> 
       -70.900, -27.117, 0 
       -72.800, -29.600, 0 
       -80.000, -20.000, 0 
       -80.000, -10.000, 0 
       -80.200, -7.300, 0 
       -81.900, -5.250, 0 
       -81.250, -3.000, 0 
       -81.800, -0.900, 0 
       -80.000, 7.000, 0 
       -79.453, 8.781, 0 
       -79.521, 8.888, 0 
       -79.559, 8.938, 0 
       -79.569, 8.950, 0 
       -79.585, 8.990, 0 
       -79.591, 8.996, 0 
       -79.599, 9.004, 0 
       -79.604, 9.010, 0 
       -79.619, 9.023, 0 
       -79.643, 9.038, 0 
       -79.656, 9.056, 0 
       -79.672, 9.069, 0 
       -79.691, 9.107, 0 
       -79.703, 9.115, 0 
       -79.717, 9.118, 0 
       -79.750, 9.121, 0 
       -79.768, 9.112, 0 
       -79.806, 9.120, 0 
       -79.815, 9.161, 0 
       -79.844, 9.182, 0 
       -79.850, 9.183, 0 
       -79.862, 9.181, 0 
       -79.874, 9.182, 0 
       -79.924, 9.211, 0 
       -79.924, 9.256, 0 
       -79.924, 9.267, 0 
       -79.921, 9.285, 0 
       -79.919, 9.302, 0 
       -79.919, 9.327, 0 
       -79.919, 9.349, 0 
       -79.919, 9.366, 0 
       -79.919, 9.379, 0 
       -79.919, 9.390, 0 
       -80.008, 9.474, 0 
       -75.000, 18.500, 0 
       -73.673, 20.340, 0 
       -75.516, 21.986, 0 
       -76.767, 23.657, 0 
       -77.500, 24.900, 0 
       -79.341, 26.743, 0 
       -79.889, 26.794, 0 
       -79.987, 27.193, 0 
       -80.058, 27.476, 0 
       -80.128, 27.604, 0 
       -80.269, 27.939, 0 
       -80.452, 28.414, 0 
       -80.508, 28.659, 0 
       -80.589, 28.744, 0 
      </coordinates> 
     </LineString> 
     </Placemark> 
    </Document> 
</kml> 

ответ

1

Это распространенная ошибка. KML не может иметь пробелов в кортежах {longitude, latitude, heightitude}, иначе это приведет к тому, что каждое значение будет интерпретироваться как долгота с отсутствующим значением широты и высоты. Спецификация KML строго определена в определении, а пробел используется для разделения каждого кортежа. В KML Reference указано, что «не содержат пробелов внутри кортежа».

KML, описывается следующим образом:

<coordinates> 
     -70.900, -27.117, 0 
     -72.800, -29.600, 0 
     ... 
    </coordinates> 

пробельных фактически очерчивает координат кортежи так «-70.900» становится один кортеж, где долгота -70, широта 0, а высота над уровнем моря 0. Все точки будет назначена широта 0 и появится как линия на экваторе. Эта «линия» интерпретируется как это:

<coordinates> 
    -70.900,0,0 
    -27.117,0,0 
    0,0,0 
    -72.8,0,0 
    -29.6,0,0 
    0,0,0 
    ... 
    </coordinates> 

Эта проблема описана более подробно в KML Errata.

Чтобы исправить, необходимо удалить пробелы в каждом наборе координат:

<coordinates> 
     -70.900,-27.117,0 
     -72.800,-29.600,0 
     ... 
    </coordinates> 
+0

Спасибо наиболее любезно JasonM1. –

 Смежные вопросы

  • Нет связанных вопросов^_^