Экспорт: привязка улицы к городу

Хочу экспортировать улицы города для отображения их на своей карте (google map + yandex map).
Никак не могу понять: можно как-то привязать улицу к населенному пункту?

По коду КЛАДРа?

И еще по хорошему должен быть (может быть)) тег is_in. В котором для улицы и пишется название НП.
Эх, когда же мы продвинем у себя схему wildMan’a. (Я всё поглядываю на тот его черновик и всё не соберусь с духом двинуть этом направлении).

В Беларуси схема развёрнута и работает, простенький наивный браузер можно посмотреть на http://osm.komzpa.net/stat/latest/addr/79842.html :slight_smile:

А откуда в Беларуси карту импортировали, кто-нибудь знает? Давно интересно. Или неужели все руками нарисовали?

А почему бы и нет? Страна не такая уж и большая. :slight_smile:

Да не похоже как-то карта на “живую”. Все очень четко - только дороги, реки и границы НП + на ихнем форуме кто-то написал, что стерли и залили заново…
Имена хайвеев очень странные “~[0x02]Р…”. Заливал похоже wildman…

Улица привязывается к городу, если попадает внутрь полигона города! :slight_smile:
Это основное и самое простое правило, все остальные альтернативные варианты ненадёжны.
Я это уже выстрадал, когда в конвертере адресацию делал.

КЛАДР неплох, но это только в России, он завязан на бота и чужую базу.
is_in слишком нестрогий, если он где и есть, то пишут туда ерунду.
Релейшены - слишком геморно для поддержки

Кстати, в JOSM последнее время очень серьезно переработали редактор отношений. Конечно с обеспечением целостности еще есть куда работать, но редактировать уже легче становится.

Одним релейшеном привязать улицу к городу всё равно не получится, чисто из-за ограничений размера.
А делать иерархию из вложенных релейшенов - это на любителя :slight_smile:

Не подскажите название тэгов для поиска этого полигона? По каким словам искать в .xml?
А то файл большой, не могу найти этот полигон города. Хотя, может его там и нет. :frowning:

place=city (или town)
place_name=Название
если его нет, то надо добавить :slight_smile:

вот, кстати, что в FAQ-е пишут: http://wiki.openstreetmap.org/wiki/FAQ#What_makes_a_road_belong_to_a_city.3F

Такое в Xml есть, но полигон не указан. :frowning:

так что придется наверное по КЛАДР ориентироваться.

Простите, что значит “полигон не указан”?

Проверка на попадание точек линий в полигон делается в десять строчек. Ну и немножко повозиться с восстановлением линий из точек.

Я имею ввиду, что для г.Волгоград есть вот такое определение (как я понимаю, это и есть полигон города)

  <way id="37745301" visible="true" timestamp="2009-07-16T21:22:18Z" version="1" changeset="1849044" user="KekcuHa" uid="30590">
    <nd ref="442706956"/>
    <nd ref="442706957"/>
    <nd ref="442706958"/>
    <nd ref="442706959"/>
    <nd ref="442706960"/>
    <nd ref="442706961"/>
    <nd ref="442706962"/>
    <nd ref="442706963"/>
    <nd ref="442706964"/>
    <nd ref="442706965"/>
    <nd ref="442706966"/>
    <nd ref="442706956"/>
    <tag k="place" v="city"/>
    <tag k="name" v="Волгоград"/>
    <tag k="cladr:name" v="Волгоград"/>
    <tag k="boundary" v="administrative"/>
    <tag k="cladr:code" v="3400000100000"/>
    <tag k="addr:country" v="RU"/>
    <tag k="addr:region" v="Волгоградская область"/>
    <tag k="cladr:suffix" v="Город"/>
  </way>

А для г.Волжский есть только вот такая инфа и всё.

<node id="191752285" lat="48.7790188" lon="44.7840263" version="7" changeset="1551125" user="KekcuHa" uid="30590" visible="true" timestamp="2009-06-18T04:24:02Z">
    <tag k="name" v="Волжский"/>
    <tag k="place" v="town"/>
    <tag k="cladr:name" v="Волжский"/>
    <tag k="created_by" v="Potlatch 0.10b"/>
    <tag k="addr:postcode" v="404130"/>
    <tag k="int_name" v="Volzhskiy"/>
    <tag k="cladr:code" v="3400000200000"/>
    <tag k="name:en" v="Volzhskiy"/>
    <tag k="addr:country" v="RU"/>
    <tag k="addr:region" v="Волгоградская область"/>
    <tag k="is_in" v="Volgograd Oblast, Russia"/>
    <tag k="cladr:suffix" v="Город"/>
  </node>

Это означает, что полигон границы города еще не нарисован (и что нужно это сделать). Можно дождаться, пока кто-то это сделает :3, а можно нарисовать самому (информацию о границах можно попытаться узнать на сайте администрации города или района).

Я понял, что не нарисован. :slight_smile:

Учитывая, что кол-во улиц не так много, то я могу и сам их отфильтровать при заливке в свою БД. А на будущее буду тогда уже полигонами пользоваться, если они есть. Но так как следующий на очереди Волгоград, для которого полигон задан, то не скоро я засяду за рисование полигонов. :slight_smile:

Спасибо за помощь.

Shasoft, прочтите хотя бы http://wiki.openstreetmap.org/wiki/Elements.

Вы показали полигон города и точку центра. Это несколько разные объекты

А почему вы думаете, что он этого не понимает? :smiley:

Читал-читал. Я понимаю, что это разные объекты. :slight_smile:
Просто указал, что значит “полигон не указан”.