Клуб API Карт

центрирование GPX

yegor-l
25 февраля 2010, 14:12

Подскажите, по какому принципу центрируется карта при отображении GPX?

Пытаюсь наладить отображение треков и получается вот что:


рисуются и карта центрируется (и прыгает при этом)

http://www.eeyore.aroundspb.ru/track/test.php?q=1,2,3,4,5


рисуются но карта не центрируется

http://www.eeyore.aroundspb.ru/track/test.php?q=1,4

и никак не могу найти зависимость - когда центрируется, когда нет. и в какой момент -- такое чуйство что при добавлении коллекцию. хотя с чего бы??


            var map = new YMaps.Map(YMaps.jQuery("#YMapsID")[0]);
            map.setCenter(new YMaps.GeoPoint(30, 60), 12);
            var gCollection = new YMaps.GeoObjectCollection();
        for (var i = 0; i < track.length; i++){
            gpx = new YMaps.GPX("http://www.eeyore.aroundspb.ru/track/getgpx.php?q="+track[i]);
            gCollection.add(gpx);
        }    
            map.addOverlay(gCollection);
 
3 комментария
Подписаться на комментарии к посту
создавайте GPX так:
gpx = new YMaps.GPX("http://www.eeyore.aroundspb.ru/track/getgpx.php?q="+track[i], { viewAutoApply: false });
Центровка происходит если в GPX треке есть тег bounds. Как отключить центровку вам уже подсказали. Сам же процесс центровки происходит после получения данных, причем если вы загружаете подряд несколько треков, никогда за ранее нельзя будет сказать какой bounds применится последним.
Спсибо.
придётся анализировать теги и самому устанавливать bounds.