Клуб API Карт

Не работает слой, добавленный на карту

russocart
12 ноября 2010, 22:49

Всем привет!

Я начинающий Яндекс.Картограф и пытаюсь разобраться в том, как добавить свой слой на карту. Сделал всё, как написано в примерах (воспользовался скриптом для подготовки тайлов), а подготовленный слой почему-то не отображается на итоговой карте. Вот: http://russocart.narod.ru/example.html

Буду очень благодарен, если укажете мне на ошибку.

Спасибо!

13 комментариев
Подписаться на комментарии к посту
аксеситься http://russocart.narod.ru/js/10/tile-619-321.js
он 404
где у вас тайлы лежат на самом деле?
js-файлы лежат в указанной папке.
png-файлы - в http://russocart.narod.ru/png/10/

Но имена файлов с тайлами отличаются. Скрипт мне создал такие файлы:
tile-618-511.js
tile-618-512.js
tile-619-511.js
tile-619-512.js
tile-618-511.png
tile-618-512.png
tile-619-511.png
tile-619-512.png

Не понимаю, почему y-координата тайла отличается. Я ничего не менял в алгоритме формирования урла тайла после работы скрипта.
И вообще, я этот алгоритм не понимаю.
Вот он:
            function processTemplate (template, tile, zoom) {
                return template.replace(/%x/ig, tile.getX()).replace(/%y/ig, tile.getY()).replace(/%z/ig, zoom);
            }

            var ds = new YMaps.TileDataSource('png/%z/tile-%x-%y.png', 1, 0);
            ds.getTileUrl = function (tileNumber, zoom) {
                return processTemplate(
                    YMaps.TileDataSource.prototype.getTileUrl.call(this, tileNumber, zoom),
                    tileNumber,
                    zoom
                );
            };

И что значит вот это: .replace(/%x/ig, tile.getX())  
Что такое  /ig в этом выражении? getX вычисляет координату основываясь на текущем тайле от Яндекса?

Сорри за, возможно, глупые вопросы.
так , еще раз - файлы какраз НЕ ЛЕЖАТ в http://russocart.narod.ru/js/10/tile-619-321.js
браузер их тама, вместе с сервером, не находит

.replace(/%x/ig, tile.getX())    - заменяет в шаблоне адреса %x на X координату.
ig == i-caseinsencive, g - все замены
Ок, я переименовал файлы.
Теперь они там лежат, и браузер их там находит. Но чё-то на карте всё равно нифига слой не отображается. :-(
буду плакать.
человечище - ну поставьте себе ну любой дебагер
http://russocart.narod.ru/png/10/tile-616-320.png - тоже 404
o_O
А какой посоветуете? Раньше никогда не пользовался.
B-)
Для FF чё-нибудь хорошее есть? )
Для фф - firebug
Я добился появления слоя. Спасибо!
Но похоже, что у меня неправильно функционирует скрипт twirl'а.  Почему он присваивает тайлам координаты 612 и 512 вместо 618 и 321 (зум  10)? В YMapsML-файле я указал точку в пределах Москвы  (37.601393,55.809697). Откуда может возникать 512?? На других зумах то  же самое - огромный сдвиг в координате Y.
Не подскажете, с чем это может быть связано и  как исправить?
у него тама есть функции по переводу координат в пиксели на заданом зуме.
размер тайла - 256 пикселей.. садитесь и считайте :)
Покажите YMapsML.
Такое ощущение, что широта везде 0.
Либо долгота и широта указаны через запятую (в ymapsml координаты разделяются пробелом).
Всё, я нашёл свою ошибку! Я разделял координаты в YMapsML-файле запятой, а надо было пробелом. Теперь всё заработало.
Огромное спасибо!