Простановка точек вдоль линии

0 голосов
спросил 05 Май, 05 от Гость (210,080 баллов) в категории Программные продукты Esri
Задача: Есть линейная тема, по ней нужно наставить точек через фиксированное расстояние от начала линии или от фиксированной точки на этой линии. Точек много.

Мерить измерялкой и ставить точки - не точно и не технологично.
На сайте www.esri.com - кроме как различные random расставлялки точек вдоль линии - ни чего нет - или не работает.

Идеально автоматизировать процесс потому как число точек переваливает за 1000 (информация по точкам - расстояние от предидущей или от начальной - все в виде таблички).

Может быть кто сталкивался или видел что нибудь - подскажите пжалста.
Михаил

12 Ответы

0 голосов
ответил 05 Май, 05 от BigSerg (4,080 баллов)
есть длина полилинии (Length = pline.ReturnLength)
есть длина шага (step - сам задаешь) - получаешь в процентах шаг относительно длины полилинии (proc = step/Length*100)
далее посмотри скрипт в ветке - динамическое обновление вида
0 голосов
ответил 05 Май, 05 от Vasiliy2 (8,240 баллов)
0 голосов
ответил 05 Май, 05 от Гость (210,080 баллов)
есть длина полилинии (Length = pline.ReturnLength)
есть длина шага (step - сам задаешь) - получаешь в процентах шаг относительно длины полилинии (proc = step/Length*100)
далее посмотри скрипт в ветке - динамическое обновление вида

Рад бы посмотреть - да и сделать!!! - но не дал мне бог способностей к програмированию - понимать понимаю - написать не могу!!! Спасибо за ответ!!! image
0 голосов
ответил 05 Май, 05 от Гость (210,080 баллов)

там есть

Посмотрел! image но я не очень понял что из тех утилит мне может подойти! Самое близкое к решению моей проблемы это утилитка Polyline to Point - но она выполняет нужную мне операцию единожды и с фиксированным значением за один проход - т.е. мне по всей видимости надо сделать около 1000 операций с подстановкой различных значей - по времени очень нереально!!!

Но все равно спасибо!
0 голосов
ответил 05 Май, 05 от Гость (210,080 баллов)
Мне кажется я не очень точно сформулировал задачу!!!
Уточню!
есть линейный объект на нем должно лежать около 2000 тысяч точечных объеков.
Массив данных представляет собой расстояние от начальной точки линии до каждой точки находящейся вдоль этой линии (т.е. не кратчайшее расстояние!!!) Цифири представленны в метрах - например 12, 45, 134, 156, 345, 454 и т.д.
Задача автоматизировать процесс проставления точек из массива вдоль линии!!!

Спасибо!
0 голосов
ответил 06 Май, 05 от BigSerg (4,080 баллов)
Попробуй открыть книгу по авеню или хелп
за день два сможешь сам - все равно быстрей чем через форум, вот тебе подсказка:
LineObj = (твоя линия)
aMassiv = {12, 45, 134, 156, 345, 454}
for each i in aMassiv
Length = LineObj.ReturnLength
aPoint = LineObj.Along(i/Length*100)
end
aPoint - и есть твоя точка
в цикле она добавит их все
учти - если i>Length - она получит конечные точки полилинии
смотри раздела View,Graphics,Shape,Vtab - ну и наследников естественно или тебе просто прийдеться высылать доброму человеку все свои входные данные и он напишет тебе скрипт
0 голосов
ответил 06 Май, 05 от TumGeo (220 баллов)

Есть модуль divide2.avx. Там Ваша задачка решается просто. Сбросьте свой адрес, я перешлю

KNV

0 голосов
ответил 06 Май, 05 от Гость (210,080 баллов)
Попробуй открыть книгу по авеню или хелп
за день два сможешь сам - все равно быстрей чем через форум, вот тебе подсказка:
LineObj = (твоя линия)
aMassiv = {12, 45, 134, 156, 345, 454}
for each i in aMassiv
Length = LineObj.ReturnLength
aPoint = LineObj.Along(i/Length*100)
end
aPoint - и есть твоя точка
в цикле она добавит их все
учти - если i>Length - она получит конечные точки полилинии
смотри раздела View,Graphics,Shape,Vtab - ну и наследников естественно или тебе просто прийдеться высылать доброму человеку все свои входные данные и он напишет тебе скрипт

Гы! буду пробывать спасибо!!! - повод научиться Avenue! image
0 голосов
ответил 06 Май, 05 от Гость (210,080 баллов)

Есть модуль divide2.avx. Там Ваша задачка решается просто. Сбросьте свой адрес, я перешлю


KNV


gudauri@land.ru
0 голосов
ответил 06 Май, 05 от Гость (210,080 баллов)

Да скинь его в скрипты.Может еще кому нибудь пригодиться.

 

Добро пожаловать на сайт Вопросов и Ответов, где вы можете задавать вопросы по GIS тематике и получать ответы от других членов сообщества.
...