【发布时间】:2019-05-22 21:58:51
【问题描述】:
使用 Revit API,我将一面墙分成 3 个部分。为此,我创建了 3 行:
Line.CreateBound(p1, p2)
Line.CreateBound(p2, p3)
Line.CreateBound(p3, p4)
然后我用这些连续且对齐的线条创建一堵墙。结果与预期不符,因为第三面墙与第二面墙重叠,请参见下图。
现在,这可能是一个编程错误,但我在创建 3 面墙之前打印了线条的端点,这些点以正确的顺序完全连续。打印看起来像这样(我删除了 Y 和 Z 坐标,它们是恒定的):
Now creating a new wall, from (11.811023622, ...) to (17.388451444, ...)
Now creating a new wall, from (17.388451444, ...) to (18.044619423, ...)
Now creating a new wall, from (18.044619423, ...) to (28.871391076, ...)
如果我随后使用 RevitLookup Addin 检查有问题的墙,我发现它的 LocationCurve 的原点确实位于 (18.044619423, ...)。 但是如果我查看它的 BoundingBox Min 和 Max 属性,我可以看到它从 17.388 开始。并上升到 28.871391076。这就是插图所显示的......
此外,我在几何体中的其他一些墙壁上使用了这种分割方法,对此我没有任何问题,并且我确实获得了 3 个很好的连续墙壁!
因此,我的问题是:我是否在某处遗漏了一个属性,该属性会以某种方式将墙 BoundingBox 从其位置曲线“移动”?那会以某种方式解释这种行为吗? 我还能如何解释和纠正这一点?
非常感谢! 阿诺。
【问题讨论】: