快速入门
1. 前端Viewer概要说明
前端Viewer集成,是将业务端生成的轻量化数据文件,下载到业务端,通过viewer离线包或组件包进行加载显示。
2. 3Dviewer离线包集成指南(2Dviewer集成方式相同)
- 创建空项目文件,用于加载viewer,截图参考:
- 放置viewer离线包资源到3DViewer文件夹,截图参考:
- 编辑demo.html文件内容,代码参考:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" name="viewport"> <title>图纸预览</title> <style> html, body { position: fixed; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; margin: 0; } #iframeDiv { position: relative; height: 100%; width: 100%; } iframe { width: 100%; height: 100%; border: none; margin: 0; padding: 0; } </style> </head> <body> <!-- 用于放模型展示的iframe,id不能修改 --> <div id="iframeDiv"> </div> </body> <script src="viewer.js"></script> <script> window.onload = function () { nd_viewCtrl.fingerHttp = ''; // 设置云API地址,如:http://192.1.1.1:8000 nd_viewCtrl.init({ src: './models/bim', // 设置轻量化文件所在文件夹路径 }); } </script> </html>
注意在nd_viewCtrl中设置fingerHttp才能正常预览模型。
- 编辑viewer.js文件内容,代码参考:
var nd_viewCtrl = { src: '', // 轻量化模型地址 fingerHttp: '', // 云API地址,如:http://192.1.1.1:8000 /** init初始化方法 */ init: function (opt) { // 设置轻量化文件路径 this.src = opt.src; // 加载viewer资源。src路径填写实际存放viewer资源的地址 document.querySelector("#iframeDiv").innerHTML = '<iframe id="viewer" src="3DViewer/index.html" allowFullScreen></iframe>'; }, /** 模型加载完成回调方法 */ initLoad: function () { //加载完成 console.log('model loaded!'); }, /** 截图方法参考 */ screenshot: function (cc) { // 获取viewer全局对象 var _contentWindow = document.getElementById("viewer").contentWindow; // 调用控制类接口 _contentWindow && _contentWindow.nd_screenCapture(function (base64Img) { cc && cc(base64Img); }); }, /** 其它方法 */ ... }
- 放置轻量化文件到models文件夹。
轻量化文件放置在本地或服务器上都可以,src需要指向到轻量化文件根目录。
轻量化文件根目录参考截图:
3. 进行模型预览
预览方式:
- 开启服务 :在项目根目录启动一个前端服务,在浏览器打开demo.html即可进行模型预览。
- 跨域浏览器 :直接在跨域浏览器打开demo.html也可进行模型预览。如何对浏览器设置跨域,参考常见问题说明。
2D预览集成:
2D或其它种类viewer集成方式与上述一致,需要注意的是,不同类型的viewer是单独的文件资源。