Клуб API Карт

Получить самый дальний тайл

toivonens
28 июля 2009, 19:45

Можно ли как-то, зная zoom, получить адрес тайла с самыми большими x и y для этого масштаба?

9 комментариев
Подписаться на комментарии к посту
не понял вопроса что значит самый большой x и y? может ты опишешь чего хочешь, а я подскажу как?
 Я написала письмо в рассылку
Копирую письмо:

Посоветуйте, пожалуйста, как решить задачу через API карт.
Мне необходимо получить адреса всех тайлов, которые находятся в данный момент в видимой области. Способ найден (кстати, правильный ли?), но есть проблемы.

Сейчас я делаю так: определяю тайловые координаты левого верхнего и правого нижнего угла. В результате получаются минимальные x и y и максимальные x и y. Этого хватает, чтобы заполнить матрицу видимых в данный момент тайлов.
Проблема возникает, если в видимую область попадает стык последнего и первого тайлов.
-----------------------------------------------
| x = 25 | x = 26 | x = 27 | x = 0 | x = 1 | x = 2 |
...
-----------------------------------------------

Для того, чтобы в данном случае заполнить матрицу, необходимо знать адрес тайла максимально удалённого от нуля (при данном zoom). (в нарисованном примере - x = 27). Каким образом можно получить этот адрес?

И вообще, может существует какой-либо более правильный способ получить адреса всех видимых в данный момент тайлов? Спасибо.
максимальный номер тайла всегда 2 в степени масштаба, т.е. 0 - 1, 1 - 2, 2 - 4, 3 - 8
О, спасибо
А так получается,что мир квадратный?
точно!
Спасибо
Ну и сразу скажу, что переопределять метод load() для тайла (как ты мне подсказывал раньше) теперь не подходит. Так как теперь надо собирать все видимые тайлы в пачку и делать один запрос.