Comments 136
Если ваша задача — не потратить несколько дней с сомнительным успехом на то, чтобы нахвататься поверхностной информации, а действительно получить искомый продукт, то решение — дать денег тому, кто этим занимается профессионально, так что вы получите искомое за полчаса, а не за два дня.
Потому что для того, чтобы действительно разобраться в вопросе, нужно «несколько больше», чем пара дней. Но если это разовая задача, какой смысл их тратить?
Эпоха натурального хозяйства закончилась несколько веков назад. Вы же не пытаетесь самостоятельно чинить всё, что у вас сломалось, или самостоятельно собирать все серверы, на которых будет крутиться проект. Вероятно, потому что осознаете, что профессионал сделает это лучше. Но по какой-то странной причине, считаете, что картографическая задача — это «тот же SVG, JSON, JavaScript», а потому беретесь за нее и тратите практически зря дофига времени, за которое вы бы заработали значительно больше, чем потратили бы на аутсорс этой задачи.
дать денег тому, кто этим занимается профессионально
По вашему у всех есть деньги на оплату работы «профессионалов»? К тому же на фрилансе вы скорее попадете на какого-н. студента, нежели реального спеца
Студента — достаточно. Если у конторы есть деньги на продакт-мегеджера, то есть и на аутсорсинг такой задачи. Проверено.
>если этот скилл будет указан в резюме
Именно. А даже если и будет — замучаешься искать все равно. Скилл какой, как называется это ключевое слово, по которому искать будем? :)
> *пойду добавлю, кстати*
Ну вот у меня GIS в резюме нет, но есть почти пару лет опыта. Ну и главное — когда вам нужно сочетание разработчика и картографа — тут много нюансов. Впрочем, любой сложной прикладной области это касается в той или иной мере.
Ну это вы загнули. Нет, я не против постановки вопроса «дать денег профессионалам», но за полчаса вы решение не получите. Скорее всего, вы его получите за такое же время, а возможно и позже. Просто оно работать будет иначе, вероятно лучше.
Ну и да, вопрос выбора правильного профессионала никто не отменял, и он непростой.
Допустим прямо тут, на хабре, я бы смог назвать примерно 5-10 человек, которые что-то заведомо понимают в картографии, потому что либо публиковали статьи, либо участвовали в обсуждениях, и отметились полезными комментариями. Но это при условии, что я сам этой темой занимался, и что-то в ней понимаю. А теперь представим, что вы как заказчик, не понимаете. Как выбрать того, кто подойдет? Сколько денег он попросит?
Ну и наконец, вы просто потратите минимум несколько дней на то, чтобы связаться с ними всеми, найти кого-то, кто свободен (совершенно не факт, что это будет лучший по всем параметрам кандидат), и договориться.
Ваша логика применима в stateless business, когда после шиппинга продукта не остаётся ничего.
А в нормальном бизнесе остаётся компетенция исполнителя. Ценный и труднополучаемый ресурс, между прочим.
Образуется достаточно знаний, чтобы суметь начать работать с компетентным исполнителем. breadth растёт. Depth не особо, а вот breadth точно, потому что если один раз сам наговнякал, то понять хотя бы в общих чертах что делает толковый человек (и толковый ли он) уже можно. В отличие от ситуации чёрного ящика и заказчика, который только и знает "мне нужна карта".
Крым. Первые ссылки в гугле вас ведут на gis-lab. И на этих картах нет полуострова. Тут все просто. Основные российские карты сделаны в 2000 и 2010 году, т.е до включения Крыма в состав РФ, а многие западные сервисы не признают присоединение и не добавляют полуостров в свои карты. А если вы в свой проект вставите карту без Крыма, будучи в России, вы сами понимаете, что может произойти. Поэтому делать карту без этой территории не вариант.Что может произойти то? Какую задачу вы решаете и какого рода наказание вы ожидаете за неисполнение этого очевидно спорного момента?
А вы не задумались о последствиях использования неправильного варианта (с указанием Крыма в составе РФ)? например вам могут отказать в шенгенской визе (особенно если вы будете предоставлять финансовые услуги в этой области). Возможно сейчас я преувеличиваю, но что будет потом?..
Как вариант, передавать генератору флаг "с точки зрения россии".
Пока что вижу, что Сбербанк и Почта России отказываются работать с Крымом, и ничего с ними за это не происходит. А должно?
Но зачем нужна была карта, автор не написал, так что остаётся только пытаться угадать.
Ну вот это и произошло — из-за того что у человека поцреотический маразм ему пришлось отказаться от готовых решений и получить головную боль из-за того что на около-государственные фирмы в этой стране работают только двоечники.
В глубинах интернета на заброшенном сайте вы нашли карты...
Не лазил бы где попало, а юзал гугл или open street maps проблем бы не возникло. А так импортозамещаем г-ом. Если мне не изменяет память, то у гугла его задача есть в экзамплах для всех стран.
А, да, еще возможно посмотрим на эти похождения, аналогично тому как наблюдаем всякие астры, альты и прочие издевательства над линуксом от импортозамещателей, так что думаю можно запасаться попкорном.
Да как минимум какашками закидают, что для хобби-проекта неприятно.
Я с этим уже дважды сталкивался: один раз в игре моей была на заднем фоне в одной из заставок карта мира, и нашлись-таки те, кому не понравилось там состояние Крыма и кто раздул срач в группе на эту тему. И в другой раз тут на Хабре, тоже не подумав пихнул какую-то карту и тоже комментарии на эту тему пошли.
О да! Это тема. В копилку гео мазозизма добавлю переставленные местами широту и долготу в апи яндекс карт, которое генерит растровый кусочек карты.
В целом к картам конечно нужно подходить как к процессу, а не статичному результату.
То есть, и источник должен быть такой что отслеживает изменения, обновляя карту, и конвертация из источника в целевой формат должна быть повторяемой и нетрудоёмкой, в идеале полностью автоматизированной.
Так что чисто теоретически открытые данные по границам должны существовать, а вот практически все грустно, и большинство ссылок ведет все на тот же gis-lab (карты с которого на самом деле давно уже интегрированы в OSM, где на мой взгляд их и следует брать).
В ОСМ, в свою очередь, все границы нарисованы вручную — где-то по картинке Кадастра с уточнением по спутниковым снимкам, где-то по международным договорам. Лично нарисовал сотни пограничных столбов. Более того, если граница проходит по руслу реки или какому-либо иному природному линейному объекту — значит там будет нарисована река и она включена в состав полилинии границы. Одна геометрия используется разными способами. Изменяем (уточняем) реку — автоматически изменяется граница.
Обычно это не укладывается в голове у пользователей, почему-то все думают что в ОСМ сплошнной импорт. В других странах действительно изначально было много импорта (США, Голландия, Франция и др.). В России всё нарисовано вручную. Максимум это использование трассировщиков для лесов, водоёмов и рек.
Кстати до ОСМ с открытыми векторными данными всё было очень грустно. Как раз GIS-LAB выкладывал векторные карты VMAP0 и VMAP1 производства США. На них без слёз смотреть нельзя… настолько грубые данные с огромнейшим количеством ошибок. Так что от их импорта отказались сразу и бесповоротно.
Не могу такого исключить, так как не принимал в этом процессе никакого участия. Однако же, видел комментарии на GIS-LAB, что их отдельный проект по административно-территориальному делению РФ там закрыт, и все данные полностью в OSM. То есть, речь только об этом — о границах субъектов.
gis-lab.info/qa/osm-qgis-projects.html
(добавлено)
Ой, проекты стали платными. Не знал.
Росреестр отдельная тема, они там все сделали так, чтобы их карту нельзя было использовать за пределами их сайта. Например она не отдает геометрию участков — только тайловые слои. Даже когда вы кликаете на какой-то участок и он подсвечивается — это не координаты приходят с их сервера, а пнг картинка, которую надо отрисовать поверх карты. Раньше был лайфхак — там у них на бэкенде стоит ArcGIS, и игрой с параметрами запроса можно было выдрать векторный SVG. Но теперь они это прикрыли.
Я в рамках одного проекта сделал костыльное выдирание координат — по кадастровому номеру скачиваю пнг через их апи, выделяю границу и конвертирую ее в geojson полигон. Но работает оно не очень точно из-за погрешностей растеризации, годится только для приблизительной оценки участков.
Это на уровне субъектов федерации. На более низких уровнях всё ещё хуже.
Вторая проблема — получение доступа к данным. Хотя бы платного.
Третья проблема — системы координат. Там обычно не классические широта-долгота, а нечто более сложное, и своё для каждого региона. Зачем, точно не знаю, но хотя бы из-за дрейфа континентов (примерно 5 см в год).
Можно. Потом придется их привести к пересечению административных границ и границ суши, генерализовать, преобразовать типы геометрии, добавив избыточность на общих сегментах, перепроецировать со сдвигом, склеить. Ещё можно чуть упростить, запрашивая субъекты по одному и собрать их потом.
Важно также готовить данные в софте, который не встанет раком от пресловутой Чукотки, если в системе координат задан сдвиг, возвращающий её на место.
Вообще, я это проделывал пару раз. Да, более простой способ — достать объекты по одному, через nominatim (от умеет отдавать geojson). Тогда их в принципе можно сразу и показывать (не без проблем, конечно, и закешировав на будущее). Иерархия административного деления в OSM тоже есть, как и новая Москва, разумеется. И второй способ — взять архив, и поработать с ним. Тут посложнее, пожалуй.
Кстати, причина проблемы с Чукоткой вполне может быть гораздо проще (это не значит, что решение станет проще) — в спецификации geojson написано черным по белому, что нужно резать объекты по 180 меридиану. Ну т.е., взяли карты в geojson — ожидайте проблемы. Теоретически — конвертируйте в другой формат, и забудьте. Практически — для веб скорее всего будет лучше в topojson, например.
Ну и да, взять карту в OSM в конечном счете будет гораздо полезнее, чем скачать где-то готовую, пусть даже самую хорошую, по одной простейшей причине — она будет обновляться.
Да, GeoJSON ограничен спецификацией. Но на нем, естественно, свет клином не сошелся. Хотя для многих задач он удобен. Да и с ним можно применить не очень грязный хак со сдвигом координат, определив CRS с нулевым меридианом, не совпадающим с Гринвичским.
Да в общем нет, просто в контексте ответа про OSM это так выглядит.
>CRS с нулевым меридианом, не совпадающим с Гринвичским
Если вам нужна только РФ? Наверное да, просто в общем случае такое не прокатит, чтобы никакие границы через 180 не проходили. Гренландию разве что туда загнать?
Про разрезание глобуса без разрезания стран я прямым текстом писал вот в этой статье: habr.com/ru/post/235283
Да я понял. Это просто было мелкое уточнение, что практически в любом случае, какой бы источник карт ни выбрать, это все равно не будет совсем-совсем просто.
Даже если автор считает, что какие-то карты лучшие на сегодня для него — я бы на его месте задумался над тем, что будет, когда эти карты устареют (а судя по отсутствию Новой Москвы — они уже устарели). И как он их будет обновлять.
Вы рассмотрели следующие проблемы:
* Отсутствует Крым
Ну как бы логично, что он отсутствует, это ж часть другой страны. Давайте еще рассмотрим вопрос, почему на карте РФ не отображается калифорнийский федеральный округ.
Товарищ правильно пишет. Крым был захвачен российскими военными в 2014 году, соглашения о передаче Крыма России никогда не было (наоборот: было соглашение о том, что Россия уважает территориальную целостность Украины), значит де-юре это территория Украины. Вы конечно можете включить эти территории в карту, чтобы порадовать сказочного лидера или почувствовать национальную гордость (отжали землю у слабого), ситуация от этого не изменится.
Если уж и включать, то с пометкой о том, что это временно оккупированная украинская территория до момента решения крымского вопроса.
Закона, обязывающего признавать его российской территорией и добавлять на карту без пометки, также нет, насколько мне известно.
Если уж и включать, то с пометкой о том, что это временно оккупированная украинская территория до момента решения крымского вопроса.Если разработчик делает картографический сервис в Украине, то он может включать любые пометки, какие заблагорассудится, с точки зрения ИХ законодательства. В России, полагаю, если делается коммерческий проект, то в самую последнюю очередь автор будет думать о своих политических амбициях, а в первую очередь о популярности своего сервиса. Так что смотря для кого делает.
Кстати многие картографические сервисы, чтобы не иметь проблем с законом на местах, генерируют разные картинки в зависимости от IP посетителя.
значит де-юре это территория Украины
Как уже отметили, положение «де-юре» меняется от юрисдикции к юрисдикции.
Китайская Республика (Тайвань) полвека считала материковый Китай частью своей территории, незаконно оккупированной коммунистическими войсками. Как ни странно, их точку зрения не разделяла ни одна другая страна.
Если что, проект лежит на GitHub, там все команды для дампа есть в виде менеджмент команд. Код не очень хорошо написан, так что стучитесь в личку, если что.
Так что да, в случае любого отсутствующего у вас полигона, новой Москвы к примеру, и в случае Чукотки, работа по добавлению или исправлению совершенно не тянет на статью. Чистая рутина, ну может и не на пять секунд, но никаких нерешаемых проблем не содержит точно. Я помнится, брал Чукотку из формата WKT.
Чтобы каждый про себя знал — он такие вопросы у себя спрашивает, и его внутренняя канарейка еще жива.
(ну или не спрашивает, и у него все задачи — технологические. Так что «увеличивать пропускную способность», «уменьшать задержки» и «расширять внедрение» нужно везде, и не задавайте глупых вопросов «кому» и «зачем»)
А карта — ну карта, я даже видел глобусы разных стран…
Что, когда это будут законы его государства и чисто техническая задача связанная с массовыми технологиями подавления инакомыслия (от внушения «правильных мыслей» и отслеживания «неправильных мыслей» и так далее
По российским законам и де-юре и де-факто Крым принадлежит России. Было бы странно если бы автор, живя в России и работая на российскую компанию, отказался добавлять Крым на карту субъектов РФ.
Да и ничего «античеловеческого» в такой задаче нет — жителям Крыма тоже нужны вебсервисы, тоже нужно оформлять паспорта, документы и пр. Наоборот, куда более «античеловечным» выглядит подход некоторых стран вроде Германии в отказе оформления виз или в отказе обслуживания банковских карт и пр. Ведь вредят-то такие «санкции» вовсе не политикам, а обычным людям.
Т.е. ваша идея-то в целом понятна, но непонятно какое отношение это имеет к Крыму. Автор не какое-то страшное устройство для подавления мыслей делает, а делает веб-сервис для своих же граждан, непонятно почему он должен испытывать муки совести по этому поводу.
ТС выполняет законы своего государства, и для этого нужно решить некую техническую задачу. Вот её и стоит обсуждать на Хабре, разве нет?
К автору заметки у меня вообще никаких претензий. У меня возражение было на фразу про «технические задачи» и «законы государства».
Давайте все же остановимся на текущем уровне задачи. Вроде от приписывания полигона к тому или иному набору полигонов никто не умирает, разума не лишается и в послушное стадо не превращается. Отставим принцип "Если бы да кабы во рту росли грибы" и будем профессионалами с адекватной оценкой задач и их последствий.
Что, когда это будут законы его государства и чисто техническая задача связанная с массовыми технологиями подавления инакомыслия (от внушения «правильных мыслей» и отслеживания «неправильных мыслей» и так далее — весь спектр до «окончательного решения вопроса»), то он будет — честно и прямо сам себя спрашивать: «это все еще техническая задача, или это уже античеловеческая задача?».
Вы уж простите, но это рассуждение из серии «сегодня он играет джаз, а завтра родину продаст»
Назовите мне, какой закон обязывает вас рисовать Крым на карте России? Такого закона нет. Вы, как выражался один деятель, "прикрываетесь незаконно полученными бумажками", вместо того, чтобы высказать свое личное мнение. Вопрос Крыма — это вопрос политический, и прикрываться тем, что "государство так решило", не получится. Вы в любом случае тут высказываете свою позицию, государство не может за вас ее сформулировать. Вы можете признавать Крым приобретенной по договорам российской территорией, не признавать, признавать оккупированной территорией Украины, спорной территорией, легитимно полученной территорией, добавить оговорку "согласно законам РФ", итд.
Когда вы ссылаетесь на "закон", вы начинаете напоминать госсми, которые без распоряжения сверху не могут двух слов связать. И не надо возводить закон в абсолют: были законы, по которым ловили беглых негров, были (есть) законы, по которым казнили геев, ограничивают в правах женщин, были законы, по которым "тройки" приговаривали к расстрелу за антисоветские высказывания. А в данном случае вообще закона никакого нет.
Насколько я знаю, есть закон о призывах к нарушению целостности РФ, но высказывание своей позиции призывом не является (предупрежу: это по моему личному мнению, а суд может решить иначе; если вы не доверяете суду, то стоит подумать, почему так вышло и что можно сделать, чтобы суду можно было доверять).
Давайте не будем прикрываться несуществующими "законами", а прямо скажем свое мнение: "я поддерживаю "присоединение" Крыма, потому что .." или "территории X, Y и Z тоже по-хорошему наши исконные земли" или "я работаю на госпредприятии и у меня не может быть другой точки зрения", или "Крым попросил нарисовать заказчик" что-нибудь еще.
Моя логика проста, как топор: если Россия признаёт X чьей-то территорией, то я, как российский гражданин, в любых публичных высказываниях делаю то же самое. Ну там, Кипр — греческий, Тайвань — китайский, и так далее. Своё личное мнение я никому не навязываю и даже, более того, не высказываю, пока не спросят.
Если же вас оно, это мнение, интересует, то оно простое: мне абсолютно всё равно, чей Крым. Вот так вот скучно, да)
Я против вас ничего не имею. Вы просто написали ошибочную информацию (якобы закон обязывает рисовать Крым на карте России), а я вас поправил, указав, что таких законов нет. Не хочется, чтобы кто-то был бы введен в заблуждение.
И дополнил, что это вопрос политический, так как однозначного мнения по нему нет, и увы, каждый раз, как дело касается карт, вы хотите или нет, сознательно или подсознательно, высказываете свою позицию по отношению к событиям 2014 года. Вот такая вот неприятность.
Ничего. Закона, который бы обязывал это делать, нет. У официальных картографических ведомств, конечно, могут быть какие-то свои внутренние инструкции, что и как рисовать.
Отличие в том, что рисуя Нижегородскую область вы никаких политических заявлений не делаете, по крайней мере мне не известно, чтобы хоть кто-то оспаривал бы ее принадлежность. Монголы вроде претензий не предъявляли, как и потомки князей Нижегородско-Суздальской области.
А что вы имели в виду под словом "спокойно"? Список, который не вызовет споров? Такого нет.
Список (недостоверный) есть в ст. 65 Конституции. Правительство России включило в него Крым как якобы часть России, якобы добровольно вошедшую в её состав, хотя по моему личному мнению, это просто оккупированная российскими военными украинская территория. И такое включение противоречит подписанным Россией международным договорам, где она ранее обязалась уважать независимость и территориальную целостность Украины. Если вы цитируете этот список, то вы высказываете свою позицию — "я поддерживаю захват Крыма российскими военными и нарушение ранее подписанного договора о ядерном разоружении Украины". Если вы используете список без Крыма, то вы высказываетесь за противоположную позицию. Если вам все равно, то не знаю, даже что посоветовать.
Кстати! А ведь формально это и есть закон, по которому нужно рисовать Крым на карте России. Ведь Конституция — основной закон РФ, а граждане РФ по определению подчиняются её законам. Всё очень просто) И личное мнение тут, увы и ах, совершенно ни при чём.
Тут вам ответ про рано или поздно, а так же кому и как.
Лет 5-6 назад делал интерактивную карту регионов. GeoJSON через d3 перегонялся в svg, а потом и вовсе был экспортирован в него. Проблем было намного меньше: "грязноватые" данные, отсутствие Крыма и границы между некоторыми мелкими республиками. Всё решалось очень просто. Больше всего боли было именно из-за "грязных" данных. Тогда я даже баг репортил в хром, потому что для группы с пустым path границы (boundingRect) определялись нулевыми. В Opera 12, кстати, всё работало идеально.
SVG… GeoJSON, SHP, GeoTIFF, MIF, TAB, KMLСмешались вместе кони, люди…
Можно было вручную оттрасировать скриншот любой более-менее подходящей карты, хоть фотографию настенной на смартфон. Накликать достаточное количество точек мышкой (а лучше с помощью графического планшета) заняло бы полдня.
Пограничные между регионами полигоны дублировть, чтобы в итоге получить замкнутые полигоны каждого региона.
И не нужно было бы погружаться в проекции, форматы и избыточность/противоречивость исходных данных.
Или Вы о том, что регион может целиком входить в другой регион? Тогда да, некоторые сегменты будут пограничными для нескольких вложенных уровней регионов, эту ситуацию нужно обрабатывать отдельно.
То есть все проблемы с картами были решены за 2-3 дня? Эм..., я как-то не въехал — в чём тогда суть проблемы? В том, что на разработку нужно тратить время?
За 2-3 дня накачать карты и наваять нужный функционал — это быстро. Или вы хотели за 1 час? Но если ранее с картами не сталкивались, то за 1 час никак не успеть. Просто никак. Любой геосервис требует некоторого изучения, а без геосервиса делать карту — опять же означает, что надо самому во многих вещах разбираться. И 2-3 дня на это всё — очень быстро. А по меркам толстых контор — вас надо увольнять за срыв сроков проектов всеми остальными, ведь вы всё сделаете быстро, а остальные будут ещё пару месяцев возиться — им же обидно!!!
Ну а по конкретике, найденной за 2-3 дня, всё очень просто — если в проекте чуть другие требования — ваша конкретика становится ненужной и придётся минимум эти же 2-3 дня искать всё необходимое под свои требования. Так что имеем довольно узкое поле для игры с вашей информацией. Так, развлечения ради, почитать, как студенты в карты играли.
… за 1 час никак не успеть. Просто никак. Любой геосервис требует некоторого изучения...В этом и есть некоторая проблема. Геосервисов много, но нет единого, на который можно было бы всегда полагаться, иначе достаточно было бы изучить один и его использовать.
Бесплатные сервисы не всегда содержат необходимую информацию, использование (условно бес)платных органичено индивидуальным использованием.
По теме: не так уже и много там shapes, чтобы не использовать SVG. Даже вручную их отметить можно было бы за минимальное время. Как при этом делать апдейты — совсем другой вопрос, но в целом тоже решаемый.
Во-первых, можно нагенерировать карты для более мелкого деления регионов на районы, например.
Во-вторых, появляется возможность оперативно реагировать на изменения политической карты — регион укрупнятся, Крым куда-то отойдёт или Россия опять что-нибудь отожмёт, достаточно изменить исходный список и сделать новый билд.
Границы регионов в виде полигонов с координатами доступны, как минимум, из кадастра.Выше писали уже про Кадастр, векторных данных в открытом доступе нет.
Russia Demo SVG GeoJSON Javascript
Russia with disputed territories Demo SVG GeoJSON Javascript
Natural Earth is a public domain map dataset available at 1:10m, 1:50m, and 1:110 million scales.1:110,000,000 — это масштаб пачки Беломора, 1:10M вроде бы на один порядок лучше, т.е. 10 пачек Беломора.
Хорошо если там на данных ОСМ, но тогда этот посредник не нужен, можно обратиться к первоисточнику. А если на VMAP0/VMAP1 — это данные лохматых 80-х, если не ранее.
… не будете вручную прикручивать обработчик событий к каждому полигону и вписывать вручную всю информацию об объекте, от акронимов на разных языках до административного статуса...
Аж прослезился от умиления. svg без метаданных уже не подходит.
Когда передо мной стояла подобная задача выбор стоял такой: flash, flash или flash?
И да, мало того, что пришлось ручками обрисовывать карту, поскольку в векторе нужной не нашлось (именно с областями, а не регионами), так еще и пришлось «прикручивать обработчик событий к каждому полигону и вписывать вручную всю информацию об объекте». Ну, до такого маразма, конечно, дело не дошло — вручную пришлось только прописать айдишники и подтягивать csv, генерируемый сайтом.
P.S. Время само всё расставит на свои места, тем более что есть пример, СССР, но как говорится: «есть любимые грабли».Отлично, даже вы согласились, что на ближайшие 70 лет вопрос с Крымом закрыт.
Вы принимаете желаемое за действительное. А вот риторика вашего ответа, говорит о том, что даже вы понимаете то что крым в россии — временное явление.Риторика моего ответа — хватит переливать из пустого в порожнее и выдавать прогнозы на кофейной гуще.
Собака лает — караван идёт ©
P.S. Время само всё расставит на свои места, тем более что есть пример, СССР, но как говорится: «есть любимые грабли».Отлично, даже вы согласились, что на ближайшие 70 лет вопрос с Крымом закрыт.
И по хорошему решать нужно именно ее.
В OSM границы регионов хранятся в виде «отношений» — это что-то вроде цепочки из LINESTRING. Граница смежных регионов это всегда единая геометрия, в отличии от SHP-файлов и ГИС, где геометрия дублируется и может разъехаться. По разным причинам — округления, использование разных систем координат для разных регионов (обычно исходные данные в плоских проекциях) и пр.
Те данные государственных ГИС, которые удавалось видеть в качестве готовых тайлов, действительно хранят админобъекты в виде полигонов. Лично видел несовпадающие границы, пока лазейки доступа к ArcGIS не прикрыли.
Что-же, покажите нам открытые бесплатные данные по административному делению России и всего мира в виде упомянутой вами топологии. А то как про того «суслика» — он где-то там есть для служебного пользования… но мы вам не покажем.
Вообще говоря, восстановить топологию данных, и даже генерализовать данные с учетом топологии позволяет свободное геоинформационное ПО типа QGIS. Конечно же, разобраться в этом куда сложнее, чем требовать готовые данные на блюдечке (впрочем, в ОСМ для вас тоже поработали другие люди, но какая разница).
Что касается данных на блюдечке — я довольно активный редактор ОСМ. Если кто-то ими пользуется — нам только в радость, данные созданы как раз для таких случаев, когда покупать коммерческие данные просто нерентабельно. Это с трудом укладывается в голове у держателей проприетарных данных, они разве что зубами не скрипят, такой ломоть пирога у них оттяпали.
Качественные векторные карты очень тормозят.
Облегченные — не красиво.
Итог:
На основании obulantsev.carto.com/tables/russia_geojson_wgs84/public сделал свой растровый слой с прозрачным фоном на carto.com, а для интерактива сильно облегченный невидимый векторный слой.
Интерактивная карта субъектов России для новичка. Ошибки, которые допустил я и которые не должны допустить вы