Проект:Графическая мастерская/Картография/GMT под Windows

Пример карты, созданной с помощью GMT (статья "Авианосец «Лэнгли»)

Generic Mapping Tools (Универсальные картографические инструменты, GMT) — набор программ с открытыми кодами, предназначенных для обработки и отображения двумерной и трёхмерной информации, растеризации, фильтрации и других алгоритмов обработки изображения, а также отрисовки различных картографических проекций.

GMT позволяет создавать карты профессионального качества, которые часто используются в качестве иллюстраций в печатных и электронных изданиях, в том числе в «Википедии».

В данной статье на примере рассматриваются принципы создания географических карт с использованием GMT, а также обсуждаются некоторые особенности работы с Windows-версией пакета.

Вводные замечания

править

В настоящее время (январь 2010 года) существует достаточно полное описание Linux-версии GMT на английском языке, которое можно скачать с сайта Гавайского университета. Дистрибутив Windows-версии GMT[1] включает архив объёмом 15 Мбайт с официальной документацией Linux-версии в форматах PDF и HTML. Эта документация, однако, достаточна бедно иллюстрирована, и большая часть приведённых там примеров далека от чисто картографических задач.

Русскоязычные материалы о GMT фрагментарны. Одна из немногих доступных в Интернете статей[2] касается Linux-версии GMT и не в полном объёме применима для Windows-пользователей.

Установка GMT под Windows

править

Установка GMT под Windows не имеет никаких особенностей. Установочные программы скачиваются с сайта Гавайского университета[1]. Дистрибутив содержит:

  • Базовую установку GMT для 32-разрядной Windows (gmt-4.5.7_install32.exe) объёмом 75 Мбайт, включающую все необходимые программы, библиотеки, приложения; данные высокого разрешения о береговой линии, реках и государственных границах (GSHHS версии 2.2.0); документацию в HTML-формате и примеры пакетных файлов;
  • Базовую установку GMT для 64-разрядной Windows (gmt-4.5.7_install64.exe);
  • Документация в формате PDF (gmt-4.5.7_pdf_install.exe) объёмом 18 Мбайт.

Три указанных установочных файла запускаются в произвольной последовательности. Программа устанавливается в каталог C:\programs\GMT4, никаких дополнительных настроек не требуется. Утилиты командной строки находятся в каталоге C:\programs\GMT4\bin. Назначение остальных ключевых каталогов указаны в следующей таблице.

Ключевые каталоги Windows-установки GMT (C:\programs\GMT4…)

Подкаталог Пояснения
\bin Утилиты командной строки
\share\doc\gmt\pdf Документация в PDF-формате
\doc\html Документация в HTML-формате. Рекомендуется для первоначального ознакомления, так как обладает более удобными средствами навигации.
\doc\examples Примеры работы с GMT. Каждый из 30 примеров содержит командный файл и все необходимые для его работы данные. По окончании работы командного файла формируется графическое изображение в виде доступного для просмотра PostScript-файла.
\share\pslib Таблицы кодирования символов для различных алфавитов. Кодировка кириллических символов находится в файле ISO-8859-5.ps.

Пути к ключевым каталогам при установке регистрируются в реестре Windows, поэтому при вызове утилит из командного файла указывать полный путь не требуется.

GMT старых версий

править

В версии 4.5.7 замечены ошибки в работе утилиты xyz2grd.exe (преобразователь файлов *.hgt в файлы описания решётки *grd). Программа аварийно завершается, выдавая сообщения, по которым затруднительно установить причину ошибки. В связи с этим иногда приходится использовать GMT старых версий. Ниже приводится фрагмент одного из ранних вариантов данной статьи, касающийся установки GMT версии 2.

...

Дистрибутив содержит:

  • Базовую установку GMT (GMT_basic_install.exe) объёмом 17 Мбайт, включающую данные среднего разрешения о береговой линии;
  • Данные высокого разрешения о береговой линии (GSHHS_highfull_install.exe) объёмом 37 Мбайт;
  • Документация (GMT_pdf_install.exe) объёмом 15 Мбайт.

Три указанных установочных файла запускаются в произвольной последовательности. Программа устанавливается в каталог C:\programs\GMT, никаких дополнительных настроек не требуется. Утилиты командной строки находятся в каталоге C:\programs\GMT\bin. Назначение остальных ключевых каталогов указаны в следующей таблице.

Ключевые каталоги Windows-установки GMT (C:\programs\GMT...)

Подкаталог Пояснения
\bin Утилиты командной строки
\share\doc\gmt\pdf Документация в PDF-формате
\share\doc\gmt\html Документация в HTML-формате. Рекомендуется для первоначального ознакомления, так как обладает более удобными средствами навигации.
\share\doc\gmt\examples Примеры работы с GMT. Каждый из 23 примеров содержит командный файл и все необходимые для его работы данные. По окончании работы командного файла формируется графическое изображение в виде доступного для просмотра PostScript-файла.
\share\pslib Таблицы кодирования символов для различных алфавитов. Кодировка кириллических символов находится в файле ISO-8859-5.ps.

Пути к ключевым каталогам при установке регистрируются в реестре Windows, поэтому при вызове утилит из командного файла указывать полный путь не требуется.

GhostScript и GSView

править

Выходные данные GMT формируются в виде файлов формата PostScript. Чтобы иметь возможность просматривать изображения и преобразовывать их в другие графические форматы, необходимо установить какую-либо утилиту для просмотра PostScript-файлов. Наиболее популярной утилитой такого рода является бесплатная программа GhostScript, которую можно скачать с сайта разработчика[3].

Для нормального просмотра PostScript-файлов необходимо скачать установить на компьютере две программы: интерпретатор PS-файлов GhostScript и графическую оболочку для их просмотра GSView. Программы устанавливаются без особенностей, дополнительных настроек не требуется. После установки программ PS-файлы просматриваются двойным щелчком мышки.

Источники данных о рельефе

править

Для отрисовки физических и топографических карт необходимо иметь данные о высоте рельефа местности.

База данных GLOBE

править

Наиболее популярные бесплатные базы рельефа GLOBE с разрешением 900 м можно скачать с сайта Национального центра геофизических данных[4]. Данные представляют собой 16 файлов объёмом от 6 до 59 Мбайт, каждый из которых охватывает определённую область земной поверхности. Так, например, архив h10g.gz объёмом 28 Мбайт охватывает часть юго-восточной Азии с координатами 90-180° в.д. по долготе и 0-50° с.ш. по широте. В случае, если нет необходимости скачивать данные по большой территории, на той же странице можно оформить заявку на посылку определённого фрагмента файла. Архив будет прислан на указанный адрес электронной почты.

Можно скачать всю базу одним файлом. В zip-архиве (файл all10g.zip) полная база занимает около 300 Мбайт, в развёрнутом виде — 2 Гбайта, архиватор rar сжимает её до 200 Мбайт.

Скачанные файлы необходимо разархивировать (например, архиватором RAR) и поместить в каталог C:\programs\GMT\share\dbase. Поскольку файлы базы данных GLOBE не имеют внутренней координатной привязки, в находящемся здесь же файле grdraster.info необходимо зарегистрировать эти файлы с указанием координатных диапазонов, которые эти файлы покрывают. В случае, если все указанные 16 файлов были скачаны, файл grdraster.info будет иметь вид:

1 "GLOBE_G" "m" -R-180/-90/50/90 -I0.5m P i 1 0 -500 a10g
2 "GLOBE_G" "m" -R-90/0/50/90    -I0.5m P i 1 0 -500 b10g
3 "GLOBE_G" "m" -R0/90/50/90     -I0.5m P i 1 0 -500 c10g
4 "GLOBE_G" "m" -R90/180/50/90   -I0.5m P i 1 0 -500 d10g
5 "GLOBE_G" "m" -R-180/-90/0/50  -I0.5m P i 1 0 -500 e10g
6 "GLOBE_G" "m" -R-90/0/0/50     -I0.5m P i 1 0 -500 f10g
7 "GLOBE_G" "m" -R0/90/0/50      -I0.5m P i 1 0 -500 g10g
8 "GLOBE_G" "m" -R90/180/0/50    -I0.5m P i 1 0 -500 h10g
9  "GLOBE_G" "m" -R-180/-90/-50/0 -I0.5m P i 1 0 -500 i10g
10 "GLOBE_G" "m" -R-90/0/-50/0    -I0.5m P i 1 0 -500 j10g
11 "GLOBE_G" "m" -R0/90/-50/0     -I0.5m P i 1 0 -500 k10g
12 "GLOBE_G" "m" -R90/180/-50/0   -I0.5m P i 1 0 -500 l10g
13 "GLOBE_G" "m" -R-180/-90/-90/-50  -I0.5m P i 1 0 -500 m10g
14 "GLOBE_G" "m" -R-90/0/-90/-50     -I0.5m P i 1 0 -500 n10g
15 "GLOBE_G" "m" -R0/90/-90/-50      -I0.5m P i 1 0 -500 o10g
16 "GLOBE_G" "m" -R90/180/-90/-50    -I0.5m P i 1 0 -500 p10g

Если какой-то из 16 файлов отсутствует, соответствующая строка должна быть закомментирована символом # в первой позиции. В дальнейшем при формировании изображения рельефа обращение к данным осуществляется по номеру, который стоит в начале строки. Какой конкретный номер стоит в каждой строке — не важно, важно только, чтобы номера не повторялись.

После того, как файлы зарегистрированы, фрагменты рельефа можно извлекать из базы и преобразовывать в файлы формата grd с координатной привязкой при помощи программы grdraster. Файлы формата grd являются универсальными единицами информации в пакете GMT. С помощью программ пакета GMT файлы grd можно делить, сливать, преобразовывать к нужному виду.

В качестве примера работы с базой GLOBE извлечём из базы два фрагмента. В обоих фрагментах для визуализации рельефа используется следующая цветовая гамма, помещённая в файл mount.cpt:

#file mount.cpt
#COLOR_MODEL = RGB
#
-12000  36  38 175   -8000  56  58 195
 -8000  56  58 195   -4000  70  72 214
 -4000  70  72 214   -2000  81 102 217
 -2000  81 102 217   -1000 100 129 223
 -1000 100 129 223    -500 131 161 230
  -500 131 161 230    -200 164 192 240
  -200 164 192 240       0 170 200 255
     0 148 191 139     200 189 204 150
   200 189 204 150     500 239 235 192
   500 239 235 192    1000 222 214 163
  1000 222 214 163    2000 202 185 130
  2000 202 185 130    5000 192 154  83
B 148 191 139
F 192 154  83
N 148 191 139

1) Окрестности хребта Флиндерс (территория примерно 6°×6°)

