GRASS: простой способ удалить пересечения растров

Решенные задачи, первая запись - описание решения.
Ответить
Александр Мурый
Гуру
Сообщения: 5065
Зарегистрирован: 26 сен 2009, 16:26
Статьи: 3
Проекты: 5/1
Репутация: 721
Ваше звание: званий не имею
Откуда: Москва

GRASS: простой способ удалить пересечения растров

Сообщение Александр Мурый » 11 сен 2012, 15:39

-- создаём растровую маску по первому растру

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

r.mapcalc 'rast_1.mask = if(rast_1,1,null())'
-- задаём маску

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

r.mask in=rast_1.mask
-- создаём растр пересечения со вторым растром

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

r.mapcalc 'rast_1.cross = if(isnull(rast_2),null(),1)'
-- вырезаем из первого растра непересекающийся кусок

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

r.mapcalc 'rast_1.cut = if(isnull(rast_1.cross),rast_1,null())'
-- удаляем маску

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

r.mask -r
Редактор материалов, модератор форума

Ответить

Вернуться в «Рецепты»