Isolate elements linked files

Автор Тема: Isolate elements linked files  (Прочитано 5307 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Антон ОстанинАвтор темы

  • ADN OPEN
  • ***
  • Сообщений: 107
  • Карма: 6
Isolate elements linked files
« : 18-05-2015, 18:29:11 »
Добрый день!
Помогите, пожалуйста, как сделать Isolate для выделенных элементов прикрепленного файла?
Для основного документа я сделал так:

Код - C# [Выбрать]
  1.             UIApplication uiapp = commandData.Application;
  2.             UIDocument uidoc = uiapp.ActiveUIDocument;
  3.             Application app = uiapp.Application;
  4.             Document doc = uidoc.Document;
  5.  
  6.              Reference reference;
  7.             try
  8.             {
  9.               reference = uidoc.Selection.PickObject(ObjectType.Element,
  10.                     new SystemElementFilter(),
  11.                     "Select an alement");
  12.             }
  13.             catch (OperationCanceledException)
  14.             {
  15.                 return Result.Cancelled;
  16.  
  17.             }
  18.             var elem = doc.GetElement(reference.ElementId);
  19.             var view = doc.ActiveView;
  20.             using (var t = new Transaction(doc, "Isolate"))
  21.             {
  22.                 t.Start();
  23.                 try
  24.                 {
  25.                     view.IsolateElementTemporary(elem.Id);
  26.                 }
  27.                 catch (Exception)
  28.                 {
  29.                     throw;
  30.                 }
  31.                 t.Commit();
  32.             }
  33.  
« Последнее редактирование: 18-05-2015, 18:38:49 от Александр Ривилис »

Отмечено как Решение Антон Останин 19-05-2015, 12:34:22

Оффлайн Александр Игнатович

  • Administrator
  • *****
  • Сообщений: 1152
  • Карма: 338
  • Skype: alexandr.ignatovich.itc
Re: Isolate elements linked files
« Ответ #1 : 19-05-2015, 05:55:43 »
День добрый!

То, что нельзя сделать через UI Revit-а, в 95% случаев нельзя сделать и программно, можно изолировать связанные модели целиком, но элементы из связанной модели изолировать не получится...

Оффлайн Александр Игнатович

  • Administrator
  • *****
  • Сообщений: 1152
  • Карма: 338
  • Skype: alexandr.ignatovich.itc
Re: Isolate elements linked files
« Ответ #2 : 19-05-2015, 05:58:22 »



Оффлайн Виктор Чекалин

  • Administrator
  • *****
  • Сообщений: 694
  • Карма: 111
  • Skype: chekalin-v
Re: Isolate elements linked files
« Ответ #3 : 19-05-2015, 09:42:39 »
Антон Останин, немного дополню ответ Александра.

Элементы изолируются на каком-то конкретном виде. в API это метод View.IsolateElement(s), где в качестве параметров передается идентификаторы элементов, которые нужно изолировать.
Так как вид является объектом конкретного документа, то очевидно, что идентификаторы скрываемых объектов, должны принадлежать тому же самому документу, что и вид. А значит и передать идентификаторы элементы связанного файла не получится.

Попробовал покопаться поглубже на предмет наличия подходящих методов - не нашел. Но это вполне ожидаемо, так как
о, что нельзя сделать через UI Revit-а, в 95% случаев нельзя сделать и программно
Данное действие попадает под эти 95%

Оффлайн Антон ОстанинАвтор темы

  • ADN OPEN
  • ***
  • Сообщений: 107
  • Карма: 6
Re: Isolate elements linked files
« Ответ #4 : 19-05-2015, 12:33:29 »
Спасибо за информацию!