2013-05-15 2 views
0

Полный кодом, который иллюстрирует эту проблему можно посмотреть на Web Page showing problemПроблемы с ограничивающей determinination использованием geoXML3 и записи MultiGeometry

кода, который в основном работает, принимает параметр запроса ищет пару FusionTables для соответствующих записей и масштабирования карту в пределах выбранной записи. Проблема возникает для подмножества записей, где она только увеличивает часть некоторых записей (не отображает весь выбор). Я сузил это до тех записей, где возвращенный kml (генерируемый из охвата ГИС) состоит из записи MultiGeometry. Вычисленные оценки отображаются только для последней строки в записи.

Вот раздел из файла zoom.js, который генерирует неполные оценки

if (geoXml.docs[0].gpolylines.length > 0) { 
    geoXml.docs[0].gpolylines[0].setMap(null);       
    if (i==0) var bounds = geoXml.docs[0].gpolylines[0].bounds; 
    else bounds.union(geoXml.docs[0].gpolylines[0].bounds); 
} else if (geoXml.docs[0].gpolygons.length > 0) {  

и это KML для переменной geoXml, которое разобрано.

"<MultiGeometry><LineString><coordinates>-80.234377,26.310641 -80.234312,26.31064 
-80.233513,26.310636 -80.231503,26.310625 -80.231344,26.310624 -80.22946,26.310609 
-80.227565,26.310592 -80.227448,26.310591 -80.225461,26.310576 -80.223426,26.310559 
-80.222466,26.31055 -80.221437,26.310541 -80.220498,26.310533 -80.219425,26.310523 
-80.217414,26.310504 -80.215964,26.310491 -80.21545,26.310485 -80.213368,26.310462 
-80.21138,26.310436 -80.209695,26.310414 -80.20963,26.310416 -80.209566,26.310418 
-80.209501,26.310421 -80.209436,26.310425 -80.209371,26.310429 -80.209306,26.310433 
-80.209241,26.310438 -80.209176,26.310443 -80.209112,26.310449 -80.209047,26.310456 
-80.208983,26.310463 -80.208918,26.31047 -80.208854,26.310478 -80.20879,26.310486 
-80.208726,26.310496 -80.208661,26.310505 -80.208597,26.310515 -80.208533,26.310526 
-80.208469,26.310537 -80.208406,26.310549 -80.208342,26.310561 -80.208279,26.310573 
-80.208215,26.310586 -80.208172,26.310596</coordinates></LineString> 
<LineString><coordinates>-80.204375,26.311873 -80.204235,26.311902 -80.204171,26.311909 
-80.204106,26.311916 -80.204041,26.311922 -80.203977,26.311928 -80.203912,26.311934 
-80.203848,26.31194 -80.203783,26.311945 -80.203718,26.311951 -80.203653,26.311956 
-80.203588,26.311961 -80.203524,26.311966 -80.203459,26.311971 -80.203394,26.311975 
-80.203329,26.311979 -80.203264,26.311983 -80.2032,26.311987 -80.203135,26.311991 
-80.20307,26.311994 -80.203005,26.311998 -80.20294,26.312 -80.202875,26.312003 
-80.20281,26.312006 -80.202745,26.312009 -80.20268,26.312011 -80.202615,26.312013 
-80.20255,26.312014 -80.202485,26.312016 
-80.202388,26.312019</coordinates></LineString> 
<LineString><coordinates>-80.199882,26.312008 -80.199148,26.312003</coordinates></LineString> 
<LineString><coordinates>-80.202369,26.312023 -80.200655,26.312014</coordinates></LineString> 
</MultiGeometry>" 

Является ли проблема один с моим кодом необходимости обрабатывать каждую отдельную строку строки, и если да, то может кто-то момент мне пример того, как сделать это? Или это ошибка в библиотеке geoXML3?

ответ

1

Похоже, ошибка в geoxml3:

http://www.geocodezip.com/geoxml3_test/v3_geoxml3_kmltest_linktoB.html?filename=http://www.geocodezip.com/geoxml3_test/SO_KML_MultiGeometryLineString.kml

Не похоже, чтобы быть правильно вычисления оценок для нескольких <LineString> тегов в <MultiGeometry>.

Создал issue в разделе трекера.

Исправлена ​​ошибка.

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