Проблема с построением ЦМР после импорта из MAPInfo
- eucrariano
- Активный участник
- Сообщения: 104
- Зарегистрирован: 26 авг 2009, 12:09
- Репутация: 0
- Откуда: Ukraine, Chernivtsy
Проблема с построением ЦМР после импорта из MAPInfo
Здравствуйте.
Конкретно проблема вот в чем: из MAPInfo 7.8 экспортирую слой с горизонталями в формат .mif. Исходная карта создана вероятнее всего в конце 90-х гг. в MAPInfo 3.0. При этом данных про проекцию получить не удается, экспортирует зразу без излишних вопросов (в файле .mif есть такая строчка: CoordSys Earth Projection 1, 0), если экспортирую в формат AutoCAD, то получается получить такое (вложение 1). Реальные размеры физической области - 261.99х94.63 км.
Когда же создаю рабочую область в GRASS, то карта интегрируется маленькая, маленькая, независимо от выбранной системы координат, при выборе же опций (вложение 2) карта вроде помещается как нужно, только вот при построении ЦМР через v.surf.rst - викидывает ошибку: "ERROR2: zero points in the given region!ERROR: Input failed".
Где моя ошибка и как ее исправить?
Спасибо
Конкретно проблема вот в чем: из MAPInfo 7.8 экспортирую слой с горизонталями в формат .mif. Исходная карта создана вероятнее всего в конце 90-х гг. в MAPInfo 3.0. При этом данных про проекцию получить не удается, экспортирует зразу без излишних вопросов (в файле .mif есть такая строчка: CoordSys Earth Projection 1, 0), если экспортирую в формат AutoCAD, то получается получить такое (вложение 1). Реальные размеры физической области - 261.99х94.63 км.
Когда же создаю рабочую область в GRASS, то карта интегрируется маленькая, маленькая, независимо от выбранной системы координат, при выборе же опций (вложение 2) карта вроде помещается как нужно, только вот при построении ЦМР через v.surf.rst - викидывает ошибку: "ERROR2: zero points in the given region!ERROR: Input failed".
Где моя ошибка и как ее исправить?
Спасибо
- Вложения
-
- vlogenie_2.jpg (110.14 КБ) 14900 просмотров
-
- from_autocad.jpg (14.39 КБ) 14900 просмотров
-
- Гуру
- Сообщения: 810
- Зарегистрирован: 22 авг 2007, 14:58
- Репутация: 123
- Откуда: Казань
Re: Проблема с построением ЦМР после импорта из MAPInfo
А какие параметры у созданного вами региона? Покажите результат команды
Код: Выделить всё
g.region -p
-
- Гуру
- Сообщения: 4049
- Зарегистрирован: 15 окт 2010, 08:33
- Репутация: 1050
- Ваше звание: программист
- Откуда: Казань
Re: Проблема с построением ЦМР после импорта из MAPInfo
проблема конкретно в том, что у вас проекция стоит долгота/широта, которую ставит МапИнфо по умолчанию при ввобе карт - тот, кто вводил карту, не выставил проекцию, поэтому у вас там все якобы в градусах.eucrariano писал(а):Здравствуйте.
Конкретно проблема вот в чем: из MAPInfo 7.8 экспортирую слой с горизонталями в формат .mif. Исходная карта создана вероятнее всего в конце 90-х гг. в MAPInfo 3.0. При этом данных про проекцию получить не удается, экспортирует зразу без излишних вопросов (в файле .mif есть такая строчка: CoordSys Earth Projection 1, 0), если экспортирую в формат AutoCAD, то получается получить такое (вложение 1). Реальные размеры физической области - 261.99х94.63 км.
Когда же создаю рабочую область в GRASS, то карта интегрируется маленькая, маленькая, независимо от выбранной системы координат, при выборе же опций (вложение 2) карта вроде помещается как нужно, только вот при построении ЦМР через v.surf.rst - викидывает ошибку: "ERROR2: zero points in the given region!ERROR: Input failed".
Где моя ошибка и как ее исправить?
Спасибо
Нужно выставить проекцию План-схема с правильными границами (прямо в MIF, текстовым редактором, с правильными границами), типа такого:
CoordSys NonEarth Units "m" Bounds (-500000, -500000) (500000, 500000)
Только я не знаю, может ли ГРАСС работать с плансхемой (это к тов.Колесову) ... если не может, то придется поставить проекцию типа UTM, прибавив к координатам прримерно 5000000 к каждой (для этого в MIF есть оператор TRANSFORM). В общем, поправить проекцию и импортировать обратно в MI, а потом экспортировать.
-
- Гуру
- Сообщения: 810
- Зарегистрирован: 22 авг 2007, 14:58
- Репутация: 123
- Откуда: Казань
Re: Проблема с построением ЦМР после импорта из MAPInfo
Может, при создании области нужно указать, что это план-схема.gamm писал(а): Нужно выставить проекцию План-схема с правильными границами
Только я не знаю, может ли ГРАСС работать с плансхемой
- eucrariano
- Активный участник
- Сообщения: 104
- Зарегистрирован: 26 авг 2009, 12:09
- Репутация: 0
- Откуда: Ukraine, Chernivtsy
Re: Проблема с построением ЦМР после импорта из MAPInfo
Спасибо за ответ. Правлю текстовом редактором mif файл: "CoordSys NonEarth Units "m" Bounds (24.9107, 47.7258) (27.5306, 48.6721)", импортирую назад в MI - там уже стоит проекция План-схема, потом назад экспорт в mif. Импортирую в ГРАСС - карта все равно маленькая и в сером прямоугольнике. В конце mif файла есть строки:
Pen (1,2,11556864)
Rect 24.9107 47.7258 27.5306 48.6721
Pen (1,2,0)
Brush (1,0,16777215). Может поэтому?
Когда zoom to selected maps, то увеличивает до нормальных размеров и координаты показывает при навигации как и установлено, а вот при zoom to default region - охват региона показівает от -23; 0 до 50;48.67(g.proj -p выдает - XY location (unprojected).
ЦМР не строит с той же ошибкой. Что еще можно сделать?
Спасибо
Pen (1,2,11556864)
Rect 24.9107 47.7258 27.5306 48.6721
Pen (1,2,0)
Brush (1,0,16777215). Может поэтому?
Когда zoom to selected maps, то увеличивает до нормальных размеров и координаты показывает при навигации как и установлено, а вот при zoom to default region - охват региона показівает от -23; 0 до 50;48.67(g.proj -p выдает - XY location (unprojected).
ЦМР не строит с той же ошибкой. Что еще можно сделать?
Спасибо
-
- Гуру
- Сообщения: 5173
- Зарегистрирован: 26 сен 2009, 16:26
- Репутация: 793
- Ваше звание: званий не имею
- Откуда: Москва
Re: Проблема с построением ЦМР после импорта из MAPInfo
eucrariano, вам надо "подогнать" текущий регион под векторный слой:
,
причем обязательно указать нужное пространственное разрешение (в единицах области) для будущего растра (ЦМР). Выбор разрешения -- дело тонкое , тут надо видеть данные, знать масштаб, просто так не посоветуешь.. В примере разрешение 20 метров для области в метрах (спроецированной или просто XY, как у вас).
После задания региона можно интерполировать.
Код: Выделить всё
g.region vect=мои_чудесные_изолинии res=20
причем обязательно указать нужное пространственное разрешение (в единицах области) для будущего растра (ЦМР). Выбор разрешения -- дело тонкое , тут надо видеть данные, знать масштаб, просто так не посоветуешь.. В примере разрешение 20 метров для области в метрах (спроецированной или просто XY, как у вас).
После задания региона можно интерполировать.
Редактор материалов, модератор форума
- eucrariano
- Активный участник
- Сообщения: 104
- Зарегистрирован: 26 авг 2009, 12:09
- Репутация: 0
- Откуда: Ukraine, Chernivtsy
Re: Проблема с построением ЦМР после импорта из MAPInfo
Спасибо. g.region vect=мои_чудесные_изолинии res=20 - дало возможность запустить v.surf.rst - мигом посчитало: учитывая, что границы области с изолиниями х1=24.9107 у1=47.7258 и х2=27.5306 у2=48.6721, то есть реально в данном случае вся область влазит в ~2х1 м, то у меня получилась ЦМР из 2 таких огромных точек. Пробовал g.region vect=мои_чудесные_изолинии res=0.0001 - начинает считать, но судя с размера файла подкачки на 1 гиг, ясно, что считать будет сутки, поставил res=0.001 - ну здесь уже жду, считает около 15 мин, прошло ~25%, надеюсь на удомоваримый результат. По ходу вопрос не по теме. Вот пробовал импортировать данные SRTM4 из geotiff, процесс проходит без проблем, задаю проекцию и все такое, только вот импортированная карта не отображается ;(. Задавал и цветовую таблицу SRTM, и r.null запускал, и ничего. Почему так?
-
- Гуру
- Сообщения: 810
- Зарегистрирован: 22 авг 2007, 14:58
- Репутация: 123
- Откуда: Казань
Re: Проблема с построением ЦМР после импорта из MAPInfo
Вам нужно сначала понять, как устроена работа с областями в GRASS: когда вы работаете с растрами, вы всегда работаете с определенным охватом территории и разрешением. Охват и разрешение задаются в g.region. Если вы импортировали данные, не попадающие в текущий охват или разрешение не подходящее, то результата или не будет вовсе, или он будет "так себе".
Поэтому первым делом разберитесь с параметрами области.
Поэтому первым делом разберитесь с параметрами области.
- eucrariano
- Активный участник
- Сообщения: 104
- Зарегистрирован: 26 авг 2009, 12:09
- Репутация: 0
- Откуда: Ukraine, Chernivtsy
Re: Проблема с построением ЦМР после импорта из MAPInfo
Вот еще вопрос вдогонку. Создаем рабочую область. Импортируем туда объект произвольной формы. Получается огромное поле, незаполненное ничем. Как создать маску, чтобы отсекать все это безобразие. При построении ЦМР, оно (ГРАСС) только и ругается - taking too long to find points for interpolation--please change the region to area where your points are. Continuing calculations...
Спасибо
Спасибо
- eucrariano
- Активный участник
- Сообщения: 104
- Зарегистрирован: 26 авг 2009, 12:09
- Репутация: 0
- Откуда: Ukraine, Chernivtsy
Re: Проблема с построением ЦМР после импорта из MAPInfo
Спасибо за советы. Только иногда вполне очевидные вещи долго доходят. А когда надо что-то быстро сделать, а предметом владеешь так себе, то получаются проблемы. Походу изучаю матчасть, но не все успеваю, слишком много всего наваливается: и в жизни и тут.KolesovDmitry писал(а):Вам нужно сначала понять, как устроена работа с областями в GRASS: когда вы работаете с растрами, вы всегда работаете с определенным охватом территории и разрешением. Охват и разрешение задаются в g.region. Если вы импортировали данные, не попадающие в текущий охват или разрешение не подходящее, то результата или не будет вовсе, или он будет "так себе".
Поэтому первым делом разберитесь с параметрами области.
Спасибо.
-
- Гуру
- Сообщения: 5173
- Зарегистрирован: 26 сен 2009, 16:26
- Репутация: 793
- Ваше звание: званий не имею
- Откуда: Москва
Re: Проблема с построением ЦМР после импорта из MAPInfo
Не задан текущий регионВот пробовал импортировать данные SRTM4 из geotiff, процесс проходит без проблем, задаю проекцию и все такое, только вот импортированная карта не отображается ;(. Задавал и цветовую таблицу SRTM, и r.null запускал, и ничего. Почему так?
g.region rast=srtm
Ну так послушайте его, оно ж не просто так ругается -- оно дело говорит.. Задайте текущий регион под ваш "объект произвольной формы": g.region rast=объект или g.region vect=объектСоздаем рабочую область. Импортируем туда объект произвольной формы. Получается огромное поле, незаполненное ничем. Как создать маску, чтобы отсекать все это безобразие. При построении ЦМР, оно (ГРАСС) только и ругается - taking too long to find points for interpolation--please change the region to area where your points are. Continuing calculations...
Не хочу вас расстраивать, но GRASS для этого не совсем предназначена. Хотя если освоиться, то типовые задачи решаются довольно шустро.А когда надо что-то быстро сделать..
Редактор материалов, модератор форума
- eucrariano
- Активный участник
- Сообщения: 104
- Зарегистрирован: 26 авг 2009, 12:09
- Репутация: 0
- Откуда: Ukraine, Chernivtsy
Re: Проблема с построением ЦМР после импорта из MAPInfo
"Ну так послушайте его, оно ж не просто так ругается -- оно дело говорит.. Задайте текущий регион под ваш "объект произвольной формы": g.region rast=объект или g.region vect=объект"
Спасибо, с этим "g.region rast=объект или g.region vect=объект" более-менея ясно, только вот когда объект не прямоугольник, как скажем регион, выделенный под него, а овал, вписаный в этот прямоугольник, то чтобы отсекти лишнеее, надо задать маску. Как ее сформировать? Вот в чем вопрос, может и наивный. Может я неправильно что-то формулируюю.
И наконец дождался результата построения ЦМР - Command finished (3915 sec). Все хорошо вышло, только вот теперь бы маску задать, чтобы интерполяция проходила строго в области, ограниченной горизонталями. Вот, чтобы яснее изложить свою мысль, прилагаю вложение (даю в тонах серого, так красивее).
Спасибо
Спасибо, с этим "g.region rast=объект или g.region vect=объект" более-менея ясно, только вот когда объект не прямоугольник, как скажем регион, выделенный под него, а овал, вписаный в этот прямоугольник, то чтобы отсекти лишнеее, надо задать маску. Как ее сформировать? Вот в чем вопрос, может и наивный. Может я неправильно что-то формулируюю.
И наконец дождался результата построения ЦМР - Command finished (3915 sec). Все хорошо вышло, только вот теперь бы маску задать, чтобы интерполяция проходила строго в области, ограниченной горизонталями. Вот, чтобы яснее изложить свою мысль, прилагаю вложение (даю в тонах серого, так красивее).
Спасибо
- Вложения
-
- grey.jpg (8.49 КБ) 14799 просмотров
-
- Гуру
- Сообщения: 5173
- Зарегистрирован: 26 сен 2009, 16:26
- Репутация: 793
- Ваше звание: званий не имею
- Откуда: Москва
Re: Проблема с построением ЦМР после импорта из MAPInfo
Можно так:когда объект не прямоугольник, как скажем регион, выделенный под него, а овал, вписаный в этот прямоугольник, то чтобы отсекти лишнеее, надо задать маску. Как ее сформировать?
-- перегоняем векторные изолинии в растр
Код: Выделить всё
v.to.rast in=isolines out=isolines_raster use=cat
-- задаем растровую маску (все дальнейшие растровые операции будут происходить в пределах маски)
Код: Выделить всё
r.mask input=isolines_raster
удалить потом можно командой
Код: Выделить всё
r.mask -r
ИЛИ можно вручную (с помощью v.digit или wxGUI) обвести нужный район (с изолиниями), а затем так же перегнать в растр и сделать по нему маску.
Редактор материалов, модератор форума
- eucrariano
- Активный участник
- Сообщения: 104
- Зарегистрирован: 26 авг 2009, 12:09
- Репутация: 0
- Откуда: Ukraine, Chernivtsy
Re: Проблема с построением ЦМР после импорта из MAPInfo
Большое спасибо всем!!! Попробую дома. Очень выручили и помогли!!!
-
- Гуру
- Сообщения: 5173
- Зарегистрирован: 26 сен 2009, 16:26
- Репутация: 793
- Ваше звание: званий не имею
- Откуда: Москва
Re: Проблема с построением ЦМР после импорта из MAPInfo
На здоровье
Кстати, по маске можно и обрезать уже имеющийся растр:
Кстати, по маске можно и обрезать уже имеющийся растр:
Код: Выделить всё
r.resample input=исходный_растр output=обрезанный_растр
Редактор материалов, модератор форума
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 5 гостей