Вызов GRASS GIS из скрипта на Python: различия между версиями

Материал из GIS-Lab
Перейти к навигации Перейти к поиску
Нет описания правки
Нет описания правки
Строка 4: Строка 4:


Пример подобного скрипта, написанного на shell, приводится в [http://gis-lab.info/forum/viewtopic.php?f=40&t=9303 рецепте], данная статья описывает решение данной задачи для языка Python. Нужно отметить, что описываемый подход можно применить к любому языку программирования, а не только к shell или Python.
Пример подобного скрипта, написанного на shell, приводится в [http://gis-lab.info/forum/viewtopic.php?f=40&t=9303 рецепте], данная статья описывает решение данной задачи для языка Python. Нужно отметить, что описываемый подход можно применить к любому языку программирования, а не только к shell или Python.
== Этапы работы ==
Внешний по отношению к ГИС GRASS скрипт должен реализовать следующие основные этапы обработки:
# Задать значения переменным окружения, которые используются в GRASS GIS (PATH, GISRC и т.д.). Этот этап служит инициализацией и необходим для того, чтобы скрипт был в состоянии определить, где находятся файлы проекта и модули ГИС GRASS и, как следствие, мог их использовать в своей работе.
# Собственно сама обработка данных, состоящая из последовательности команд GRASS GIS. Это основная часть скрипта, в которой пользователь задает последовательность действий, необходимых для того, чтобы выполнить планируемую обработку данных.
# Очистка системы от временных файлов. После выполнения необходимого анализа или действий над исходными данными все вспомогательные файлы следует удалить, чтобы не "мусорить" в системе.

Версия от 09:30, 30 сентября 2013

Чаще всего работа с GRASS GIS происходит в интерактивном режиме, когда пользователь вводит команды в консоли или вызывает их через графический интерфейс пользователя. При необходимости автоматизировать свои действия пользователь может написать скрипт, который будет доступен для повторного использования. Пример создания такого скрипта описывается в статье Создание скрипта на Python для ГИС GRASS. После создания скрипта пользователь может запускать его из консоли, в которой запущена ГИС GRASS.

Однако, иногда может потребоваться полностью автономный скрипт, который может работать, даже если GRASS GIS не запущена, например, при вызове скрипта из какой-либо программы, для того, чтобы выполнить некоторый анализ. Это может быть также полезным при автоматической обработке, когда нужно по расписанию обновлять или генерировать данные и т.д. Возможно также создание таких скриптов, которые автоматически создают проект GRASS, выполняют определенную работу (импортируют данные, анализируют их), и по завершении обработки удаляют проекты. Методика создания подобных скриптов подробно описана в статье On scripting GRASS GIS: Building location-independent command line tools, в данной работе рассматривает лишь небольшая ее часть -- создание скрипта, способного использовать готовые проекты GRASS.

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

Этапы работы

Внешний по отношению к ГИС GRASS скрипт должен реализовать следующие основные этапы обработки:

  1. Задать значения переменным окружения, которые используются в GRASS GIS (PATH, GISRC и т.д.). Этот этап служит инициализацией и необходим для того, чтобы скрипт был в состоянии определить, где находятся файлы проекта и модули ГИС GRASS и, как следствие, мог их использовать в своей работе.
  2. Собственно сама обработка данных, состоящая из последовательности команд GRASS GIS. Это основная часть скрипта, в которой пользователь задает последовательность действий, необходимых для того, чтобы выполнить планируемую обработку данных.
  3. Очистка системы от временных файлов. После выполнения необходимого анализа или действий над исходными данными все вспомогательные файлы следует удалить, чтобы не "мусорить" в системе.