Клуб API Карт

апрель 2014
Карта республики
Serge
1 апреля 2014, 08:53

Добрый день. Начальство поставило задачу - сделать для нашего социального портала республики карту , такую же как эта http://maps.med.cap.ru/Home/MedicalAttention , но без выборки сверху - слева, и чтобы на каждом регионе были наши данные, не подскажете как это можно быстро сделать попроще и скорее..а то нам дали очень краткие сроки, а ява-скрипт у нас тут никто не знает, и овладеть быстро не сможет..

3 комментария
Открыть балун геообъекта
Господин
1 апреля 2014, 11:11

Здравствуйте, пример более точный не могу показать, потому что нету. Представьте есть карта, а с боку в табличке список адресов. На карте через ymaps.Clusterer выводится геообъект setGeoObjectPoint если кликаю на него все прекрасно впринцепе. Задача, кликая по табличке с боку по конкретному адресу выводить балун с инфой этого адреса, т.е принцип тот же, как будто я кликнул по геообъекту. Пока что я это сделал через balloon = map.balloon.open при этом он каждый раз заново создается.

 

Можно ли как то вызвать из вне, нужный балун, а не создавать каждый раз новый? Да и вообще из за этого приходится создавать лишний массив и при клике искать в массиве нужный обьект, и потом создавать новый балун, учитывая что все необходимое уже есть на карте(

 

function setGeoObjectPoint(value) {

        return new ymaps.GeoObject({

            geometry: {type: "Point", coordinates: value.coordinates},

            properties: {

                clusterCaption: value.name,

                balloonContentBody: value.desc+'<br><img src="' + value.photo + '">',

                body: '<img src="' + value.photo + '">',

                date: value.time

            }

        }, {

            balloonContentHeaderLayout: ymaps.templateLayoutFactory.

                    createClass('<div>$[properties.clusterCaption]</div>'),

            balloonContentBodyLayout: ymaps.templateLayoutFactory.

                    createClass('<div>$[properties.balloonContentBody]</div>'),

            balloonContentFooterLayout: ymaps.templateLayoutFactory.

                    createClass('<i>$[properties.date]</i>')

        });

    }

 

5 комментариев
кластеризатор,API 2.0,балун
Как задать зум при прямом геокодировании?
Nik Anonimus
1 апреля 2014, 12:40

Господа, подскажите начинающему. Как задать зум при прямом геокодировании?

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

пример : http://jsfiddle.net/yL7SV/     

метка найдена, но какой это дом - уже не разглядеть....

2 комментария
API 2.0,геокодирование
Высота балуна и кластеризация
Господин
1 апреля 2014, 12:58

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

 

1 комментарий
кластеризатор,API 2.0,балун
Расчет маршрута до городов Крыма
Anton Sivogrivov
1 апреля 2014, 14:15

Всем привет.

API подключается так http://api-maps.yandex.ru/2.0-stable/?load=package.full&lang=ru-RU. Дело в том, что при расчете маршрута например с такими входными данными:

Россия, Ростовская область, Ростов-на-Дону - Россия, Республика Крым, Ялта - маршрут прокладывается не правильно.

 

Статус Крыма на картах еще не поменялся ? :)

4 комментария
маршрутизация,API 2.0
removeFromMap(myMap) не срабатывает!
spiritabsolute
1 апреля 2014, 14:26

Почему то не срабатывает метод removeFromMap(myMap). Удаление меток с карты не происходит. Подскажите какую нибудь альтернативу этому методу.

Версия api 2.0. Карта добавляется вот таким образом http://jsfiddle.net/rvPrS/8/

В 73 строчке удаления не происходит. Изначально объекты на карту приходят в xml . Возможно причина в этом?

20 комментариев
geoQuery,API 2.0,YMapsML
Открыть балун
Господин
1 апреля 2014, 16:11

Здравствуйте, код работает ок. Однако стоит переместить карту из видимости кластера как балун перестает появляться, а было бы здорово чтобы при клике карта скролилась на нужный объект и открывался балун. 

function init() {

    // Создаем класте и добавляем элементы

    GeoObjects[0] = statMap.setGeoObjectPoint({...});

 

    clusterer = new ymaps.Clusterer({

        clusterDisableClickZoom: false,

        clusterBalloonHeight: 360

    });

    clusterer.add(GeoObjects);

    map.geoObjects.add(clusterer);

    

    // После клика ищем терущий эелемент и открываем его балун

    var ID = 1;

    var current = findObjectById(ID);

    var geoObjectState = clusterer.getObjectState(current);

    geoObjectState.cluster.state.set('activeObject', current);

    geoObjectState.cluster.balloon.open();

}

 

