24.4.1. Общие сведения о GRASS GIS¶
GRASS: Geographic Resources Analysis Support System¶
Разрабатывается с 1984 года (USA-CERL). Все это время была открытой ГИС.
Кроссплатформенная: доступны версии для GNU/Linux, MS-Windows, Mac OSX, SUN, …; 32/64 битные системы.
Хорошо документирована, большие коллекции данных. Коммерческая поддержка.
GRASS GIS это¶
Растровая 2.5D/3D ГИС
Векторная 2D/3D топологическая ГИС
Анализ и обработка графов
Анализ и обработка пространственно-временных рядов
Система обработки изображений
Система 2D и 3D визуализации
Поддержка баз данных:dbf, PostgreSQL, MySQL и sqlite. MS SQL, Oracle (ODBC)
Поддерживает импорт-экспорт всех распространенных растровых и векторных форматов
Поддерживаемые типы данных¶
2D Растровые данные, включая спутниковые снимки и аэрофотосъемку
3D (Voxel) данные
2D/3D векторные данные с поддержкой топологии
Временные ряды векторных и растровых данных
Устройство GRASS: общие сведения¶
Модульная структура (более 500 модулей)
Модуль — отдельная программа (или скрипт), использующий библиотеки GRASS
Собственные (внутренние) форматы данных для растров и векторов
Детали для программистов¶
Для запуска и работы модулей не нужно запуска граф.интерфейса, только общая инициализация
В основе — принципы Unix: * Принцип «1 модуль — 1 функция» (не всегда) * Модули могут сочетаться / комбинироваться
«Ядро» GRASS и большая часть основных модулей написана на С
Python-библиотека из нескольких модулей: * script — написание скриптов * PyGRASS — Python API
Устройство GRASS: БД, область, набор¶
Строгая иерархия данных:
«База данных» (GISDBASE / database) — не настоящая БД, а набор директорий и файлов.
«Область» (location) — наподобие «проекта», определяется системой координат и географ. охватом. Включает наборы данных, информацию о подключении в база данных и т.д.
«Набор» (mapset) — набор данных. Часть проекта (области). Можно настроить отдельные права доступа, задать свой охват. Набор PERMANENT должен быть всегда.
Области/наборы могут создаваться «на лету» (например, в скрипте). Можно переключаться между областями и наборами и/или перебрасывать данные между ними.
Запуск GRASS¶
Запустите GRASS 7 с интерфейсом wxGUI.
Всегда первым появляется окно терминала, т.к. GRASS запускается через интерпретатор командной строки (bash, CMD.EXE и т.п.)
Затем запускается граф. интерфейс
Интерфейсы: CLI/GUI¶
Командная строка (CLI) — основной метод работы с GRASS (исторически и в силу специфики), графический интерфейс (GUI) — «надстройка»
Графичеcкий интерфейс пользователя — wxGUI — основан на wxPython.
Окно менеджера слоев (1-4): 1. Дерево слоев 2. Командная консоль (урезанная) 3. Поиск модулей 4. Интерпретатор Python
Окно карты (5)
Модули («команды»)¶
Модули разбиты на группы по функциональному назначению, например:
Тип модуля |
Назначение |
---|---|
g.* |
Общее управление ГИС и интерфейсом |
r.* |
Растровые данные |
v.* |
Векторные данные |
… |
… |
Принцип названий: „группа_модулей.имя_модуля“ (g.region, r.to.vect, v.clean и т.п.)
Каждый модуль имеет параметры (опции) и флаги, контролирующие процесс выполнения. Например:
g.region res=5 -p
Посмотреть описание модуля и все его опции: „имя_модуля -help“ в командной строке. Например:
g.region -help