Страница 2 из 2
Re: Проблема с построением ЦМР после импорта из MAPInfo
Добавлено: 01 мар 2011, 11:39
Александр Мурый
Я тут подумал.. На самом деле, пример "v.to.rast in=isolines out=isolines_raster use=cat" не подходит для этого случая (создание маски по границам изолиний). Т.к. при задании маски по растеризованным изолиниям все промежутки между ними не будут иметь значений (т.е. null) и будут игнорироваться при растровых операциях.
Надо либо оцифровать границу вручную, как было написано выше, либо:
-- сделать так называемую "выпуклую оболочку" (или "конвексную" оболочку) с пом. модуля
v.hull
, которая и будет границей изолиний;
-- вектор в растр (используем use=cat)
Код: Выделить всё
v.to.rast in=isolines_hull out=isolines_hull_rast use=cat
-- задаем маску по этому растру
Re: Проблема с построением ЦМР после импорта из MAPInfo
Добавлено: 01 мар 2011, 11:54
eucrariano
Вот еще вопрос возник.
"d.profile rast=chern_11_elev_0.001@PERMANENT
Use mouse to choose action
No socket to connect to for monitor <x1>.
ERROR: No graphics device selected
(Tue Mar 1 10:49:41 2011) Command finished (0 sec) "
Вот такая ошибка постоянно. Проблема с моей стороны, или это глюк. В документации утверждается, что BUGS None known. Не могу понять что делать?
Re: Проблема с построением ЦМР после импорта из MAPInfo
Добавлено: 01 мар 2011, 12:19
Александр Мурый
eucrariano писал(а):Вот еще вопрос возник.
"d.profile rast=chern_11_elev_0.001@PERMANENT
Use mouse to choose action
No socket to connect to for monitor <x1>.
ERROR: No graphics device selected
Для работы модуля
d.profile надо запустить вначале т.н. "графический монитор" (
d.mon x0).
Можно проводить профили в wxGUI (которым, как я понял, вы пользуетесь) -- ищите спец.иконку (ниже на скриншоте), а также в Tcl/Tk
- wxGUI_profile.png (13.09 КБ) 8131 просмотр
Re: Проблема с построением ЦМР после импорта из MAPInfo
Добавлено: 01 мар 2011, 12:44
eucrariano
Спасибо! Все получилось. А ведь настолько очевидно !!! С v.hull также разобрался. Много лучше уже. Хотя конечно, чтобы идеально обрисовать контур территории, надо поработать немного руками. Спасибо еще раз за помощь.
Re: Проблема с построением ЦМР после импорта из MAPInfo
Добавлено: 01 мар 2011, 13:07
eucrariano
Уфф. Маски работают просто замечательно. Спасибо
Re: Проблема с построением ЦМР после импорта из MAPInfo
Добавлено: 01 мар 2011, 17:40
eucrariano
Еще вот вопрос: можно ли преобразовать замкнутый сложный контур в центроид или ареал штатными средствами GRASS?
Спасибо.
Re: Проблема с построением ЦМР после импорта из MAPInfo
Добавлено: 01 мар 2011, 18:09
Александр Мурый
eucrariano писал(а):Еще вот вопрос: можно ли преобразовать замкнутый сложный контур в центроид или ареал штатными средствами GRASS?
В грасс полигон (area) = граница (boundary) + центроид (точка внутри границы, к которой относится информация о полигоне). Линия -- не граница, это отдельный векторный тип. Итак, нужно сделать из линии полигон?
Поехали:
-- модуль
v.type переводит линию в границу
Код: Выделить всё
v.type input=object_line output=object_boundary type=line,boundary
-- далее либо вручную (v.digit / wxGUI), либо с помощью модуля
v.category добавляем центроид внутрь нашей границы
Код: Выделить всё
v.category input=object_boundary output=object_boundary_cats option=add
Все, полигон готов.
Re: Проблема с построением ЦМР после импорта из MAPInfo
Добавлено: 01 мар 2011, 18:26
eucrariano
Как всё-таки был прав В.И.Ленин: учится, учится и еще раз учится
.
Спасибо.
Re: Проблема с построением ЦМР после импорта из MAPInfo
Добавлено: 01 мар 2011, 22:39
eucrariano
amuriy писал(а):eucrariano писал(а):Еще вот вопрос: можно ли преобразовать замкнутый сложный контур в центроид или ареал штатными средствами GRASS?
В грасс полигон (area) = граница (boundary) + центроид (точка внутри границы, к которой относится информация о полигоне). Линия -- не граница, это отдельный векторный тип. Итак, нужно сделать из линии полигон?
Поехали:
-- модуль
v.type переводит линию в границу
Код: Выделить всё
v.type input=object_line output=object_boundary type=line,boundary
-- далее либо вручную (v.digit / wxGUI), либо с помощью модуля
v.category добавляем центроид внутрь нашей границы
Код: Выделить всё
v.category input=object_boundary output=object_boundary_cats option=add
Все, полигон готов.
Получилось сделать задом наперед: внутри контура был создан центроид, я же вначале сам пробовал решить проблему, а когда запустил v.type input=object_line output=object_boundary type=line,boundary, то сразу создался центроид и залился серым цветом.