1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- <!DOCTYPE html>
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta name="renderer" content="webkit">
- <meta http-equiv="X-UA-Compatible" content="ie=edge">
- <meta name="viewport"
- content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
- <meta name="mobile-web-app-capable" content="yes">
- <meta name="mobile-web-app-status-bar-style" content="black">
- <title id="title">BIM模型</title>
- <link rel="stylesheet" href="preview.css" />
- <!-- 引用BIMFACE的JavaScript显示组件库 -->
- <script src="https://static.bimface.com/api/BimfaceSDKLoader/BimfaceSDKLoader@latest-release.js"
- charset="utf-8">
- </script>
- </head>
- <body>
- <!-- 定义DOM元素,用于在该DOM元素中显示模型或图纸 -->
- <div class='main'>
- <!-- 定义DOM元素,用于在该DOM元素中显示模型或图纸 -->
- <div class='model' id="domId"></div>
- </div>
- <script src="./room.js" type="text/javascript" charset="utf-8"></script>
- <script src="./bimViewer.js" type="text/javascript" charset="utf-8"></script>
- <script type="text/javascript">
- function getQueryObject(url) {
- url = url == null ? window.location.href : url
- const search = url.substring(url.lastIndexOf('?') + 1)
- const obj = {}
- const reg = /([^?&=]+)=([^?&=]*)/g
- search.replace(reg, (rs, $1, $2) => {
- const name = decodeURIComponent($1)
- let val = decodeURIComponent($2)
- val = String(val)
- obj[name] = val
- return rs
- })
- return obj
- }
- function returnRGBA(color) {
- let [r, g, b, a] = color.match(/\d+(\.\d+)?/g).map(Number);
- return {
- r,
- g,
- b,
- a
- }
- }
- window.onload = function() {
- let query = getQueryObject();
- if (query.title) document.getElementById('title').innerText = query.title;
- let bim = new bimViewer({
- viewToken: query.viewToken,
- domElem: document.getElementById('domId'),
- renderSuccess: function() {
- if (query.showType === '2') {
- bim.setView('Top');
- for (var i = 0; i < distribution.length; i++) {
- bim.insertRooms({
- id: distribution[i].id,
- boundary: {
- "outer": distribution[i].boundary
- },
- height: distribution[i].height,
- roomColor: returnRGBA(distribution[i].color)
- })
- bim.addDrawable({
- position: distribution[i].position,
- offsetX: -75,
- offsetY: -40,
- html: ` <div class="tips-4">${distribution[i].name}</div>`,
- })
- }
- }
- }
- })
- }
- </script>
- </body>
|