Страница 1 из 2

ArcInfo ASC файл в трехколоночный XYZ ASCII-файл

Добавлено: 23 фев 2014, 12:45
nickleb
Какими средcтвами (про ArcGIS не говорим) конвертировать ArcInfo ASC grid-файл в трехколоночный (XYZ) ASCII-файл?

Re: ArcInfo ASC файл в трехколоночный XYZ ASCII-файл

Добавлено: 23 фев 2014, 13:07
lam
Global Mapper

Re: ArcInfo ASC файл в трехколоночный XYZ ASCII-файл

Добавлено: 23 фев 2014, 13:07
Игорь Белов
Открытый пакет GMT, команда grd2xyz -E

Проприетарный Golden Software Surfer ([Grid] → [Convert]).

Re: ArcInfo ASC файл в трехколоночный XYZ ASCII-файл

Добавлено: 23 фев 2014, 13:10
nickleb
ErnieBoyd писал(а):Открытый пакет GMT, команда grd2xyz -E

Проприетарный Golden Software Surfer ([Grid] → [Convert]).
Спасибо. Но в старенький Surfer - не загружается большой ASC.

Re: ArcInfo ASC файл в трехколоночный XYZ ASCII-файл

Добавлено: 23 фев 2014, 13:20
Игорь Белов
nickleb писал(а):в старенький Surfer - не загружается большой ASC.
Это смешно, честное слово. Чтобы последовательно читать значения Z и выводить X, Y, Z, не нужно загружать растр в память. Собственную программу можно написать за несколько минут, нужно только знать порядок записи узлов, чтобы выводить правильные X, Y. А этот порядок известен.

В конце-концов, поставьте GMT. Для целочисленных Z запускайте

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

grd2xyz myraster.asc -E > myraster.xyz
Для действительных чисел используйте

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

grd2xyz myraster.asc -Ef > myraster.xyz

Re: ArcInfo ASC файл в трехколоночный XYZ ASCII-файл

Добавлено: 23 фев 2014, 13:31
Донецков
Что значит старенький? Помнится еще в 6 версии (это где-то 1996 - 1997 годы) в таблицу можно было загрузить до 2 млн. записей...

Re: ArcInfo ASC файл в трехколоночный XYZ ASCII-файл

Добавлено: 23 фев 2014, 13:44
nickleb
записей более 134 млн. - 30''-ндный массив глубин Сев.Лед.Океана... В новом 12-ом Surfer'е можно, но у меня нет... спасибо всем... заPythоn'ю, наверное эту задачку... просто с ходу ни в Q, ни в SAGA, ни в DIVA этого не нашел... спасибо за отклики... извините за отнятое время... с праздником и победой на Олимпиаде!

Re: ArcInfo ASC файл в трехколоночный XYZ ASCII-файл

Добавлено: 23 фев 2014, 13:52
nickleb
ErnieBoyd, lam, Донецков - спасибо Вам!

Re: ArcInfo ASC файл в трехколоночный XYZ ASCII-файл

Добавлено: 24 фев 2014, 12:27
Александр Мурый
Как вариант:

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

gdal_translate -of "XYZ" infile.asc infile.xyz

Re: ArcInfo ASC файл в трехколоночный XYZ ASCII-файл

Добавлено: 24 фев 2014, 19:01
nickleb
Александр Мурый писал(а):Как вариант:

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

gdal_translate -of "XYZ" infile.asc infile.xyz
Александр, спасибо. Запустил предложенный Вами вариант. Сработал. Из 1.2 Гб получил 7.5 Гб.

Re: ArcInfo ASC файл в трехколоночный XYZ ASCII-файл

Добавлено: 24 фев 2014, 19:20
gamm
nickleb писал(а):Из 1.2 Гб получил 7.5 Гб.
что-то мне подсказывает, что на этом создание трудностей и борьба с ними не закончится. Теперь обратно интерполировать будем, предварительно пересчитав проекцию ?

Re: ArcInfo ASC файл в трехколоночный XYZ ASCII-файл

Добавлено: 24 фев 2014, 19:43
nickleb
да, gamm... здесь и прозорливости особой не надо, чтобы понять мыкания чайника к Surfer'у привыкшего, где имел дело с grid'ами небольших размеров и slice'овал оные... вот для начала в spatialite, что ли это положить или в PostGIS?... или, вообще, никуда не класть, а gdalwarp'ить в точки с lat/lon по мере надобности?

Re: ArcInfo ASC файл в трехколоночный XYZ ASCII-файл

Добавлено: 25 фев 2014, 08:39
nickleb
...кто-нибудь подскажет ресурс, книгу с "множественными" примерами использования gdal/ogr?..

Re: ArcInfo ASC файл в трехколоночный XYZ ASCII-файл

Добавлено: 25 фев 2014, 09:03
gamm
nickleb писал(а):...кто-нибудь подскажет ресурс, книгу с "множественными" примерами использования gdal/ogr?..
у них же на сайте полный комплект документации + исходники, наше все. А чего делать-то собрались, можете описать?

Re: ArcInfo ASC файл в трехколоночный XYZ ASCII-файл

Добавлено: 25 фев 2014, 09:11
nickleb
ErnieBoyd писал(а):
nickleb писал(а):в старенький Surfer - не загружается большой ASC.
Это смешно, честное слово. Чтобы последовательно читать значения Z и выводить X, Y, Z, не нужно загружать растр в память. Собственную программу можно написать за несколько минут, нужно только знать порядок записи узлов, чтобы выводить правильные X, Y. А этот порядок известен.

В конце-концов, поставьте GMT. Для целочисленных Z запускайте

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

grd2xyz myraster.asc -E > myraster.xyz
Для действительных чисел используйте

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

grd2xyz myraster.asc -Ef > myraster.xyz
... в GMT 4.5 формат ASC ArcINFO-файла эти утилиты не распознают, а 5-рку не стал ставить... gdalytanslat'ом по совету Ал.-ра Мурого сделал... но у меня к Вам уже др. вопрос: а есть ли утилита в GMT по растру получить зн.-ия Z в наборе точек c XY нерегулярной сетки?... нечто аналогичное gdalwarp'у?.. или slicе'у Surfer'а?.. спасибо!