использование python для доступа к значению параметра элемента через RPW

Я не уверен, что делаю не так. Мой код

# -*- coding: utf-8 -*-
from rpw import revit, db, ui, DB, UI
import clr

# Import RevitAPI
clr.AddReference("RevitAPI")

dd1 = db.Collector(of_category='Data Devices') 

for d in dd1:
    o=db.Element(d)
    print ("Value of comments parameter = ", o.parameters['Comments'].value)

мое сообщение об ошибке:

File "C:\Program Files\pyRevit-Master\pyrevitlib\rpw\db\parameter.py", line 70, in __getitem__
rpw.exceptions.RpwParameterNotFound: parameter not found [element:2367981]:[param_name:Comments]

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


person user3808752    schedule 23.01.2019    source источник
comment
Я думаю, проблема в моем заявлении о сборщике, если я напечатаю dd1, я получу: ‹rpw: FamilySymbol [name: WALL] [id: 2367981]›   -  person user3808752    schedule 23.01.2019
comment
Итак, похоже, что оператор dd1 = db.Collector(of_category='Data Devices') собирает устройства данных, которые являются экземплярами в модели Revit И экземплярами в коллекции FamilyTypes?   -  person user3808752    schedule 23.01.2019


Ответы (1)


Я изменил строку dd1 = db.Collector(of_category='Data Devices'), чтобы читать dd1 = rpw.db.Collector(of_category='Data Devices', of_class='FamilyInstance'), и это устранило проблему.

person user3808752    schedule 23.01.2019