Страница 1 из 1
Вывод расстояния между вершинами полигона в Arcview GIS
Добавлено: 13 сен 2006, 23:21
lionkil_kil
Вот столкнулся с такой необходимостью
есть полигон, нужно вывести меры лини (расстояние между точками), прошерстил через поиск всевозможные варианты, но задачу свою так и не решил, поделитесь опытом в реализации вывода расстояний для полигонов между вертексами можно через таблицу, а можно и сразу в аннотацию

ПЛЗ
Добавлено: 19 сен 2006, 20:28
Максим Дубинин
результат кладется в c:\lines.shp
Код: Выделить всё
atheme = av.getactivedoc.getactivethemes.get(0)
aFTab = atheme.getftab
anewline = FTab.makenew("c:\lines.shp".asfilename, polyline)
f_length = Field.Make("length", #FIELD_DOUBLE, 20, 10)
f_shape2 = anewline.FindField("shape")
anewline.addfields({f_length})
f_shape = aFTab.FindField("shape")
anewline.seteditable(true)
for each rec in aFTab
apolygon = aFTab.ReturnValue(f_shape, rec)
aline = apolygon.aspolyline
points = aline.asmultipoint.aslist
numpoints = points.count - 2
for each i in 0..numpoints
apoint = points.get(i)
newline = line.make(points.get(i), points.get(i+1))
length = newline.ReturnLength
newrec = anewline.addrecord
anewline.setvalue(f_shape, newrec, newline.aspolyline)
anewline.setvalue(f_length, newrec, length)
end
end
anewline.seteditable(false)
Добавлено: 19 сен 2006, 21:23
lionkil_kil
sim писал(а):результат кладется в c:\lines.shp
Очень и очень признателен

, а позвольте усложнить

Если есть необходимость, добавить лини или в косметическом слое или в новь созданом шейпе, так же вывести длину...можно использовать сей скрипт под Арквью и позвольте узнать, где выставляется кол-во знаков после "," ???