Клуб API Карт

август 2012
Странное поведение при открытии балуна
w1ldzer0
1 августа 2012, 09:42
Определил layout для балуна через ymaps.templateLayoutFactory.createClass.
Так же переопределил build:
build:function(){
    this.constructor.superclass.build.call(this)
    /*Ищем высоту балуна*/
    var balloonOffset = -parseInt(jQuery(this.getParentElement()).find('.b-simple-balloon-layout').outerHeight());
    var balloon = this.getData().geoObject.balloon
    var geoObject = this.getData().geoObject
    geoObject.options.freeze()
    /*Устанавливаем значение смещения для балуна*/
    geoObject.options.set({
        balloonOffset:[-170,balloonOffset],
    })
}

и странность поведения заключается в том, что свойство balloonOffset срабатывает только после второго открытия балуна, при первом нажатии на метку, оно как будто [0,0]. Как можно это побороть?
1 комментарий
Ошибка с переходом на 2.0.13
Сергей Игоревич
1 августа 2012, 10:50

После обновления, пару дней назад, API карт перестали подгружаться точки на карте. Консоль хрома вываливает

 api-maps.yandex.ru/2.0.13/release/combine.xml?modules=dDgAgNdxe0dzdpfXllngltlqlylkfae5jPjOgjh8h7iaivd1mBmAkmknj2jyiciil9ixiwe8j0imihd2dSd6d9g7g6g8d5g5d0d8dVkYk2kZdXdUd7dYdReFe9l8mfmbindvg1d3fyfwftjIfxmymumzmtmxmveleBedkOgrgMdCmYkxgkhte1nmlNlOlLlMeZeshThRhUnllpmPmNobocowofopnLoodOlwfPeVnnnklulrlzm6nznAdWmhiCj3j4eYe4eSgwiriqipiuisitgcmQgydqfCeQhnhmgimDeXeAhrfBjLekeogFdEeCemjMjKebl7h9lRl5l1lPl4l0h5h4lTl6l2f6f9dZd4efjQjFdyjCdrf5f4f8dukieTklkkkjexomolonf7f3dsjRhihjjejsjmnSnTjxifileWioi2i6i9i8i7e3e7gEfHhEhskNkJg4eydTg3g2eEk0kolKergpeJhKkQgqfeeHgtjwiyibmajBiBigmejAiAieikmdjzizidijmciSiOiRiPiQjaiYiTiXiWiUdPdLdMeIjGdtj1jEjDgBgGeqeugHjvjujqjJfvmwjrhymUkLkygdh2eehFhklmnvnsnrntnunpnoninfnjmOmMoioyoxoBoCoOoPoNoDoEoFoGoYoRoQoSoXoenKodlxfcnqlvnIn8n9oanHnJlsnym5jTj6j5fgfhfigxfZfYj9gsgCgDeahVhWhXhYhNhPhLh0hShZhMfJfNggkHe2fbkGepdweReNgzfDfFfAfEffornVhGnMlYlWlQnQlXl3nPnOlSlZePfLhlh1fsiZgehDdAi0f1kdkckgeUhpoAoHoJfMfQfIfRfKjUjVj8jZdBj7hhhxhbecmIenjkfrjbi3i4i5mkfOkMkIkKlflheKjSkplJfkhdiGhJkRegjcnUmonRmlhzjjjijhmsmnjgmphwjfjtmretmidFdIdGiVdKdNdQmZm1m0m2m3m4fSfzfVlcldlneOgaf2ojcjk6k5c7b4crbUcXapawa6oZcqokohozaeaHbncnbznGnwfon2ovm8nen6n7n5nbm9ncnam7ndhIlDfdghgfkekaeMeLlIgvhOhQe6iDewehejjNh3lVnNh6hoiIkhkfk7oVoToUoWoMfGmFjXfmhChufphghfiKlelai1gYfjflhciNjljomqmmgWjpjddJgUdHjHjWfugok9locQk4azaLc8docCa7cxdcbgcJcHaDbZcmaZo0a8cvcbcagbn4n0c6bLaPbOdnb7aun1aWbYbTmTfTmWk3nZnYmClUfqfnmjliiEkXgPadcEarcybxdma1ajcDaNa2aTccblbocRbVcIc9cfaGaXb6bCdfagbWatcTaocla0cKbfaEotn3b2asbXeDeigLoqmLgSkUgXckdebtaMbMcScNbDavcVbPcUb8bNdjaUc2dbaVaRhqgTb0cObcbjb1cYbEaybFbhaIaCgVgOljlghv&jsonp_prefix=ymaps2_0_13:1

Uncaught #<error>


Причём вываливается не во всём сайте а только в некоторых местах.

Например: http://yamolodoi.ru/usermaps/mainmap.html ошибка есть 

А тут http://yamolodoi.ru/usermaps/view817.html всё гуть

 

Просто в первом случае карта используется на всю мощь с Ajax и прочим а во втором так по мелочи. Как быть?

6 комментариев
Заголовок не указан
Слава Русов
1 августа 2012, 10:54

Здравствуйте!Как назначить hintContent у вэйпоинтов?

6 комментариев
после обновления контролы не позиционируются
nolan23
1 августа 2012, 11:57

Сбиваются в кучу слева вверху.

Пришлось откатиться на 2.0.10

 

map.controls
            .add(new MyMapTypeControl({controller: this, pinable : true, mask: 1, pinned : (parseInt($.cookie("controls")) || 0) & 1}), {right: 390, top: 5 })
            .add(new MyObjTypeControl({controller: this, pinable : true, mask: 2, types: this.getObjectTypes(), pinned : (parseInt($.cookie("controls")) || 0) & 2}), { right: 280, top: 5 })
            .add(new MyFindControl({controller: this}), {left: 60, top: 5})
            .add(new MyHrefControl({controller: this}), {left: 130, top: 5})

 

 

5 комментариев
Размер значков меток — растягивать или нет?
anton-t-platonov
1 августа 2012, 14:06

Если значку метки задать размер (параметр iconImageSize) меньше размера картинки, то вплоть до версии 2.0.11 значки сжимались: http://jsfiddle.net/pP5En/


В последних версиях API значки перестали сжиматься и стали обрезаться: http://jsfiddle.net/m9yKJ/


Это баг, или так теперь всегда будет? Как теперь сжимать размеры значков?


P. S.: где ченджлог минорных версий API 2.0? Всё перерыл, нашел только в блоге посты, последний пост 2.0.9.

6 комментариев
метка,API 2.0
Использование второстепенных улиц при прокладке маршрута
Владимир М.
1 августа 2012, 14:55

При построении маршрута для моего города (Томск) Яндекс старается использовать главные улицы.

1. Иногда это существенно увеличивает расстояние (до 20%)

2. Иногда это не оправдано, так как по второстепенным не просто короче, а можно добраться быстрее, так как на главных улицах города постоянные пробки.

 

Вопрос:

Можно ли как-нибудь при построении маршрута заставить сервер использовать второстепенные улицы?

Какой-нибудь ключ или параметр, например, "по кратчайшему расстоянию" или "по хорошим дорогам"...

Использую API 2.0

4 комментария
маршрутизация,API 2.0
Прямое геокодирование и кластеризация API 2.0
zhuvv35
1 августа 2012, 15:00

Здравствуйте, подскажите, пожалуйста, как мне получить координаты в geocode в API 2.0?

Есть база данных объектов недвижимости, т.е что в городе находятся добавляются по районам, там координаты  заданы заранее, а как быть с объектами которые за городом. Есть название населенного пункта и надо получить только его координаты, чтобы потом добавить в массив объектов по заданному шаблону (балуна) и объединить в кластер.

 

6 комментариев
API 2.0,геокодирование
Заголовок не указан
Слава Русов
1 августа 2012, 15:23

Как сделать фон балуна черным и как запретить вывод балуна с информацией о передвижении по маршруту (направо з-22 3км ) при клике на сам маршрут

