2016-12-16 95 views
1

我正在制作一个ios应用程序,并使用伪造api在webview中渲染模型。我正在使用React Native,但我也乐于接受针对Objective-C的建议。如何在iOS中以离线模式呈现Autodesk模型?

我遇到的问题是在离线模式下渲染模型。该应用程序可以下载svf文件并保存在手机的磁盘上,但我如何加载文件并在webview中进行渲染?我发现A360应用程序可以在离线模式下渲染模型,但不知道它是否在webview中呈现。我也找到了Autodesk.Viewing.FileLoader API,但无法找出它,我没有找到一个例子。这是我已经尝试过:

var viewer = new Autodesk.Viewing.Private.GuiViewer3D(document.getElementById('MyViewerDiv')); 

var filepath = '/Users/zheminzhang/Library/Developer/CoreSimulator/Devices/901B40DC-1DB6-4596-A24A-6D3FAA1EA5C5/data/Containers/Data/Application/925466F3-A623-416B-81A4-1EB62123AA66/Documents/RNFetchBlob_tmp/RNFetchBlobTmp_d0411119-5006-4529-8734-7e70764a309b.svf'; 

var options = { 
    doc: filepath, 
    env: 'Local' 
}; 

Autodesk.Viewing.Initializer (options, function() { 
    viewer.start(options.doc, options); 
    // viewer.initialize(); 
    // var fileloader = new Autodesk.Viewing.FileLoader(viewer); 
    // fileloader.loadFile(filepath); 
}); 

任何人都可以帮忙吗?

+0

还在寻找关于这个问题的一些答案,昨天很高兴见到你。以下是我认为可以帮助解决这个问题的方法。 https://developer.apple.com/library/content/documentation/iPhone/Conceptual/SafariJSDatabaseGuide/OfflineApplicationCache/OfflineApplicationCache.html就像我刚才提到的,LMV有一些离线查看功能,但仍然询问哪些以及它们是否可用第三方开发商。感谢您的耐心等待。 –

回答

0

我碰巧注意到这个帖子。我不确定它会是多么有用,只是分享我在iOS + Forge Viewer中练习过的内容。 https://forge.autodesk.com/blog/standalone-app-of-forge-viewer-on-ios-by-cordova

+0

谢谢Xiaodong,Jaime之前实际上已经转发了这个链接,并且我已经完成了它。虽然我们的用例有点不同,因为当用户在在线模式下查看选定的模型时,需要下载模型并将其保存到设备的存储器中,而不是置于项目文件夹下,即root \ www \因此,由于CORS策略,webview可能会有问题来加载模型。在我们的使用案例中需要克服的另一个主要问题是自动将模型转换为脱机包并下载到设备本地存储并解压缩。 –