Клуб API Карт

Как превратить кардинаты в адрес буквами

bratyxa-servis
15 января 2013, 17:57

Привет всем у меня вопрос как можно превратить кардинаты в адрес буквами. Вот у меня есть кардинаты которые передаюьтся на php и вот там я эти кардинаты заношу в бд и хотелось бы сразу занести буквенное значение области и региона, что бы потом использовать эти данные в моем фильтре данных. Может есть более лучший вариан буду очень рад ответам. Зарание большое спасибо

 

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

Это называется обратное геокодирование

http://api.yandex.ru/maps/doc/jsapi/2.x/ref/reference/geocode.xml

Просто передаешь координаты в функцию геокоде

вот смотрите у меня есть вот такая часть кода

   
                //Сохраняем данные из формы       
                 $('#menu button[type="submit"]').click(function () {
                        var
                            stylePlacemark = 'twirl#blueIcon';   
                   
                    //Передаем параметры метки скрипту addmetki.php для записи в базу данных
                    $("#res").load("http://stail.ru/skins/tpl/order/addmetki.php", {lat : coords[0].toPrecision(6), lon : coords[1].toPrecision(6)});
                   
                    //Добавляем метку на карту       
                    myMap.geoObjects.add(myPlacemark);   

    как я аонимаю coords[0].toPrecision(6) - это первая кордината, coords[1].toPrecision(6) -это вторая кордината

теперь мне надо поместить этои кординаты во второй пример вот его часть

geometry: {
                     type: "Point",
                     coordinates: [coords[0].toPrecision(6), coords[1].toPrecision(6)]
                 }

правильно ли я сделал просто я плохо знаю js а так методом ты ка очень долго. очень жду ответа



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

 

Спасибо я уже сделал это через http запрос и в php достал данные. Вы мне, если можете, помогите вывести на экран ближайшие крупные города от точки, у меня просто совсем плохо с js. Помогите пожалуйста.

Вам нужно вывести ближайщие крупные города метками? Ведь все таки это карта, и как на любой карте там видны города и прочее. Плюс по какому критерию отсеивать большой город или нет?

Не совсем. У меня пользователь выберает на карте одну точку. Вот он выбрал, а я снизу карты пишу адресс этой точки. Я хочу сделать условие если был выбран поселок я вывожу на экран ближайшие крупные города что бы он смог выбрать подходящий.

Понимаете я, например, не могу написать на js, А в php это выглядело бы так. У меня есть некий массив, ключ - город, а значение - кардинаты. Пользователь выбрал точку. По точке определили город или поселк. Потом проверяем есть ли ключ с названием этого горада. Если нет, выводим на экран пять ближайших городов. Дело в том что в php с кардинатами я, по крайней мере, не слышал что бы работали, а здесь все есть для этого, но как с ними работать я не знаю.

сделай массив городов так же с координатами, прогони его через геокодер чтобы задать координаты, определи круг в котором будут показываться координаты т.е. +/- [x,y] к координатам точки которую нашел пользователь, если она не вошла в список городов. После чего, во время поиска определяй попал ли поисковый запрос в список городов, если не попал бери координаты запроса и циклично ищи какие города попадают в твое условие $coords+/-[x,y] и выводи попавшие в условие города метками. Может быть топорно - но это пока что в голову пришло самое простое.