Клуб API Карт

март 2010
Уровни оверлеев
bacardirus
1 марта 2010, 11:08
Подскажите, пожалуйста, как изменять уровни наложения оверлеев друг на друга? Нашел в справочнике по программному интерфейсу пункт про ZIndex, но так и не понял как изменять этот параметр. У меня на карте есть несколько многоугольников, один из них в режиме редактирования. И он всегда находится ниже остальных многоугольников. А мне надо наоборот чтобы он был всегда выше остальных.
8 комментариев
API 1.x
Как правильно создать PlaceMark к геоточке, полученной от геокодера?
vtk81
1 марта 2010, 15:11

Здравствуйте! Я геокодирою массив адресов points и вывожу на карту метки с соответствующими подписями. Возникла такая проблема: периодически содержимое подписи не соответствует геометке на карте.


        var points = ["ул.Предславинская, 19, Киев","пр-т Победы, 65, Киев","ул.Б.Хмельницкого, 41, Киев","ул.Фрунзе, 104-А, Киев"];
        var names = ["ПЕЧЕРСКИЙ ФИЛИАЛ","ФИЛИАЛ РАСЧЕТНЫЙ ЦЕНТР","КИЕВСКОЕ ГЛАВНОЕ РЕГИОНАЛЬНОЕ УПРАВЛЕНИЕ","Центральное отделение ФИЛИАЛА КИЕВСИТИ"];
        YMaps.jQuery(function () {
            var map = new YMaps.Map(YMaps.jQuery("#YMapsID")[0]);
            for (var i = 0, l = points.length; i < l; i++) {
                var geocoder = new YMaps.Geocoder(points[i]);
                var pos = 0;
                YMaps.Events.observe(geocoder, geocoder.Events.Load, function (geocoder) {
                    if (geocoder.length()) {
                        var placemark = new YMaps.Placemark(geocoder.get(0).getGeoPoint());
                        placemark.name = names[pos];
                        placemark.description = points[pos];
                        map.addOverlay(placemark);
                        map.setBounds(geocoder.get(0).getBounds());
                        map.setZoom(10);
                        pos++;
                    }
                });
            }
            map.addControl(new YMaps.Zoom());
        });


Подскажите пожалуйста решение проблемы, заранее благодарен.


3 комментария
геокодирование
Условия использования
ilovebw
1 марта 2010, 15:55

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

Есть желание реализовать следующий платный сервис. Поступает звонок от клиента, мы определяем местоположение звонящего (необязательно через GPS), и оказываем ему услугу типа поиск ближайшей гостинницы/ресторана и описания пути прохождения до этого объекта. Имеем ли мы право использовать API Яндекс.Карт?

Спасибо.

7 комментариев
API 1.x
память
adlertaxi
1 марта 2010, 21:23

 если организовывать длительную сессию без перезагрузки страницы,с динамической загрузкой данных, как чистить память?

14 комментариев
API 1.x
Хотели бы Вы использовать API Яндекс.Карт для ActionScript 3.0?
Илья Смирнов
1 марта 2010, 22:13
Считаю, что на данный момент сервис Яндекс.Карты является доминирующим среди всех реализованных сервисов карт. Особенно для крупных городов таких как Москва и Санкт-Петербург. Что говорить...одна "Панорама улиц" чего стоит. Мне кажется реализация API Яндекс.Карт для ActionScript 3.0 является просто необходимым шагом для связывания карт и Flex, AIR приложений. Флешеры давайте вставим Яндекс.Карты в свои приложения!

P.S. Просьба тем, кто не имеет отношение к флешу - не голосовать. Спасибо.

P.P.S. Вот, что сделал Google для Flash

1) http://code.google.com/intl/ru/apis/maps/documentation/flash/tutorial-flexbuilder.html#AIRDevelopment
2) https://docs.google.com/present/view?skipauth=true&id=dggjrx3s_2477ch6p74c3
16 комментариев
API 1.x
Есть ли возможность обработки YMapsML на php?
mybiz.pl
2 марта 2010, 11:13

Есть ли возможность обработки YMapsML на php? Как допустим для xml? Дело в том, что мне нужно получить на пхп координаты точек для многих объектов в массиве. В ответ от геокодера я получаю YMapsML - могу ли я его парсить как xml? Или мне нужно записывать ответ в текстовый файл?


Ести ли примера геокодинга на пхп?

4 комментария
API 1.x
возможен ли просмотр улиц на пользовательских яндекс картах?
shkur85
2 марта 2010, 18:25

Привет всем!

Подскажите плз, возможен ли просмотр улиц на пользовательских яндекс картах?

16 комментариев
API 1.x
Как закрыть балун
softshape2
3 марта 2010, 12:01

Всем привет,


в балуне я использую HTML текст, среди прочего в нем есть ссылка, при клике на которой балун должен закрыться. Как это сделать из JavaScript'а ?

7 комментариев
API 1.x
Не вижу подписи к точке и линии
julja
4 марта 2010, 11:07