Нет комментариев
Память выделяемая под api 2.x больше?
saniarium.saniarium
1 августа 2012, 16:17

Привет!

По одной и той же схеме размещаю одновременно 1500 адресов на карте способами api 1.x и 2.x. В первом случае карта забирает 500 мб, во втором - 1400 мб. Разница лишь в том, что в 2.х цвета у меток разные (в в зависимости от территориальной принадлежности). Такое может быть (нормально)?

11 комментариев
А почему в клубе не выкладывается ченждлог при смене версии ?
Дмитрий Сухоносов
1 августа 2012, 16:51
Очень интересно что изменилось
9 комментариев
Заголовок не указан
Слава Русов
1 августа 2012, 17:40

как из строки содержащей адресс (улицу и дом)определить координаты точки на карте?Спасибо за ответы

1 комментарий
Динамическое обновление карты и содержимого кластеров при удалении/добавлении меток
yusoft
1 августа 2012, 19:59

Всем привет!

 

Нужно сделать что-то аналогичное этому примеру, но с использованием кластеров. Мой вариант работает следующим образом: каждая метка добавляется сразу в несколько категорий (объекты на карте группируются по названию, региону, виду деятельности). При клике по ссылке (например "Москва") с карты должны удаляться или опять добавляться метки, у которых в одной из категорий присутствует этот термин (например, находящиеся в Москве).

 

Код такой (очень упрощенно):

 

