Страница 1 из 2

Получение горизонталей при наличии нескольких высоток.

Добавлено: 13 мар 2016, 12:58
evge_myasnikov
Предлагаю знающим форумчанам помочь решить такую задачу.

Исходные данные: топооснова с контрольными точками; абсолютные отметки высоты в каждой контрольной точке.
Задача: получить карту горизонталей для исходной топоосновы используя контрольные точки и их высоты.

Наверняка, способ решения этой задачи пригодится посетителям этого форума в будущем, т.к. описанная задача имеет общий вид, то есть она не частна.

Re: Получение горизонталей при наличии нескольких высоток.

Добавлено: 13 мар 2016, 13:20
Александр Мурый
Оцифровать точки, занести высоты в атрибуты; построить грид (растр высот) по точкам любым способом интерполяции (например, сплайнами); построить горизонтали по гриду.

Re: Получение горизонталей при наличии нескольких высоток.

Добавлено: 13 мар 2016, 14:36
evge_myasnikov
Александр Мурый писал(а):Оцифровать точки, занести высоты в атрибуты; построить грид (растр высот) по точкам любым способом интерполяции (например, сплайнами); построить горизонтали по гриду.
Александр, благодарю за информацию. Мы с Вами ранее переписывались по этому вопросу; я выполнил все инструкции, которые Вы привели, но желаемого результата не получилось, я в этом деле зашёл в тупик.

Думаю, если взяться за создание пошаговой инструкции по решению описанной задачи так, как это сделано, например, в статье, то она (инструкция) была бы полезна для начинающих пользователей SAGA.

Такое подробное описание пригодилось бы не только мне, но и всем форумчанам, сталкнувшимся с подобным вопросом.

Re: Получение горизонталей при наличии нескольких высоток.

Добавлено: 13 мар 2016, 15:20
Александр Мурый
По-хорошему, вы бы написали, что именно у вас получилось, что не получилось, какие _конкретно_ проблемы и ошибки. Инструкцию писать я прям сейчас не сяду, извините.

Re: Получение горизонталей при наличии нескольких высоток.

Добавлено: 13 мар 2016, 16:21
evge_myasnikov
Как Вы описали, я создал точечный 2D-шейп ("Create New Shapes Layer") с таблицей атрибутов, где сделал поле типа "4 byte floating point number" для моей карты и занёс туда нужные значения. Затем сделал 3D-точки, используя модуль "Convert Vertex Type (2D/3D)". Там в качестве поля для Z я указал нужное поле.

Подскажите, пожалуйста, как получить горизонтали из полученного слоя с трёхмерными точками.

Re: Получение горизонталей при наличии нескольких высоток.

Добавлено: 13 мар 2016, 16:52
jerry-maori
Вам не надо 3D точки.
Точнее надо, но не они.
У вас исходно по сути есть таблица с 3 столбцами - X координата, Y координата, Z координата. Первые две идут на формирование геометрии, 3-ая -- атрибут.
Всё.
На основе этой таблицы строит растр (не 3D точки, а именно растр) высот.
И далее хоть горизонтали, хоть что иное....
+ всяко это в SAGA типовая процедура...

Re: Получение горизонталей при наличии нескольких высоток.

Добавлено: 13 мар 2016, 17:15
bim2010
viewtopic.php?f=27&t=17151&hilit=+Spati ... cs#p126082
Если из грида построить шейпы то: Geoprocessing ==> Shapes ==> Grid ==>Vectorization ==> Contour Lines from Grid.

Re: Получение горизонталей при наличии нескольких высоток.

Добавлено: 13 мар 2016, 17:17
evge_myasnikov
jerry-maori писал(а):И далее хоть горизонтали, хоть что иное....
Я как раз и интересуюсь о том, последовательность каких модулей надо применить к полученному с помощью модуля "Convert Vertex Type (2D/3D)" слою точек, чтобы получить горизонтали рельефа. Буду очень благодарен тому пользователю SAGA, кто подскажет как это сделать.

Re: Получение горизонталей при наличии нескольких высоток.

Добавлено: 13 мар 2016, 17:24
evge_myasnikov
bim2010 писал(а):viewtopic.php?f=27&t=17151&hilit=+Spati ... cs#p126082
Если из грида построить шейпы то: Geoprocessing ==> Shapes ==> Grid ==>Vectorization ==> Contour Lines from Grid.
У меня есть набор созданных мной двумерных точек с созданным и заполненным мной атрибутом "Высота". Далее, используя модуль "Convert Vertex Type (2D/3D)" и указав атрибут "Высота" в качестве поля для Z, я получил новый слой точек.

Какие операции над полученным слоем точек нужно сделать, чтобы применить к этому слою точек модуль "Contour Lines from Grid"?

Re: Получение горизонталей при наличии нескольких высоток.

Добавлено: 13 мар 2016, 17:29
Александр Мурый
Попробуйте построить грид с помощью любого из выделенных на скриншоте модулей.
Выделение_001.png
Выделение_001.png (32.05 КБ) 14574 просмотра
3D-точки не нужны для построения грида.

Re: Получение горизонталей при наличии нескольких высоток.

Добавлено: 13 мар 2016, 17:35
Александр Мурый
Там всё очевидно в модулях: укажите Points (ваши точки), Attribute (колонка с высотой), размер ячейки (Cellsize). Как-то так, если по-простому.

Re: Получение горизонталей при наличии нескольких высоток.

Добавлено: 13 мар 2016, 17:40
evge_myasnikov
Александр Мурый писал(а):Попробуйте построить грид с помощью любого из выделенных на скриншоте модулей.
Вложение Выделение_001.png больше недоступно
3D-точки не нужны для построения грида.
Александр, от всей души благодарю Вас и других пользователей, помогавших в этой задаче. После Вашей подсказки о группе модулей Gridding у меня получилось сделать горизонтали. Прилагаю снимок экрана. Я применял модуль "Natural neighbour".

Re: Получение горизонталей при наличии нескольких высоток.

Добавлено: 13 мар 2016, 17:48
jerry-maori
А теперь у вас начинается самое весёлое -- выбор оптимальной модели для построения растра;)

Re: Получение горизонталей при наличии нескольких высоток.

Добавлено: 13 мар 2016, 18:04
evge_myasnikov
jerry-maori писал(а):А теперь у вас начинается самое весёлое -- выбор оптимальной модели для построения растра;)
Хочу сообщить интересный факт - поиск решения этой задачи я начал с 9 января 2016 года, задав вопрос в ветке форума, а только сейчас получил на него ответ. То есть около двух месяцев.

А уж подбор алгоритма обработки точек для построения - это дело обыденное.

Re: Получение горизонталей при наличии нескольких высоток.

Добавлено: 13 мар 2016, 21:44
evge_myasnikov
Если кому интересно, привожу результат обработки топоосновы. Жёлто-чёрные цифры - исходные отметки высот. Красные изолинии и зелёно-чёрные цифры - результат обработки отметок высот модулем Grid -> Gridding -> Natural Neighbour.