grdraster 12 -R135/143/-36/-29 -Gh.grd
grdgradient h.grd -Ne0.3 -A100 -M -Ghi.grd  
grdimage h.grd -Ihi.grd -Cmount.cpt -P -R136/-35.5/142/-29r -JB139/-32.5/-35.5/-29/15c -K > map.ps

Результат операции показан на нижеследующих рисунках. На первом рисунке изображён чистый рельеф без полутеней, извлечённый из базы данных GLOBE (без операции grdgradient). На втором рисунке добавлены полутени. В этом виде получается рельефный рисунок, который при добавлении морской поверхности, рек, координатной сетки и различных точечных объектов превращается в карту хорошего качества, изображённую на третьем рисунке.

2) Полуостров Муравьёв-Амурский (территория примерно 1°×1°)

grdraster 8 -R131.4/132.5/42.7/43.7 -Gh.grd
grdgradient h.grd -Ne0.3 -A100 -M -Ghi.grd  
grdimage h.grd -Ihi.grd -Cmount.cpt -P -R131.5/42.7/132.5/43.7r -JB133/43.2/42.7/43.7/15c -K > map.ps

Как видно из четвёртого рисунка, изображение получилось крайне плохого качества, непригодное для дальнейшей отрисовки карты.

Резюме: базой данных GLOBE следует пользоваться для создания средне- и крупномасштабных карт без морского рельефа.

