Revit API:创建新的足迹屋顶

Revit API: Creating a new Footprint roof

我在使用 Revit 2018 创建足迹屋顶时遇到问题 API。 基本上,我称之为:

doc.Create.NewFootPrintRoof(ca, doc.GetElement(roofsInstances[0].LevelId), roofsInstances[0].RoofType)

并且:

当我调用它时,它 returns: 异常:值不能为空。

知道问题出在哪里吗?非常感谢!

所以,我发现了问题所在。首先,此方法需要第 4 个参数,一个 "out attribute"(抱歉,我以前从未见过……),它需要是一个 ModelCurveArray。 问题是,即使我将 ModelCurveArray 对象作为第 4 个参数,它也会抱怨它期望 StrongBox[ModelCurveArray]。也没听说过。

无论如何,我用这个作为第四个参数:

footPrintToModelCurveMapping = clr.StrongBox[ModelCurveArray](ModelCurveArray())

而且有效。