Использование SRTM3 данных.

Вчера открыл для себя, что в свободном доступе есть SRTM3 данные. И, конечно, сразу возникло множество вопросов по их применению.
Хочется чтобы программа брала их прямо с винта и обрезала по квадрату карты, а не так как к примеру GroundTruth, с великим запасом во все стороны света. Ручками оно конечно обрезать можно, но по полигончику как-то красивее ИМХО.
Прочитал, что GME умеет с ними работать, но у меня он их просто игнорирует, да и обрезает он только от руки. Попробовал Srtm2Osm, но он генерит osm с которым потом нехочет работать osmosis (жалуется, мол версия osm не та), так что необходимый полигон никак вырезать не получается. Может кто использует этот формат данных в своих проектах, поделитесь опытом как можно локально его использовать и какой инструмент при этом применять. Ведь линии высот на карте не помешают, наглядненько так и с натурой можно сравнить.

GME не умеет, умеет GME++

liosha
У Вас случаем нет рабочей версии под Win32, скачал последнюю версию 1.0.61.376-Win32, так она просто не запускается ни в какую.
Да и с обрезкой траблы.

AndyOld, там нужно какую-то микрософтовую компоненту установить, чтобы работало.

А вообще я для таких вещей GlobalMapper использую

liosha
GM 12 (beta 2) я вчера попробывал, интересная программа, надо им написать чтоб включили обрезку полигонов.

Я делаю так:

вначале через GT скачиваю регион данных srtm (с запасом):

./GroundTruth.sh contours --boundsurl="http://www.openstreetmap.org/?lat=58.5389&lon=50.0499&zoom=6&layers=M" --int 10 --outputfile=zoom-6.ibf --gridlat=0.5 --gridlon=0.5

потом генерирую из этого набор osm-файлов

./GroundTruth.sh ibf2osm --ibf=zoom-6.ibf --outputdir=Output-6/ --tagce --cat=200,50 

ну и в конце обрезаю все данные по заданному контуру в той директории:

for file in `ls | grep .osm`; do osmosis --read-xml file=$file enableDateParsing=no --bp file=../../vyatka.poly --write-xml file=../Output-6-trim/$file; done

vyatka.poly - полигон с границами

Ну и в конце, удаляем все osm файлы в директории Output-6-trim не содержащие данных и получаем директорию с osm данными контуров, обрезанные как надо.

Max Vasilev
Мегаспасибо. Однако у меня под виндой 3-я строчка вообще запускаться отказывается,
говорит что : Непредвиденное появление: file.
Может подскажете в чем загвоздка.

AndyOld, поменяй на
for %f in (*.osm) do osmosis --read-xml file=%f enableDateParsing=no --bp file=…/…/vyatka.poly --write-xml file=…/Output-6-trim/%f

liosha
теперь Непредвиденное появление: f
Где-то глюк.

AndyOld, если запускаешь из батника, меняй %f на %%f

liosha
Да, из батника. Всеравно глючит, но уже по другому поводу.
Thread for task 1-read-xml failed
Похоже не там читает, может в Output читать надо?

liosha
Словом высрадал я рабочий вариант с помощью Вас и Max Vasilev.
Засада была с путем и кавычками.


for %%f in (Output-12/*.osm) do osmosis --read-xml file="%%f" enableDateParsing=no --bp file=N-37-003.poly --write-xml file="Output/%%f"

Теперь другой вопрос, можно ли собрать из нескольких osm файлов один? И если можно то как?
Я понимаю, что можно все конвертнуть в mp, открыть в GME и радоваться, но может есть способ сделать это до конвертации в mp?