Сообщество программистов Autodesk в СНГ
ADN Club => AutoCAD .NET API => Тема начата: avc от 15-09-2024, 09:39:11
-
Я придумываю способ как получить список объектов внутри вида ModelDoc. Но я даже не могу отладить код - никаким способом я не могу выбрать объект ViewBorder в чертеже. Метод Editor.SelectImplied возвращает статус ошибки, когда вид выбран до вызова команды. метод GetSelection так же возвращает ошибку или пишет, что 1 объект отфильтрован и требует выбрать заново. Причем, я даже попытался создать фильтр выбора для объектов VIEWBORDER. Это не помогает.
При этом, если я вызываю SelectImplied по событию Idle, то я получаю статус OK и идентификатор вида, нет проблем. То есть проблема возникает только внутри методов, помеченных как CommandMethod.
Кто-нибудь знает как обойти это странное ограничение? Возможно есть какой-то тайный недокументированный флаг для CommandFlags?
-
Я придумываю способ как получить список объектов внутри вида ModelDoc.
Возможно, нужно использовать события, например Editor.SelectionAdded.
Возможно не Editor нужно использовать, а другой объект View, ViewBorder, Viewport ... .
-
Пока решил проблему путем запроса точки, а не объекта. Дальше уже по точке не проблема найти ViewBorder. Но можно попробовать и SelectionAdded.
Но это не решает проблему предварительного выбора ViewBorder до вызова моей команды. Тоже конечно можно перехватывать события. Но как-то это через чур сложно получается. Я-то искал пути чтоб штатные функции перестали блокировать выбор ViewBorder ...