Базы данных STRM1, STRM3

править

Существует также более подробная информация о рельефе местности: база STRM3 (разрешение 90 м) и база STRM1 (территория США с разрешением 30 м), которые можно скачать с сайта NASA [5].

Помещённые здесь данные разделены на блоки, каждый из которых покрывает пространство 1°×1°. Поскольку достаточна мала вероятность, что территория размером 1°×1° точно попадёт в ячейку координатной сетки, для отрисовки такой территории необходимо скачать 4 смежных фрагмента и склеить их в один фрагмент: сначала в два блока по два фрагмента, затем два получившихся блока в один из 4 фрагментов.

В качестве примера скачаем файлы N42E131.hgt.zip, N42E132.hgt.zip, N43E131.hgt.zip и N43E132.hgt.zip. Эти файлы вместе покрывают территорию 2°×2°, в которую попадает полуостров Муравьёв-Амурский. В названии каждого файла закодирован квадрат градусной сетки, которую он покрывает. Вначале преобразуем все 4 файла в файлы формата grd:

xyz2grd N42E131.hgt -GN42E131.grd -R131/132/42/43 -I3c -N-9999 -ZTLhw
xyz2grd N42E132.hgt -GN42E132.grd -R132/133/42/43 -I3c -N-9999 -ZTLhw
xyz2grd N43E131.hgt -GN43E131.grd -R131/132/43/44 -I3c -N-9999 -ZTLhw
xyz2grd N43E132.hgt -GN43E132.grd -R132/133/43/44 -I3c -N-9999 -ZTLhw

