注意!https://extract.autodesk.io/ 已撤销,请通过其源码工程自行测试。并请注意:extract这个工程也示例了下载viewer相关代码,但这只是为了让大家测试和理解离线的过程,而非正式合规方式,其源码工程Readme中做了特别说明。所以:即便在离线方式下,正确引用viewer代码应遵循上面提到的以下条款规定的方式。如果您的应用在无网络的场景下也需要使用viewer,请参考另外一篇博文 Forge云服务的本地化经验总结与优化实战,有详尽的介绍如何正确使用。
Forge Viewer的版权属于Autodesk,使用Forge Viewer客户端的JavaScript代码,必须是从Forge数据提取和转换服务得到的的数据。而且,必须是从Autodesk Forge官网链接引用Viewer相关代码(形如下)。这是使用Forge Viewer的两个重要条款
而下载离线转换的SVF数据包,推荐使用这个 VSCode工具:
https://segmentfault.com/a/11...
以下内容保留参考
在Autodesk Forge 学习简谈 - 4中提到了 https://extract.autodesk.io/。由于围绕着这个网站经常有很多咨询的问题,特以此文做进一步的说明:
1.大家知道Forge的【数据提取和转换】服务能够将众多原始CAD格式转换为浏览器能浏览的格式。这是Autodesk设计的一种文件格式,它不是单一文件,而是一个引导文件*.SVF 和很多支持文件,包括几何信息,属性信息,光照,材质,等等,通常我们也把这个文件格式(数据包)简称为SVF。
理论上我们可以通过引导文件列出的文件列表,把那些文件都一个个下载下来,放到本地,就是所谓的【离线部署】。但可惜的是,目前【数据提取和转换】只是提供了下载*.SVF的端口,而非整个数据包。这个小编也比较郁闷。
所以,Forge支持部门的Cyrille撰写了一套代码,帮助下载数据包。也就是大家现在看到的https://extract.autodesk.io/,具体用法见Autodesk Forge 学习简谈 - 4
注:其实SVF这个称呼更多适用用3D的模型,对于2D的图纸,其引导文件是*.F2D。而又注意,此F2D非彼F2D (Fusion 360的二维图纸格式)。
2.https://extract.autodesk.io/ 的基本原理是:上载本地文件到其服务器,然后用Forge的【数据管理API】上载到Forge的服务器,再调用Forge的【数据提取和转换】进行转换,转换成功后,即能在浏览器中加载看到模型。最后Extract提供了一个功能,去Forge的服务器端,遍历一个个转换好的文件,再一一下载下来打包,并且配上兼容的【Forge Viewer】的相关文件。这样就可以拿到整个包到本地测试了。
3.https://extract.autodesk.io/ 是部署在国外的服务器,而且它导入了一些放在google上的js或css库,因此,大多数情况下,在没有VPN的时候访问,容易失败。但这并不等于 Forge 需要VPN 。Forge的服务访问是不需要VPN也可以连上的。只是如果性能好的VPN是会传输速度快点。
4.https://extract.autodesk.io/ 只是一个示例工具,而非Autodesk正式的一个产品。并没有系统的支持体系。因此,如果偶尔发生了故障,需要等作者有时间才能修复。作者把这个工具的源代码都奉献出来了,网站的右上角可以访问。我们是建议朋友们把源代码自己部署到自己的机器上,这样可以自己调试,修改,也方便自己部署使用。切勿只是依赖这个网站本身的运转。如前面所述,假设偶尔网络性能不佳,甚至VPN也不佳,网站无法访问就麻烦了。
5.前面提到https://extract.autodesk.io/用到了一些放在google的内容,当自己部署的时候,可以先用一些手段(例如VPN)把有关文件下载下来,集成到工程中。或者简单粗暴的方式,调试前后端,找到google验证等相关部分,注释掉。
6.前面提到,Extract的流程是先要将本地文件传到Extract服务器,这个过程由一些第三方库完成了稳定上传,一般没有问题。但从其服务器传到Forge,它使用的是Forge的【数据管理API】的直传端口,就是无论大小,一口气传上去,可以想象,在国内的网络条件下,大文件直传美国服务器成功的可能性有多大。所以经常听到朋友说Forge无法上传,Extract无法用,大多是和这个环节有关系。
无论是Extract还是其它任何Forge上传文件有关的应用程序,都务必使用分块上传的端口,就是把文件切成很小的单元块(例如每个10M),再一一上传。这个的好处是极大降低对网络的要求,而且成功率很高,即便某个块失败,可以依据分块上传的唯一ID,再次上传,也就是所谓的断点续传。
亲自试验一个客户发来的200多M模型,说到自己直接传,没有PVN基本没戏,总是10%就失败了。但经过分块改造后,在家里普通网络情况下,只用了5分钟。当然,转换模型花了较多时间。
7.Extract的源码是用Node写的,对于有些朋友可能理解和使用上有点困难。目前我们部门同事撰写的其它语言版本有:
C#: https://forge.autodesk.com/bl...
PHP: https://forge.autodesk.com/bl...
请注意:Forge Viewer的版权属于Autodesk,使用Forge Viewer客户端的JavaScript代码,必须是从Forge数据提取和转换服务得到的的数据。而且,必须是从Autodesk Forge官网链接引用Viewer相关代码(形如下)。这是使用Forge Viewer的两个重要条款
extract这个工程也示例了下载viewer相关代码,但这只是为了让大家测试和理解离线的过程,而非正式合规方式,其源码工程Readme中做了特别说明。所以:即便在离线方式下,正确引用viewer代码应遵循上面提到的条款规定的方式。如果您的应用在无网络的场景下也需要使用viewer,请参考另外一篇博文 Forge云服务的本地化经验总结与优化实战,有详尽的介绍如何正确使用。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。