2013-03-16 3 views
0

Я хочу, чтобы накладывать слои на карту, используя geoxml3. Я изо всех сил пытался понять, что может быть неправильным, поскольку он отлично подходит для очков, но он ничего не отображает, когда дело доходит до полигона и linestring. Хотя кажется, что он проходит парсер geoxml3, поскольку масштабирование корректируется в соответствии с данными, но ничего не отображается.Анализ с помощью geoxml3

Все три версии geoxml3 Я пробовал и все тот же результат.

Ниже приведен файл kml файла linestring. Имейте в виду, что файл отлично работает на картах Google и Google Earth.

<?xml version="1.0" encoding="utf-8"?> 
<kml xmlns="http://www.opengis.net/kml/2.2"> 
    <Document> 
    <Name>route</Name> 
    <Placemark> 
     <Style> 
     <LineStyle> 
      <color>ff0000ff</color> 
     </LineStyle> 
     </Style> 
     <LineString> 
     <coordinates>14.5077989214673,35.8935010311257 14.5077613878199,35.8935045284545 14.5077103878199,35.8935219284544 14.5076594878199,35.8935697284545 14.5076594878199,35.8935697284545 14.506821184327,35.894410303289 14.5066562791164,35.8947140342037 </coordinates> 
     </LineString> 
    </Placemark> 
    </Document> 
</kml> 

Ниже приведено описание метода javascript для обработки разбора.

function displayKml() { 
    geo = new geoXML3.parser({ 
     map: map, 
     zoom: true, 
     singleInfoWindow: true   
    }); 
    geo.parse("Uploads/" + document.getElementById('<%= text2.ClientID %>').value); 
} 

Любая помощь приветствуется, поскольку я уже три дня пытаюсь понять ее.

ответ

1

<LineString> в вашем KML не имеет ширину

<Style> 
    <LineStyle> 
     <color>ff0000ff</color> 
    </LineStyle> 
    </Style> 

Добавить:

<Style> 
    <LineStyle> 
     <width>1</width> 
     <color>ff0000ff</color> 
    </LineStyle> 
    </Style> 

POLYS филиал geoxml3 в настоящее время не имеет значения по умолчанию для ширины (так она равна нулю , что означает, что вы не можете увидеть его):

POLYS ветвь без ширины: http://www.geocodezip.com/geoxml3_test/v3_geoxml3_kmltest_linktoB.html?filename=http://www.geocodezip.com/geoxml3_test/SO_IT_info_kmlB.xml

POLYS ветвь с шириной: http://www.geocodezip.com/geoxml3_test/v3_geoxml3_kmltest_linktoB.html?filename=http://www.geocodezip.com/geoxml3_test/SO_IT_info_kmlC.xml

КМЗ филиал geoxml3 действительно имеет значение по умолчанию для ширины, что должно было сработать:

КМЗ ветвь с оригинальным KML: http://www.geocodezip.com/geoxml3_test/v3_geoxml3_kmztest_linktoB.html?filename=http://www.geocodezip.com/geoxml3_test/SO_IT_info_kmlB.xml

Opened an issue against geoxml3

Исправлена ​​ошибка (поэтому примеры выше всех работают и больше не отображаются проблемы)

+0

Я думаю, что проблема - это что-то другое, потому что карта масштабируется там, где должна появляться линейная строка, но на карте ничего не отображается. Я действительно не знаю, в чем проблема. @geocodezip –

+0

Полис ветви geoxml3 делал именно то, что в моем примере выше с вашим KML, пока я не портировал обработку «по умолчанию» из ветки kmz. Они оба работают для меня сейчас с вашим KML (ветка kmz всегда работала для меня с вашим KML). – geocodezip

+0

Он работает для меня с кодом, который вы отправили - [пример] (http://www.geocodezip.com/geoxml3_test//v3_simpleMap_geoxml3.html) – geocodezip

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