Сообщество программистов Autodesk в СНГ

ADN Club => AutoCAD .NET API => Тема начата: avc от 09-09-2021, 14:17:55

Название: Как создать новый SelectionSet с заданными FullSubentityPath
Отправлено: avc от 09-09-2021, 14:17:55
Требуется выбрать в чертеже набор граней и ребер солида. SetImpliedSelection может принимать не только список идентификаторов объектов, но и SelectionSet. Надеюсь, что это позволит выделять подобъекты, такие как ребра солида. Список нужных мне FullSubentityPath у меня уже есть. Создать новый SelectedSubObject вроде как можно. Но у SelectionSet конструктор вообще protected, из статических методов один FromObjectIds. А как с полными путями создать?
Собственно весь сыр-бор из-за глюков метода Solid3d.RemoveFaces. Удалять сверления в солиде можно только выбирая и поверхность цилиндра и ребра тоже. А RemoveFaces ребра не принимает. Хочу попробовать вызывать команду ERASE. Осталось как-то закинуть в ImpliedSelection нужные ребра с гранями...
Название: Re: Как создать новый SelectionSet с заданными FullSubentityPath
Отправлено: Александр Ривилис от 09-09-2021, 17:56:50
avc,
Похоже это возможно только в ObjectARX или через P/Invoke:
Код - C++ [Выбрать]
  1. int acedSSSubentAdd(
  2.     const AcDbFullSubentPath& subentity,
  3.     const ads_name sname,
  4.     ads_name result
  5. );
  6.