GRASS: экспорт растров в KML/KMZ

Решенные задачи, первая запись - описание решения.
Ответить
Александр Мурый
Гуру
Сообщения: 5173
Зарегистрирован: 26 сен 2009, 16:26
Репутация: 792
Ваше звание: званий не имею
Откуда: Москва

GRASS: экспорт растров в KML/KMZ

Сообщение Александр Мурый » 13 дек 2012, 13:42

Текущая стабильная версия GRASS (6.4.*) не содержит модуля для экспорта растров в KML/KMZ, зато таковой имеется в дополнениях: r.out.kml. Это простой shell-скрипт со следующими опциями:

Код: Выделить всё

Description:
 Creates KML and image files from a GRASS raster map.

Usage:
 r.out.kml [-z] map=string [output=string] [format=string] [--verbose]
   [--quiet]

Flags:
  -z   Create a KMZ file instead of KML and image files
 --v   Verbose module output
 --q   Quiet module output

Parameters:
     map   Raster input map
  output   Base name of KML and image output files
  format   Graphics file format
           options: png,jpeg,geotiff
           default: png
На заметку:
1) KML, выдаваемый модулем, может сразу не открыться в Google Earth (у автора в версии 6.2.2.6613 так и происходит).
Ошибка открытия файла "test.kml": Ошибка синтаксического анализа: строка 5, столбец 70:

mismatched tag
Опытным путём было выяснено, что программа ругается на тег <description>.

Проблема решается либо комментированием/удалением строки 150 в скрипте, либо простым удалением тега <description> из файла KML в текстовом редакторе или, например, с помощью sed:

Код: Выделить всё

sed -n '5!p' test.kml > test_clean.kml
2) Из-за проблемы №1 и KMZ, созданный модулем, тоже не открывается. Надо переименовать *.kmz в *.zip, проделать с *.kml действия из п.1, затем снова запаковать kml + растр в zip.
Редактор материалов, модератор форума

Ответить

Вернуться в «Рецепты»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя