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

25/12/2013

Очистка набора предварительного выбора

Вы можете использовать метод “Editor.SetImpliedSelection” для очистки набора предварительного выбора. Код ниже получает список всех предварительно выбранных примитивов, а затем очищает его передавая пустой массив ObjectId в метод SetImpliedSelection.

Код - C#: [Выделить]
  1. [CommandMethod("ClearPickFirst", CommandFlags.UsePickSet |
  2.                 CommandFlags.Redraw | CommandFlags.Modal)]
  3. static public void ClearPickFirst()
  4. {
  5.     Document doc = Application.DocumentManager.MdiActiveDocument;
  6.     Editor ed = doc.Editor;
  7.  
  8.     try
  9.     {
  10.         PromptSelectionResult result = ed.SelectImplied();
  11.  
  12.         if (result.Status != PromptStatus.OK)
  13.             return;
  14.  
  15.         SelectionSet ss = result.Value;
  16.         ObjectId[] ids = ss.GetObjectIds();
  17.  
  18.         ed.WriteMessage("\nВ наборе предварительного выбора " +
  19.                     ids.Length.ToString() + " примитивов");
  20.  
  21.         ObjectId[] newIds = new ObjectId[0];
  22.  
  23.         ed.SetImpliedSelection(newIds);
  24.     }
  25.     catch (System.Exception ex)
  26.     {
  27.         ed.WriteMessage(ex.Message);
  28.     }
  29. }

Источник: http://adndevblog.typepad.com/autocad/2012/05/clear-pick-first-selection-set-.html

Обсуждение: http://adn-cis.org/forum/index.php?topic=416

Опубликовано 25.12.2013