Autodesk 提取器显示错误 #9 - 无可见内容

Posted

技术标签:

【中文标题】Autodesk 提取器显示错误 #9 - 无可见内容【英文标题】:Autodesk extractor shows error #9 - No viewable content 【发布时间】:2018-11-01 07:46:03 【问题描述】:

由于某种原因,Autodesk 提取器在尝试预览和下载提取的模型时抛出错误 #9:

https://extract.autodesk.io/

我们尝试上传的每个 Navisworks 模型都会发生这种情况。

我们在产品中严重依赖提取器,似乎我们无能为力。

我们也尝试了桌面 .NET 提取器,但没有成功。

【问题讨论】:

是的,我可以用 nwd 文件在我这边重现同样的问题,这应该是提取 io 的问题,如果我在其他应用程序或 A360 中打开它,同样的骨灰盒效果很好。我快速查看了提取代码,错误发生在 views/explore.ejs 的第 139 行(Autodesk.Viewing.Document.load (urn, onDocumentLoaded, onError)),urn 无法加载。我今天忙于一个会议,你可以继续挖掘那方面,我知道这对你来说很紧急,我今晚回来后会进一步调查。 【参考方案1】:

这应该是查看器使用“modelDerivativeV2”API 处理新的 NavisWorks 清单的错误,我已经在内部登录。去年年底,Navisworks 翻译进行了改进以支持多个视点,但不幸的是,查看器似乎不能很好地支持使用“modelDerivativeV2”API 的新清单。

这是问题的原因和解决方法。

为什么会这样?出现此问题是因为提取应用程序在文件 //views/explore.ejs 的函数 loadModel() 中将端点 API 指定为“modelDerivativeV2”,这将使用“/modelderivative/v2/ designdata/:urn/manifest" 获取端点,不幸的是,结果似乎与默认的内部端点不同,新的 Navisworks 文件清单的顺序不正确,这将导致查看器无法找到任何可见的。

如何解决?对您来说简单的解决方法是只删除指定的参数“modelDerivativeV2”,如下所示,它在我身边工作得很好。

顺便说一句,.Net 提取示例适用于我这边的 Navisworks 文件。

if ( Autodesk.Viewing.endpoint && Autodesk.Viewing.endpoint.setEndpointAndApi )
    Autodesk.Viewing.endpoint.setEndpointAndApi (window.location.origin + '/forge-proxy') ;
else if ( Autodesk.Viewing.setApiEndpoint )
    Autodesk.Viewing.setApiEndpoint (window.location.origin + '/forge-proxy') ;
else if ( Autodesk.Viewing.setEndpointAndApi )
    Autodesk.Viewing.setEndpointAndApi (window.location.origin + '/forge-proxy') ;

【讨论】:

【参考方案2】:

你为什么不试试翻译 API?! ...您可以在自己的服务器中轻松翻译(提取)文件...

【讨论】:

我们确实使用派生 API,但我们需要它来进行离线渲染(官方不支持),我刚刚通过阅读博客了解了如何做到这一点。无论如何,我们都在尝试双向使用,同时使用 AD 演示提取器,并弄清楚如何使用我们自己的实现来下载离线文件

以上是关于Autodesk 提取器显示错误 #9 - 无可见内容的主要内容,如果未能解决你的问题,请参考以下文章

在查看器 v7.51 中使用 Autodesk.NPR 中的石墨模式时选择不可见

Forge 查看器:Autodesk.BoxSelection 扩展错误

Autodesk PDF 查看器错误

处理 Autodesk Forge 查看器的错误

Autodesk forge 查看器

贴花未显示在 Autodesk 查看器中