Revit API收集器:无法强制转换值:空格到目标类型:

2024-04-16 13:34:31 发布

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

我不明白为什么我的代码适用于其他revit类别:

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

dd1 = rpw.db.Collector(of_category='Spaces') 

产生此错误:

IronPython Traceback:
Traceback (most recent call last):
 File "C:\Users\USTL02870\Dropbox\WSP Project local folders\PyRevit custom extensions folder\BTS-NY-BETA.extension\BTS-NY-BETA.tab\Beta Tools.panel\test1.pushbutton\beta1_script.py", line 16, in 
 File "C:\Users\USTL02870\AppData\Roaming\pyRevit-Master\pyrevitlib\rpw\db\collector.py", line 445, in __init__
 File "C:\Users\USTL02870\AppData\Roaming\pyRevit-Master\pyrevitlib\rpw\db\collector.py", line 464, in _collect
 File "C:\Users\USTL02870\AppData\Roaming\pyRevit-Master\pyrevitlib\rpw\db\collector.py", line 78, in apply
 File "C:\Users\USTL02870\AppData\Roaming\pyRevit-Master\pyrevitlib\rpw\db\collector.py", line 190, in process_value
 File "C:\Users\USTL02870\AppData\Roaming\pyRevit-Master\pyrevitlib\rpw\utils\coerce.py", line 149, in to_category
 File "C:\Users\USTL02870\AppData\Roaming\pyRevit-Master\pyrevitlib\rpw\db\builtins.py", line 134, in fuzzy_get
 File "C:\Users\USTL02870\AppData\Roaming\pyRevit-Master\pyrevitlib\rpw\db\builtins.py", line 107, in get
rpw.exceptions.RpwCoerceError: Could not cast value:spaces to target_type:

Tags: inpymasterdblineroamingusersappdata
1条回答
网友
1楼 · 发布于 2024-04-16 13:34:31

什么目标类型?如果您的目标类型是房间,则说明由The Building CoderCollecting all Rooms on a Given Level的讨论提供:您不能直接收集Room元素,因为它们是Revit API的人工构造,不存在于Revit内部。因此,您需要收集SpatialElement对象,而不是Room父类,并对结果进行后期处理,例如,将它们强制转换到文件室。另见Accessing Room DataFiltering for a Non-Native Class。你知道吗

相关问题 更多 >