Очередность выполнения нодов
Главная › Форумы › Задать вопрос › Очередность выполнения нодов
- В этой теме 31 ответ, 6 участников, последнее обновление 6 лет, 9 месяцев назад сделано Семен.
-
АвторСообщения
-
Здравствуйте. В динамо работаю не долго.
Сделал себе скрип, который заполняет нужные мне параметры в нужных элементах – простенький такой скрипт.
Но при изменений модели и перезапуске скрипта новые параметры заполняются а старые ( с предыдущего просчета ), которых уже не должно быть остаются. Вышел из положения создав еще один скрипт что бы затирал все значения ( ставил нули ).
Можно как то в одном скрипте организовать поочередность выполнения скрипта ( сначала затереть все данные а потом новые записать ) ?Вроде бы по умолчанию все ноды параллельно выполняются.
ПС. с питоном не дружу ((
Спасибо – буду пробовать
Все работает – спасибо за помощь – все так просто …
рад был помочь)
Ренат Я. ,
а если создавать геометрию нодами используя твой способ с нодами ( Start/End Transactio) , то она также будет создаваться заново ?
имею ввиду когда допустим создаем стену на основе линии и эту линию двигать, то каждый раз при запуске нода не создается новая стена, а та же стена меняет свое местоположение . Твой способ создает заново геометрию или работает также как ноды?
txt
не пробовал, но думаю не должен создавать заново, транзакция это грубо говоря порядок действий,
а дайнама должна помнить, что она делает)пример, я хочу создать оси и проставить размеры между ними в одном скрипте, но если это делать без транзакции, то размерный нод выдаст ошибку, потому что получается я хочу поставить размер между осями, которых еще нет, т.к. все делается паралельно, для этого надо заключить часть где создаются оси в нады транзакции start/end
Ренат, как считаешь, ноды ( Start/End Transaction) как то связаны с питоновским “ToDSType(False/True)” ?
нет, это аналоги
# "Start" the transaction
#TransactionManager.Instance.EnsureInTransaction(doc)
# "End" the transaction
#TransactionManager.Instance.TransactionTaskDone()пример, я хочу создать оси и проставить размеры между ними в одном скрипте, но если это делать без транзакции, то размерный нод выдаст ошибку, потому что получается я хочу поставить размер между осями, которых еще нет, т.к. все делается паралельно, для этого надо заключить часть где создаются оси в нады транзакции start/end
То есть Start/End Transaction надо указывать для той связки нодов которая должна выполняться в первую очередь?
именно так
Ок, понятно. а если таких связок блоков ни два, а несколько? здесь наверное уже не получится задать для каждой связки блоков последовательность выполнения вида №1, 2, 3 и т.д.
почему? транзакции могут идти одна за другой, но действия должны быть последовательные
допустим мне необходимо чтобы связка нодов выполнялась в порядке ,указанном красными цифрами :
я о том что, так , видимо сделать не получится
получилось сделать такую последовательность
проверить можно так, выбрать какой либо элемент, выполнить скрипт.. и смотреть на значение параметра “Комментарии”. для того чтобоы узнать последовательность действий нужно нажимать кнопку шаг назад, для отмены последнего изменения, каждая транзакция создает шаг отката
-
АвторСообщения
- Для ответа в этой теме необходимо авторизоваться.