OpenStreetMap.ru

В общем правило для mod rewrite и скрипт на php написал. Теперь вот думаю, как лучше быть, брать из базы те города что уже есть на openstreetmap.org или сделать возможность добавлять произвольные?

Вот из гислаба такой запрос

select name,place_name,ST_X(ST_Centroid(way)),ST_Y(ST_Centroid(way))
from osm_polygon where (name is not null or place_name is not null) and place='city';

возвращает 262 города. А такой

select name,place_name,ST_X(ST_Centroid(way)),ST_Y(ST_Centroid(way))
from osm_polygon where (name is not null or place_name is not null) and (place='city' or place='town');

уже 1178. Сколько нам всё-таки надо?

Теоретически ничто не мешает туда впихать city+town+village со всеми alt_name и name:en.

Имеем мы 65158 точек city/town/village во всей территории покрытия гислаба. Сойдёт?

А сколько из них имеет уникальные имена? В одной Воронежской области сел Александровское, насколько я знаю, несколько…

Сделать “Мне повезёт”, как у гугла

Ну я думал сделать страничку с поиском. Имя города - ключ, он впринципе произвольный.
Т.е. чтоб было можно сгенерить ссылку вида openstreetmap.ru/go/Бобровка (Свердловская обл.)
Отсутсвие строгой проверки - конечно не очень хорошо, но прежде всего сервис будет востребован (если еще конечно будет) технически грамотными специалистами.

а что у гугла значит эта кнопка? я, например, до сих пор не знаю… )

Лично я бы сделал по максимуму - вынес в табличку все, что по статусу выше пгт, причем вне зависимости от степени нарисованности (и вообще присутствия) в ОСМ. То есть просто по координатам, например, из GNS или Википедии. Если есть у нас город - хорошо, нет - люди увидят, что его надо нарисовать.

Вопрос дублирования названий решить можно а) ip-геолокацией до уровня региона и б) сначала страничкой со списком всех найденных мест, а уже потом картой.
В самом хитром случае эта страничка может представлять собой

село Бобровка (Свердловская область)
OpenLayers-карта этого места

село Бобровка (Самарская область)
OpenLayers-карта этого места
и т.д.

Переход на первый результат поиска

Ну я как думал: openstreetmap.ru/go/Бобровка если в списке есть такое место (координаты + зум) - не задавая вопросов переходим, если нет - ищем (через номинатим или по локальной выгрузке), предлагаем варианты, выбираем нужный вариант, правим смещение зум - сохраняем.

Соответсвенно нужно вам сформировать ссылку на бобровку - проверили есть ли запись openstreetmap.ru/go/Бобровка если есть и не совпадает с нужным - ввели openstreetmap.ru/go/Бобровка (Свердловская обл.) получили список бобровок - сохранили координаты и зум и в следующий раз по строке penstreetmap.ru/go/Бобровка (Свердловская обл.) попадаете куда хотели. Естественно записями типа openstreetmap.ru/go/Бобровка если их много, злоупотреблять не стоит, о чем планирую написать крупными буквами на страничке добавления привязки. Можно конечно и жестко такую бяку запретить, но все-же я исхожу из положения разумности человека формирующего ссылку.

В целом с подходом согласен.

Alexandr Zeinalov, нужны все населенные пункты, place=‘city’ or place=‘town’ or place=‘hamlet’ в общем по максимуму. А лучше доступ с openstreetmap.ru до бд на гислабе, чтобы не заморачиваться с обновлениями. (Быстродействие не важно т.к. поиск местоположения происходит 1 раз, а не на каждый переход по ссылке).

Подправьте ссылку для карт Навитела.
Переехало на http://osm.fmesh.org/navitel.html

dkiselev
если надо - могу сделать дёргание с гислаба.

Надо будет, но попозжа, вначале у себя сделаю.

Поправил.

А тема http://forum.openstreetmap.org/viewtopic.php?id=11004 «Стартовая страница Российского OSM» про то же, что и эта? Или я что-то не уловил?

Да, про то же. Просто openstreetmap.ru был давно, а “Стартовую страницу” из него решили сделать только после январской встречи.

Что-то «Стартовая страница Российского OSM» не работает