Полученные файлы N42E131.grd, N42E132.grd, N43E131.grd и N43E132.grd объединим в один:

grdpaste N42E131.grd N42E132.grd -GN42E131_132.grd
grdpaste N43E131.grd N43E132.grd -GN43E131_132.grd
grdpaste N42E131_132.grd N43E131_132.grd -GN42_43E131_132.grd

С полученным grd-файлом проводим те же операции, что и с обычным grd-файлом: создаём изображение полутеней, формируем растровую картину и накладываем на неё изображения акваторий, береговой линии, реки, координатную сетку:

grdgradient N42_43E131_132.grd -Ne0.1 -A335 -M -GN42_43E131_132i.grd
grdimage N42_43E131_132.grd -IN42_43E131_132i.grd -R131.2/42.4/132.8/43.7r -JB132/43/42.4/43.7/6i -Cmount.cpt -K -P> map.ps
pscoast -R -J -S218/240/253 -B1g0.5 -O -K -Df -Ia/0.5p,blue -W0.25p,royalblue -Lf132.4/42.6/43/50 >> map.ps

Как видно из рисунков, база данных STRM3 обеспечивает для территорий порядка 1°×1° гораздо лучшее качество изображения, чем база GLOBE, поскольку имеет в 10 раз лучшее разрешение. Обратной стороной этого является в 100 раз больший объём файлов для одинаковой территории и, соответственно, значительное время, необходимое для отрисовки растра.

Визуально наблюдаются некоторые недостатки карт на базе STRM3: точечные дефекты изображения; очевидное несовпадение рисунка рек с береговой линией и с различимыми на рельефе границами речных долин; отрисовываются только крупные реки, оставляя пустыми речные долины, которые очевидно просматриваются на рельефе.

Батиметрическая информация

править

Для отображения на картах глубины мирового океана, необходимо иметь данные о рельефе морского дна.

Поддержка кириллических шрифтов

править

Чтобы заставить GMT использовать кириллические шрифты, необходимо перед выполнением графических операций установить кодовую таблицу ISO-8859-5. Для этого нужно вызвать утилиту gmtset.exe, поместив в начале командного файла строку

 gmtset CHAR_ENCODING ISO-8859-5

Однако использование кодовой таблицы ISO-8859-5 не решает проблему русификации GMT по двум причинам:

  • Таблица кодировки символов для ISO-8859-5 без изменений перенесена из Linux-версии программы, где кодировка русских букв отличается от стандартной кириллической Windows-кодировки cp1251. Например, русские буквы А-Я, а-я (без букв Ё, ё) занимают в cp1251 диапазон кодов 192—255, а в ISO-8859-5 — диапазон 176—239, то есть смещены на 16 символов. Буквы E,ё имеют в cp1251 коды 168, 184, а в ISO-8859-5 — 161, 241;
  • Ни в исходной кодовой таблице ISO-8859-5, ни в стандартной кодовой таблице cp1251 нет символов /ring и /quotesingle, которыми GMT обозначает градусы и минуты. Поэтому при отрисовке, например, координатной сетки, программа выдаёт предупреждение и вместо вышеуказанных символов ставит пробелы.