// поиск нужного геообъекта

findObjectById = function(id) {

    var i = 0, group;

    while (group = GeoObjects[i++]) {

        if (group.properties.get('ID') === id) {

            return group;

        }

    }

    return null;

}

 

// Создаем геообъект

function setGeoObjectPoint(value) {

    return new ymaps.GeoObject({

        geometry: {type: "Point", coordinates: value.coordinates},

        properties: {

            ID: value.ID,

            clusterCaption: value.address,

            balloonContentBody: value.details + '<div><img src="' + value.photo + '"></div>',

            body: '<img src="' + value.photo + '">',

            fullname: value.fullname,

            date: value.time

        }

    }, {

        balloonContentHeaderLayout: ymaps.templateLayoutFactory.

                createClass('<div>$[properties.clusterCaption]</div>'),

        balloonContentBodyLayout: ymaps.templateLayoutFactory.

                createClass('$[properties.ID] <div>$[properties.balloonContentBody]</div>'),

        balloonContentFooterLayout: ymaps.templateLayoutFactory.

                createClass('<i>$[properties.fullname]</i>'

                        + '<i>$[properties.date]</i>')

    });

}

 

5 комментариев
кластеризатор,API 2.0,балун
метки на карте
a1212121.1
1 апреля 2014, 17:56

подскажите пожалуйста, метки на карте могут ставиться только из джавыскрипт, из клиента?

со стороны сервера (на php) ставить метки на карту нельзя?

 

условно говоря вопрос некой безопасности...

1 комментарий
Странно стал прокладываться маршрут по заданным точкам
Виталий Невесенко
1 апреля 2014, 18:41

Добрый день. Пользуемся картами для прокладки маршрутов по координатным точкам уже почти пол-года, но что-то сломалось с 27.03.14 при построении маршрута на карте. Стали появляться какие-то странные "рукава" в маршрутах. (см. приложенные рисунки) Там на карте расставлены нумерованные WayPoints, но появились отклонения, заезды и развороты в непонятных точках. При этом расчетное расстояние удваивается или утраивается от реального. Ниже привожу код функции построения маршрута (API 2.0). В параметры функции передается строка геокоординатами типа: [[50.033964096,36.191507997],[49.960706956,36.02344593],[49.977502422,35.945109213]]

Подскажите, где еще копать? Как починить маршрутизацию? Может появились еще какие-то опции при построении маршрута, которые не описаны в документации по API 2.0? Логист сходит с ума. :)

function calcRoute(options){
ymaps.route(options, {
mapStateAutoApply: true,
avoidTrafficJams: false
}).then(
function (router) {myMap.geoObjects.add(router);},
function (error) {alert("Возникла ошибка: " + error.message);});
}

 

12 комментариев
маршрутизация,API 2.0
Зачем нам нужны 404 странички полнотекстовые в отсутсвующих тайлах?
Алексей Yarrr!
1 апреля 2014, 18:57

Добрый день, комьюнити.

 

Прошло несколько лет, а 404-ые ошибки в тайлах http://vec01.maps.yandex.net/tiles?l=map&v=4.14.7&x=4194304&y=4194304&z=23&lang=ru_RU и ныне там.

Я уж не говорю про кол-во трафика, которое, возможно, за зря генерируется, но почему не отдавать нормальный 204 код для таких тайлов? Почему 404?

6 комментариев
тайлы,API 2.0
Рисование стрелок поверх ломаной
Удалённый пользователь
2 апреля 2014, 10:14

И опять к этому вопросу. Есть на данный момент "легальный" способ нанести направление движения на трек? Вопрос поднимался в прошлом году и в позапрошлом. Но примера так и нет для v2.x.

5 комментариев
стрелки,API 2.0,ломаная
Яндекс карта с поиском магазинов по городам
Роман
2 апреля 2014, 12:22

Необходимо реализовать

Карту яндекс+тороговые точки+Города Росии

При выборе города Саратов, карта перегружается и показываются магазины в этом городе

Например http://ostin.com/ru/ru/stores/ ,при выборе города Курган показываются 2 точки 

5 комментариев
API 2.0,поиск организаций
Можно ли узнать к какому району принадлежит улица?
Артём Ершов
2 апреля 2014, 12:29

В Я.Картах город разбит на несколько районов. Есть ли возможность узнать к какому району принадлежит конкретная улица?