Привет! Разместила карту на сайте. Всё было ОК! Решила переделать страницу и заменила ссылку на карту, заново, сделав её на странице Яндекса. Теперь код для вставки только в одно место вставляется? - раньше надо было ещё в head вставлять. Карта отображается, но при нажатии на точку нет подписи, окошечко есть, а подписи нет, тоже и слинией "прохода к точке". Окошечко появляется, а подписи нет. Посмотрела во всех браузерах, везде одинаково. Подскажите, плиз, что не так сделала. Спасибо. Юлиана.

Сайт http://doctorlensnn.ru/


3 комментария
API 1.x
Как добавить на карту пробки ?
JSid
4 марта 2010, 14:35

Подскажите пожалуста способ добавить на карту пробки. Существует ли готовое API, где можно с ним ознакомиться. 

1 комментарий
API 1.x
Поправьте код плиз
Георгий
4 марта 2010, 19:39

Есть следующий код.

так как пока еще не успел разобраться в апи составил из примеров в документации.

 

 YMaps.jQuery(function () {

            var map = new YMaps.Map(YMaps.jQuery("#YMapsID")[0]),

                destinations = {

                    'Офис 1' : new YMaps.GeoPoint(30.343851, 59.928005),

                    'Офис 2' : new YMaps.GeoPoint(30.327654, 59.934758),

    'Офис 3' : new YMaps.GeoPoint(30.314341, 59.867466),

                };

var placemark = new YMaps.Placemark(new YMaps.GeoPoint(30.343851, 59.928005));

placemark.name = "<div align='center'>Офис 1</div>";

placemark.description = "<b>адрес:</b><br>ул.Рубинштейна дом 34";

map.addOverlay(placemark); 


var placemark = new YMaps.Placemark(new YMaps.GeoPoint(30.327654, 59.934758));

placemark.name = "<div align='center'>Офис 2</div>";

placemark.description = "<b>адрес:</b><br>Невский проспект дом 29";

map.addOverlay(placemark); 


var placemark = new YMaps.Placemark(new YMaps.GeoPoint(30.314341, 59.867466));

placemark.name = "<div align='center'>Офис 3</div>";

placemark.description = "<b>адрес:</b><br>площадь Чернышевского дом 10";

map.addOverlay(placemark); 


 map.setCenter(new YMaps.GeoPoint(30.343851, 59.928005), 14); //центрируем карту не на точке

 

 map.addControl(new YMaps.ToolBar()); //  увеличение, линейка, рука

 map.addControl(new YMaps.Zoom());//зум


            var menuContainer = YMaps.jQuery('#mapMenu');

            // Генерирование меню

            for (var item in destinations) {

                // Используем замыкание, чтобы работать с конкретным свойством объекта

                (function (title, geoPoint) {

                    // Создаем ссылку, обернутую в тег <p> для более приятного визуального восприятия

                    YMaps.jQuery("<li><a href=\"#\">" + item + "</'a></li>")

                        .find('a')

                            // Создаем обработчик по щелчку на ссылке

                            .bind('click', function () {            

                                // Подчеркиваем все ссылки

                                menuContainer.find('a').css('text-decoration', 'underline');

                                // Кроме той, на которую щелкнули

                                YMaps.jQuery(this).css('text-decoration', 'none');

                                // Перемещаем карту

                                map.panTo(geoPoint, {flying: 1});

                                return false;

                            })

                            .end()

                        // Записываем элемент списка в список

                        .appendTo(menuContainer);

                })(item, destinations[item])

            }

        });

 


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

2. И еще поправить код так что бы при клике на ссылку, карта не только перемещалась в указанную точку, но и открывался балун принадлежащей это точке.


Спасибо заранее!


7 комментариев
API 1.x
Как подгружать только те метки, что находятся в видимой области ? А невидимые удалить.
svch04
5 марта 2010, 01:08

Доброй ночи, уважаемые гуру !

Вот каким вопросом я задался:

Есть много-много точек для показа на карте.

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

я так понимаю, что надо сюда передать параметры с координатами

            var ml = new YMaps.YMapsML( 'http://страница_с_метками?map1=...&map2=...' );
            map.addOverlay(ml);

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

т.е. надо отловить событие перемещения и там что-то прописать.

- и последнее. Как при клике на метку показать html-контент с id этой метки ? Т.е. http://страница_с_контентом?id=...

Буду очень признателен.

Большое спасибо.


С уважением, Сергей.

2 комментария
API 1.x
Посмотрите спецы, проблема с балуном.
salon-shtory
5 марта 2010, 01:19

На странице с некоторого момента балун вытянулся и хвостом проткнул часть карты, думал на старнице карту что-то перекрывает скопировал на другую страницу тоже самое. Раньше отображалось нормально. подскажите , что не так.

