获取图元类型的名称在Iron python for Revit中不起作用

2024-06-02 13:32:04 发布

您现在位置:Python中文网/ 问答频道 /正文

我在pyRevit环境中使用Iron python,代码如下:

element_types = \
        DB.FilteredElementCollector(doc)\
          .OfCategory(DB.BuiltInCategory.OST_Walls)\
          .WhereElementIsElementType()\ # getting family types not elements
          .ToElements()

for ele in element_types:
    print(ele.Name)

根据Revit API文档,这应该可以工作,并且可能在C#中工作。那里ele.Name既可以作为setter,也可以作为getter。 但在Ironpython中,上述代码失败,返回一个AttributeError: Name。但当我尝试ele.Name = "new_family_type_name"时,效果很好

所以我的问题是如何使ele.Name工作以获得族类型名称


Tags: 代码namedbdoc环境elementfamilytypes
2条回答

这通常是你在使用RPS时遇到的最早的怪癖之一——但不用担心,这很容易解决。尝试:

for ele in element_Types:
     print Element.Name.__get__(ele)

请尝试此代码

from rpw import db

collector = db.Collector(of_class='WallType')
element_types = collector.get_elements()    

for ele in element_types:
    print(ele.name)  

相关问题 更多 >