$('a').click(function() {

// здесь код, который определяет по какой ссылке кликнули и что нужно сделать (скрыть или показать) с метками из выбранной категории и выполняющий заданное действие с метками

}

 

Для удаления метки с карты я удаляю ее из массива GeoCollectionBounds(), для добавления - добавляю в него.

Это нормально работает, если на карте нет кластеров.

 

При наличии кластеров поступаю так:

clusterer.remove(obj); // удаляю метки из кластера

...

clusterer.add(obj); // добавляю метки в кластер

 

obj - это объект типа IGeoObject

 

Проблемы две:

1. если на карте есть одиночные метки и кластеры, то число объектов в кластерах меняется, а одиночные метки с карты не удаляются

2. если кликнуть по кластеру и после этого кликом по ссылке пытаться удалить/добавить метки - ничего не происходит

 

Что я делаю не так?

 

Заранее благодарен за ответ

 

 

3 комментария
метка,кластеризатор,API 2.0
Меню из списка групп
Ant118126
1 августа 2012, 20:11

Здравствуйте!

Что-то не могу найти в API 2.0 какого-нибудь аналога построения меню из списка групп!

 Вот пример для API 1 

http://api.yandex.ru/maps/doc/jsapi/1.x/examples/mapgroupmenu.html

Такое возможно реализовать в API 2.0?

2 комментария
меню,коллекции
Нарушения контрактов функций
l3-beta2
1 августа 2012, 21:18
Как и обещал вот тут ещё ошибки в свежем API 2.0.13

Рассмотрим код нескольких функций:

    //  ListBox.remove()
    remove: function (listItem) {
        delete this._childWidths[id.get(listItem)];
        this._recalculateSize();
        ListBox.superclass.remove.call(this, listItem);
    },

    //  ToolBar.remove()
    remove: function (button) {
        delete this._childWidths[id.get(button)];
        this._recalculateSize();
        ToolBar.superclass.remove.call(this, button);
    },

CollectionImplementation.prototype = {
    add: function (child) {
        this._parentCollection.add(child);
    },

    remove: function (child) {
        this._parentCollection.remove(child);
    },

    removeAll: function () {
        this._parentCollection.removeAll();
    },

/** @lends LayerCollection.prototype */
imports.util.augment(LayerCollection, imports.Collection, {
    add: function (child) {
        LayerCollection.superclass.add.call(this, child);
        if (typeof child.getZoomRange == 'function') {
            this._zoomRangeObserver.addProvider(child);
        }
        if (typeof child.getCopyrights == 'function') {
            this._copyrightsObserver.addProvider(child);
        }
        if (typeof child.getBrightness == 'function') {
            child.events.add('brightnesschange', this._onChildBrightnessChange, this);
            this._onChildBrightnessChange();
        }
    },

    remove: function (child) {
        LayerCollection.superclass.remove.call(this, child);
        if (typeof child.getZoomRange == 'function') {
            this._zoomRangeObserver.removeProvider(child);
        }
        if (typeof child.getCopyrights == 'function') {
            this._copyrightsObserver.removeProvider(child);
        }
        if (typeof child.getBrightness == 'function') {
            child.events.remove('brightnesschange', this._onChildBrightnessChange, this);
            this._onChildBrightnessChange();
        }
    },

И т.д... Вроде бы всё корректно, что же их объединяет? Читаем пример документации:

remove
{ICollection} remove(object)

Удаляет из коллекции дочерний объект.
Возвращает ссылку на себя.

А на деле получается, что функции ничего не возвращают и вызовы "по цепочке" не срабатывают. Я привёл примеры, которые быстро попались под руку, и всё это реализации ICollection. Для исправления требуется дописать одно-единственное ключевое слово, очень надеюсь на это не уйдёт ещё один месяц :)
9 комментариев
API 2.0
Проблема с подключением
Могилёв Владимир (Акинай Сау)
1 августа 2012, 22:26

Здравствуйте.

У меня возникла проблема. Подключаю:

<script src="http://api-maps.yandex.ru/2.0/?coordorder=longlat&load=package.full&mode=debug&lang=ru-RU" type="text/javascript"></script>

 

<script type="text/javascript" src="js_maps/map_rostov.js"></script>

 

В файле map_rostov.js находится вся карта с отметками. Вопрос: Почему при таком подключении карта не выводится, а при тупой вставке кода на страницу всё нормально?

П.С.  путь к файлу указан корректно и его можно открыть, например в лисе, через исходный код.

 

Заранее спасибо.

1 комментарий
Исчезает информация с отметок после построения маршрута
DMX1988
1 августа 2012, 22:45

строю маршрут

for (var i = 0; i < len; i++) {

                point[i] = markers[i].geometry.getCoordinates(); //Заносим в point геокординаты из маркеров

            }

            //Создание маршрута через заданые точки, point - Список точек которые необходимо посетить

            ymaps.route(point, {

                // Опции маршрутизатора

                mapStateAutoApply: true, // автоматически позиционировать карту

                avoidTrafficJams: true // маршрут с учетом пробок

            }).then(function (router) {

 

                route = router;

                myMap.geoObjects.add(route);

         }, function (error) {

                alert("Возникла ошибка: " + error.message);

            });

        }

После построение вся информация хранящаяся в 

balloonContentHeader и balloonContentBody пропадает

 

9 комментариев
Ya maps - компании по регионам
NMorf
2 августа 2012, 00:54

Вечер добрый, столкнулся с проблемой - с yandex maps нужно реализовать вывод всевозможных компаний по городам(или регионам)
В google maps насколько знаю в такой ситуации используется Google Places в ya maps подобного инструмента не нашел.
Не подкинете инфы по теме?

1 комментарий
Отрисовка большого кол-ва маркеров (over 10k) на карте, через Canvas
Dmitry
2 августа 2012, 02:45

Добрый вечер, коллеги. В фичах нового АПИ нашёл такое описание

В JavaScript API Яндекс.Карт 2.0 для отображения большого числа меток можно использовать современную технологию HTML5 — canvas. Она позволяет показывать десятки тысяч объектов на одной карте без снижения производительности. При использовании canvas браузер воспринимает все ваши метки как одну картинку. Следовательно, карта загружается и работает с такой же скоростью, как если бы у вас был только один маркер.

К сожалению не осилил найти пример или описание того, как это сделать. Помогите пожалуйста с JS примером того, как через Canvas можно вывести точки с произвольными координатами из массива. Поиск по клубу, к сожалению тоже ничего не дал. Заранее спасибо.

P.S. Вывод через кластеризатор групп маркеров - мне не подходит.

 

4 комментария
метка,Canvas,API 2.0
getObjectState
w1ldzer0
2 августа 2012, 07:23
А где можно подробнее почитать по поводу нового метода getObjectState()?
6 комментариев
Ошибка при открытии в ie 8
vkondrovo2012
2 августа 2012, 08:46

 На сайте при открытии карты  в ie 8  выскакивает ошибка и карта не открывается

 

Сведения об ошибке на веб-странице

Агент пользователя: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET4.0C; .NET4.0E; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)
штамп времени: Thu, 2 Aug 2012 05:42:52 UTC


Сообщение: Объект не поддерживает это свойство или метод
Строка: 1
Символ: 54359
Код: 0
URI-код: http://api-maps.yandex.ru/2.0.13/release/combine.xml?modules=dDgAgNdxe0dzdpfXllngltlqlylkfae5jPjOgjh8h7iaivd1mBmAkmknj2jyiciil9ixiwe8j0imihd2dSd6d9g7g6g8d5g5d0d8dVkYk2kZdXdUd7dYdReFe9l8mfmbindvg1d3fyfwftjIfxmymumzmtmxmveleBedkOgrgMdCmYkxgkhte1nmlNlOlLlMeZeshThRhUnllpmPmNobocowofopnLoodOlwfPeVnnnklulrlzm6nznAdWmhiCj3j4eYe4eSgwiriqipiuisitgcmQgydqfCeQhnhmgimDeXeAhrfBjLekeogFdEeCemjMjKebl7h9lRl5l1lPl4l0h5h4lTl6l2f6f9dZd4efjQjFdyjCdrf5f4f8dukieTklkkkjexomolonf7f3dsjRhihjjejsjmnSnTjxifileWioi2i6i9i8i7e3e7gEfHhEhskNkJg4eydTg3g2eEk0kolKergpeJhKkQgqfeeHgtjwiyibmajBiBigmejAiAieikmdjzizidijmciSiOiRiPiQjaiYiTiXiWiUdPdLdMeIjGdtj1jEjDgBgGeqeugHjvjujqjJfvmwjrhymUkLkygdh2eehFhklmnvnsnrntnunpnoninfnjmOmMoioyoxoBoCoOoPoNoDoEoFoGoYoRoQoSoXoenKodlxfcnqlvnIn8n9oanHnJlsnym5jTj6j5fgfhfigxfZfYj9gsgCgDeahVhWhXhYhNhPhLh0hShZhMfJfNggkHe2fbkGepdweReNgzfDfFfAfEffornXnWhGnMlYlWlQnQlXl3nPnOlSlZePfLhlh1fsiZgehDdAi0f1kdkckgeUhpoAoHoJfMfQfIfRfKjUjVj8jZdBj7hhhxhbecmIenjkfrjbi3i4i5mkfOkMkIkKlflheKjSkplJfkhdiGhJkRegjcnUmonRmlhzjjjijhmsmnjgmphwjfjtmretmidFdIdGiVdKdNdQmZm1m0m2m3m4fSfzfVlcldlneOgaf2ojcjk6k5c7b4crbUcXapawa6oZcqokohozaeaHbncnbznEnwfon2ovm8nen6n7n5nbm9ncnam7ndhIlFfdghgfkekaeMeLlIgvhOhQe6iDewehejjNh3lVnNh6hoiIkhkfk8oVoToUoWoMfGmEjXfmhChufphghfiKlelai1gYfjflhciNjljomqmmgWjpjddJgUdHjHjWfugok9locQk4azaLc8docCa7cxdcbgcJcHaDbZcmaZo0a8cvcbcanFgbn4n0c6bLaPbOdnb7aun1aWbYbTmTfTmVmWk3nZnYmClUfqfnmjliiEkVgPadcEarcybxbRcsbIaFctbpbbbrdlaccucZa3b5bBahdkcGcwbibAbqatcTaQdacidiakaAoun3b2asbXeDeigLoqmLmggQkUckdebtaMbMcSc4bebQaBbdbGcMb3bJamcAbva5bShqgTcWcgb9ddcpbwaxbkaScPaaaOgVgOljlghv&jsonp_prefix=ymaps2_0_13


Сообщение: Объект не поддерживает это свойство или метод
Строка: 1
Символ: 1
Код: 0
URI-код: http://api-maps.yandex.ru/2.0.13/release/combine.xml?modules=dDgAgNdxe0dzdpfXllngltlqlylkfae5jPjOgjh8h7iaivd1mBmAkmknj2jyiciil9ixiwe8j0imihd2dSd6d9g7g6g8d5g5d0d8dVkYk2kZdXdUd7dYdReFe9l8mfmbindvg1d3fyfwftjIfxmymumzmtmxmveleBedkOgrgMdCmYkxgkhte1nmlNlOlLlMeZeshThRhUnllpmPmNobocowofopnLoodOlwfPeVnnnklulrlzm6nznAdWmhiCj3j4eYe4eSgwiriqipiuisitgcmQgydqfCeQhnhmgimDeXeAhrfBjLekeogFdEeCemjMjKebl7h9lRl5l1lPl4l0h5h4lTl6l2f6f9dZd4efjQjFdyjCdrf5f4f8dukieTklkkkjexomolonf7f3dsjRhihjjejsjmnSnTjxifileWioi2i6i9i8i7e3e7gEfHhEhskNkJg4eydTg3g2eEk0kolKergpeJhKkQgqfeeHgtjwiyibmajBiBigmejAiAieikmdjzizidijmciSiOiRiPiQjaiYiTiXiWiUdPdLdMeIjGdtj1jEjDgBgGeqeugHjvjujqjJfvmwjrhymUkLkygdh2eehFhklmnvnsnrntnunpnoninfnjmOmMoioyoxoBoCoOoPoNoDoEoFoGoYoRoQoSoXoenKodlxfcnqlvnIn8n9oanHnJlsnym5jTj6j5fgfhfigxfZfYj9gsgCgDeahVhWhXhYhNhPhLh0hShZhMfJfNggkHe2fbkGepdweReNgzfDfFfAfEffornXnWhGnMlYlWlQnQlXl3nPnOlSlZePfLhlh1fsiZgehDdAi0f1kdkckgeUhpoAoHoJfMfQfIfRfKjUjVj8jZdBj7hhhxhbecmIenjkfrjbi3i4i5mkfOkMkIkKlflheKjSkplJfkhdiGhJkRegjcnUmonRmlhzjjjijhmsmnjgmphwjfjtmretmidFdIdGiVdKdNdQmZm1m0m2m3m4fSfzfVlcldlneOgaf2ojcjk6k5c7b4crbUcXapawa6oZcqokohozaeaHbncnbznEnwfon2ovm8nen6n7n5nbm9ncnam7ndhIlFfdghgfkekaeMeLlIgvhOhQe6iDewehejjNh3lVnNh6hoiIkhkfk8oVoToUoWoMfGmEjXfmhChufphghfiKlelai1gYfjflhciNjljomqmmgWjpjddJgUdHjHjWfugok9locQk4azaLc8docCa7cxdcbgcJcHaDbZcmaZo0a8cvcbcanFgbn4n0c6bLaPbOdnb7aun1aWbYbTmTfTmVmWk3nZnYmClUfqfnmjliiEkVgPadcEarcybxbRcsbIaFctbpbbbrdlaccucZa3b5bBahdkcGcwbibAbqatcTaQdacidiakaAoun3b2asbXeDeigLoqmLmggQkUckdebtaMbMcSc4bebQaBbdbGcMb3bJamcAbva5bShqgTcWcgb9ddcpbwaxbkaScPaaaOgVgOljlghv&jsonp_prefix=ymaps2_0_13

 

 

адрес сайта   http://vkondrovo.ru/spravochnik/karta-goroda-kondrovo

9 комментариев