【问题标题】:Is it possible to identify interior and exterior elements of a BIM model using Autodesk forge?是否可以使用 Autodesk forge 识别 BIM 模型的内部和外部元素?
【发布时间】:2021-11-15 14:47:04
【问题描述】:

过去几个月我一直在学习 Forge API,但对这个平台还是比较陌生。如果这是一个明显的问题,请原谅。 我有一个 Autodesk Forge 应用程序,我可以在其中上传 Revit 文件并将其元数据提取到数据库中。在元数据中,有一个名为“功能”的类别。它显示特定元素是内部还是外部。如果缺少“功能”数据,是否有任何方法可以使用 Autodesk forge API 识别内部和外部元素?还是以编程方式?

在 Revit 中,我使用 Element.Location 节点(在 Dynamo 中)并提取墙壁、窗户等的 XYZ 坐标,并通过区分内部和外部元素的算法运行该数据。识别内外墙、窗户、楼梯等的可能方法是什么。

感谢任何帮助/指导。

【问题讨论】:

    标签: autodesk-forge revit-api autodesk-model-derivative


    【解决方案1】:

    据我所知,只有 Revit 墙有功能参数,它是元素属性的一部分(在 Revit 中,我们称之为参数)。在 Forge Viewer 中,您可以通过调用 Viewer3D#getProperties 获取它。

    https://knowledge.autodesk.com/support/revit-lt/learn-explore/caas/CloudHelp/cloudhelp/2022/ENU/RevitLT-ArchDes/files/GUID-718C1341-C4FC-40D6-9646-D2E13A861D33-htm.html

    不幸的是,Revit API 的Element.Location 在 Forge Viewer 中不相等,因为在 Forge 转换期间所有几何图形都将转换为网格。要获取网格位置,您可以利用对象边界框的中心:https://stackoverflow.com/a/64769854/7745569

    【讨论】:

    • 感谢您的指导。我将尝试根据顶点获取片段位置。另一方面,我发现了一些示例 Revit 文件,当我提取元数据时,还有其他几个元素,包括具有功能:内部/外部的地板和门窗。 i.imgur.com/0GTkOF2.png 在设计 Revit 文件时通常会标记这些数据吗?如果是,并且如果它没有被标记,找到片段位置是否有助于确定元素是内部还是外部?请指教。谢谢!
    • 感谢您的指出。我没有注意到 Floor 有 function 参数。这应该取决于设计师。函数参数可能没有设置正确的值。 help.autodesk.com/view/RVT/2022/ENU/…help.autodesk.com/view/RVT/2022/ENU/…
    • 如果功能参数设置不正确,将很难在查看器中确定内部/外部元素。因此,我建议您考虑改用 Revit API,并在 Desisgn Automation API for Revit 上运行它。以下是关于查找外墙的 Revit API 的讨论:thebuildingcoder.typepad.com/blog/2018/05/…
    • 非常感谢您的建议。通过设计自动化运行 Revit API 帮助解决了我的问题。然而,它只识别和区分墙壁、窗户和门与内部和外部。如果 BIM 模型具有 MEP 组件,是否有可能从外部和内部识别 MEP 元素?请提出建议并建议我如何实现它。
    猜你喜欢
    • 2021-12-09
    • 2017-09-05
    • 2021-02-05
    • 2022-01-12
    • 1970-01-01
    • 2021-07-26
    • 2018-05-29
    • 1970-01-01
    • 2022-08-17
    相关资源
    最近更新 更多