问题描述
当我将 Forge Viewer 从 SVF 迁移到 SVF2 时,某些几何图形未加载,并且每个元素都出现“无效的 OGT 标头”和“无法解析 OGT 几何图形”。
我直接从 BIM360 获取模型。
我正在使用带有 express 的 Nodejs 并执行发布请求以与客户端通信 Forge 访问令牌
app.get('/home',(req,res) => {
var options = {
'method': 'POST','url': 'https://developer.api.autodesk.com/authentication/v1/authenticate','headers': {
'Content-Type': 'application/x-www-form-urlencoded','Cookie': 'PF=boZ6jpDwlNEmVzAGFiFx8i'},form: {
'grant_type': 'client_credentials','client_id': 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX','client_secret': 'XXXXXXXXXXXXXXXXXX','scope': 'data:read data:write'}};
我刚刚用 Autodesk Post 中的选项替换了 SVF 查看器选项
function launchViewer(urn) {
//SVF
//var options = {
//env: 'AutodeskProduction',//getAccessToken: getToken,//api: 'derivativeV2' + (atob(urn.replace('_','/')).indexOf('emea') > -1 ? '_EU' : '')};
//SVF2
var options = {
env: 'MD20ProdUS',getAccessToken: getToken,api: 'D3S'};
Autodesk.Viewing.Initializer(options,() => {
viewer = new Autodesk.Viewing.Viewer3D(document.getElementById('forgeViewer'));
viewer.start();
var documentId = 'urn:' + urn;
Autodesk.Viewing.Document.load(documentId,onDocumentLoadSuccess,onDocumentLoadFailure);});
function onDocumentLoadSuccess(doc) {
var viewables = doc.getRoot().getDefaultGeometry();
viewer.loadDocumentNode(doc,viewables).then((i) => {
// documented loaded,any action?
});
this.viewer.addEventListener(Autodesk.Viewing.SELECTION_CHANGED_EVENT,onSelectionChanged);
this.viewer.addEventListener(Autodesk.Viewing.GEOMETRY_LOADED_EVENT,onGeometryLoaded);
}
function onGeometryLoaded(){
console.log(viewer);
}
function onDocumentLoadFailure(viewerErrorCode) {
console.error('onDocumentLoadFailure() - errorCode:' + viewerErrorCode);
}}
最终从服务器获取token
//Localhost
function getToken(_callback) {
$.get("http://localhost:3000/home",function(data,status){
var response = JSON.parse(data);
_callback(response.access_token,response.expires_in);
});
}
知道这里可能发生什么吗?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)