Собрать компоненты одного слоя
SHP содержит геометрию, DBF — записи атрибутов. Эти файлы сопоставляются по порядку, поэтому число записей должно совпасть. PRJ описывает систему координат; CPG помогает прочитать текст DBF. Не смешивайте файлы с одинаковым названием из разных выгрузок: принадлежность к одному слою определяется и содержимым, и соответствием записей.
Загрузите до пяти компонентов с общим именем и каталогом либо один ZIP. Разрешены SHP, DBF, PRJ, CPG и необязательный SHX, который дополнительно проверяется как индекс. ZIP может содержать один слой и безопасные каталоги; вложенные архивы, шифрование, ZIP64 и посторонние форматы отклоняются. Компоненты читаются в памяти, без извлечения имён архива на диск.
Официальные требования: ESRI: Shapefile Technical Description
layer.shp: Point [37.61, 55.75] layer.dbf: NAME = Москва layer.prj: WGS84 layer.cpg: 1251
{"type":"FeatureCollection","features":[{"type":"Feature","properties":{"NAME":"Москва"},"geometry":{"type":"Point","coordinates":[37.61,55.75]}}]}Слева описан состав вымышленного набора из кнопки «Пример», а не текст двоичных SHP/DBF. PRJ задаёт WGS84, CPG — Windows-1251. Справа — GeoJSON результата: долгота перед широтой, NAME прочитан без потери кириллицы.
- Соберите компоненты одной исходной выгрузки.
- Выберите режим CRS и кодировку DBF.
- Создайте и скачайте GeoJSON с JSON-отчётом.
Определить исходную CRS, а не желаемую карту
GeoJSON результата содержит WGS84 и координаты в порядке долгота, широта. Исходный слой может хранить метры Web Mercator либо градусы. В режиме PRJ конвертер читает WKT и преобразует координаты. При отсутствии PRJ допускается только явный выбор известных EPSG:4326 или EPSG:3857; инструмент не угадывает проекцию по диапазону чисел.
Выбор CRS не исправляет произвольный слой автоматически. Другая зона, единицы или datum могут поставить объекты в неверном месте. Этот профиль принимает WGS84 WKT без datum grid, TOWGS84 и EXTENSION. Необычную систему сначала преобразуйте в настольной GIS, где известны исходная CRS и требуемые поправки. При наличии PRJ ручной режим отклоняется, чтобы не подменить его смысл.
Официальные требования: Proj4JS: определения и преобразование · RFC 7946: координаты GeoJSON
Проверить кириллицу и точность DBF
Автоматическая кодировка берётся из CPG; без CPG используется UTF-8 с явным сообщением в отчёте. Для старых русских выгрузок часто нужен ручной Windows-1251 или DOS IBM866. Нечитаемые названия нельзя исправлять сменой проекции: кодировка относится к тексту, CRS — к координатам.
Поддерживается dBASE III с полями C, N, F, D и L. Числовые атрибуты сохраняются строками, чтобы длинные идентификаторы не округлялись; даты имеют строковый вид YYYYMMDD, логические поля — boolean или null. Заполнение пробелами справа удаляется. Memo-поля не читаются без их внешних данных и поэтому отклоняются. Удалённые DBF-записи исключаются вместе с соответствующей геометрией и учитываются в отчёте.
Официальные требования: Shapefile parser: геометрия и DBF
Сверить геометрию на карте
Поддерживаются только двухмерные Point, PolyLine и Polygon, включая их части. Z, M и MultiPatch отклоняются, чтобы дополнительные координаты не потерялись незаметно. Проверяются длины двоичных записей, индексы частей и замкнутость колец. Направление колец приводится к GeoJSON, но это не полная проверка топологии: самопересечения и картографический смысл всё равно требуют GIS.
Откройте результат на карте и проверьте район, количество объектов, несколько атрибутов и отверстия известных полигонов. Доступны до десяти тысяч записей и ста тысяч координат; пустая геометрия отмечается как пропуск. Стиль и индексы слоя не переносятся. Для табличной проверки атрибутов можно использовать GeoJSON в таблицу, сохраняя исходный Shapefile до конца сверки.
Вопросы и ответы
Достаточно одного SHP?
Нет. Нужны SHP и DBF одного слоя. Для определения проекции нужен PRJ; без него допускается только явный выбор известных EPSG:4326 или EPSG:3857.
Можно ли загрузить ZIP?
Да, один ZIP одного слоя. Разрешены SHP/DBF/PRJ/CPG/SHX, безопасные имена, до 16 записей и 20 МБ распакованных данных. ZIP64, шифрование и вложенные архивы не поддерживаются.
В каком порядке идут координаты GeoJSON?
Долгота, затем широта, в градусах WGS84. Метры Web Mercator преобразуются; исходную CRS нельзя выбирать по тому, где хотелось бы увидеть объект.
Как исправить нечитаемую кириллицу DBF?
Проверьте CPG или вручную выберите UTF-8, Windows-1251, IBM866 либо Windows-1252. При отсутствии CPG автоматический режим использует UTF-8 и сообщает об этом в отчёте.
Сохраняются ли Z, M и оформление?
Нет. Поддерживаются 2D Point, PolyLine и Polygon; Z/M/MultiPatch отклоняются. Стиль и GIS-индексы не переносятся в GeoJSON.
Останутся ли точными числовые атрибуты DBF?
N/F сохраняются строками, чтобы не округлить длинные числа. Даты также строки YYYYMMDD; логические поля становятся boolean/null. Заполнение пробелами справа удаляется.