如何在Reactjs web应用程序中正确显示.dwg文件



目前,我想在reactjs web应用程序中渲染一个大的.dwg文件,.dwg文件将从我的django服务器检索。此外,我将对.dwg文件进行一些过滤,以显示不同IoT设备的坐标。

经过几个小时的研究,我发现有两种方式显示.dwg文件在reactjs web应用程序。要么在reactjs中使用autodesk forge查看器扩展,然而,很少有关于如何一步一步实现的教程。另一个解决方案是将.dwg文件转换为.dxf文件并在web中呈现。

我想知道哪个解决方案更好,如果我的解决方案错了,请指出我。我的意思是,我真的想用标准做法来做。感谢。

Python用于后端,react.js运行在前端,因此与其他Forge Viewer应用程序没有什么特别之处。你可以把它放在Django视图中,因为我对Django框架的了解有限。

你只需要在一个React组件中包装Forge Viewer,然后渲染并挂载到DOM。此外,在使用Forge Viewer之前,您需要调用Model Derivative API的POST作业来将DGW转换为SVF,然后将base64编码的URN传递给查看器反应组件。这里是一个Forge Viewer react组件的演示,以及一个使用模型派生API的教程

https://github.com/yiskang/forge-viewer-react-component-demo/blob/main/src/Viewer.jsx

顺便说一句,为了将DWG转换为SVF, DWG的作业配置有一个不同之处,因为它不是压缩文件。

curl  -X POST 
'https://developer.api.autodesk.com/modelderivative/v2/designdata/job' 
-H 'Content-Type: application/json' 
-H 'Authorization: Bearer <YOUR_ACCESS_TOKEN>' 
-H 'x-ads-force: true' 
-d '{
"input": {
"urn": "<BASE64_ENCODED_URN_OF_SOURCE_FILE>",
},
"output": {
"formats": [
{
"type": "svf",
"views": [
"2d",
"3d"
]
}
]
}
}'

最新更新