Revit API python错误:Exception:idx只能为0、1、2

时间:2019-03-10 01:14:33

标签: revit-api pyrevit

有人可以帮助我理解此错误。我仍在学习Revit API(和python),搜索没有帮助。我正在尝试获取元素的xyz定位点。

这是我的代码:

forEach

这是输出,注意:它确实返回三个值:

List<FinalObject> finalList = new ArrayList<>();
map.forEach((k,v) -> finalList.add(new FinalObject(k, v)));

这是错误消息。我不理解错误消息中对idx的引用:

elements= ui.Selection() 
for d in elements:
for l in d.Parameters:
    for x in d.Location.Point:
        print x

2 个答案:

答案 0 :(得分:2)

Point不是值的数组,访问X,Y,Z是正确的方法。

答案 1 :(得分:0)

虽然我仍然不了解该错误,但可以通过如下编辑代码来消除错误消息:

elements= ui.Selection() 
for d in elements:
for l in d.Parameters:
    for pt in d.Location.Point:
        print pt.X
        print pt.Y
        print pt.Z