Добавить параметр в семейство

Главная Форумы Задать вопрос Добавить параметр в семейство

В этой теме 10 ответов, 2 участника, последнее обновление  Александр 3 нед., 6 дн. назад.

Просмотр 11 сообщений - с 1 по 11 (из 11 всего)
  • Автор
    Сообщения
  • #7080 Score: 2

    txt
    Модератор
    86 pts

    Установив пакеты DanEDU Dynamo и Rhythm , можно добавить параметры в семейство:

    здесь входное строковое значение “new” – это группа параметров, которая должна изначально существовать в файле общих параметров

    а строковое значение “new” – это добавляемый параметр , который должен также уже существовать в файле общих параметров

    Скрипт: Добавить параметр в семейство

    Сам метод из справки Ревит Апи:

    http://www.revitapidocs.com/2017.1/c4ae686a-4f88-fb43-ca4c-16d50256128d.htm

    #7253 Score: 0

    Александр
    Участник
    3 pts

    Подскажите как можно формулу добавить в значение параметра семейства?

    #7254 Score: 0

    Александр
    Участник
    3 pts

     

     

    пакет Rythm

    #7279 Score: 0

    Александр
    Участник
    3 pts

    Коллеги подскажите, как можно получить  формулу (в виде строки)   из уже созданного семейства?

    Суть идеи в том  чтобы создать одно семейство с работающими формулами и далее  заполнить по шаблону остальные.

    Может кто  с такой задачей сталкивался.

    #7280 Score: 0

    Александр
    Участник
    3 pts

    В пакете DanEdu есть ноды только получить значение, и запасать формулу.

    А вот получить формулу почему то нет :(

    #7289 Score: 0

    Александр
    Участник
    3 pts

    Может есть у кого пару светлых мыслей?

    #7291 Score: 1

    txt
    Модератор
    86 pts

    import clr
    clr.AddReference("RevitAPI")
    import Autodesk
    from Autodesk.Revit.DB import *
    clr.AddReference("RevitServices")
    import RevitServices
    from RevitServices.Persistence import DocumentManager
    doc = DocumentManager.Instance.CurrentDBDocument
    #IN[0] - выбранное в Ревите семейство
    #IN[1] Название нужного параметра (строка)
    pars_fam_editor=doc.EditFamily(doc.GetElement(UnwrapElement(IN[0]).GetTypeId()).Family).FamilyManager.Parameters
    get_formula=[i.Formula for i in pars_fam_editor if i.Definition.Name==IN[1]]
    OUT=get_formula

    #7294 Score: 0

    Александр
    Участник
    3 pts

    Txt приветствую, а можно сделать чтобы, скрипт вывел все формулы для всех параметров, включая пустые.

    По типу как это сделано в получение имени параметра.

    https://yadi.sk/d/37WgCzeK3QpMQ7

    Я хочу сделать приложение которое могло бы полностью копировать все параметры и  значения в  аналогичные семейства.

    #7298 Score: 1

    txt
    Модератор
    86 pts

    попробуйте так
    удалите слот IN[1]
    c скрипте замените строку
    get_formula=[i.Formula for i in pars_fam_editor]

    #7302 Score: 0

    Александр
    Участник
    3 pts

    Как то не пошло….

    Скрипт  пишет ошибку.  Как и в прошлом случае.

    #7305 Score: 0

    Александр
    Участник
    3 pts

    Хотелось бы получить список  той же размерности как и в ноде ” параметр нейм”, но с формулами.

    В идеале, чтобы  скрипт работал от нода “елемент.параметр”

Просмотр 11 сообщений - с 1 по 11 (из 11 всего)

Для ответа в этой теме необходимо авторизоваться.