dsp-site/wiki/Prog/GIS/Построение профиля местности в QGis.md

58 lines
3.3 KiB
Markdown
Raw Normal View History

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 }