Границы государства по coastline в Overpass Turbo

С Новым Годом.
Есть государство. Нужно получить данные его границ, но не по admin_level, т. к. получим следующее: http://overpass-turbo.eu/s/6Nu (запрос 8 мб), а по coastline, чтобы получилось как на политической карте. У некоторых стран создано отношение в которое собраны сухопутные границы и береговые линии. И если составить запрос на такое отношение получается то, что нужно (например Польша: http://overpass-turbo.eu/s/6Nv)). Начал делать такое отношение для России, но через пару часов понял, что Россия - не Польша. Получилось вот что: http://overpass-turbo.eu/s/6Nw. Работы не меньше чем на неделю. А я хотел получить информацию по всему миру - это вообще не реально такими методами.
Подскажите как создать запрос в Оверпасс, чтобы получить желаемый результат.
Если/когда это получится, как можно обработать данные, чтобы они состояли из замкнутых полигонов, а не огромного количества отрезков полученных из береговых линий и сухопутных границ (смотреть результат по Польше). Данные буду экспортировать в геожсон, может их потом можно как-то обработать?

Когда делал обзорную карту мира, то границы вытаскивал так

  1. Полный список - через запросы
http://www.overpass-api.de/api/xapi?relation[@meta][admin_level=2]      и =4]
  1. Каждый relation с геометрией - через запросы вида
http://overpass-api.de/api/interpreter?data=rel(7444);(._;>);out meta;

Но мне как раз береговые линии мешали, так что я их сразу вырезал.

Если не обязательно ОСМ, то можно Natural Earth попробовать. Вроде бы там были удобные полигоны стран.

Похожую задачу у меня mp_extsimp решил, только результат был не полигоны, а одиночные линии границ от “тройной” точки до “тройной” точки.

Спасибо.
Но вашим способом все равно получается геометрия полигона по admin-level, и там где граница идет по морю admin_level идет в 15 км от суши. Получается вот что:
А мне нужно вот что:

Может быть как-то можно в оверпасс отфильтровать полигон по админ_левел (как на первой картинке), а затем вывести все береговые линии находящиеся внутри него? А потом их объединить с сухопутными границами в новый полигон.
Изучаю пока Overpass_API/Language_Guide и Overpass_QL, но там похоже нет такой возможности. Максимально похожее - задать полигон по координатам.

Если не только оверпасс, то можно взять пересечение полигона государства и полигона суши. Шейпы с сушей, если не ошибаюсь, есть на planet.osm.org

А как быть, например, с Чудским, Тёплым, Псковским озерами? Граница проходит по воде, коастлайна нет, ибо озера недостаточно велики для этого и обозначены мультиполигонами. Да и с широкими реками, имеющими обозначенную береговую линию, аналогичная ситуация…

Не только оверпасс - просто взялся за него, т.к. до этого с ним работал. Думал и на этот раз все получится… Инструмент не важно какой - главное чтобы геометрия совпадала с ОСМ. А как это пересечение выделить, есть ПО?

Да и вообще все внутренние воды надо бы вычесть. Но, как говорится, по мере поступления.
Прихожу к мысли, что создание отношения как у Польши было правильным решением - с его помощью можно было все эти проблемы решить. Нет не каких плагинов для ДЖОСМ ускоряющих/облегчающих создание отношений из большого количества членов, не подскажите?

Relation Toolbox + Filter
Выгружаете в JOSM грануцу + области с сушью (для этого наиболее удобнее использовать подложку openstreetmap.org, нежели всякие мапбоксы, мы ведь исключительно с ОСМ данными работаем). Фильтр по admin_level2|coastline|water, выделяете большие группы интересующих линий, создаете с ними отношение, открываете редактор отношения, сортируете членов. Ну и далее, по разрывам в списке членов уточняете включая или исключая некоторые линии.

madeinussr, а можно ссылочку на польское отношение?

http://www.openstreetmap.org/relation/936128 - отношение большое, долго прорисовывается, нужно подождать.

Догадываюсь. Мне лишь само отношение глянуть, а не его геометрию, для этого достаточно в JOSM по Ctrl+Shift+O загрузить отношение по ID, что занимает секунду. Спасибо.

А нет ли способов ускорить и этот процесс? Потому что просто загрузка береговых линий РФ в JOSM у меня займет много времени.

Как вариант, пройтись осмфильтром по дампу всей РФ оставив только нужное (admin_level2, coastline) после чего открыть полученный OSM в JOSM и нажать “обновить данные”.

А можно поподробней про дамп РФ и осмфильтр - не сталкивался раньше.

Самое малое, нашел только в 2-х кусках.
Европейска часть
Азиатская часть
Качаете *.osm.bz2, распаковываете (нужно много свободных Gb)

Если есть опыт пакетной обработки файлов, то можно и по граничным регионам насобирать с гис лаба.

Качаете osmfilter и вырезаете из полученных *.osm только нужное.

osmfilter INPUT_FILE_NAME.osm --keep="admin_level=2 natural=water =coastline"> RESULT_FILE_NAME.osm

Vitalts, а не подскажите как в JOSM (после того как отфильтровал нужные объекты) выделить только линии без точек чтобы добавить к отношению. Ctrl+A выделяет вместе с точками.

Я выделяю все вместе с точками, затем, на листе выделенных объектов кручу до первой точки, шрифтом выделяю все линии, жму выбрать под списком и имею в выделении только линии

  1. Сохраняете данные с оверпаса в геоджейсон или gpx.
  2. Скачиваете шейпы с сушей
  3. Ставите QGIS
  4. В QGIS добавляете 2 векторных слоя, один с шейпами в качестве источника, второй с оверпасовским геоджейсоном.
  5. Опять же в QGIS вектор-геообработка-пересечение. Выбираете 2 ваших слоя, указываете куда сохранить результат.

Возможно нужен плагин utiltools2 и тогда в меню ВЫДЕЛЕНИЯ будет как выделить точки линии, так и снять выделения с точек.

Нашел способ как скачать в JOSM только то, что нужно:

  1. Поставить плагин mirrored_download
  2. Файл → Загрузить с зеркала OSM
  3. Тип объекта - выбираем что нам надо, например way
  4. Запрос XAPI - пишем запрос например [natural=coastline]
    Может качать с областей большей площади чем с сервера ОСМ.
    Вдруг кто-то кроме меня не знал.