Клуб API Карт

Карта и Polyline

indie0916
12 мая 2010, 13:05

Добрый день,


использую Яндекс Карты вместе с ломаными (Polyline). Когда точек не много - все отлично, перемещение карты и изменения масштаба использовать довольно комфортно. Но если точек будет больше 5000, то страничка заметно тормозит. Что я делаю не так (код можно посмотреть в исходника страницы http://gtracker.ru/?map=yandex)? Какие есть ограничения использования ломаных?


ps

При использовании Google Maps все работает хорошо, не зависимо от количества точек на карте.



7 комментариев
Подписаться на комментарии к посту
Вы можете закодировать точки ломаной, тогда тормозить не будет.  Могу также предложить создать YMapsML-файл с ломаной и отобразить его на карте. В этом случае кодирование вершин ломаной будет производиться автоматически.
А будет ли возможность добавлять точки к такой ломаной?
Да, можно. Однако, нужно учитывать, что новые точки будут добавляться без уровней.
А как вы добавляете ломаную на карту на наши карты и как на карты google? Можете привести фрагменты кода?


Я обернул работу с картой и ломаной в свои классы.



Исходник гугла:
http://gtracker.ru/page/google_map.js



Яндекс:

http://gtracker.ru/page/yandex_map.js 


Метод Track.append

идея не верна изначально.
наверное у вас хороший комп, и используете вы не ИЕ и даже возможно не FF
Единственный браузер который "с полпинка" может отрисовать 5к точек, и не тормозить при драге\зуме - Хром, и немного новая опера.
ИЕ с некой верстноятью зависнет намертво.

Что можно сделать:
 1. отрендерить кривую на сервере и отдать клиенту как картинку( Якарты вообще это как-то умеют для тех браузеров которые не умеют рисовать сами( кто подскажет как заставить делать картинку насильно? ))
 2. рисовать линии несколькими сегментами, так чтобы при отображении только части пути - невидимая часть не тормозила работу
 2.1 производить, в том числе и жестко, упрощение полилинии
 
2. рисовать линии несколькими сегментами, так чтобы при отображении только части пути - невидимая часть не тормозила работу



кмк, ломаная от гугла именно так и делает.




всем спасибо за ответы