Решение этой проблемы состоит в том, чтобы отредактировать файл, в котором записана таблица кодировки:

  • Заменить таблицу исходной Linux-версии на стандартную таблицу cp1251;
  • Выбрать два каких-нибудь кода, которые в кодировке cp1251 соответствуют не используемым на практике символам и заменить их символами /ring и /quotesingle.

Файлы с кодировочными таблицами лежат в каталоге C:\programs\GMT\share\pslib\. Кодировка по умолчанию находится в файле Standard+.ps, а кодировка ISO-8859-5 — в файле ISO-8859-5.ps. Чтобы сохранить за пакетом GMT многоязычную поддержку, необходимо исправить файл ISO-8859-5.ps. Если же многоязычная поддержка неактуальна, можно исправить файл Standard+.ps. В последнем случае даже не придётся переключать кодовую таблицу командой gmtset, как было показано выше.

Рекомендуемое содержимое файла Standard+.ps следующее (можно скопировать текст с экрана и перенести в файл):

/Standard+_Encoding [
/.notdef	/.notdef	/.notdef	/.notdef	/.notdef	/.notdef	/.notdef	/.notdef
/.notdef	/.notdef	/.notdef	/.notdef	/.notdef	/.notdef	/.notdef	/.notdef
/.notdef	/.notdef	/.notdef	/.notdef	/.notdef	/.notdef	/.notdef	/.notdef
/.notdef	/.notdef	/.notdef	/.notdef	/.notdef	/.notdef	/.notdef	/.notdef
/space		/exclam		/quotedbl	/numbersign	/dollar		/percent	/ampersand	/quoteright
/parenleft	/parenright	/asterisk	/plus		/comma		/minus		/period		/slash
/zero		/one		/two		/three		/four		/five		/six		/seven
/eight		/nine		/colon		/semicolon	/less		/equal		/greater	/question
/at		/A		/B		/C		/D		/E		/F		/G
/H		/I		/J		/K		/L		/M		/N		/O
/P		/Q		/R		/S		/T		/U		/V		/W
/X		/Y		/Z		/bracketleft	/backslash	/bracketright	/asciicircum	/underscore
/quoteleft	/a		/b		/c		/d		/e		/f		/g
/h		/i		/j		/k		/l		/m		/n		/o
/p		/q		/r		/s		/t		/u		/v		/w
/x		/y		/z		/braceleft	/bar		/braceright	/tilde		/.notdef
/ring		/quotesingle	/quotesinglbase	/afii10100	/quotedblbase	/ellipsis	/dagger		/daggerdbl
/Euro		/perthousand	/afii10058	/guilsinglleft	/afii10059	/afii10061	/afii10060	/afii10145 
/afii10099	/quoteleft	/quoteright	/quotedblleft	/quotedblright	/bullet		/endash		/emdash
/tilde		/trademark	/afii10106 	/guilsinglright	/afii10107	/afii10109	/afii10108	/afii10193 
/space		/afii10062	/afii10110	/afii10057	/currency	/afii10050	/brokenbar	/section
/afii10023	/copyright	/afii10053	/guillemotleft	/logicalnot	/hyphen		/registered	/afii10056 
/degree		/plusminus	/afii10055	/afii10103	/afii10098	/mu1		/paragraph	/periodcentered
/afii10071	/afii61352	/afii10101	/guillemotright	/afii10105	/afii10054	/afii10102	/afii10104 
/afii10017	/afii10018	/afii10019	/afii10020	/afii10021	/afii10022	/afii10024	/afii10025
/afii10026	/afii10027	/afii10028	/afii10029	/afii10030	/afii10031	/afii10032	/afii10033
/afii10034	/afii10035	/afii10036	/afii10037	/afii10038	/afii10039	/afii10040	/afii10041
/afii10042	/afii10043	/afii10044	/afii10045	/afii10046	/afii10047      /afii10048	/afii10049	
/afii10065	/afii10066	/afii10067	/afii10068	/afii10069	/afii10070      /afii10072	/afii10073
/afii10074	/afii10075	/afii10076	/afii10077	/afii10078	/afii10079	/afii10080	/afii10081
/afii10082	/afii10083	/afii10084	/afii10085	/afii10086	/afii10087	/afii10088	/afii10089
/afii10090	/afii10091	/afii10092	/afii10093	/afii10094	/afii10095	/afii10096	/afii10097
] def

Если же заменяется содержимое файла ISO-8859-5.ps, первая строка должна быть следующая:

/ISO-8859-5_Encoding [

Работа с GMT. Пример

править

Создание изображения рельефа

править

Прежде чем начать отрисовку карты, необходимо преобразовать цифровую модель рельефа в растровое изображение. Для этого возьмём, например, один из фрагментов базы GLOBAL (а именно — фрагмент Юго-восточной Азии в файле h10g, поскольку мы будем рисовать карту Приморского края). Этот фрагмент скачивается в виде архива h10g.gz, разархивируется архиватором Rar (или другим архиватором, поддерживающим формат gz), помещается (как сказано в разделе «Цифровая модель рельефа») в каталог C:\programs\GMT\share\dbase и регистрируется в файле grdraster.info того же каталога строкой типа:

 8 "GLOBE_G" "m" -R90/180/0/50    -I0.5m P i 1 0 -500 h10g

После этого необходимо преобразовать цифровую модель рельефа в растр командой:

 grdraster 8 -R90/180/0/50 -Gh.grd

Значение параметров команды grdraster указаны в таблице:

Параметр Пояснение
8 Номер, под которым исходный файл зарегистрирован в файле C:\programs\GMT\share\dbase\grdraster.info.
-R90/180/0/50 Область, которую необходимо преобразовать в растр. В данном примере преобразуется область 90-180° в.д., 0-50° с.ш., то есть полный диапазон координат файла h10g. Если в дальнейшем не предполагается создавать карты всей этой территории, то для экономии времени и места на диске можно преобразовать только нужный фрагмент. Например, для карты Приморского края было бы достаточно (с небольшим запасом) -R129/141/42/50.
-Gh.grd Имя выходного файла (h.grd).

Создание изображения полутеней

править

Для создания реалистичных физических карт желательно выделять полутенями особенности рельефа поверхности. Это создаёт ощущение освещённости рельефа некоторым виртуальным источником света (солнцем) и впечатление объёмности изображения. Для этого формируется растровое изображение полутеней и при отрисовке карты накладывается на основное изображение рельефа. В качестве исходных данных используется утилита grdgradient и изображение рельефа, сформированное на предыдущем шаге:

 grdgradient h.grd -Ne0.3 -A100 -M -Ghi.grd  

Значение параметров команды grdgradient указаны в таблице:

Параметр Пояснение
h.grd Исходный файл с изображением, по которому формируются полутени.
-Ne0.3 Интенсивность полутеней в относительных единицах. В данном случае — 0,3
-A100 Положение виртуального источника света. В данном случае азимут источника 100°, считая по часовой стрелке от севера, то есть почти точно на востоке с отклонением 10° на юго-восток.
-M ?
-Ghi.grd Имя выходного файла (hi.grd).

Палитра рельефа

править
 
Отрисовка рельефа утилитой grdimage
 
Отрисовка водных объектов, границ и координатной сетки утилитой pscoast

Палитра рельефа — это файл, в котором задаётся соответствие высоты рельефа и цвета, которым отрисовывается на карте соответствующий участок территории. Ниже приведён пример содержимого палитры. Полагаем, что файл называется mount.cpt:

#file mount.cpt
#COLOR_MODEL = RGB
#
0	96	185	96	200	16	122	47
200	16	122	47	500	232	215	125
500	232	215	125	1000	161	67	0	
1000	161	67	0	1500	130	30	30
1500	130	30	30	2200	110	110	110
N 0 97 71
F 255 0 0
B 0 97 71

Строки 1 и 3 являются комментариями. Во строке 2 (#COLOR_MODEL = RGB) объявляется цветовая модель (RGB). В строках 4—8 задаётся соответствие высот и цветов. Каждая строка имеет формат

Hmin R1 G1 B1 Hmax R2 G2 B2,

где Hmin и Hmax — минимальная и максимальная высоты диапазона; R1, G1, B1, и R2, G2, B2 — соответствующие цвета в формате RGB. Цвета, лежащие посередине между Hmin и Hmax находятся линейной интерполяцией цветов R1G1B1 и R2G2B2.

Строки, начинающиеся с символов B, F, N задают цвета соответственно фона (когда высота точки меньше минимальной заданной высоты), переднего плана (когда высота точки больше максимальной заданной высоты) и точек, для которых высота рельефа неизвестна.

В строках 4—8 числа разделены между собой символами табуляции, в остальных строках — пробелами. Количество строк, задающих диапазоны высот, неограничено. Диапазоны высот должны примыкать друг к другу, то есть Hmax одной из строчек должна быть равна Hmin другой строки (кроме минимальной Hmin и максимальной Hmax). Если диапазоны высот в разных строчках образуют разрывы или пересекаются, это считается ошибкой.

Отрисовка рельефа

править

Для отрисовки рельефа вызываем утилиту grdimage:

grdimage h.grd -Ihi.grd -R130/42/140.8/49.8r -JB135/46/42/50/6i -Cmount.cpt -K > map.ps  
Параметр Пояснение
h.grd Исходный файл с изображением рельефа.
-Ihi.grd Исходный файл с изображением полутеней (hi.grd).
-R130/42/140.8/49.8r Координаты отображаемой территории.
-JB135/46/42/50/6i Вид и параметры картографической проекции.
-Cmount.cpt Файл с описанием цветовой палитры для отображения рельефа.
-K Ключ, означающий, что формирование выходного файла данной командой не завершено.
> map.ps Перенаправление выходного потока со стандартного устройства вывода (монитора) в файл map.ps.

Отрисовка водных объектов, границ и координатной сетки

править
pscoast -R -J -S151/190/255 -O -K -Df -B2g1 -W0.25p,royalblue -Na/1p,white -Ia/0.25p,blue -Lf141.7/-43.5/-43/200 >> map.ps
Параметр Пояснение
-R Координаты отображаемой территории. Поскольку численные данные не указаны, берутся данные из параметра -R предыдущей команды.
-J Вид и параметры картографической проекции. Поскольку численные данные не указаны, берутся данные из параметра -R предыдущей команды.
-R130/42/140.8/49.8r Координаты отображаемой территории.
-JB135/46/42/50/6i Вид и параметры картографической проекции.
-S151/190/255 Цвет отрисовки (R/G/B) водных бассейнов.
-K Ключ, означающий, что формирование выходного файла данной командой не завершено.
-O Ключ, означающий, что команда является продолжением предыдущей команды.
-Df Качество отрисовки границ водных бассейнов.
-B2g1 Отрисовка координат и координатной сетки. Численные значения координат проставляются через 2 градуса, координатные линии — через 1 градус.
-W0.25p, royalblue Линия для отрисовки границ водных бассейнов. Толщина линии 0,25, цвет — тёмно-голубой (royalblue).
-Na/1p, white Линия для отрисовки границ. Толщина линии 1, цвет — белый (white). Символ «а» означает, что линия относится ко всем типам границ.
-Ia/0.25p, blue Линия для отрисовки рек.
Lf141.7/-43.5/-43/200 Отображение масштабной линейки.
>> map.ps Выходные данные программы дописываются в конец файла map.ps.

При несоответствии версий GMT и базы данных побережья, рек и государственных границ, команда может вызвать сообщения типа:

GSHHS: Version 2.1.0 or newer is needed to use coastlines with GMT 4.5.7
GSHHS: CVS users must get the latest GSHHS 2.2.0 tarballs from
GSHHS: ftp://ftp.soest.hawaii.edu/pwessel/gshhs/GSHHS2.2.0_coast.tar.bz2
GSHHS: ftp://ftp.soest.hawaii.edu/pwessel/gshhs/GSHHS2.2.0_high.tar.bz2
GSHHS: ftp://ftp.soest.hawaii.edu/pwessel/gshhs/GSHHS2.2.0_full.tar.bz2
GSHHS: or by running "make get_gshhs_cvs" from the top GMT directory.

В этом случае необходимо скачать свежую базу данных по указанным адресам, разархивировать и поместить находящиеся а архивах файлы в каталог GMT4\share\coast.

(Продолжение следует)

Ссылки

править

Примечания

править
  1. 1 2 GMT Download. Дистрибутив Windows-версии GMT на сайте Гавайского университета.
  2. Кондратьев М. Начало работы с GMT. GIS-Lab (4 апреля 2008).
  3. GhostScript. Официальный сайт разработчика.
  4. GLOBE: Download the Elevation Tiles.
  5. Shuttle Radar Topographry Mission. Топографические данные, полученные в проекте SRTM.