Как иметь непрерывные функции для шейп-файла и избавиться от строки переноса?

Как иметь непрерывные функции для шейп-файла? Я имею в виду НЕ обрезать линию перемены дат, чтобы соблюдать отклонение долготы [-180:180], которое я не хочу соблюдать.

Вот пример, где я отображаю шейп-файл России на карте листовки. На самом деле я хотел бы иметь сплошной континент.

введите здесь описание изображения

Шейп-файл взят с сайта https://gadm.org/about.html.

Любая команда от gdal или ogr2ogr для объединения отдельных функций?

Спасибо


person PBrockmann    schedule 31.03.2021    source источник
comment
это на самом деле отдельные функции? В любом случае, я думаю, вам нужно выбрать проекцию, в которой вам не придется иметь дело с переносом. Веб-меркатор (при условии, что листовка запускает это), очевидно, не лучший выбор.   -  person Val    schedule 02.04.2021
comment
Да, конечно. Но так устроен интерфейс. Мой вопрос скорее в том, как изменить шейп-файл, чтобы он имел непрерывную форму, даже если он превышает 180 градусов.   -  person PBrockmann    schedule 03.04.2021
comment
Я думаю, что это непрерывная форма. Вам просто нужна правильная проекция, чтобы отобразить его   -  person Val    schedule 06.04.2021
comment
Нет... Открой в qgis и увидишь.   -  person PBrockmann    schedule 06.04.2021
comment
Я бы хотел, но источник данных GADM, похоже, отключен (по крайней мере, для меня). У меня есть admin-0 для RUS, который действительно отображается отдельными частями, как и ваш. Но при переключении show feature count в QGIS у меня отображается только одна функция - я думаю, что это то же самое, что и GADM. Можете ли вы подтвердить, что ваш векторный файл имеет несколько функций? Я хотел бы проверить, сделаю это, когда GADM вернется в сеть   -  person Val    schedule 06.04.2021
comment
Только одна функция   -  person PBrockmann    schedule 10.04.2021


Ответы (1)


Если вы загрузите слой GADM level-0 в QGIS и переключите Show Feature Count, вы увидите, что, хотя форма кажется разделенной, фактический слой имеет только одну функцию:

введите здесь описание изображения

Ваша фигура обрезается, потому что многоугольник пересекает границу в используемой вами проекции и заворачивается. Это не означает, что функции фактически разделены.

Если вы хотите отобразить его как непрерывный объект, вам необходимо указать соответствующую проекцию. Например, использование примера здесь дает мне это:

введите здесь описание изображения

Это всего лишь один из способов, могут быть другие проекции, которые лучше соответствуют вашей цели. Кроме того, сделать это в leaflet — это другой вопрос.

person Val    schedule 07.04.2021
comment
Спасибо за помощь в этом. На самом деле, мне бы очень хотелось иметь непрерывный шейп-файл, даже если я представляю его в формате EPSG:3857, используемом Leaflet по умолчанию. Смотрите карту, отображаемую в моем вопросе. - person PBrockmann; 10.04.2021
comment
@PBrockmann Достаточно честно, на мой взгляд, это невозможно. - person Val; 10.04.2021