Работа с картами яндекса и определение попадания точки в контур на плоскости.
Обработка приводит пример работы с картами яндекса.
Можно постоить свои области на карте и в последующем использовать их для определения попадания адреса в определенный район.
Расчет попадания точки в область использован из http://habrahabr.ru/post/125356/





Где-то я фрагменты этой обработки уже видел. И «ДекодироватьURL», и особенно функцию «hex»… Автор, не забывай указывать первоисточник, которым пользовался, плиз. 🙂
А так — интересно своей работой с YMapsML.
(1) это не основные особенности и если бы я помнил где их взял :)) я бы конечно указал. Основа создавалась давно, последние изменения — это комплексный анализ. Изначально определение координат было основано на географических схемах 1С, но как показала практика в 1С попадание в область рассчитывается не так как у всех :)). Там область — это окружность в центре фигуры. И если фигуры сложные, то точка оказывается сразу в нескольких областях.
Яндекс карта. допустим я поставил несколько меток, можно ли как-то смасштабировать карту (не руками, а программно), что бы масштаб был максимально увеличен и в тоже время все метки были видны (в границах карты)?
(3) gosizo
Мне кажется, это у же на java нужно писать + yandex maps api.
Вот пример создания карты
+
Установка размеров карты
По сути тебе нужно координаты (левый верх, правый низ) свои найти и передать в setBounds
спасибо за информацию! Не могу сообразить как мне получить: «нужно координаты (левый верх, правый низ)» — у меня только список адресов в текстовом виде (например Москва Шаболовка 38 и т.д) Существует ли функция которая вернет адрес в виде координат ?
В этой обработке же все есть, в поле адрес — набираем адрес, жмем получить координаты.
Другой вариант через java api yandex-а —
PS:хотя в обработке как раз это и используется.
(6) спасибо! Буду пробовать
(6) получить координаты точек получилось, пытаюсь масштабировать — выдает ошибку «Объект не поддерживает свойство или метод getCenter». Пробовал делать так: в скрипт добавил функцию :
function Mashtab(d1,s1,d2,s2) { map.setBounds([[d1,s1], [d2,s2]], { checkZoomRange: true, callback: function(err) { if (err) { // Не удалось показать заданный регион // … } } }); }Показать
в уже сформированную карту с метками передаю параметры масштабирования:
Показать
что я делаю не правильно?
(8) gosizo,
Долгота1 = «74,48290400»;
Широта2 = «55,80956500»;
Долгота2 = «37,71481500»;
В значениях точно должны быть запятые?
НУ и это не ко мне уже, я чесно говоря в java слабо разбираюсь.
Но нужно во первых посмотреть тип объекта — методами которого пользуешься. Может тебе яндекс другой какой то объект возвращает.
Можно ли выделить несколько флажков и передать в 1С их координаты (лучше адрес дома)?
Вышлите пожалуйста на magefred@mail.ru обработку, очень хочется ее потестить
Здравствуйте. По какой-то причине обработка выдает ошибку.
Использую файл
{Форма.Форма(41)}: Ошибка при вызове метода контекста (Прочитать): Ошибка разбора XML: — [6,3] Фатальная ошибка: Expected end of tag ‘hr’ SystemId: Пока Чтение.Прочитать() Цикл по причине: Ошибка разбора XML: — [6,3] Фатальная ошибка: Expected end of tag ‘hr’ SystemId:Показать
В временном файле XML оказалось вот что:
Спасение утопающих, дело рук самих утопающих.
Все дело в том, что Яндекс перешел на защищенное HTTPS соединение.
Для того чтоб обработка корректно сработала необходимо создавать защищенное соединение:
(12) gfoods, Большое спасибо, сам долго мучился, пока не наткнулся на ваш комментарий.