судя по ответу геокодера такой возможности нет, но вдруг?..)
5 комментариев
геокодирование
Вопрос по использованию Яндекс.Карт в iOS приложении
mr.koww
2 апреля 2014, 12:45

Добрый день Уважаемые! Библиотеку yandexMapKit к проекту прикрутил и все замечательно работает! Но есть задача - найти длину маршрута от устройства до заданной точки (читать - "между двумя координатами"). Кто-нибудь сталкивался? Данный Kit позволяет найти расстояние по элипсоиде Земли (кратчайший), а нужно именно маршрут по автомобильным дорогам! В каком направлении хотя бы копать?

Заранее, спасибо!

1 комментарий
iOS,MapKit
Использование собственной карты в модуле для Joomla. Обучающее видео
a.chebotareov
2 апреля 2014, 13:56
Использование собственной карты в модуле для Joomla. Обучающее видео

Модули для CMS отлично подходят тем, кто хочет использовать API, но не умеет программировать, а функциональности конструктора карт уже недостаточно. С помощью модуля Zh YandexMap для CMS Joomla можно, например, создавать свои собственные карты. Это могут быть схемы помещений, карты вымышленных миров или исторические карты. Как сделать такую карту и разместить ее у себя на сайте подробно рассказано в специальном обучающем видео, которое было опубликованно в блоге «Занимательная веб-картография». Для тех, кто не знаком с принципом работы модуля можно посмотреть обучающее видео о модуле Zh YandexMap.

Напоминаем, что в разделе модули для CMS на сайте API есть модули и для других популярных CMS: 1С-Битрикс, Drupal, NetCat и других.Обращаем ваше внимание, что все перечисленные модули разработаны сторонними компаниями или людьми. 

Скорее всего нам известны не все существующие модули. Если вы нашли плагин, которого нет в нашей базе, напишите о нем в клубе разработчиков или на нашей странице в Facebook. Мы ознакомимся с ним и, возможно, добавим в список.

Нет комментариев
видео,Joomla,API 2.0,модули
Все балуны смещены на 1 расстояние
jslby
2 апреля 2014, 17:06

Собственно сабж. Просто приведу пример:

Вот мой сайт: http://kpkinvest.ru/kontakty (кликните по "г. Волжский, пр-т. Ленина, д. 46", он самый первый)

А теперь где реально находится этот адресс: http://goo.gl/kiA53r

 

Если посмотрите по второй ссылке в нижний левый угол, то увидите область, где стоит метка с первой ссылки. Мне кажется это не нормально. Если нужен код, посмотрите исходный на первом сайте. Я уже не знаю куда думать...

 

Спасибо большое за помощь!

2 комментария
API 2.0,балун,CSS
ZoomRangeChange
mastrelelik
2 апреля 2014, 17:40

    YMaps.Events.observe(map, map.Events.ZoomRangeChange, function (map, obj) {
        alert("1")
    });

 

Можно ли использовать ZoomRangeChange для отслеживания нажатия на линейку зума?

Сейчас сообщение выдается только при изменении типа карты. При нажатии + и - или выбора на линейке зума режима "город" сообщение не выдается.

2 комментария
масштаб,события,API 1.x
panTo не работает в событии balloonopen
ssaxap
2 апреля 2014, 18:32

Всем доброго времени суток!

Использую кастомные балуны и хочу чтобы при открытии балуна карта плавно центрировалась на координатах метки.

Помогите разобраться никак не пойму почему panTo не работает в событии balloonopen, юзаю вот так:

 

 

myMap.geoObjects.events.add([

    'balloonopen'

], function (e) {

    var geoObject = e.get('target');

    myMap.panTo(geoObject.geometry.getCoordinates(), {

        delay: 0,

        callback: function () {

            alert('oO');

        }

    });

});

 

 

Алерт срабатывает но карта не едет. =(



Вот пример

2 комментария
события,API 2.0,балун
Мои карты
frescopizza
3 апреля 2014, 15:47

Добрый день!

Можно ли использовать "Мои карты" (НЕ конструктор карт) для размещения своей карты на сайте (не просто ссылка, а саму карту со своими метками и т. д.)?

16 комментариев
maps.yandex.ru
Выполнить код после инициализации карты
spiritabsolute
3 апреля 2014, 17:43

Привет! Подскажите, как выполнить код после инициализации карты.

Написал вот такой код

var visibleObject = myobjects.searchInside(myMap);

if(visibleObject.getLength()==0) {

    myMap.setZoom(6);

}

Он находит объекты в видимой области карты, и изменяет зум, если объектов нет. Он выполняется только после того как карта создана, например по клику.

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

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