Закрытие/открытие Рабочих наборов чепкз Dynamo

Автор Тема: Закрытие/открытие Рабочих наборов чепкз Dynamo  (Прочитано 2338 раз)

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

Тема содержит сообщение с Решением. Нажмите здесь чтобы посмотреть его.

Оффлайн verlov.vvАвтор темы

  • ADN OPEN
  • Сообщений: 3
  • Карма: 0
  • Skype: live:8233286d12aab691
Добрый день! Есть вопрос по Revit API:
Как можно закрыть/открыть Рабочий набор в Revit, используя Revit API ?

Нашел пока только свойство РН : "worksect.IsOpen". Выдает только значение true/false. Является только параметром для чтения.
А вот как изменить это свойство, не нашел никакого метода. Может подсскажете?  :-\

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

  • Administrator
  • *****
  • Сообщений: 1152
  • Карма: 338
  • Skype: alexandr.ignatovich.itc
Похоже, что пока никак. С помощью API сейчас можно контролировать, например, какие рабочие наборы открывать при открытии проекта, при создании связанного файла, управлять видимостью, открыть/закрыть в текущем проекте нельзя :-(

Оффлайн verlov.vvАвтор темы

  • ADN OPEN
  • Сообщений: 3
  • Карма: 0
  • Skype: live:8233286d12aab691
Похоже, что пока никак. С помощью API сейчас можно контролировать, например, какие рабочие наборы открывать при открытии проекта, при создании связанного файла, управлять видимостью, открыть/закрыть в текущем проекте нельзя :-(

У меня как раз стоит задача открывать и закрывать РН в связанных файлах. Может это можно сделать через WorksetConfiguration Class ?

Отмечено как Решение verlov.vv 16-06-2020, 22:07:55

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

  • Administrator
  • *****
  • Сообщений: 1152
  • Карма: 338
  • Skype: alexandr.ignatovich.itc
Тогда да, с помощью метода RevitLinkType.LoadFrom должно сработать, передать параметром WorksetConfiguration c нужными настройками открытия/закрытия пользовательских рабочих наборов

Оффлайн verlov.vvАвтор темы

  • ADN OPEN
  • Сообщений: 3
  • Карма: 0
  • Skype: live:8233286d12aab691
Тогда да, с помощью метода RevitLinkType.LoadFrom должно сработать, передать параметром WorksetConfiguration c нужными настройками открытия/закрытия пользовательских рабочих наборов
Да, благодарю за подсказку. Все получилось. В итоге получилось вот так:
    wsConf = WorksetConfiguration(WorksetConfigurationOption.CloseAllWorksets)
    wsConf.Open(worksectionListId)
    linkType = doc.GetElement(worksect.GetTypeId())
    ERR = linkType.Load().GetExternalResourceReference()
    linkType.LoadFrom(ERR, wsConf)