2013-08-01 2 views
0

У нас есть концепция группировки между блоками. Итак, при выборе одного блока мне нужно показать другие блоки, выбранные в AutoCAD -2013. У меня есть AutoCAD Handle из всех доступных блоков.Показать блок, выбранный в Autocad - C#

Блоки должны отображать подсветку и также должны быть частью SelectionSet в случае, если они запускают команду с неизменным/измененным выбором.

Как это сделать в коде - C#? Спасибо

+1

Что вы пробовали и какие проблемы вы испытываете? мы можем увидеть какой-то код? –

+1

То, о чем вы просите, не имеет никакого значения с точки зрения программирования. Вам нужно провести некоторое исследование, а затем, если у вас появятся вопросы и спросите. Не должно быть причин, по которым вам нужно выделить «выбрать» блоки, и если вам нужно это сделать, вам нужно будет получить их в выделенном наборе до «выделения» их. Вы должны мне написать ... –

ответ

0

Спасибо Trae, Настройка selectionSet сделала это.

Я искал это.

List<ObjectId> pid = new List<ObjectId>(); 
//Add ObjectIds to the pid 
SelectionSet ss1 = SelectionSet.FromObjectIds(pid.ToArray()); 
ed.SetImpliedSelection(ss1) 

Это позволит выбрать соответствующие блоки в AutoCAD.

Из комментариев, я понимаю, что вопрос был не таким ясным.
Я добавляю блоки к чертежу, и эта информация и дескриптор также входят в мою базу данных.
I группирует блоки на основе пользовательского ввода, который также входит в мою БД.

Опция, которую я должен был предоставить пользователю, заключалась в том, чтобы выполнить команду и выбрать один блок, принадлежащий группе, все остальные блоки группы должны быть выбраны. И, следовательно, мой вопрос.

+0

Рад, что вы разобрались. При работе с объектами из базы данных ручка не очень важна. Вы будете использовать ObjectIds. Взгляните на мой github, ссылка находится в моем профиле, и вы можете увидеть работу базы данных. Также изучите транзакции. Кроме того, autocad имеет класс ObjectIdCollection. –

Смежные вопросы