Клуб API Карт

Вставка меток зарегистрированными пользователями сайта

muschinsky.vitaly
25 марта 2013, 10:17

Возникла необходимость в возможности вставки меток на карту зарегистрированными позьзователями сайта. Например: посетитель сайта может отметить на карте места и участки с разбитым дорожным покрытием, участки с затрудненым движением, места с наиболее внимательным контролем скоростного режима. Как это может быть реализовано? Спасибо.

2 комментария
Подписаться на комментарии к посту

Вот тут посмотрите статьи на эту тему http://ymapsapi.ya.ru/replies.xml?item_no=917

Задача как-то немного обобщенно сформулирована :)

ну а вообще что-то вроде

проверяем является ли пользователь зарегистрированным и какие у него полномочия (через переменные сессии, например). предположим, выставляете какой-то флаг

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

Сама обработка клика по карте достточно проста

myMap.events.add('click', function (e) {

//проверяем полномочия, если не зарегистрирован, то выходим из функции. если свой - работаем дальше
var coords = e.get('coordPosition'); // в  coord получаем координаты щелчка

myProps = {
                   hintContent: "подсказка",
                   balloonContentFooter: "описание"
                },
                myOptions = {
                            preset: "twirl#redStretchyIcon" // задаем тип иконки
                };
var myPlacemark = new ymaps.Placemark(coords,myProps,  myOptions); //создаем метку с заданными настройками

//если надо - делаем запрос к БД на добавление объекта

myMap.geoobjects.add(myPlacemark); //добавляем метку непосредственно на карту
});

 

вообще удобнее, добавлять метки не сразу на карту, а сначала в коллекцию геообъектов (GeoObjectArray или GeoobjectCollection), тогда с объектами потом удобнее манипулировать, можно искать их по именам или идентификаторам

Вобщем, почитайте про коллекции, про свойство объекта  Placemark. Реализовать можно много чего, так что надо конкретизировать ситуацию