Расчет основных пространственных характеристик объектов в QGIS: различия между версиями
Bolotoved (обсуждение | вклад) |
Bolotoved (обсуждение | вклад) Нет описания правки |
||
Строка 1: | Строка 1: | ||
В статье описываются особенности получения основных пространственных характеристик объектов (координат, длин, площадей) хранящихся в shape-файлах при использовании свободной ГИС QGIS. | <p class="ann">В статье описываются особенности получения основных пространственных характеристик объектов (координат, длин, площадей) хранящихся в shape-файлах при использовании свободной ГИС QGIS.</p> | ||
= Вводные замечания = | = Вводные замечания = | ||
Строка 5: | Строка 5: | ||
В общих чертах, алгоритм получения пространственных характеристик следующий: | В общих чертах, алгоритм получения пространственных характеристик следующий: | ||
*выбор проекции для расчетов (подробно принципы ее выбора будут освещены [[Выбор проекции для | *выбор проекции для расчетов (подробно принципы ее выбора будут освещены [[Выбор проекции для расчета пространственных характеристик объектов|в отдельной статье]]) | ||
*перепроецирование слоев в эту проекцию <ref>[В настоящее время в QGIS возможность расчета пространственных характерик непосредственно на сфере не реализована, по этому каждый раз, при расчете площадей необходимо выбирать проекцию, которая обеспечивала бы максимальное приближение спроектированных данных к поверхности геоида. Более того, поскольку QGIS не поддерживает расчеты пространственных характеристик в проекции вида, то перед расчетами все данные должны быть перепрецированы.]</ref> | *перепроецирование слоев в эту проекцию <ref>[В настоящее время в QGIS возможность расчета пространственных характерик непосредственно на сфере не реализована, по этому каждый раз, при расчете площадей необходимо выбирать проекцию, которая обеспечивала бы максимальное приближение спроектированных данных к поверхности геоида. Более того, поскольку QGIS не поддерживает расчеты пространственных характеристик в проекции вида, то перед расчетами все данные должны быть перепрецированы.]</ref> | ||
*расчет координат, длин и площадей с использованием одного из двух доступных инструментов (fTools или Field Calculator) | *расчет координат, длин и площадей с использованием одного из двух доступных инструментов (fTools или Field Calculator) | ||
Строка 15: | Строка 15: | ||
В расчетах, для проверки сходимости результатов, будем использовать [http://gis-lab.info/qa/geosample.html Geosample: Открытый набор геоданных для различного ПО ГИС]. Готовый проект для QGIS, включающий все необходимые для данной обучающей статьи [[Shape-файл|Shape-файлы]] можно скачать [http://gis-lab.info/data/geosample/geosample-qgis.7z здесь]. | В расчетах, для проверки сходимости результатов, будем использовать [http://gis-lab.info/qa/geosample.html Geosample: Открытый набор геоданных для различного ПО ГИС]. Готовый проект для QGIS, включающий все необходимые для данной обучающей статьи [[Shape-файл|Shape-файлы]] можно скачать [http://gis-lab.info/data/geosample/geosample-qgis.7z здесь]. | ||
Особенности расчета пространственных характеристик отличаются в зависимости от типа геометрии исходных данных: точек, линий или полигонов, поэтому | Особенности расчета пространственных характеристик отличаются в зависимости от типа геометрии исходных данных: точек, линий или полигонов, поэтому каждому типу геометрии будет посвящен отдельный подраздел. | ||
== Расчет координат точечных объектов == | == Расчет координат точечных объектов == | ||
Строка 22: | Строка 22: | ||
=== Вычисление координат точек в десятичных градусах === | === Вычисление координат точек в десятичных градусах === | ||
==== Использование инструмента "Добавить поле геометрии" (fTools) ==== | ==== Использование инструмента "Добавить поле геометрии" (fTools) ==== | ||
Загрузим в QGIS слой '''poi-osm.shp''' (точечные объекты OSM) из геосэмпла. | |||
Проверим в какой проекции находится данный слой: Для этого в менеджере слоев щелкнем по нему правой кнопкой мыши и в выпадающем меню выберем пункт "свойства". В открывшемся диалоговом окне выберем вкладку "Метаданные". | |||
+proj=longlat +datum=WGS84 +no_defs</nowiki></code> означает, что данные находятся в географической системе координат. Таким образом, для того чтобы получить координаты точек в десятичных градусах, перепроецировать ничего не нужно. | |||
Запись | |||
<code><nowiki>Layer Spatial Reference System: | |||
+proj=longlat +datum=WGS84 +no_defs</nowiki></code> | |||
означает, что данные находятся в географической системе координат. Таким образом, для того чтобы получить координаты точек в десятичных градусах, перепроецировать ничего не нужно. | |||
Выполним '''Vector'''→'''Обработка геометрии'''→'''Экспортировать/Добавить поле геометрии''' | |||
Строка 31: | Строка 38: | ||
Следующее диалоговое окно предлагает выбрать слой для которого необходимо рассчитать пространственные характеристики. Из выпадающего списка выберем '''poi-osm.shp''' и укажем куда сохранить новый файл в котором будут добавлены атрибутивные колонки с координатами. Нажмем "ОК". После пересчета координат будет предложено добавить новый слой на карту. Жмем "Yes". | |||
Строка 37: | Строка 44: | ||
Проверим результат. Откроем таблицу атрибутов нового слоя. Появилось две новых колонки '''XCOORD''' (долгота) и '''YCOORD''' (широта) выраженные в десятичных градусах. | |||
Строка 46: | Строка 53: | ||
==== Перепроецирование векторного слоя ==== | ==== Перепроецирование векторного слоя ==== | ||
Для того, чтобы получить координаты точек в метрической системе, необходимо перепроецировать имеющийся точечный слой в какую-нибудь прямоугольную систему кординат. | Для того, чтобы получить координаты точек в метрической системе, необходимо перепроецировать имеющийся точечный слой в какую-нибудь прямоугольную систему кординат. | ||
#Перепроецируем имеющийся слой '''poi-osm''' в проекцию UTM zone 44N (данные геосемпла лежат в трех зонах UTM, с 43N по 45N, для уменьшения искажений расчетов мы возьмем центральную <span style="color:red">Вообще говоря, это не самый удачный вариант выбора проекции, но в случае с геосемплом, для более точных расчетов требуется [[Создание пользовательской проекции в QGIS|создание пользовательской проекции]], чему также нужно посвятить отдельную статью</span>). Для этого, правой кнопкой мыши щелкнем в менеджере слоев по '''poi-osm''' и из списка выберем '''"Сохранить как"'''. В открывшемся диалоговом окне в графе '''"Сохранить как"''' указываем название и путь для сохранения нового перепроецированого слоя, а в графе '''"Система координат"''', нажав кнопку '''"Обзор"''' выбираем прямоугольную систему координат WGS84/UTM zone 44N. Облегчить поиск нужной системы координат можно путем ввода букв UTM в строку '''"Filter"''' ( | #Перепроецируем имеющийся слой '''poi-osm''' в проекцию UTM zone 44N (данные геосемпла лежат в трех зонах UTM, с 43N по 45N, для уменьшения искажений расчетов мы возьмем центральную <span style="color:red">Вообще говоря, это не самый удачный вариант выбора проекции, но в случае с геосемплом, для более точных расчетов требуется [[Создание пользовательской проекции в QGIS|создание пользовательской проекции]], чему также нужно посвятить отдельную статью</span>). Для этого, правой кнопкой мыши щелкнем в менеджере слоев по '''poi-osm''' и из списка выберем '''"Сохранить как"'''. В открывшемся диалоговом окне в графе '''"Сохранить как"''' указываем название и путь для сохранения нового перепроецированого слоя, а в графе '''"Система координат"''', нажав кнопку '''"Обзор"''' выбираем прямоугольную систему координат WGS84/UTM zone 44N. Облегчить поиск нужной системы координат можно путем ввода букв UTM в строку '''"Filter"''' (Останутся только те СК, которые содержат в названии это сочетание букв). Жмем "ОК". | ||
Строка 65: | Строка 69: | ||
== Расчет площадей, периметров и центроидов полигональных объектов == | == Расчет площадей, периметров и центроидов полигональных объектов == | ||
В заключение, сделаем важное замечание: правилом хорошего тона считается документирование, какая проекция использовалась для | В заключение, сделаем важное замечание: правилом хорошего тона считается документирование, какая проекция использовалась для расчета пространственных характеристик объектов. Особенно это касается расчетов на картах глобального охвата. | ||
= Ссылки = | = Ссылки = | ||
Строка 71: | Строка 75: | ||
#[http://gis-lab.info/qa/shapecalc.html Получение основных пространственных характеристик объектов в Arcview GIS] | #[http://gis-lab.info/qa/shapecalc.html Получение основных пространственных характеристик объектов в Arcview GIS] | ||
#[http://gis-lab.info/qa/shapecalc-ag.html Получение основных пространственных характеристик объектов в ArcGIS] | #[http://gis-lab.info/qa/shapecalc-ag.html Получение основных пространственных характеристик объектов в ArcGIS] | ||
= Примечания = | |||
<references /> | |||
[[Категория:Пошаговые инструкции QGIS]] | [[Категория:Пошаговые инструкции QGIS]] |
Версия от 13:18, 26 января 2012
В статье описываются особенности получения основных пространственных характеристик объектов (координат, длин, площадей) хранящихся в shape-файлах при использовании свободной ГИС QGIS.
Вводные замечания
Технически, получить координаты, длины или площади пространственных объектов в современных ГИС достаточно просто. Гораздо сложнее понять насколько точны значения которые мы получили, и что сделать для улучшения точности полученных величин. В общих чертах, алгоритм получения пространственных характеристик следующий:
- выбор проекции для расчетов (подробно принципы ее выбора будут освещены в отдельной статье)
- перепроецирование слоев в эту проекцию [1]
- расчет координат, длин и площадей с использованием одного из двух доступных инструментов (fTools или Field Calculator)
Результаты расчетов заносятся в автоматически создаваемые атрибутивные колонки (в случае использования инструментария fTools), либо в заранее созданные пользователем колонки (в случае использования Field Calculator).
Расчет пространственных характеристик объектов средствами QGIS
В расчетах, для проверки сходимости результатов, будем использовать Geosample: Открытый набор геоданных для различного ПО ГИС. Готовый проект для QGIS, включающий все необходимые для данной обучающей статьи Shape-файлы можно скачать здесь.
Особенности расчета пространственных характеристик отличаются в зависимости от типа геометрии исходных данных: точек, линий или полигонов, поэтому каждому типу геометрии будет посвящен отдельный подраздел.
Расчет координат точечных объектов
Координаты точечных объектов можно получить в виде десятичных градусов или в метрической системе. В первом случае исходные данные должны находиться в географической системе координат. Во втором - должны быть спроектированы.
Вычисление координат точек в десятичных градусах
Использование инструмента "Добавить поле геометрии" (fTools)
Загрузим в QGIS слой poi-osm.shp (точечные объекты OSM) из геосэмпла. Проверим в какой проекции находится данный слой: Для этого в менеджере слоев щелкнем по нему правой кнопкой мыши и в выпадающем меню выберем пункт "свойства". В открывшемся диалоговом окне выберем вкладку "Метаданные".
Запись
Layer Spatial Reference System:
+proj=longlat +datum=WGS84 +no_defs
означает, что данные находятся в географической системе координат. Таким образом, для того чтобы получить координаты точек в десятичных градусах, перепроецировать ничего не нужно.
Выполним Vector→Обработка геометрии→Экспортировать/Добавить поле геометрии
Следующее диалоговое окно предлагает выбрать слой для которого необходимо рассчитать пространственные характеристики. Из выпадающего списка выберем poi-osm.shp и укажем куда сохранить новый файл в котором будут добавлены атрибутивные колонки с координатами. Нажмем "ОК". После пересчета координат будет предложено добавить новый слой на карту. Жмем "Yes".
Проверим результат. Откроем таблицу атрибутов нового слоя. Появилось две новых колонки XCOORD (долгота) и YCOORD (широта) выраженные в десятичных градусах.
Вычисление координат точек в метрической системе
Перепроецирование векторного слоя
Для того, чтобы получить координаты точек в метрической системе, необходимо перепроецировать имеющийся точечный слой в какую-нибудь прямоугольную систему кординат.
- Перепроецируем имеющийся слой poi-osm в проекцию UTM zone 44N (данные геосемпла лежат в трех зонах UTM, с 43N по 45N, для уменьшения искажений расчетов мы возьмем центральную Вообще говоря, это не самый удачный вариант выбора проекции, но в случае с геосемплом, для более точных расчетов требуется создание пользовательской проекции, чему также нужно посвятить отдельную статью). Для этого, правой кнопкой мыши щелкнем в менеджере слоев по poi-osm и из списка выберем "Сохранить как". В открывшемся диалоговом окне в графе "Сохранить как" указываем название и путь для сохранения нового перепроецированого слоя, а в графе "Система координат", нажав кнопку "Обзор" выбираем прямоугольную систему координат WGS84/UTM zone 44N. Облегчить поиск нужной системы координат можно путем ввода букв UTM в строку "Filter" (Останутся только те СК, которые содержат в названии это сочетание букв). Жмем "ОК".
После создания нового слоя, добавим его в проект и повторим для него процедуру расчета координат описанную в разделе об использовании инструмента "Добавить поле геометрии".
Открыв таблицу атрибутов нового слоя с добавленными полями геометрии, можно убедиться, что координаты выражены в метрах в установленной нами СК (WGS84/UTM zone 44N).
Расчет длин линейных объектов
Расчет площадей, периметров и центроидов полигональных объектов
В заключение, сделаем важное замечание: правилом хорошего тона считается документирование, какая проекция использовалась для расчета пространственных характеристик объектов. Особенно это касается расчетов на картах глобального охвата.
Ссылки
- Geosample: Открытый набор геоданных для различного ПО ГИС
- Получение основных пространственных характеристик объектов в Arcview GIS
- Получение основных пространственных характеристик объектов в ArcGIS
Примечания
- ↑ [В настоящее время в QGIS возможность расчета пространственных характерик непосредственно на сфере не реализована, по этому каждый раз, при расчете площадей необходимо выбирать проекцию, которая обеспечивала бы максимальное приближение спроектированных данных к поверхности геоида. Более того, поскольку QGIS не поддерживает расчеты пространственных характеристик в проекции вида, то перед расчетами все данные должны быть перепрецированы.]