Клуб API Карт

Как достучаться до <gml:Point>

Пост в архиве.

Как достучаться до  <gml:Point>

 

"Курю" YMapsML. Как мне взять точки ?

Подскажите пожалуйста.

Вот так, все равно 0 в массиве показывает

template = new YMaps.Template( '

$[name]
Описание: $[metaDataProperty.AnyMetaData.desc|не задан]
Дата: $[metaDataProperty.AnyMetaData.date|не задан]
Категория: $[metaDataProperty.AnyMetaData.category|не задан]
Изображение:
URL: $[metaDataProperty.AnyMetaData.url|не задан]

'); s_3 = new YMaps.Style(
s_3.balloonContentStyle = new YMaps.BalloonContentStyle(template);
YMaps.Styles.add("atm#room", s_3);
// Открываем категорию
YMaps.jQuery(".cat").toggle(function(){
var clickId = this.id;
cat[clickId] = new YMaps.YMapsML('http://testb58.1gb.ru/by_category.php?id='+clickId

YMaps.Events.observe(cat[clickId], cat[clickId].Events.Load, function() {
var obj = this.filter(function (obj) {
for(var i = 0; i < obj.length; i++) {
geoPoints.push(obj[i].getGeoPoint()
}
}
alert(geoPoints.length)

}

 

АПДЕЙТ:

Прислушался к совету: 

map.addOverlay(cat[clickId]

obj = cat[clickId]

YMaps.Events.observe(obj, obj.Events.Load, function(obj) { 

obj.forEach(function(obj1, objIndex, obj){

alert(obj1.getGeoPoint()) 

}) 

} 

Теперь вопрос, как пробежаться по элементам группы? вытащить точки? вот так не работает.

 

НОВЫЙ АПДЕЙТ:

YMaps.Events.observe(obj, obj.Events.Load, function() {

var obj = this.filter(function (obj) { 

obj.forEach(function(obj1, objIndex, obj){

alert(obj.get(objIndex).getGeoPoint())

})

}

}

Вот так работает!Ура!)

2 комментария
Sergey Konstantinov
28 января 2016, 05:13

YMapsML грузится асинхронно, поэтому массив geoPoints пуст - он заполнится, когда придут данные.

так, ну к  obj.name я могу достучаться...

а как тогда из группы cat[clickId] вытащить точки?

я тоже не могу достучаться туда :(