Кадастровая карта в QGIS

Кадастровая карта в QGIS QGIS

Вопрос формирования кадастровой карты в бесплатной геоинформационной системе QGIS на основе данных Единого государственного реестра недвижимости является той еще задачей, имеющей свои «подводные камни». В качестве источников кадастровых сведений, используемых в QGIS могут выступать:

  1. Геопортал Публичной кадастровой карты Росреестра.
  2. Растровая подложка (растр) из Sas.Планет.
  3. XML файлы выписок Росреестр по объекту недвижимости или кадастровому плану территории.

Подключение геопортала ПКК

Подключение Публичной кадастровой карты Росреестра в открытом проекте QGIS производится через меню «Слой / Менеджер источников» во вкладке «ArcGIS Map Service» через кнопку «Создать» формируем новое подключение геопортала, где задаем имя подключаемого сервиса и указываем адрес геопортала.  В нашем случае крайней рабочей версией адреса подключения Публичной кадастровой карты в QGIS, являлся следующий путь:

https://pkk.rosreestr.ru/arcgis/rest/services/PKK6/CadastreOriginal/MapServer

Далее сохраняем данный источник, после чего нажимаем на кнопку «Подключиться». В случае верного указания пути появятся доступные слои геопортала, выбрав необходимые из них для отображения, нажимаем на кнопку «Добавить».

На данный момент подключение геопортала ПКК Росреестра отключено на стороне её разработчиков, то есть данную операцию выполнить пока не возможно. Надеемся на исправление ситуации со стороны Росреестра.

Загрузка растра ПКК

Растры с параметрами привязки в QIS удобно подключить в формате ECW, с другими форматами и файлами привязки как то туго, необходимо предварительно конвертировать в удобоваримое для QGIS. Формировать растровую подложку в виде Публичной кадастровой карты можно через программу SAS.Планет.

Для добавления растра в открытом проекте через меню «Слой / Менеджер источников» во вкладке «Растр» подключаем соответствующий файл или группу файлов в формате ECW в строке «Источник». Далее всплывшем окне «Открыть GDAL-Совместимый Набор Растровых данных» находим каталог расположения файлов и выбираем необходимые для подключения через нажатие кнопки «Ctrl» на клавиатуре и щелчка мыши. После выделения необходимых файлов нажимаем на кнопку «Открыть» и длаее кнопку «Добавить».

Если растры имеют иную проекцию, отличную от текущей в проекте, то система координат преобразуется к проекции растра.

Формирование карты через обменные форматы

В качестве формирования векторной кадастровой карты могут выступать xml файлы кадастровых планов территорий Росреестра. Но рабочих вариантов подключения КПТ в QGIS на момент написания статьи нет. Для возможности использования данных кадастровых планов территории приходится использовать обменные форматы данных:

  1. shp файлы с КПТ;
  2. mif/mid файлы с КПТ.

В QGIS подключение широко используемых обменных форматов от ArcGis (shp) и MapInfo (mif/mid) не составляет каких то трудностей, как обычный векторный слой. Для выполнения данной операции необходимо в открытом проекте через меню «Слой / Менеджер источников» во вкладке «Вектор» подключить соответствующий файл или группу файлов векторного обменного формата в строке «Источник».  В сплывшем окне «Открыть OGR-Совместимый Векторный набор данных» находим каталог расположения файлов и выбираем необходимые для подключения через нажатие кнопки «Ctrl» на клавиатуре и щелчка мыши.

Подключение векторных слоев в QGIS
Подключение OGR-совместимых векторных слоев в QGIS

Следует учесть, что при подключении векторных слоев в QGIS необходимо верно указать (выбрать из списка) исходную проекцию данных для каждого из подключаемых файлов.

КПТ в форматах shp, mif/mid и dxf

Можно задаться вопросом «Как получить из xml файла кадастрового плана территории карту в векторным формате для какой либо ГИС?». Для этого я использую ГИС Панорама в демо-режиме, которая позволяет загрузить xml-файл КПТ во внутренний формат SIT (SITX) ГИС Панорама. После чего, производится экспорт в SHP или MIF/MID или DXF форматы.

Кроме этого имеются сторонние онлайн агрегаторы по преобразованию из XML файла в вышеуказанные форматы, но тем самым вы дарите им свои xml-ки. Так что пока приводит данные ресурсы в этой статье не буду.

Подключение местных систем координат

В зависимости от версии QGIS  подключение параметров местной системы координат (МСК) производится через следующие форматы:

  • PROJ4 — для версий QGIS 3.8 и ниже;
  • WKT — для версий QGIS 3.9 и выше.

Добавление местных систем координат в QGIS производится через меню «Установки / Пользовательские проекции…». Добавляем пользовательскую систему координат через нажатие на кнопку «+», затем прописываем название проекции в каталоге по строке «Имя». Далее выбираем необходимый формат описания проекции WKT или PROJ4.

Формирование пользовательской системы координат в QGIS
Формирование пользовательской системы координат в QGIS версии 3.14

В версии QGIS 3.14 прописывание в формате PROJ4 приведет его к преобразованию в WKT формат проекции.

Прописываем параметры проекции в зависимости от выбранного формата и проверяем его на правильность оформления через кнопку «Validate».

Для общего примера возьмем универсальные параметры местных систем координат для MapInfo. Ниже приведен пример строки проекции МСК-12 зоны 1 в формате для прописывания в файле проекций MapInfo:

«МСК-12 зона 1», 8, 9999, 3, 23.57, -140.95, -79.8, 0, -0.35, -0.79, -0.22, 0, 7, 47.55, 0, 1, 1250000, -5914743.504

МСК в формате PROJ4

На основе примера строки проекций для MapInfo в QGIS эта строка будет выглядеть следующим образом (смотрите внимательно некоторые параметры меняются знаки с «-» на «+»):

Структура файла PROJ4

Данный пример строки не валиден (не может быть применен) для версии QGIS 3.14 и выше, так как исключен переход к «to wgs84».

МСК в формате WKT

Вот честно не могу сказать с какой версии произошел переход от proj4 к wkt по прописыванию параметров пользовательских проекций. Но тенденция к переходу к описанию проекций или систем координат через wkt-формат прослеживалась давно и рекомендовалась разработчиками данной программы. Покажем пример формирования такого файла в версии QGIS 3.14.

Структура файла WKT

 

Структура файла PROJ4
+proj=tmerc +lat_0=0 +lon_0=47.55 +k=1 +x_0=1250000 +y_0=-5914743.504 +ellps=krass +towgs84=23.57, -140.95, -79.8, 0, 0.35, 0.79, -0.22 +units=m +no_defs
Структура файла WKT
BOUNDCRS[
SOURCECRS[
PROJCRS["MSK-12 zone 1",
BASEGEOGCRS["MSK",
DATUM["Unknown based on Krassovsky, 1942 ellipsoid",
ELLIPSOID["Krassovsky, 1942",6378245,298.3,
LENGTHUNIT["metre",1,
ID["EPSG",9001]]]],
PRIMEM["Greenwich",0,
ANGLEUNIT["degree",0.0174532925199433],
ID["EPSG",8901]]],
CONVERSION["unknown",
METHOD["Transverse Mercator",
ID["EPSG",9807]],
PARAMETER["Latitude of natural origin",0,
ANGLEUNIT["degree",0.0174532925199433],
ID["EPSG",8801]],
PARAMETER["Longitude of natural origin",47.55,
ANGLEUNIT["degree",0.0174532925199433],
ID["EPSG",8802]],
PARAMETER["Scale factor at natural origin",1,
SCALEUNIT["unity",1],
ID["EPSG",8805]],
PARAMETER["False easting",1250000,
LENGTHUNIT["metre",1],
ID["EPSG",8806]],
PARAMETER["False northing",-5914743.504,
LENGTHUNIT["metre",1],
ID["EPSG",8807]]],
CS[Cartesian,2],
AXIS["(E)",east,
ORDER[1],
LENGTHUNIT["metre",1,
ID["EPSG",9001]]],
AXIS["(N)",north,
ORDER[2],
LENGTHUNIT["metre",1,
ID["EPSG",9001]]]]],
TARGETCRS[
GEOGCRS["WGS 84",
DATUM["World Geodetic System 1984",
ELLIPSOID["WGS 84",6378137,298.257223563,
LENGTHUNIT["metre",1]]],
PRIMEM["Greenwich",0,
ANGLEUNIT["degree",0.0174532925199433]],
CS[ellipsoidal,2],
AXIS["geodetic latitude (Lat)",north,
ORDER[1],
ANGLEUNIT["degree",0.0174532925199433]],
AXIS["geodetic longitude (Lon)",east,
ORDER[2],
ANGLEUNIT["degree",0.0174532925199433]],
ID["EPSG",4326]]],
ABRIDGEDTRANSFORMATION["Transformation from unknown to WGS84",
METHOD["Position Vector transformation (geog2D domain)",
ID["EPSG",9606]],
PARAMETER["X-axis translation",23.57,
ID["EPSG",8605]],
PARAMETER["Y-axis translation",-140.95,
ID["EPSG",8606]],
PARAMETER["Z-axis translation",-79.8,
ID["EPSG",8607]],
PARAMETER["X-axis rotation",0,
ID["EPSG",8608]],
PARAMETER["Y-axis rotation",0.35,
ID["EPSG",8609]],
PARAMETER["Z-axis rotation",0.79,
ID["EPSG",8610]],
PARAMETER["Scale difference",0.99999978,
ID["EPSG",8611]]]]