Из двух в одно...

0 голосов
спросил 25 Сен, 07 от yashchuck (1,020 баллов) в категории Программные продукты Esri
    Добрый день! Подскажите мне, есть два векторных слоя (температура и ndmi (значение влажноности)). Они накладываются друг на друга, но не везде. Вот нужно, "вытянуть" те места, где они пересекаются в отдельный слой. Как это сделать??? У меня ArcGIS 9.0. Заранее благодарен. image

26 Ответы

0 голосов
ответил 28 Сен, 07 от yashchuck (1,020 баллов)
    Спасибо, сегодня же начну пробовать... Если будут вопросы, здесь буду задавать, а они конечно же будут!











Без проблем живут те, кто ничего не делает!
0 голосов
ответил 02 Окт, 07 от yashchuck (1,020 баллов)
    Всем привет! Я снова на связи, и буду здесь пока не решу проблемку.
1. На выходных, значит, пробовал я первую твою подсказку, AndreyL, но как толко я начал переводить растры в точки (ArcToolbox - Conversion Tools - Из растра - Растр в данные точек), при конвертоции сразу же вылетела ошибка: "An error was encountered while executing spatial_RasterToPoint. Не удалось выполнить (RasterToPoint_5)". На этом с первой подсказкой и завязал (не исключено, что не таким путём переводил растры в точечные слои...., если не тяжело, то опиши конкретней здесь).
2. Теперь по поводу изолиний: начал с того, что перевёл растр с температурой в изолинии (ArcToolbox - 3D Analyst Tools - Растровая модель поверхности - Изолиния ). При идентификации значений температуры не обнаружил? Здесь я, AndreyL, не совсем понял слова: "выбираем нужные изолинии и делаем из них полигоны ", как выбирать, если нет значений?
3. Проклассифицировал, разбил на 10 классов (больше, думаю, не надо), пытаюсь конвертировать классы в полигональный слой, чтобы выбрать только те, которые нужны, но... см. п.1. (при поа влении окошка конвертации, не даёт выбрать ПОЛЕ со значениями(Value)), а только Count (номер порядковый, не интересующий меня).
Подскажите, пожалуйста, возможно, в моих действиях есть и ошибки !!! Всем спасибо.
0 голосов
ответил 02 Окт, 07 от AndreyL (5,420 баллов)
1. Можно через ToolBars – 3D Analict там в менюшке Convert – Raster to Feature. Только растр должен быть целочисленный. А можно и в любой проге обработки растров (ЭНВИ, ГлобалМаппер и т.п., про ЭРДАС не в курсе)
2. Значение в поле CONTOUR в таблице
3. После классификации значения нового растра идут по номеру класса, т.е. если у Вас 10 классов, то значения будут от 1 до 10. Границы классов задаете сами, нужный класс выбираете по порядковому номеру.
0 голосов
ответил 03 Окт, 07 от yashchuck (1,020 баллов)
Значения темп-ры в растрах у меня не целочисленные, скорее всего из-за этого и все проблемы. Подскажите как преобразовать их в целые числа?
0 голосов
ответил 03 Окт, 07 от AndreyL (5,420 баллов)
Tools -> Spatial Analyst, там в менюшке Raster Calculator, пишете функцию Int. Есть, правда, подозрение, что Вы идете самым длинным путем, третий, с классификацией, по моему решает именно Вашу задачу.
0 голосов
ответил 04 Окт, 07 от yashchuck (1,020 баллов)
Спасибо, AndreyL! Возможно, ты и прав. Поработаю-ка я с классификацией. Только подскажи мне пожалуйста как конвертировать классы в полигональный слой (так, что ли: "через ToolBars – 3D Analict там в менюшке Convert – Raster to Feature" (кстати у себя в ToollBох я не нашёл "Convert – Raster to Feature", есть только операции связанные с TINами))?  
0 голосов
ответил 04 Окт, 07 от AndreyL (5,420 баллов)
можно так
image
или так
image
0 голосов
ответил 04 Окт, 07 от yashchuck (1,020 баллов)
    Уважаю, спасибо!
0 голосов
ответил 04 Окт, 07 от yashchuck (1,020 баллов)
    Ты, конечно, уж извени меня, AndreyL, может я уже своими вопросами тебя уже достал, но пока вопрос не решиим, я не отстану. Значит, пробую я конвертировать твоим же методом,но...... выскакивает окошко: "Набор данных ... - растр с плавающими значениями. Входной набор должен быть растром с целыми значениями. Пожалуйста, выберите другой набор значений." На сколько я понимаю, так это, наверное, всё из-за того, что значения температуры у меня не являются целочисленными (напр. 315,2693787), или есть какие-то мысли??? И сразу же не отхадя от темы, уточни мне по Калькулятру растра - в Арифметике нашёл Int (как ты говорил), нужно прописать какое-то действие с его использованием; какое именно? Ещё раз спасибо!
0 голосов
ответил 04 Окт, 07 от AndreyL (5,420 баллов)
При классификации создается новый растр, у которого целочисленные значения 1,2,3…. Их столько, сколько классов было задано. Все они целочисленные. Если я понимаю Вашу задачу, то нужно только два класса – больше заданной температуры, и меньше нее. В классификаторе ставите количество классов два, метод деления вручную (красным на рисунке), и назначаете эту границу ручками (синим на рисунке). Получаете целочисленный растр с тремя возможными значениями: 1, 2 и NoData (ноль должно быть).

image
 
 
 
 
Int() – это функция. В нее (т.е. в скобки) нужно поставить аргумент (т.е. название того растра, который Вы хотите конвертировать).
 
Добро пожаловать на сайт Вопросов и Ответов, где вы можете задавать вопросы по GIS тематике и получать ответы от других членов сообщества.
...