我正在看公开的模型“210 King - Autodesk Toronto.rvt”,我从2016年升级到2018年(原版2016版here)。当我在模型中选择阶梯对象时,它在“属性”面板中具有“实际胎面深度”。
我想在API中访问这个步骤深度。在Revit附带的示例项目中,楼梯属于Autodesk.Revit.DB.Architecture.Stairs
类(源自Element
),具有ActualTreadDepth
属性。但在这个模型中,楼梯都只是类Element
的对象。将它们投射到Stairs
会引发异常。
两个问题:
Stairs
? (我是Revit API的新手)您可以直接在Element
类上访问参数值。没有必要投射到Stairs
。这对参数访问没有任何影响。
如果您不熟悉Revit API,请查看getting started material。这将更深入地回答这个问题,还有许多其他问题。
你的'为什么'问题的答案将有很大帮助,我担心...历史原因,Revit BIM范例,基础产品功能,你的名字......在Revit中通常有几种不同的方式来表示对象。正如你所注意到的那样,Element
是一个包罗万象的基础案例。
如果您使用的模型是使用Element
来表示楼梯,则它们可能没有您要查找的属性。在这种情况下,您可能不得不求助于其他方法来确定有用的值,例如(相当复杂的)几何分析。