autodesk-forge - 寻找 3D CAD 查看器 Webkit

标签 autodesk-forge

我们想将 3D CAD 查看器嵌入到我们基于网络的协作平台中。它的工作方式与 Opencascade 提供的类似。可以看看here .

我们不对使用我们的平台收费,如果可用的话,我们更喜欢开源选项(Opencascade 查看器不是开源的)。

Autodesk Forge 是否有类似的产品?

谢谢!

最佳答案

WEB 的 CAD 查看器解决方案可以分成几个部分:

    CAD 模型的
  • 服务器上转换器
    • 将 CAD 文件转换为中间格式。如果您需要支持广泛的 CAD 格式,或者限制功能以导入供应商中立格式(如 STEP),您可能需要大量数据连接器。
    • 生成网络友好的基于三角测量的 3D 模型。如果您必须处理大型模型,此步骤可能包括模型简化。
  • 服务器后端 为 3D 查看器实现业务逻辑和后端。 3D 查看器后端的复杂性取决于它提供的功能和查看器处理超大模型的能力。在最简单的情况下,这可能只是一个以 glTF 格式提供 3D 模型的文件服务器。
  • 客户端,例如使用 WebGL 显示 3D 模型的 HTML+JavaScript 代码,以及 GUI 和特定于应用程序的逻辑。查看器可能只显示 3D 模型(在这种情况下,它与非 CAD 查看器几乎没有区别),或者提供许多功能,如阴影和线框(不仅仅是网格边缘)模式、拾取子部件、剪辑框、带盖的剪辑、注释、尺寸、分解图、HLR View ,一大堆!

虽然在技术上可以直接在浏览器中加载一些小型 CAD 模型,但一般而言,此任务预计驻留在服务器上以改善用户体验并为(CAD 模型的)知识产权提供一些保护。该转换器可能基于Open CASCADE 技术,这是一个开源框架,以防 STEP/IGES 输入文件格式足够(例如,输出可以是您的自定义文件格式或 glTF 2.0) .但如果支持原生 CAD 格式(如 CATIA 和其他格式),您将不太可能找到任何免费的开源库。

Web 查看器本身依赖于 WebGL,通常可以基于任何传统的基于 JavaScript 的库,如 Three.js(或现有的 3D 查看器),或者可能依赖于基于 C++ 的引擎(同样, Open CASCADE Technology 可以构建为 WebAssembly 模块)。基于 WebAssembly 的查看器可能会带来一些性能优势,并且它对 C++ 开发人员更友好(但显然 - 对 JavaScript 开发人员不太友好)。但是,有一个隐藏的问题,因为许多开源 C++ 库通常具有 LGPL 许可证——对于桌面来说非常好,但在 Web 应用程序的情况下可能存在合法性问题。相比之下,基于 WEB 的库通常对专有性更友好,允许的许可证忽略了放入 (L)GPL 等许可证的开源软件创意。

一般来说,3D CAD Viewer 定义非常广泛,您问题中的要求列表非常基本且不清楚 - 只是为了将 3D Viewer 嵌入到您的 WEB 应用程序中。您可以基于开源组件编写您自己的 Web 查看器,或者考虑已经实现您正在寻找的功能并了解/提供一些解决棘手问题的解决方案的商业选项。

OCCT WebGL Viewer sample

关于autodesk-forge - 寻找 3D CAD 查看器 Webkit,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61857424/

相关文章:

autodesk-forge - 如何在没有 ngrok 的情况下使用 Forge Design Automation?

javascript - 提取、编辑和保存 .dwg 元数据

ios - 如何将 Autodesk Forge Viewer 嵌入移动应用程序?

pdf - Autodesk PDF Extension - 防止查询字符串覆盖中的页面

javascript - 伪造查看器调用焦点方法

javascript - 为什么方法 enumNodeFragments 未定义?

javascript - Forge Viewer 工具栏按钮未隐藏在手机屏幕上

javascript - 从 Autodesk Forge 3D 查看器下载文件

javascript - 纹理未显示在对象 Forge Three.js 上

autodesk-forge - 是否可以通过 Revit API 或 FORGE API 在 Revit 模型中加载新的云 (BIM 360) 链接?