Здравствуйте.
2 недели назад начала изучать документацию API Карт Яндекса т. к. это требуется мне для курсового проекта. Суть всей моей работы заключается в том, что мне нужно нанести на карту кадастровые границы участков города и при клике на участок должна выводиться информация о нём, а вся эта информация хранится в моей БД. Границы нанести на карту я смогла с помощью тайлов, также получилось сделать так, чтобы при клике на любое место карты показывались координаты этой точки. Теперь думаю над тем, как выводить информацию из свой БД на карту. Я думаю, что можно это осуществить так:
1: при клике на участок считываются координаты и преобразуются в адрес, затем отправляется запрос на мой сервер, где в БД ищется совпадение по полученному адресу и, если такой адрес имеется, то отправляет данные на страницу и отображается через Балун;
2: создать активный слой, чтобы при нажатии на участок открывался Балун и в него помещалась информация из БД. Но как этот способ осуществить пока не понимаю и мне он кажется более сложным, чем 1 вариант.
Поэтому, хочу спросить Вас о том, какой вариант будет проще осуществить?
Есть ли ещё какие-нибудь варианты реализации?
Использую API 1.x
Доброе утро! Есть необходимость использование тепловых карт для нанесения точек на карту(Метки не годятся нужна более интерактивная видимость) К сожалению глубоких навыков программирования( а если быть точнее то их практически вообще нет). Прошу хоть капельку помочь разобраться в ситуации:
С помощью песочницы, и многих примеров сумел сделать так что на карте отображаются точки полученные с помощью гео-координат (пример как это выглядит сейчас https://yadi.sk/i/mgiG0jOlirpEb )
Вопрос следующий: могу ли я добавить к точке объем( возможно это более глубокая заливка точки градиентом - чем больше число тем глубже цвет) и если да то с помощью какого оператора это можно сделать?
Нужно вывести тысячу полигонов. Каким образом это лучше сделать? Для точек есть кластер и ObjectManager, а как быть с полигонами?
Добрый вечер!
Подскажите, пожалуйста, направьте а путь решения пробелмы.
Нуобходимосоздать карту с зонами покрытия сотовй связи, и раскраской карты области по численностью нселения.
На подобее карты покрытия мтс - http://www.vologda.mts.ru
Что читать, куда бежать?
Заранее спасибо.
Мне нужно реализовать отображение одного либо другого набора меток на карте в записимости от масштаба.
При большом масштабе будет показана часть из 32k меток, для меньших масштабов будут показываться другие, заранее просчитанные усредненные метки (кластеризатор с таким количеством не справляется).
Для реализации я решил отслеживать изменение масштаба. Но так как перестраивание кластеризатора с таким количеством точек тяжелая операция (4-15 сек в зависимости от масштаба) я подумал, что можно убирать его с карты перед изменением масштаба, а после, если нужно, добавлять обратно, если масштаб не подходит - отображать другой кластеризатор с меньшим количеством меток.
Но вот никак не понятно из документации как это сделать. Пробовал что-то достать из actionbegin - вообще не понял как он работает, а по сути мне всего лишь нужно узнать что именно за действие началось.
Короче, нужно либо сделать то, что я придумал, либо как-то иначе оптимизировать кластеризатор. Как вариант - у каждой метки есть один параметр, по которому при zoom < 12 их можно склеивать вместе, не рассчитывая больше ничего, и желательно кешировать эту информацию (это если можно переопределить механизм определения того, как кластеризатор определяет какие точки склеивать; в документации этого не сказано, реверс инжиниринт пока не делал на предмет такой возможности).
Добрый день, а есть ли какая-нибудь возможность открыть балун при использовании активных областей ? Эмулировать клик по хотспоту, имея координаты, например.
Задача состоит в том чтобы отобразить порядка 6000 меток.
Наболее быстрый вариант активные области. Нужно как то сгенерировать тайлы и описание к ним. Сейчас переписываю либу https://github.com/shmel210/hsTiler
В старой версии API 1.x был параметр base http://api.yandex.ru/maps
В новой найти его немогу http://api.yandex.ru/maps
YMaps.Hotspots.Loader.onLoad("myLayer-290-174-9",{
"objects":[{
"data":{
"metaDataProperty":{
"AnyMetaData":{
"address":"",
"priority":0.001316
}},
"name":"",
"description":"",
"Point":{"pos":"24.03765 49.841572"}
},
"style":"myLayer#style0",
"base":new YMaps.GeoPoint(24.03765,49.841572),
"geometry":[[-7,-28,21,1]],
"priority":0.001316},
]});
myLayer_1073_707_11({"data": {"type": "FeatureCollection","features": [
{"type":"Feature",
"properties":{
"balloonContentHeader":"",
"balloonContentBody":"",
"HotspotMetaData":{
"id":1394091143,
"RenderedGeometry":{
"type":"Rectangle",
"coordinates":[[-7,-28],[21,1]]
}}
}}
]}});
Поясните подробнее что не так тут. В доке мало описано это все.
Попробовал реализовать подсветку, вот что из этого вышло.
Полигон добавляетсяна карту но начинает мерцать(добавляться и удаляться), если указатель находится на нём.
Видимо при создании полигона генерируется mouseleave для слоя. Набросал пример для песочницы. Как с это побороть?
Здравствуйте, возникла проблема.
Есть прозрачные тайлы построенные с в проекции Spherical Mercator. Есть ObjectSource, который отдает для хотспотов информацию по тайлам относительно той же проекции.
При на карте в итоге получается, что слой хотспотов и картиночный не соответвуют дргу другу.
Пробовал утановить 'projection':ymaps.projection.sphericalMercator и для самой карты, но к каким-либо видимым результатам это не привело. В документации возможности указания типа проекции для самого хотспота и или ресурса я не нашел. Возникает вопрос как можно заставить барть хотспоты в нужной проекции сразу, либо как конвертировать запрос на стороне сервера?
Есть задача - вывод на карту объектов по определенной выборке. Объектов пара тысяч. Карта серьезно тормозит, даже с кластерами. Вариант с активными областями не подходит - нагенерить тайлы на все варианты выборки точно не получится. В связи с этим возникло пара вопросов:
1) Есть еще какое-либо решение?
2) Поможет ли вариант с асинхронной подгрузкой из yml файлов по тайлам. Если да, то как её реализовать?
Здравствуйте, коллеги!
Пытаемся сделать хитрую карту на базе Яндекса и прикрутить ее к WordPress.
1. Пошли по пути такого решения http://www.otrip.ru/2009/
2. Но уперлись в конфликт с одним из требований. Нужен результат ближе к такому http://www.esosedi.ru/#la
Подскажите пожалуйста в какой стек технологий нырнуть если есть задача со следующими условиями:
1. Вывод фотографий - ок для обоих вариантов
2. Скрытие некоторых фотографий при смене масштаба. В п.1 - фото начинают накладываться друг на друга. В п.2 - просто часть скрывается.
3. Если открыт балун. Тап по карте его скрывает. В п.1 - нет такого, в п.2 - есть.
Соответственно хотелось бы понять, какие методы используются на есоседях, в свете заданных условий.
Спасибо!
В общем такое дело..
Есть шорткод на вордпрессе, который выводит карту, метками на которой являются миниатюры записей. Координаты тоже указываются в записях. Контентом балуна является контент записей. Так же есть тип записи карты, в котором задаются параметры карты, такие как тип(спутник, гибрид и т.д), размеры карты и др. Плюс тут же указываются рубрики, записи которых нужно вывести на карте.
Так вот нужно реализовать.. эти самые активные области. Уже два дня сижу разглядываю документацию и ничего не могу понять. Может кто-нибудь объяснить, как мне реализовать эти области и с чего начать. Как описать эти тайлы, не могу понять вообще их нужно резать или просто указать, так сказать сетку, по которой карта будет делиться и резать ничео не надо. В общем хелп плиз. =)
Здравствуйте! Ситуация такая: На карте в масштабе от 1 до 11 отображаются активные области, в масштабе 12 и больше - отображаются метки.
Столкнулись с проблемой: при загрузке сайта, в консоли разработчика видно, как грузятся тайлы 11 масштаба, затем меняем на карте масштаб на 12 - срабатывает функция отображения меток, но слой активных областей пытается загрузить тайлы для 12 масштаба, а у нас такие просто не предусмотрены, в результате чего сервер возвращает ошибку 404.
Внешне проблем нет - 11 масштаб - видны активные области, 12 - видны метки. Но то, что при изменении масштаба скрипт посылает запросы на сервер - не очень хорошо.
Как объяснить скрипту, когда создаем слой активных областей, что он должен работать только в заданном диапазоне масштаба?
И второй вопрос (чтобы не начинать отдельную тему):
При просмотре загрузки карты в консоли разработчика видно, что тайлы активных областей и самой карты кешируются браузером и при обновлении страниц грузятся из кеша браузера. А вот файл спрайта, из которого подставляем изображения для меток постоянно загружаются с сервера. Что нужно сделать, чтобы спрайт также кешировался браузером?
А можно ли реализовать подсветку контура при наведени мышки на активную область? В документации подобного не нашел.
Есть некие объекты, данные о которых храняться в БД, самое важное у них есть: latitude и longitude в формате Yandex карты.
Подскажите как можно модернизировать пример от Yandex: Добавление на карту объектов, попадающих в область видимости, нюанс такой что таких объектов много (более 10 тыс) и конечно же неправильно делать выборку всех объектов и помещать на карту и выводить на карту с помощью searchInside.
Подскажите можно ли реализовать такое, когда открывается карта, то из базы, делается выборка лишь тех объектов, которые могут отобразится на данном участке карты? При перемещении делается опять же выборка новых объектов, которые могут отобразится на этом участке карты. Конечно было неплохо понимать какие участи загружены для кеширования данных.
Как я понимаю тут гланый вопрос у меня такой: что у меня открыта карта, я определяю координаты открытого участка карты ну или если надо маштаб. И делаю запрос к БД,
Вот собственно, что за запрос должен быть, как мне сделать выборку все точек которые попадают на видимую часть карты.
Заранее всем спасибо, за помощь
На карте города имеется более 2000 точек, которые нужно соединить линиями, согласно информации из базы данных о связях между точками (у одной точки может быть несколько связей).
Т.о. должен получится граф, на подобии того, как выглядят подсвеченные улицы в Яндекс-панорамах.
Можно ли это реализовать с помощью API Яндекс.Карт не в ущерб производительности? Ведь сам по себе вывод 2000 точек без использования кластеризации или активных областей вызывает жуткие тормоза.
Или может кто-нибудь сможет рассказать, как реализована подсветка улиц в Яндекс-панорамах?
Как лучше организовать и возможно ли это? Или лучше разбить на группы эти метки и показывать только некоторые?
И снова здравствуйте!=)
столкнулся с одной проблемой, тут http://clubs.ya.ru/mapsap
но возникла сопутствующая проблема суть:
1. ждем поиск, появляются объекты
2. один или более объектов находятся на самом верху активной области
3. кликаем на точку, чтобы вызвать балун
4. балун открывается, карта смещается, меняется активная область, балун закрывается, крайне неприятно...
головой понимаю, что нужно следить за событием открытия балуна и запрещать перезагружать данные на карте, пока не сработало событие закрытия балуна, но как следить за этими событиями?
Ставил на сайты карты, данные в которых брались динамически, из базы - но возникла ситуация, когда нужно вывести несколько сотен таких меток с балунами. Полез в Активные области http://api.yandex.ru/maps
Может кто-нибудь помочь, тыкнув носом в пример, который можно было бы скачать себе и как следует поизменять? Единственный пример в АПИ, который я нашел, скачать себя не позволил - то есть, он работает но меток не создает.
Или я вообще не в ту сторону иду? Нужно много меток на карте одновременно, обычным способом система разрешает не больше 75...
Приветствую, уважаемое сообщество!
На карте сразу вываливается минимум 5 тысяч точек с кастомными баллунами. Начальная загрузка такой карты происходит довольно медленно (загрузка базы данных на сервере + нагрузка сервера яндекса с картами). В данный момент используется кластеризация точек.
Активные области будут работать быстрее кластера и стоит ли заморачиваться?
P.S. Починал АПИ активных областей - тяжело воспринимаю. Как делать тайлы из карты, куда их сохранять, как делать точку в качестве геометрии активной области? Буду весьма признателен за подсказки.