Помогите разобраться с нестандартным использованием координат в Leaflet

188 views
Skip to first unread message

Sergey

unread,
Jan 17, 2014, 5:57:49 AM1/17/14
to leafl...@googlegroups.com
Приветствую разработчика великолепной библиотеки Leaflet и всех участников сообщества! :-)

Хотелось бы попросить помощи разобраться с возможно нестандартным использованием координат на Leaflet карте.

Хочу использовать Leaflet для отображения custom карты со своим tile генератором. Тайлы генерируются на лету скриптом, в зависимости от того где его планируется отобразить (параментры  {x}, {y}, {z} в URL запросе к скрипту)
Карта планируется быть зуммируемой (от 0 до 10), размером ~16000*16000 тайлов в максимальном зуме, и 16*16 тайлов в минимальном) и на ней необходимо отображать различные объекты, каждый объект в отдельном тайле. 
По сути если тайл размером 64*64 пикселя, то это и есть тот самый квадратный 64*64 объект на карте.
Для каждого объекта (квадрата-тайла) при наведении (клике мышкой) хочу отображать различную информацию, ассоциированную с объектом, путём отправки через AJAX запроса на сервер. Изначально подгружать всю информацию об объектах не хочется в целях оптимизации. 
Проблема в том, что не могу понять как корректно определить координаты тайла, по которому произведён клик. 
По сути ведь каждый тайл при его загрузке с сервера привязывается к координатной сетке {x}, {y}, {z}, так вот эти {x}, {y}, {z} и хотелось бы получить при кликах на карте и передавать их для дальнейшего вызова AJAX запроса для получения сведений об объекте. 
Сейчас же есть возможность получать при клике Latlng координаты точки клика либо же смещение в пикселях относительно левого верхнего угла карты, которые не понятно как связать с координатной сеткой самих тайлов.

И так же хотелось бы узнать потенциальную возможность получить координаты клика относительно самого тайла. Если тайл имеет размеры 64*64, а клик произведён в центр тайла, то как получить ту самую "относительную" координату клика [32, 32] ? 
Ведь зная координаты самого тайла X Y Z и координаты клика внутри тайла X* Y* можно сделать и вовсе универсальную "альтернативную" координатную сетку.

Возможно это и вовсе не проблема и легко всё решаемо, но я раньше никогда не работал ни с какими Maps API, поэтому и возник такой вопрос.

Заранее благодарен за помощь!

С уважением, Сергей.
Reply all
Reply to author
Forward
0 new messages