Помогите новичку!

Главная Форумы Задать вопрос Помогите новичку!

Просмотр 15 сообщений - с 1 по 15 (из 19 всего)
  • Автор
    Сообщения
  • #4361 Score: 0
    Slava
    Участник
    1 pt

    Посчитал площадь изоляции определенной толщины, нашел ее суммарную площадь. Не пойму как это значение передать в ревит. Что в данном случае подключать к element. Каким должен быть параметр в ревите(по типу, экземпляру и т.п.). 

    #4362 Score: 0
    ИваСерж
    Хранитель
    134 pts

    Я так понимаю, для решения проблемы нужно:
    1. Добавить этот параметр к параметрам воздуховода, как параметр экземпляра.
    2. Всем воздуховодам, для которых расчитан этот параметр, назначить этот параметр ))  Нод на картинке выбран правильно. Теперь подробно:
    2.1 На ввод element подаем список воздуховодов, которым надо назначить этот параметр
    2.2 На ввод ParameterName – имя существующего(!) параметра для воздуховодов
    2.3 Список значений, которые надо присвоить.

    #4363 Score: 0
    Slava
    Участник
    1 pt

    А есть ли возможность, извлекать параметры по типу, которые мы создаем. На данном скриншоте параметр не извлекается в Dynamo, пока не назначить его по экземпляру (что не удобно при работе). Смотрел видео Лобанова про квартиры, там используется развертка, как я понял для доступа ко всем параметрам.

    #4364 Score: 0
    Slava
    Участник
    1 pt

    Спасибо, Серж. Я понял как это работает). Однако по типу можно ли сделать?

     

     

    #4365 Score: 0
    Анатолий
    Участник
    37 pts

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

    #4366 Score: 0
    ИваСерж
    Хранитель
    134 pts

    Попробуйте назначить параметр не категории “Материал изоляции труб”, а самим трубам.

    #4367 Score: 0
    Slava
    Участник
    1 pt

    Анатолий, а какие значения берет ваш нод? Вот что выдает на скрине. Для колон ошибки не выдает, но и списка не выводит…

    #4368 Score: 0
    Slava
    Участник
    1 pt

    Geter по имени который принимает значение от данного нода тоже добавлял, ошибка аналогична

     

    #4369 Score: 0
    ИваСерж
    Хранитель
    134 pts

    У меня есть глубокие сомнения, что назначение каких либо параметров изоляции необходимо. Что дальше будете с этим параметром делать? У вас получится считать его для спецификации? Вы попробовали реализовать ваши задачи вручную?
    Теперь по скрипту:
    1. Изоляция не экземпляр семейства. Очевидно, FamilyInstance.Type выдает ошибку.
    Этим нодом по экземпляру семейства определяют к какому типоразмеру он относится. Для изоляции этот метод не применим.
    2. Спасибо за скрин параметров изоляции. Очевидно, в именах параметров изоляции трубы нет параметра с названием “Рулон1” . Скорее всего, вам нужен параметр “Толщина изоляции”.

    П.С. Можно экспортировать весь скрипт нажав Файл-Экспорт рабочего пространства как изображение. Или можно просто на фотик кликнуть под крестиком закрытия Динамо. Пожалуйста, экспортируйте скрипт полностью, так его проще анализировать.

    #4371 Score: 0
    Slava
    Участник
    1 pt

    Параметр задан по типу (как на скрине выше), по экземпялру все работает, но придется назначать каждый раз одному и тому же типу изоляции одни и те же значения. На первом скрине параметры Рулон1 и Рулон2 по экземпляру(рабочие) и rul1 по типу(не рабочий). На втором скрине скрипт

    #4372 Score: 0
    Slava
    Участник
    1 pt

    Пробовал через скрипт Python, но он не находит параметр и выдает ошибку типов. К слову применял для интереса к другим категориям выводит просто ноль для длины, хотя бы тех же труб (системный параметр “Длина”). На скрине параметр вписан условно

    #4373 Score: 0
    ИваСерж
    Хранитель
    134 pts

    AsInteger() ???  Конечно будет ошибка. Это ж не целое число, а число с точкой. Нужно ещё попробовать AsDouble() AsString().
    Если ничего не писать, то должно выдать на выход просто параметр Ревит.
    Кстати, питон нод в таком виде выдаст последний зашедший в цикл элемент.
    Создайте список, в который будете добавлять mas.
    outlist = ()

    outlist.append(mas)

    OUT = outlist

    Опишите пожалуйста алгоритм. Не могу понять логику того, что вы делаете. Ваш скрипт в данный момент представляет “вещь в себе” – сложно понять цель.

     

    #4374 Score: 0
    Slava
    Участник
    1 pt

    По поводу типов: перебирал все, результат один. Да, спасибо за подсказку по поводу списка. Если убрать тип(закоменчен) выдает null (значение в ревите задано)

    #4375 Score: 0
    Slava
    Участник
    1 pt

    По картинке: 

    Составная изоляция, каждый слой имеет свою толщину (в зависимости от назначения и среды в трубе). Скриптом выбираем по слою1 и слою2 толщины и вычисляем их площадь поверхности. Затем сортируем в зависимости от толщины слоя. Площади слоев с одинаковой толщиной слаживаем. получаем площадь поверхности для слоев 25 и 32 по всем трубам

    #4376 Score: 0
    Slava
    Участник
    1 pt

    Как бы все тривиально, но все же решить по человечески не удается)..пока. Тема актуальная, так как в ревите нет многослойности изоляции, и способы предложенные многими блогерами далеки от применения в промышленных масштабах. Думаю данный способ облегчил бы многим жизнь

     

Просмотр 15 сообщений - с 1 по 15 (из 19 всего)
  • Для ответа в этой теме необходимо авторизоваться.