Точки по линии через заданный интервал

ArcGIS 8.x,9.x,10.x (Arcview, ArcEditor, Arcinfo).
Ответить
Uchenik
Интересующийся
Сообщения: 29
Зарегистрирован: 10 мар 2015, 05:28
Репутация: 3
Откуда: Хабаровск

Точки по линии через заданный интервал

Сообщение Uchenik » 19 сен 2017, 02:39

Доброго времени суток! Товарищи, помогите решить задачу: имеются 1500 изолинии, по которым с заданным интервалом надо построить точки да так, чтобы сохранить в атрибутах значение изолинии! Знаю в ArcView есть модуль, который это делает! Мне надо в ArcGis...здесь в редакторе есть "построить точки", но он работает с одной линией и не сохраняет атрибуты. :( .Может что подскажите..?!!

5Nap
Участник
Сообщения: 84
Зарегистрирован: 21 ноя 2010, 17:36
Репутация: 31

Re: Точки по линии через заданный интервал

Сообщение 5Nap » 19 сен 2017, 12:40

Python. arcpy.Polyline + positionAlongLine + Cursor.
что-то вроде:

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

step = 10  # Meters
with arcpy.da.InsertCursor(pnt_fc, ['SHAPE@', 'ATTR1', 'ATTR2']) as ic:
    with arcpy.da.SearchCursor(line_fc, ['SHAPE@', 'ATTR1', 'ATTR2']) as sc:
        for row in sc:
            length = row[0].length
            position = 0
            while position<length:
                pnt = row[0].positionAlongLine(position)
                newpnt = [pnt]+row[1:]
                ic.insertRow(newpnt)
                position += step
Или если у вас Pro, можно воспользоваться встроенным Generate Points Along Lines

Ответить

Вернуться в «ArcGIS»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя