Dynamo – Русский – только для чтения
Раздел для программистов и специалистов, использующих Dynamo
отмена
Отображаются результаты для 
Показать  только  | Вместо этого искать 
Вы имели в виду: 

dynamo хотел прочитать высоту стены... но выходит ошибка

11 ОТВЕТ 11
РЕШЕНО
Ответить
Сообщение 1 из 12
nefeod
970 просмотров, 11 ответов

dynamo хотел прочитать высоту стены... но выходит ошибка

хотел считать высоту стенц, но вышла шибка. связана эта ошибка с непониманием Dynamo параметров на немецком?ScreenShot240.jpg

11 ОТВЕТ 11
Сообщение 2 из 12
architect.bim
в ответ: nefeod

К сожалению, без перевода ошибки сложно понять, что не нравится в данном случае Dynamo. Но могу подсказать быстрый способ, как получить значение параметра. Можно по индексу вытащить из исходного списка параметров необходимый и получить его значение.

 

Если элемент один, то это будет выглядеть так:190527_1239_002.jpg

 

Если несколько, то надо вытаскивать параметр из каждого подсписка (обратите внимание, что для одного из входных слотов задан уровень работы @Anonymous😞190527_1243_004.jpgА так, чтобы разобраться в ситуации, лучше перевести через translate текст ошибки.

 

 


Maxim Stepannikov | Architect, BIM Manager, Instructor
Сообщение 3 из 12
nefeod
в ответ: architect.bim

пишет:

внимание; не нашёл функции с таким именем.... getparametervalueByName для Revit.Elements.Parameter, для которой можно применить _Array.String. 

Сообщение 4 из 12
nefeod
в ответ: architect.bim

по 2 ому варианту сработало

Сообщение 5 из 12
nefeod
в ответ: architect.bim

но индекс параметра меняется... в первом списке выст оа стены под номером 3, во втором под номером 31, в третьем под номером 19... это как понимать? похоже только по имени можно выудить вывсоту.

Сообщение 6 из 12
nefeod
в ответ: architect.bim

не работает...

Сообщение 7 из 12
architect.bim
в ответ: nefeod

Если индекс меняется - придется все-таки фильтровать параметр из списка по имени. Так что возвращаемся к началу =)). Но вообще, текст ошибки говорит о том, что неправильно задано имя параметра. Вытащите один раз параметр по индексу. А затем получите из параметра его имя программно (Parameter.Name). B тогда можно это имя попробовать подключить в ваш исходный скрипт.


Maxim Stepannikov | Architect, BIM Manager, Instructor
Теги (2)
Сообщение 8 из 12
nefeod
в ответ: architect.bim

вытащил, название совпадет... ScreenShot325.jpg

Сообщение 9 из 12
architect.bim
в ответ: nefeod

Попробуйте не просто вытащить, а подключить полученное значение в нод получения значения параметра. Оно может выглядеть одинаково, а на самом деле какой-то символ отличаться. Еще, кстати, параметры можно отфильтровать по Id.


Maxim Stepannikov | Architect, BIM Manager, Instructor
Сообщение 10 из 12
nefeod
в ответ: architect.bim

всётаки этот бардак изза немецкого языка

Сообщение 11 из 12
YaroslavKalyuzha
в ответ: nefeod

Если меня не подводит yandex переводчик, то это параметр "Неприсоединенная высота". Его значение в миллиметрах можно получить для любого языка в ноде "Python scrypt":

 import clr
clr.AddReference('RevitAPI')
from Autodesk.Revit.DB import *

OUT=UnwrapElement(IN[0]).get_Parameter(BuiltInParameter.WALL_USER_HEIGHT_PARAM).AsDouble() * 304.8

Yaroslav Kalyuzha / Ярослав Калюжа
BIM-manager / BIM-менеджер
Facebook | VK
Expert Elite Member
Находите сообщения полезными? Поставьте Нравится (Like) этим сообщениям!
На ваш вопрос успешно ответили? Нажмите кнопку 'Утвердить решение'

Сообщение 12 из 12
ioavant
в ответ: nefeod

В первом сообщении вы подаете на вход нода ElementGetParameterValueByName параметры, а нужно подать элементы. Подведите провод такой же как на входе Elements.Parameter и все заработает 

Anton Devyatov
HVAC engineer
YouTube    Blog
ioavant@gmail.com

Не нашли то, что искали? Задайте вопросы в сообществе или поделитесь своими знаниями.

Новая тема  

Autodesk Design & Make Report