<script type="text/javascript">

    // Создает обработчик события window.onLoad

    YMaps.jQuery(function () {

        // Создает экземпляр карты и привязывает его к созданному контейнеру

        var map = new YMaps.Map(YMaps.jQuery("#YMapsID")[0]);

            

        // Устанавливает начальные параметры отображения карты: центр карты и коэффициент масштабирования

       		map.setCenter(new YMaps.GeoPoint(37.556819,55.798743), 15);
			var placemark = new YMaps.Placemark(new YMaps.GeoPoint(37.556819,55.798745));
            placemark.name = "Салон штор";
            placemark.description = "Золотая нить";
            map.addOverlay(placemark);

            // Открываем балун
            placemark.openBalloon();
 			map.addControl(new YMaps.TypeControl());
            map.addControl(new YMaps.ToolBar());
            map.addControl(new YMaps.Zoom());
            map.addControl(new YMaps.ScaleLine());
      


    })

</script>
<div id="YMapsID" style="width:450px;height:350px; marging-left:10px;"></div>
адрес страницы  http://salon-shtory.ru/kaknasnaiti.htm
2 комментария
API 1.x
Проблема в Опера\Google Chrome
voland
5 марта 2010, 01:42

на страничке контактов в Опере и Хроме показывается только 1 карта, при этом в дебаггинге видна ошибка в скрипте _ymaps, хотел плотно потестить через FireBug, но как ни странно такой ошибки нет. И в FireFox все ок - работают все 3 карты.

И кстати, не нашел информации о текущих версиях API, есть возможность проверить код на старых версиях API?

7 комментариев
API 1.x
Resize to overlay
softshape2
5 марта 2010, 12:29

Всем привет,

как это будет по-русски.... даже не знаю. В общем есть оверлей, в который добавлено несколько меток -

map.addOverlay(placemark);

Как масшабировать и центрировать карту так, чтобы на ней отображались все метки одновременно ? При этом масштаб должен быть, конечно, максимально возможным (иначе задача решается шкалой равной глобусу :)

2 комментария
API 1.x
Как получить площадь многоугольника и видимой области карты?
Сергей
5 марта 2010, 16:58

Сообственно в заголовке темы вопрос... Подскажите плз...

8 комментариев
API 1.x
Добрый день!
irina-lermanova
5 марта 2010, 19:07

Год назад получила ключ на www.mysite.net.ua, карты работают на этом домене. Но на домене mysite.net.ua карты не работают и выдается сообщение "неправильный ключ". Есть ли какое-то решение кроме редиректа дабы исправить положение дел с mysite.net.ua ? Заранее благодарна.

2 комментария
API 1.x
Не полная загрузка карты
spectorius
5 марта 2010, 20:41

Привет. Пожалуйста, помогитерешить трабл. Спасибо.


в шапке

<script src="http://api-maps.yandex.ru/1.1.6/?loadByRequire=1&key=ACNr....jrvg=="></script>


потом аяксом jQuery в вкладку подгружаю примерно след код:


<script type="text/javascript">

function map_init()
{ldelim}
    $.yamap = new YMaps.Map( $("#YMapsID")[0] );
    $.yamap.setCenter(new YMaps.GeoPoint({$town_longitude},{$town_latitude}), 12, YMaps.MapType.MAP);
{rdelim}

YMaps.load(map_init);

</script>

<div id="YMapsID" style="height:600px"></div>


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

Еще интересно, что карта просынается (загружаются все тайлы) если открыть Firebug.

5 комментариев
API 1.x
Мы победили!
ANVictor2008
6 марта 2010, 01:04

1:00 ночи, не спится, хотел сказать спасибо разработчикам Яндекс.Карт, за их работу и сообщить, что проект Откуда и куда.ру, сделанный с использованием Яндекс.Карт, был награжден премией Собаки.ря в номинации "Оригинальный проект".

Ребята это и ваша заслуга, спасибо!

5 комментариев
API 1.x
Помогите разобраться с onPointDragging
Andrey.Cjkjvfnby
6 марта 2010, 01:59

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

onPointDragging  

Обработчик, вызываемый при перетаскивании существующих вершин, а также при создании новых вершин, посредством перетаскивания промежуточных.

Принимает два аргумента: - массив всех видимых точек графической фигуры в пикселях карты, включающий в себя добавляемую/редактируемую точку; - индекс добавляемой/изменяемой точки в переданном массиве.

Возвращает откорректированную добавляемую/изменяемую точку в пикселях карты.


1. В описании очень смущает последняя строка. Я не представляю как можно использовать обработчик не определив его. Как в коде я могу воспользоваться тем что он возвращает?


На данный момент имеется такой код:

line =  new YMaps.Polyline();
line.addPoint(map.getCenter());
map.addOverlay(line);
line.startEditing();
line.setEditingOptions({
       onPointDragging: function(points,index){ }       
});


2. При использовании на фаекфоксе в консоли фаербага  появляются ошибки на каждое событие,

но при этом  points и  index генерирубтся и  с ними можно работать.  Не подскажите, с чем могут быть связанны эти ошибки?


3. Каким способом лучше решать такую задачу:

Есть редактируемая Полилиния, на некоторых точках стоят метки.

При перетаскивании точки с меткой, метка перетаскивается вместе с точкой (или по окончанию перетаскивания точки метка прыгает на новое место)


Заранее благодарен.





10 комментариев
API 1.x