有云API从Revit模型中提取数据吗?

Is there a cloud API to extract data from a Revit model?

假设我想创建一个基于云的服务,可以连接到 Revit Server 并获取模型数据、处理它,并 return 在基于 Web 的界面中向用户提供一些有用的信息.然后用户修改模型并将更改提交到服务器。我的应用程序收到一个通知,其中包含有关已修改内容的详细信息(自动避免差异),处理更改并继续循环。在此示例中,我避免使用我的应用程序修改模型,但应用程序可能只是需要修改模型。让我举一个假设的用例。

一位架构师想要优化设计解决方案的性能。 S/he 一直致力于模型的不同部分,并对模型进行一些(很可能是次要的)更改。更改将发送到中央 BIM 360 服务器或任何其他中央 Revit Server。我的应用程序将从服务器检索修改信息并评估模型的性能,并在网页中向架构师反馈。

我的应用程序在 linux 上使用 Python(sklearn、Tensorflow 等)运行 来处理 BIM 模型,因此独立于 Revit 环境和 Windows 至关重要.为了向用户显示信息,它使用了 Web 技术(例如 d3.js 可视化库)。

Model Derivative Forge API provides RVT to IFC (and SVF) conversion。所有这些(查询和编写 BIM)在 IFC 上都是可能的,但是,每次转换都意味着更多的复杂性、数据丢失(IFC 和 RVT 不是 100% 兼容)、计算和时间。

是这个问题的一种更简单的形式(文件格式)。如果您对这些 API 感兴趣,请对这两个问题进行投票。它可能有助于获得一些关注。

对您的主题行问题的简单回答:'Is there a cloud API to extract data from a Revit model?'

是的,有。您可以将 Revit 模型作为 RVT 文件上传到 Forge 或 A360。 SVF 中的翻译结果将包含其所有数据,然后可以在 Forge 查看器中使用模型导数查看和查询这些数据 API.

不过,你的问题的其余部分要复杂得多,这个简单的答案可能并不令人满意。

我们已经在 The Building Coder 的评论中讨论了它的某些方面:

为了更深入地跟进,我建议您与 Forge 平台开发组负责人 Jim Quanci 和 Kyle Bernhard 讨论您的需求,我相信他们正在考虑如何制作更合适的 Revit 服务在网络上可用。您可以按照您评论的博客 post 中的建议以及 'Thoughts and Input on Revit I/O' 上同一主题组中的其他一两个人与他们取得联系:

http://thebuildingcoder.typepad.com/blog/about-the-author.html#5.28b

这是一个老问题,但自从我偶然发现它以来,它可能值得一个最新的答案。 Autodesk 正在向 Autodesk Forge 添加 "Design Automation for Revit"。有了它,您将能够编写一个 .NET 插件,该插件将在 Revit 上的云环境中执行。因此,除了使用模型衍生服务可以获得的功能之外,您还可以使用 Revit API 执行任何您想要的操作,包括修改 Revit 文件并将其发回。

整个工作流程以及如何集成它肯定仍然存在一些挑战 - 但这是自 Jeremy 写下上一个答案以来向前迈出的一大步。