Всем привет! Продолжаем разговор про геоинформационные системы
В прошлых сериях я описывал как добавлять/удалять модули, создавать и редактировать слои, работать с геометрией, сегодня будем заниматься привязкой растров)
На эту мысль меня натолкнул @Randolf, когда скинул в чат скрин маршрутов трамвайной сети Екатеринбурга. Штош, трамвайная сеть это круто, но еще круче - метро. Находим и качаем схему метры ЕКБ:
далее - ищем на карте сам ЕКБ:
и начинаем работать )))
Привязка растра - процесс натягивания совы на глобус, в буквальном смысле. У нас есть некоторое "географическое" изображение, которое +/- относится к пространственным геоданным. метро как раз офигенно подходит. Нам нужно понять, каким образом ветки проходят под землей (сразу оговорюсь, что т-к схема метро довольно упрощена, то и на карте это будет выглядеть ОООЧЕНЬ условно).
Вместо стандартной OSM подключаем модуль 2GIS, на нем уже видны условные знаки метро (процесс описывать не буду - это с вами разобрали в посте №1).
Далее - выбираем вкладку слой-привязка растров:
Появится окно с новой рабочей областью, функционал не очень удобен (т-к нужно постоянно переключаться между окнами), но работаем с чем есть, выбираем файл-открыть растр, и открываем нашу схему метры:
Нужный растр подгружается, и курсор мыши превращается в крестик (на скрине не видно, ну да хер с ним), если нажать мышью - откроется третье окно с предложением выбрать координаты, но, т-к мы их не знаем, то жмякаем "выбрать с карты", у меня все точки заранее отрисованы, поэтому скрин, только отображающий суть:
Обратите внимание, что система координат должна совпадать с системой координат проекта. Для урала это WGS84 (zone 40N), но мы с вами не кадастровые инженеры, поэтому доверяем автоматически определенной WGS84. После нажатия кнопки "с карты" окно привязки свернется и нас перекинет на основную карту, где нужно найти первую точку, к которой будем привязываться - так как ветка существующего метро одна, а синяя линия только проектируется, выбираем соответственно метки метро Проспект космонавтов на нашей схеме и карте:
Отмечаем точку привязки на основной карте, окно снова скрывается, появляется окно координат, сверяем их, жмем ок, и видим как в нижнем поле появляется контрольная точка. По общему правилу таких точек (для полигональных объектов) должно быть 5. НО!!!! у нас объект - ЛИНЕЙНЫЙ (тот, который не образует площадь) поэтому, нам нужно максимальное количество точек. С полигональными объектами я так уже делал, а вот с линейными - нет. И мне самому интересно, как сильно исказится изображение.
Дальше - повторяем процедуру точка-привязать с карты-ок, до тех пор, пока все точки не будут отмечены, скрины я соответственно делать не буду, после того как все сделали, жмем ок-кнопку play:
, закрываем карту и видим как распидорасило исходное изображение:
А все потому, что картинку QGis не может сжать слева-направо/справа налево. а натягивает ее плашмя, как есть. Но мы расстраиваться не будем, и попробуем сделать красиво, но с другой пикчей:
Повторяем манипуляции и получаем:
Вот другое дело. Теперь зайдем в настройки и настроим прозрачность (как мы это делали в прошлый раз), заодно посмотрим, что было раньше в каком-нибудь месте:
Вот, например: на месте Парка им. Блюхера раньше было кладбище, что как бэ напрягает... Хотя, кого я обманываю в Перми действующий зоопарк расположен прямо на могилах )
Всем привет! Продолжаем разговор про геоинформационные системы
В прошлой серии мы с вами ознакомились с возможностями Qgis, немного в нем потыкались научились добавлять модули и создали базовую карту. Штош. Сегодня попробуем более детально поработать со слоями - научимся их добавлять и редактировать.
Для начала немного теории. Qgis умеет много чего, но в основном работа с ним строится вокруг следующих объектов:
Полигон - тот же контур, то есть объект, у которого можно посчитать площадь.
Линия - объект, состоящий из нескольких точек, но не образующий полигон, т.е. не замкнутая линия.
Точка - точечный объект.
Полигоны, линии и точки это векторные проекты Qgis. Пиксель - думаю с этим понятно. Из пикселей состоят все картинки. это особая категория - растровые проекты.
Все проекты в Qgis сохраняются в формате *qgz, после сохранения мы получим 1 файл с таким расширением. 1 Проект может содержать несколько слоев, как мы с вами убедились на прошлом занятии. Все слои сохраняются в формате *shp/geopackage (но это так, отступление и нахер я писал это - не знаю).
Давайте что-нибудь накалякаем в Qgis. В прошлом занятии мы уже создавали базовую карту в новом проекте, продолжим с нее: чтобы что-то отрисовать нужно создать новый слой, для этого повторяем:
и получаем страшное окно:
1. имя файла не прописываем, а через троеточие указываем путь к папке, в которой он будет храниться, в открывшемся окне придумываем имя и сохраняем:
2 кодировка - если у вас в этой графе стоит кракозябра, а не utf-8, то нужно поставить именно ее.
3 тип геометрии - можно выбрать любой, но мы с вами начнем с полигона, поэтому выбираем его.
Остальные поля можно пока не трогать (их можно менять на следующем этапе, остановимся чуть позже). Нажимаем сохранить - ок - все окна автоматом закрываются и в рабочей области слоев мы видим вновь созданный слой:
Слой создали, теперь будем тыкать. Чтобы это сделать надо зайти в режим редактирования. для экономии места в кармане одмина элементы управления покажу в одной картинке:
1 - открывает режим редактирования
2 - создать полигон
3 - режим редактирования вершин
4 - кнопки редактирования существующего полигона
5 - включает мыш - режим прокрутки карты, и выключает режим выделения и редактирования
6 - режим выделения
7 - сохранить полигон и слой
8 - сохранить проект
9 - режим прилипания точек
Ну, это кратенько. Изначально все кнопки неактивны. Чтобы создать что-то на нашей базовой карте тыкаем 1 режим редактирования, становятся открытыми остальные кнопки. Важно: в режиме редактирования мыш АВТОМАТОМ отключается и если раньше она представляла значек № 5, ей можно было передвигать карту, то теперь курсор будет меняться в зависимости от значений кнопок 2-6. Если вы случайно что-то не то жмякнули на карте, то клавиши backspase (отмена последнего действия) escape (отмена последних действий с полигоном) вам в помощ. принудительно переключить мыш - жмякаем на № 5.
Итак, погнали. Сначала жмем 1, потом жмем 2, 9. После включения режима прилипания в кнопках 9,10 из выпадающего списка нужно выбрать "ко всем слоям" "вершина", "сегмент" и начинаем рисовать. Раз у меня выпало чертаново, то я хочу выделить его на фоне других микрорайонов Москвы.
После того, как мы выбрали режим редактирования и прилипания к вершинам всех слоев, курсор мышы будет прилипать к известным ему точкам и курсор помимо прицела будет подкрашен фиолетовым квадратом:
без этой функции я сношал рот проводить подобные манипуляции, поскольку это очень долго нуторно и может привести к фатальным ошибкам.
После того как мы отрисовали последнюю точку, нужно нажать правую кнопку мышы и тогда слой можно сохранять. появится такое окно, в поле id можно прописать любое значение (нам оно пока не важно):
После сохранения - как я и описывал в прошлый раз, Qgis присваивает рандомный стиль. У меня для Чертаново он окрасил в болотный, что характерно )) Теперь можно отключить слой "районы москвы" сняв галочку в рабочем окне слоев и мы увидим, что останется только наш слой, с которым мы продолжим работать далее. Но пока оба слоя оставим активными, для работы над ошибками.
Изменим немного стиль рабочего слоя чертаново, чтобы можно было увидеть косяки:
Нашли с вами незначительные пересечения. Так-как это вектор, и я работал в разных масштабах (его можно менять колесом мышы), то отрисованный мной слой получился неточным. Для целей учебы это не критично, но если мы работаем с кадастром, то нам за такое наваляют. Чтобы это исправить жмем 3
и аккуратно выбираем курсором точку, которую нам нужно передвинуть, жмем на ее (1), перетягиваем (2), срабатывает инструмент прилипания (3); правой кнопкой мышы закрепляем точку (4)
сохраняем слой (1), выключаем режим редактирования (7),
и можно посмотреть, что получилось:
косяк исправили.
Штош. получилось длинновато, на деле это можно объяснить за две минуты, но зато наглядно))))
Аналогичным образом можно потренироваться и создать точечные и линейные слои. Т.е. процедура таже самая:
1 создать слой
2 выбираем параметры слоя (геометрия, система координат, путь к папке, имя и т.п.)
3 редактирование
4 сохранение
Кста, сейчас можно посчитать площадь чертаново. Для этого заходим в панель вектор-обработка геометрии-добавить атрибуты геометрии
выбираем систему координат проекта, жмем выполнить, далее ок-ок
далее ок-ок, появится новый временный слой "атрибуты геометрии" нам нужно заглянуть ему в кишки:
и в открывшемся окне видим два значения - ареа - площадь и периметр
На этом нудятину закончим, к следующему посту мне нужно немного статистической информации о чертаново (например, сколько гопников живут в разных частях чертаново) если кто-то поможет, то буду рад. и да, следующий пост будет немного интересней
Ps. Отвечая на прошлые комменты- я хз как в китайца загрузить 2гис, сорян
Всем привет!
Не так давно я прошел обучение курса "Геоинформационные системы: введение в Qgis" и подумал - почему бы не поделиться полученными знаниями?!.
Учитель из меня, конечно еще тот, но вдруг информация, которой я буду делиться кому-нибудь пригодится?
Для начала коротенечко расскажу, что такое Qgis и для чего он нужен. Qgis - открытое ПО (со свободной лицензией и открытым кодом) для создания, анализа и редактирования геоинформационных материалов (карты, космоснимки, иные геоданные). в Qgis вшит Python - что позволяет создавать модули и приложения (но эту тему нам не преподавали поэтому инфы по ней не будет).
Сегодня с вами попробуем поработать с картами.
Для начала работы нужно скачать Qgis выбрать версию можно тут: https://download.osgeo.org/qgis/windows/ (лучше взять стабильные версии 3.28 или 3.32 но кому чисто для знакомства - можно брать последнюю).
После скачивания и установки мы получим голое ПО, и для начала работы его необходимо настроить. Сегодня расскажу как, а на следующем занятии сделаем что-то посложнее )))
После запуска мы видим с вами такое окно. Это - стартовая страница, сейчас она пустая, и ее нужно заполнить. Первое, что нужно сделать - установить модули.
Жмем сюда:
В появившемся окне ищем QMS или quickmapservices:
У меня этот модуль уже установлен, поэтому мне предлагает его либо удалить либо переустановить. У вас будет кнопка - установить. Нажимаем, окно закрываем. Теперь у нас появятся новые кнопки на панели (1) и окно поиска в правой рабочей области (2):
Quickmapservices - собственно, название говорит само за себя ) это модуль быстрого поиска пространственных геоданных - своего рода картографический интернет внутри Qgis. В поле поиска вводим те карты, которые хотим видеть в качестве базовых - яндекс, гугл, и т. п. Посмотреть полный перечень доступных карт можно на сайте: https://qms.nextgis.com/
после подключения необходимых карт, они отобразятся в дереве слоев и рабочей области:
Обратите внимание, добавленные слои накладываются друг на друга, это видно по карте (цифры 1, 2, 3)
блин. совсем забыл про интерфейс, где что и как называется, немного отступим, покажу основные рабочие области:
Теперь далее. мы с вами подключили несколько слоев. я решил добавить еще слой районы Москвы - немного поработаем с ним. По умолчанию Qgis присваивает рандомный стиль. Как видно, у меня это сплошная заливка, что не совсем айс - саму Москву не видно.
Чтобы изменить оформление правой кнопкой мышы жмем на название слоя и переходим в свойства:
Появляется окно свойств слоя, в котором мы можем изменить оформление с простой заливки на контур:
ну и поиграться с оформлением, изменить цвет и толщину контура
Жмякаем ок → ок → применить, и вуаля. Слой стал "прозрачным", видно районы Москвы.
Чтобы включить/отключить слои или переместить их местами нужно снять/установить галочки со слоя.
Сейчас этот слой является видимым. Но если его переместить "под другой слой" - то он пропадет. Перенос осуществляется мышкой, перетаскиванием названия слоя (процесс скринить не буду, думаю понятно).
Ну чтож - сегодня научились работать с базовой картой. В следующий раз начнем работать со слоями - научимся добавлять и создавать новые слои.