2019-04-20 12:01:11 +00:00
|
|
|
|
---
|
|
|
|
|
title: "Построение профиля местности в QGis"
|
|
|
|
|
category: Картография
|
2019-04-23 17:40:06 +00:00
|
|
|
|
tags: картография, qgis, sxf, shp, gdal,
|
|
|
|
|
summary:
|
2019-04-20 12:01:11 +00:00
|
|
|
|
...
|
|
|
|
|
|
|
|
|
|
|
2019-04-20 20:24:14 +00:00
|
|
|
|
1) В главном меню QGis **Слой** — **Добавить слой** — **Добавить векторный слой**
|
|
|
|
|
выбрать и открыть файл с векторным слоем, например, `map.sxf`.
|
2019-04-20 12:01:11 +00:00
|
|
|
|
|
|
|
|
|
2) Среди слоёв выбрать слой с рельефом местности и типом геометрии `LineString`.
|
|
|
|
|
|
|
|
|
|
![Слои карты](files/qgis-heights1.png)
|
2019-04-23 12:54:33 +00:00
|
|
|
|
Слои карты
|
2019-04-21 10:05:39 +00:00
|
|
|
|
{: .img-center }
|
2019-04-20 12:01:11 +00:00
|
|
|
|
|
|
|
|
|
3) На панели **Панель слоёв** правой кнопкой мыши щелкнуть на слое,
|
|
|
|
|
содержащем данные о высотах, и выбрать **Фильтр...**.
|
|
|
|
|
|
|
|
|
|
4) Построить выражение выбирающие только данные с высотами, например,
|
|
|
|
|
`"CLNAME" ILIKE '%ГОРИЗОНТАЛИ ОСНОВ%'` и нажить **OK**.
|
|
|
|
|
|
|
|
|
|
5) На панели **Панель слоёв** правой кнопкой мыши щелкнуть на слое,
|
2019-04-20 20:24:14 +00:00
|
|
|
|
содержащем данные о высотах, и выбрать **Сохранить как...**. Появившийся
|
|
|
|
|
новый слой **heights** следует удалить.
|
2019-04-20 12:01:11 +00:00
|
|
|
|
|
|
|
|
|
6) В появившемся диалоговом окне выбрать имя выходного файла, например, `heights`.
|
|
|
|
|
|
|
|
|
|
![Имя выходного файла](files/qgis-heights2.png)
|
2019-04-23 12:54:33 +00:00
|
|
|
|
Имя выходного файла
|
2019-04-21 10:05:39 +00:00
|
|
|
|
{: .img-center }
|
2019-04-20 12:01:11 +00:00
|
|
|
|
|
2019-04-20 20:24:14 +00:00
|
|
|
|
7) В каталоге `/home/a/work/map` выполнить команду, которая в файле
|
|
|
|
|
`heights.shp` из слоя `heights` берёт данные о высотах из поля `SC_4`
|
|
|
|
|
и генерирует матрицу высот размером 2000 на 2000 в формате BMP.
|
2019-04-20 12:01:11 +00:00
|
|
|
|
Настойки алгоритма посторения матрицы можно изменять с помощью параметра `-a`:
|
|
|
|
|
|
|
|
|
|
```sh
|
|
|
|
|
gdal_grid -a invdist:power=3.0:smoothing=1.0 -outsize 2000 2000 -of BMP -ot Byte -zfield SC_4 -l heights heights.shp heights.bmp
|
|
|
|
|
```
|
|
|
|
|
|
2019-04-20 20:24:14 +00:00
|
|
|
|
8) После построения матрицы её можно импортировать в QGis как растровый
|
|
|
|
|
слой, для этого в главном меню QGis **Слой** — **Добавить слой** —
|
|
|
|
|
**Добавить растровый слой** нужно выбрать и открыть файл `heights.bmp`.
|
|
|
|
|
В результате на панели **Панель слоёв** появится растровый слой **heights**.
|
2019-04-20 12:01:11 +00:00
|
|
|
|
|
2019-04-20 20:24:14 +00:00
|
|
|
|
9) С помощью модуля Profile Tool можно построить профиль местности. В главном
|
|
|
|
|
меню нужно выбрать **Модуль** — **Profile Tool** — **Terrain profile**.
|
2019-04-20 12:01:11 +00:00
|
|
|
|
|
|
|
|
|
10) На панели **Панель слоёв** нужно перенести растровый слой **heights**
|
|
|
|
|
в конец списка, выделить его и на панели **Profile Tool** нажать **Add Layer**.
|
|
|
|
|
После этого на карте можно строить профили местности.
|
|
|
|
|
|
|
|
|
|
![Матрица высот](files/qgis-heights3.png)
|
2019-04-23 12:54:33 +00:00
|
|
|
|
Матрица высот
|
2019-04-21 10:05:39 +00:00
|
|
|
|
{: .img-center }
|