Сообщество программистов Autodesk в СНГ
ADN Club => AutoCAD .NET API => Тема начата: Алексей (IdeaSoft) от 07-07-2018, 19:44:56
Название:
Удаление нескольких вершин полилинии
Отправлено:
Алексей (IdeaSoft)
от
07-07-2018, 19:44:56
Подскажите, я могу удалять в цикле вершины 2d-полилиниии
Ну вообще как корректно удалить вершины?
К примеру у меня есть номера удаляемых вершин полилинии.
Код - C#
[Выбрать]
int
[
]
Nums
=
{
3
,
4
,
7
,
8
}
;
Наверное в цикле так не смогу сделать.
Будет индекс вне диапазона
или вообще удалятся не те номера какие нужно?
Удалю 3 вершину на ее место станет 4-я все сместится и получится бред.
Или ни чего не сместится пока не вызовешь метод
Код - C#
[Выбрать]
Transaction
.
Commit
(
)
?
Код - C#
[Выбрать]
polyline PL
;
...
foreach
(
int
n
in
Nums
)
{
PL
.
RemoveVertexAt
(
n
)
;
}
Название:
Re: Удаление нескольких вершин полилинии
Отправлено:
Вильдар
от
07-07-2018, 20:19:59
Может отсортировать по убыванию индексы и удалять.
Название:
Re: Удаление нескольких вершин полилинии
Отправлено:
Алексей (IdeaSoft)
от
07-07-2018, 20:26:30
А ну да точно нужно пробежаться в цикле в обратном направлении.
Название:
Re: Удаление нескольких вершин полилинии
Отправлено:
Алексей (IdeaSoft)
от
07-07-2018, 20:47:36
Все норм получилось