// 从这里开始 var h1 = null; var h2 = null; var h3 = null; var oldtransformNodex = null; var oldtransformNodeOther = null; var drag = null; var notmoveGroup = null; var movedGroup = null; var movesingle = false; var dynamicTexture = null; var dynamicTexture2 = null; var dynamicTexture3 = null; var dynamicTexture4 = null; var show = 50; var showdd = 50; var PointerOverYangan = null; var deviceData = []; BABYLON.DefaultLoadingScreen.prototype.displayLoadingUI = function() { if (document.getElementById("customLoadingScreenDiv")) { document.getElementById("customLoadingScreenDiv").style.display = "initial"; // 给vue页面传值,加载完成之前 parent.getIframeLoading("true") return; } this._loadingDiv = document.createElement("div"); //this._loadingDiv.style.height = '1750px'; this._loadingDiv.id = "customLoadingScreenDiv"; thecss = "lohingifpc"; thecss2 = "zcpc"; this._loadingDiv.innerHTML = "
"; //
阅行客 提供技术支持!
this._resizeLoadingUI(); window.addEventListener("resize", this._resizeLoadingUI); document.body.appendChild(this._loadingDiv); }; var movebyName = function(nodeName) { var x = scene.getTransformNodeByName(nodeName); moveTrans(x); }; var moveTrans = function(move_transformNode) { //alert(move_transformNode.name); if (movesingle == false) { movesingle = true; var tempstr = move_transformNode.name.replace("档案柜", ""); var tempNum = parseInt(tempstr); if (move_transformNode.movex == "false") { for (var MoveNum = tempNum - 1; MoveNum >= 0; MoveNum--) { var tempNode = notmoveGroup[MoveNum]; if (tempNode.movex == "false") { // console.log(tempNode.name); // console.log(tempNode.movex); const frameRate = 10; const xSlide = new BABYLON.Animation( "xSlide", "position.y", frameRate, BABYLON.Animation.ANIMATIONTYPE_FLOAT, BABYLON.Animation.ANIMATIONLOOPMODE_CONSTANT ); const keyFrames = []; keyFrames.push({ frame: 0, value: tempNode.position.y }); keyFrames.push({ frame: frameRate, value: tempNode.position.y - 653 }); xSlide.setKeys(keyFrames); tempNode.animations.push(xSlide); scene.beginAnimation(tempNode, 0, frameRate, false); //------------------------------------------------------------------------------ thesprite = scene.spriteManagers[0].sprites[MoveNum]; const frameRate1 = 10; var xSlide1 = new BABYLON.Animation( "xSlide1", "position.z", frameRate1, BABYLON.Animation.ANIMATIONTYPE_FLOAT, BABYLON.Animation.ANIMATIONLOOPMODE_CONSTANT ); var keyFrames1 = []; keyFrames1.push({ frame: 0, value: thesprite.position.z }); keyFrames1.push({ frame: frameRate1, value: thesprite.position.z - 1.7 }); xSlide1.setKeys(keyFrames1); thesprite.animations.push(xSlide1); scene.beginAnimation(thesprite, 0, frameRate1, false); tempNode.movex = "true"; } } } else { for (var MoveNum = tempNum - 1; MoveNum <= 9; MoveNum++) { var tempNode = notmoveGroup[MoveNum]; if (tempNode.movex == "true") { const frameRate = 10; const xSlide = new BABYLON.Animation( "xSlide", "position.y", frameRate, BABYLON.Animation.ANIMATIONTYPE_FLOAT, BABYLON.Animation.ANIMATIONLOOPMODE_CONSTANT ); const keyFrames = []; keyFrames.push({ frame: 0, value: tempNode.position.y }); keyFrames.push({ frame: frameRate, value: tempNode.position.y + 653 }); xSlide.setKeys(keyFrames); tempNode.animations.push(xSlide); scene.beginAnimation(tempNode, 0, frameRate, false); //------------------------------------------------------------------------------ thesprite = scene.spriteManagers[0].sprites[MoveNum]; const frameRate1 = 10; var xSlide1 = new BABYLON.Animation( "xSlide1", "position.z", frameRate1, BABYLON.Animation.ANIMATIONTYPE_FLOAT, BABYLON.Animation.ANIMATIONLOOPMODE_CONSTANT ); var keyFrames1 = []; keyFrames1.push({ frame: 0, value: thesprite.position.z }); keyFrames1.push({ frame: frameRate1, value: thesprite.position.z + 1.7 }); xSlide1.setKeys(keyFrames1); thesprite.animations.push(xSlide1); scene.beginAnimation(thesprite, 0, frameRate1, false); tempNode.movex = "false"; } } } setTimeout(function() { movesingle = false; }, 2000); } }; BABYLON.DefaultLoadingScreen.prototype.hideLoadingUI = function() { show = 50; document.getElementById("customLoadingScreenDiv").style.display = "none"; document.getElementById("customLoadingScreenDiv_first").style.display = "none"; document.title = "档案库"; //scene.getMaterialByName("材质.023").roughness = 0; notmoveGroup = [ scene.getTransformNodeByName("档案柜01"), scene.getTransformNodeByName("档案柜02"), scene.getTransformNodeByName("档案柜03"), scene.getTransformNodeByName("档案柜04"), scene.getTransformNodeByName("档案柜05"), scene.getTransformNodeByName("档案柜06"), scene.getTransformNodeByName("档案柜07"), scene.getTransformNodeByName("档案柜08"), scene.getTransformNodeByName("档案柜09"), scene.getTransformNodeByName("档案柜10") ]; notmoveGroup.forEach(function(item, index, arr) { if (item.name == "档案柜10") { item.movex = "NotMove"; //设置movex } else { item.movex = "false"; //设置movex } }); var prepareGroupButtonOther = function(transformNodex, color) { var mesheses = null; if (transformNodex.getClassName() == "TransformNode") { mesheses = transformNodex.getChildMeshes(false); } else { mesheses = []; mesheses.push(transformNodex); } for (var i = 0; i < mesheses.length; i++) { mesheses[i].actionManager = new BABYLON.ActionManager(scene); var theScaling = mesheses[i].scaling; if (true) { try { // 初始化数据 温度/湿度 deviceData.forEach(item => { if (item.id === transformNodex.nameID) { transformNodex.wendu = item.wendu; transformNodex.sidu = item.sidu; transformNodex.baojing = item.alarmState; } }); //mesheses[i].actionManager.registerAction(new BABYLON.InterpolateValueAction(BABYLON.ActionManager.OnPointerOutTrigger, mesheses[i], "scaling", new BABYLON.Vector3(theScaling.x, theScaling.y, theScaling.z), 100)); mesheses[i].actionManager.registerAction( new BABYLON.ExecuteCodeAction( { trigger: BABYLON.ActionManager.OnPointerOverTrigger, parameter: "" }, function() { clickbegin = true; if (true) { try { if (oldtransformNodeOther != null) { oldtransformNodeOther.removeBehavior(drag); var mesheses2 = null; if ( oldtransformNodeOther.getClassName() == "TransformNode" ) { mesheses2 = oldtransformNodeOther.getChildMeshes(false); } else { mesheses2 = []; mesheses2.push(oldtransformNodeOther); } for (var i = 0; i < mesheses2.length; i++) { try { h2.removeMesh(mesheses2[i]); } catch (error) { // alert(error) } } } oldtransformNodeOther = transformNodex; //transformNodex.addBehavior(drag); var mesheses3 = null; if (transformNodex.getClassName() == "TransformNode") { mesheses3 = transformNodex.getChildMeshes(false); } else { mesheses3 = []; mesheses3.push(transformNodex); } for (var i = 0; i < mesheses3.length; i++) { try { if (transformNodex.baojing == true) { h2.addMesh(mesheses3[i], new BABYLON.Color3(1, 0, 0)); } else { h2.addMesh(mesheses3[i], color); } } catch (error) { // alert(error) } } } catch (error) { // alert(error) } clickbegin = false; } if (transformNodex.name.indexOf("yangan") >= 0) { PointerOverYangan = transformNodex.name; if (transformNodex.baojing == true) { var location = transformNodex.absolutePosition; var xd = scene.getMeshByName("tapred"); // x = x-0.6;; y = y+0.3 z=z+0.5 xd.position = new BABYLON.Vector3( location.x - 0.6, location.y + 0.9, location.z + 0.5 ); var font_size = 36; var font = "bold " + font_size + "px Arial"; dynamicTexture3.drawText( transformNodex.wendu + "°C", null, null, font, "#FFFFFF", "#000000", true ); dynamicTexture4.drawText( transformNodex.sidu + "%", null, null, font, "#FFFFFF", "#000000", true ); if(transformNodex.canshow == true){ xd.setEnabled(true); } } else { var location = transformNodex.absolutePosition; var xd = scene.getMeshByName("tapblue"); // x = x-0.6;; y = y+0.3 z=z+0.5 xd.position = new BABYLON.Vector3( location.x - 0.6, location.y + 0.9, location.z + 0.5 ); var font_size = 36; var font = "bold " + font_size + "px Arial"; dynamicTexture.drawText( transformNodex.wendu + "°C", null, null, font, "#FFFFFF", "#000000", true ); dynamicTexture2.drawText( transformNodex.sidu + "%", null, null, font, "#FFFFFF", "#000000", true ); if(transformNodex.canshow == true){ xd.setEnabled(true); } } } } ) ); mesheses[i].actionManager.registerAction( new BABYLON.ExecuteCodeAction( { trigger: BABYLON.ActionManager.OnPointerOutTrigger, parameter: "" }, function() { var mesheses2 = null; if (transformNodex.getClassName() == "TransformNode") { mesheses2 = transformNodex.getChildMeshes(false); } else { mesheses2 = []; mesheses2.push(transformNodex); } for (var i = 0; i < mesheses2.length; i++) { try { h2.removeMesh(mesheses2[i]); } catch (error) { // alert(error) } } if (transformNodex.name.indexOf("yangan") >= 0) { if (transformNodex.baojing == true) { var location = transformNodex.absolutePosition; var xd = scene.getMeshByName("tapred"); // x = x-0.6;; y = y+0.3 z=z+0.5 xd.setEnabled(false); } else { var location = transformNodex.absolutePosition; var xd = scene.getMeshByName("tapblue"); // x = x-0.6;; y = y+0.3 z=z+0.5 xd.setEnabled(false); } } } ) ); //mesheses[i].actionManager.registerAction(new BABYLON.InterpolateValueAction(BABYLON.ActionManager.OnPointerOverTrigger, mesheses[i], "scaling", new BABYLON.Vector3(theScaling.x * 1.01, theScaling.y * 1.01, theScaling.z * 1.01), 100)); } catch (error) { //alert(error) } } var clickbegin = false; mesheses[i].actionManager.registerAction( new BABYLON.ExecuteCodeAction( { trigger: BABYLON.ActionManager.OnPickTrigger, parameter: "" }, function() { cameraClick(transformNodex); } ) ); } }; var prepareGroupButton = function(transformNodex, color) { var mesheses = null; if (transformNodex.getClassName() == "TransformNode") { mesheses = transformNodex.getChildMeshes(false); } else { mesheses = []; mesheses.push(transformNodex); } for (var i = 0; i < mesheses.length; i++) { mesheses[i].actionManager = new BABYLON.ActionManager(scene); var theScaling = mesheses[i].scaling; if (true) { try { mesheses[i].actionManager.registerAction( new BABYLON.InterpolateValueAction( BABYLON.ActionManager.OnPointerOutTrigger, mesheses[i], "scaling", new BABYLON.Vector3(theScaling.x, theScaling.y, theScaling.z), 100 ) ); mesheses[i].actionManager.registerAction( new BABYLON.InterpolateValueAction( BABYLON.ActionManager.OnPointerOverTrigger, mesheses[i], "scaling", new BABYLON.Vector3( theScaling.x * 1.01, theScaling.y * 1.01, theScaling.z * 1.01 ), 100 ) ); } catch (error) { //alert(error) } } var clickbegin = false; mesheses[i].actionManager.registerAction( new BABYLON.ExecuteCodeAction( { trigger: BABYLON.ActionManager.OnPickTrigger, parameter: "" }, function() { clickbegin = true; if (true) { try { if (oldtransformNodex != null) { oldtransformNodex.removeBehavior(drag); var mesheses2 = null; if (oldtransformNodex.getClassName() == "TransformNode") { mesheses2 = oldtransformNodex.getChildMeshes(false); } else { mesheses2 = []; mesheses2.push(oldtransformNodex); } for (var i = 0; i < mesheses2.length; i++) { try { h1.removeMesh(mesheses2[i]); } catch (error) { // alert(error) } } } oldtransformNodex = transformNodex; //transformNodex.addBehavior(drag); var mesheses3 = null; if (transformNodex.getClassName() == "TransformNode") { mesheses3 = transformNodex.getChildMeshes(false); } else { mesheses3 = []; mesheses3.push(transformNodex); } for (var i = 0; i < mesheses3.length; i++) { try { h1.addMesh(mesheses3[i], BABYLON.Color3.White()); } catch (error) { // alert(error) } } if (oldtransformNodex != null) { if (transformNodex.name == oldtransformNodex.name) { moveTrans(transformNodex); } } } catch (error) { // alert(error) } clickbegin = false; } } ) ); } }; var dag1 = scene.getTransformNodeByName("档案柜01"); var dag2 = scene.getTransformNodeByName("档案柜02"); var dag3 = scene.getTransformNodeByName("档案柜03"); var dag4 = scene.getTransformNodeByName("档案柜04"); var dag5 = scene.getTransformNodeByName("档案柜05"); var dag6 = scene.getTransformNodeByName("档案柜06"); var dag7 = scene.getTransformNodeByName("档案柜07"); var dag8 = scene.getTransformNodeByName("档案柜08"); var dag9 = scene.getTransformNodeByName("档案柜09"); var dag10 = scene.getTransformNodeByName("档案柜10"); prepareGroupButton(dag1, BABYLON.Color3(1, 1, 0)); prepareGroupButton(dag2, BABYLON.Color3(1, 1, 0)); prepareGroupButton(dag3, BABYLON.Color3(1, 1, 0)); prepareGroupButton(dag4, BABYLON.Color3(1, 1, 0)); prepareGroupButton(dag5, BABYLON.Color3(1, 1, 0)); prepareGroupButton(dag6, BABYLON.Color3(1, 1, 0)); prepareGroupButton(dag7, BABYLON.Color3(1, 1, 0)); prepareGroupButton(dag8, BABYLON.Color3(1, 1, 0)); prepareGroupButton(dag9, BABYLON.Color3(1, 1, 0)); prepareGroupButton(dag10, BABYLON.Color3(1, 1, 0)); //test var camera01 = scene.getTransformNodeByName("camera01"); camera01.nameID = "DAK_MO_CAM_001"; var camera02 = scene.getTransformNodeByName("camera02"); camera02.nameID = "DAK_MO_CAM_002"; var camera03 = scene.getTransformNodeByName("camera03"); camera03.nameID = "DAK_MO_CAM_003"; var camera04 = scene.getTransformNodeByName("camera04"); camera04.nameID = "DAK_MO_CAM_004"; camera01.baojing = false; camera02.baojing = false; camera03.baojing = false; camera04.baojing = false; var yangan01 = scene.getTransformNodeByName("yangan01"); yangan01.nameID = "DAK_MO_OAO_001"; var yangan02 = scene.getTransformNodeByName("yangan02"); yangan02.nameID = "DAK_MO_OAO_002"; var yangan03 = scene.getTransformNodeByName("yangan03"); yangan03.nameID = "DAK_MO_OAO_003"; var yangan04 = scene.getTransformNodeByName("yangan04"); yangan04.nameID = "DAK_MO_OAO_004"; yangan01.baojing = false; yangan02.baojing = false; yangan03.baojing = false; yangan04.baojing = false; yangan01.canshow = true; yangan02.canshow = true; yangan03.canshow = true; yangan04.canshow = true; yangan01.wendu = 0; yangan01.sidu = 0; yangan02.wendu = 0; yangan02.sidu = 0; yangan03.wendu = 0; yangan03.sidu = 0; yangan04.wendu = 0; yangan04.sidu = 0; prepareGroupButtonOther(camera01, new BABYLON.Color3(0, 0, 1)); prepareGroupButtonOther(camera02, new BABYLON.Color3(0, 0, 1)); prepareGroupButtonOther(camera03, new BABYLON.Color3(0, 0, 1)); prepareGroupButtonOther(camera04, new BABYLON.Color3(0, 0, 1)); prepareGroupButtonOther(yangan01, new BABYLON.Color3(0, 0, 1)); prepareGroupButtonOther(yangan02, new BABYLON.Color3(0, 0, 1)); prepareGroupButtonOther(yangan03, new BABYLON.Color3(0, 0, 1)); prepareGroupButtonOther(yangan04, new BABYLON.Color3(0, 0, 1)); var x = scene.getMeshByName("档案架01_primitive0"); x.overlayColor = BABYLON.Color3.White(); x.renderOverlay = true; x = scene.getMeshByName("档案架02_primitive0"); x.overlayColor = BABYLON.Color3.White(); x.renderOverlay = true; x = scene.getMeshByName("档案架03_primitive0"); x.overlayColor = BABYLON.Color3.White(); x.renderOverlay = true; x = scene.getMeshByName("档案架04_primitive0"); x.overlayColor = BABYLON.Color3.White(); x.renderOverlay = true; x = scene.getMeshByName("档案架05_primitive0"); x.overlayColor = BABYLON.Color3.White(); x.renderOverlay = true; x = scene.getMeshByName("档案架06_primitive0"); x.overlayColor = BABYLON.Color3.White(); x.renderOverlay = true; x = scene.getMeshByName("档案架07_primitive0"); x.overlayColor = BABYLON.Color3.White(); x.renderOverlay = true; x = scene.getMeshByName("档案架08_primitive0"); x.overlayColor = BABYLON.Color3.White(); x.renderOverlay = true; x = scene.getMeshByName("档案架09_primitive0"); x.overlayColor = BABYLON.Color3.White(); x.renderOverlay = true; x = scene.getMeshByName("档案架10_primitive0"); x.overlayColor = BABYLON.Color3.White(); x.renderOverlay = true; x = scene.getMeshByName("前门01_primitive0"); x.overlayColor = BABYLON.Color3.White(); x.renderOverlay = true; x = scene.getMeshByName("后门01_primitive0"); x.overlayColor = BABYLON.Color3.White(); x.renderOverlay = true; // x = scene.getMeshByName("墙体"); // x.overlayColor = BABYLON.Color3.White(); // x.renderOverlay = true; //修改贴图 var bluexMat = new BABYLON.PBRMaterial("bluex", scene); var tempddxa = new BABYLON.Texture("./asset/blue.png", scene); var tempddxb = new BABYLON.Texture("./asset/blue.png", scene); tempddxa.hasAlpha = true; tempddxa.hasAlpha = true; tempddxa.uAng = (180 * Math.PI) / 180; tempddxb.uAng = (180 * Math.PI) / 180; bluexMat.useAlphaFromAlbedoTexture = true; bluexMat.albedoTexture = tempddxa; bluexMat.reflectionColor = new BABYLON.Color3(0, 0, 0); bluexMat.lightmapTexture = tempddxb; scene.getMeshByName("平面_1").material = bluexMat; var redMat = new BABYLON.PBRMaterial("redMat", scene); var tempddx2 = new BABYLON.Texture("./asset/red.png", scene); var tempddx3 = new BABYLON.Texture("./asset/red.png", scene); tempddx2.hasAlpha = true; tempddx3.hasAlpha = true; tempddx2.uAng = (180 * Math.PI) / 180; tempddx3.uAng = (180 * Math.PI) / 180; redMat.useAlphaFromAlbedoTexture = true; redMat.reflectionColor = new BABYLON.Color3(0, 0, 0); //redMat.emissiveTexture =tempddx2; redMat.albedoTexture = tempddx2; redMat.lightmapTexture = tempddx3; scene.getMeshByName("平面_1_2").material = redMat; //平面2 //Set font var font_size = 48; var font = "bold " + font_size + "px Arial"; //Set height for plane var planeHeight = 3; //Set height for dynamic texture var DTHeight = 1.5 * font_size; //or set as wished //Calcultae ratio var ratio = planeHeight / DTHeight; //Set text var text = "10"; //Use a temporay dynamic texture to calculate the length of the text on the dynamic texture canvas var temp = new BABYLON.DynamicTexture("DynamicTexture", 64, scene); var tmpctx = temp.getContext(); tmpctx.font = font; var DTWidth = tmpctx.measureText(text).width + 58; //Calculate width the plane has to be var planeWidth = DTWidth * ratio; //Create dynamic texture and write the text dynamicTexture = new BABYLON.DynamicTexture( "DynamicTexture", { width: DTWidth, height: DTHeight }, scene, false ); var mat = new BABYLON.StandardMaterial("mat", scene); //var mat = new BABYLON.PBRMaterial("mat", scene); //mat.albedoColor = new BABYLON.Color4(0.7968, 0.3685, 0.1105, 1); mat.disableLighting = true; mat.emissiveTexture = dynamicTexture; // mat.alpha = 0.75; // mat.alphaMode = 6; // mat.diffuseColor = new BABYLON.Color3(0, 0, 0); mat.reflectivityColor = new BABYLON.Color3(0, 0, 0); dynamicTexture.uAng = (166.39 * Math.PI) / 180; //Create plane and set dynamic texture as material //var plane = BABYLON.MeshBuilder.CreatePlane("plane", {width:planeWidth, height:planeHeight}, scene); var vxd = scene.getMeshByName("平面_2"); //blue vxd.material = mat; //平面3 dynamicTexture2 = new BABYLON.DynamicTexture( "DynamicTexture2", { width: DTWidth, height: DTHeight }, scene, false ); //var mat = new BABYLON.StandardMaterial("mat", scene); //mat.disableLighting = true; var mat2 = new BABYLON.StandardMaterial("mat2", scene); //mat.albedoColor = new BABYLON.Color4(0.7968, 0.3685, 0.1105, 1); mat2.disableLighting = true; //mat2.ambientTexture = dynamicTexture2; mat2.emissiveTexture = dynamicTexture2; // mat2.alpha = 0.75; // mat2.alphaMode=6; // mat2.diffuseColor = new BABYLON.Color3(0, 0, 0); mat2.reflectivityColor = new BABYLON.Color3(0, 0, 0); dynamicTexture2.uAng = (166.39 * Math.PI) / 180; //Create plane and set dynamic texture as material //var plane = BABYLON.MeshBuilder.CreatePlane("plane", {width:planeWidth, height:planeHeight}, scene); var vxd2 = scene.getMeshByName("平面_3"); vxd2.material = mat2; //------------------------------------------------------------------------------------- dynamicTexture3 = new BABYLON.DynamicTexture( "DynamicTexture3", { width: DTWidth, height: DTHeight }, scene, false ); //var mat = new BABYLON.StandardMaterial("mat", scene); //mat.disableLighting = true; var mat3 = new BABYLON.StandardMaterial("mat3", scene); //mat.albedoColor = new BABYLON.Color4(0.7968, 0.3685, 0.1105, 1); mat3.disableLighting = true; //mat2.ambientTexture = dynamicTexture2; mat3.emissiveTexture = dynamicTexture3; // mat3.alpha = 0.75; // mat3.alphaMode=6; // mat3.diffuseColor = new BABYLON.Color3(0, 0, 0); mat3.reflectivityColor = new BABYLON.Color3(0, 0, 0); dynamicTexture3.uAng = (166.39 * Math.PI) / 180; //Create plane and set dynamic texture as material //var plane = BABYLON.MeshBuilder.CreatePlane("plane", {width:planeWidth, height:planeHeight}, scene); var vxd3 = scene.getMeshByName("平面_2_2"); //blue vxd3.material = mat3; //------------------------------------------------------------------------------------- dynamicTexture4 = new BABYLON.DynamicTexture( "dynamicTexture4", { width: DTWidth, height: DTHeight }, scene, false ); //var mat = new BABYLON.StandardMaterial("mat", scene); //mat.disableLighting = true; var mat4 = new BABYLON.StandardMaterial("mat4", scene); //mat.albedoColor = new BABYLON.Color4(0.7968, 0.3685, 0.1105, 1); mat4.disableLighting = true; //mat2.ambientTexture = dynamicTexture2; mat4.emissiveTexture = dynamicTexture4; // mat4.alpha = 0.75; // mat4.alphaMode=6; // mat4.diffuseColor = new BABYLON.Color3(0, 0, 0); mat4.reflectivityColor = new BABYLON.Color3(0, 0, 0); dynamicTexture4.uAng = (166.39 * Math.PI) / 180; //Create plane and set dynamic texture as material //var plane = BABYLON.MeshBuilder.CreatePlane("plane", {width:planeWidth, height:planeHeight}, scene); var vxd4 = scene.getMeshByName("平面_3_2"); vxd4.material = mat4; scene.getMeshByName("tapblue").setEnabled(false); scene.getMeshByName("tapred").setEnabled(false); var light = new BABYLON.HemisphericLight( "HemiLight", new BABYLON.Vector3(0, 1, 0), scene ); light.intensity = 2; light.diffuse = new BABYLON.Color3(0.92, 0.92, 0.92); var material1 = scene.getMaterialByName("材质.075"); material1.albedoColor = new BABYLON.Color3(160 / 255, 160 / 255, 160 / 255); material1.roughness = 1; //地 var material2 = scene.getMaterialByName("材质.074"); material2.metallic = 0.52; material2.roughness = 0; //material2.metallicReflectanceColor=new BABYLON.Color3(1,0,0); material2.albedoColor = new BABYLON.Color3(0.8, 0.8, 0.8); var material3 = scene.getMaterialByName("材质.084"); material3.emissiveColor = new BABYLON.Color3(0.278, 0.278, 0.278); material3.metallic = 0.87; material3.roughness = 0; scene.getMeshByName("档案架10_primitive3").material = scene.getMaterialByName("01.004"); scene.getMeshByName("档案架09_primitive4").material = scene.getMaterialByName("02.004"); scene.getMeshByName("档案架08_primitive4").material = scene.getMaterialByName("03.004"); scene.getMeshByName("档案架07_primitive4").material = scene.getMaterialByName("04.004"); scene.getMeshByName("档案架06_primitive4").material = scene.getMaterialByName("05.004"); scene.getMeshByName("档案架06_primitive4").material = scene.getMaterialByName("06.004"); scene.getMeshByName("档案架04_primitive4").material = scene.getMaterialByName("07.004"); scene.getMeshByName("档案架03_primitive4").material = scene.getMaterialByName("08.004"); scene.getMeshByName("档案架02_primitive4").material = scene.getMaterialByName("09.004"); scene.getMeshByName("档案架01_primitive3").material = scene.getMaterialByName("10.004"); // 还原到10列,注释掉下面代码 // scene.getTransformNodeByName("档案柜01").setEnabled(false); // scene.getTransformNodeByName("档案柜02").setEnabled(false); // var v1 = scene.getMeshByName("钢轨01"); // v1.position = new BABYLON.Vector3(v1.position.x,60.0,v1.position.z); // v1.scaling = new BABYLON.Vector3(1,0.9,1); var v2 = scene.getTransformNodeByName("后门01"); v2.setParent( scene.getTransformNodeByName("档案柜03"),true); v2.position = new BABYLON.Vector3(v2.position.x,-122.479,v2.position.z); // player_balloon_js1.isVisible = false; // player_balloon_js2.isVisible = false; // 给vue页面传值,加载完成之后 parent.getIframeLoading("false") }; // createScene function that creates and return the scene var createScene = function() { engine.displayLoadingUI(); // create a basic BJS Scene object var scene = new BABYLON.Scene(engine); // scene.debugLayer.show(); var camera = new BABYLON.ArcRotateCamera( "Camera", 0, 0, 5, new BABYLON.Vector3(0, -1, 0), scene ); camera.setTarget(new BABYLON.Vector3(0, 2, 0)); camera.attachControl(canvas, true); camera.lowerRadiusLimit = 2.0; // 这里是最大的位置,值越大,物体越小 camera.upperRadiusLimit = 40; camera.radius = 10.48; camera.alpha = (Math.PI * -211.4) / 180; camera.beta = (Math.PI * 66) / 180; camera.inertia = 0.1; // 缩放的快慢 camera.useAutoRotationBehavior = true; // 自动旋转 camera.panningDistanceLimit = 2; //平移半径 camera.panningInertia = 0; camera.autoTransitionRange = 1; camera.pinchToPanMaxDistance = 0.1; camera.pinchDeltaPercentage = 0.001; camera.useAutoRotationBehavior = false; scene.activeCamera = camera; // 改变场景背景颜色 - 背景颜色opacity值设为0,达到透明背景的效果 scene.clearColor = new BABYLON.Color4(0, 0, 0, 0); scene.activeCamera.useInputToRestoreState = true; var camera1_status = scene.activeCamera.storeState(); var assetsManager = new BABYLON.AssetsManager(scene); var meshTask = assetsManager.addMeshTask( "skull task", "", "asset/", "mjj.glb" ); meshTask.onSuccess = function(task) { task.loadedMeshes[0].scaling = new BABYLON.Vector3(0.2, 0.2, -0.2); task.loadedMeshes[0].position = new BABYLON.Vector3(0.0, 2, 0); }; meshTask.onError = function(task, message, exception) { console.log(message, exception); }; /*var meshTask_tap = assetsManager.addMeshTask("skull task", "", "asset/", "tapx.glb"); meshTask_tap.onSuccess = function (task) { task.loadedMeshes[0].scaling = new BABYLON.Vector3(0.2, 0.2, -0.2); task.loadedMeshes[0].position = new BABYLON.Vector3(-1.929, 4.029, 0.968); //-2.5,3.77,1.45 // x = x-0.6;; y = y+0.3 z=z+0.5 task.loadedMeshes[0].rotation = new BABYLON.Vector3(0, 0, 0); task.loadedMeshes[0].name = "test"; var vx = scene.getTransformNodeByName("空白_2_2"); vx.position = new BABYLON.Vector3(0, 0, 0); vx.rotation = new BABYLON.Vector3(Math.PI / 2, 0, 0); } meshTask_tap.onError = function (task, message, exception) { console.log(message, exception); }*/ var meshTask_tapblue = assetsManager.addMeshTask( "skull task", "", "asset/", "tapBlue.glb" ); meshTask_tapblue.onSuccess = function(task) { task.loadedMeshes[0].scaling = new BABYLON.Vector3(0.2, 0.2, -0.2); task.loadedMeshes[0].position = new BABYLON.Vector3(0, 0, 0); //-2.5,3.77,1.45 // x = x-0.6;; y = y+0.3 z=z+0.5 task.loadedMeshes[0].rotation = new BABYLON.Vector3(0, 0, 0); task.loadedMeshes[0].name = "tapblue"; var vx = scene.getTransformNodeByName("蓝"); vx.position = new BABYLON.Vector3(0, 0, 0); vx.rotation = new BABYLON.Vector3(Math.PI / 2, 0, 0); vx.scaling = new BABYLON.Vector3(0.015, 0.015, 0.015); }; meshTask_tapblue.onError = function(task, message, exception) { console.log(message, exception); }; var meshTask_tapred = assetsManager.addMeshTask( "skull task", "", "asset/", "tapRed.glb" ); meshTask_tapred.onSuccess = function(task) { task.loadedMeshes[0].scaling = new BABYLON.Vector3(0.2, 0.2, -0.2); task.loadedMeshes[0].position = new BABYLON.Vector3(-1.929, 4.029, 0.968); //-2.5,3.77,1.45 // x = x-0.6;; y = y+0.3 z=z+0.5 task.loadedMeshes[0].rotation = new BABYLON.Vector3(0, 0, 0); task.loadedMeshes[0].name = "tapred"; var vx = scene.getTransformNodeByName("红"); vx.position = new BABYLON.Vector3(0, 0, 0); vx.rotation = new BABYLON.Vector3(Math.PI / 2, 0, 0); vx.scaling = new BABYLON.Vector3(0.015, 0.015, 0.015); }; meshTask_tapred.onError = function(task, message, exception) { console.log(message, exception); }; var hdrTexture = new BABYLON.CubeTexture.CreateFromPrefilteredData( "textures/environmentSpecular.env", scene ); //var hdrTexture = new BABYLON.CubeTexture.CreateFromPrefilteredData("textures/environment2.env", scene); scene.environmentTexture = hdrTexture; var spriteManagerPlayer = new BABYLON.SpriteManager( "playerManager", "./img/bl9.png", 10, { width: 100, height: 100 }, scene ); //spriteManagerPlayer.renderingGroupId = 2; spriteManagerPlayer.isPickable = true; //1 player_balloon_js1 = new BABYLON.Sprite( "player_balloon_js1", spriteManagerPlayer ); player_balloon_js1.size = 0.1; player_balloon_js1.name = "10"; player_balloon_js1.nameID = "cabinet10"; player_balloon_js1.cellIndex = 0; player_balloon_js1.position = new BABYLON.Vector3(-2.5, 3.5, -0.72); player_balloon_js1.isPickable = true; player_balloon_js1.width = 0.2; player_balloon_js1.height = 0.2; player_balloon_js1.playAnimation(0, 6, true, 200); //2 player_balloon_js2 = new BABYLON.Sprite( "player_balloon_js2", spriteManagerPlayer ); player_balloon_js2.size = 0.1; player_balloon_js2.name = "9"; player_balloon_js2.nameID = "cabinet09"; player_balloon_js2.cellIndex = 0; player_balloon_js2.position = new BABYLON.Vector3(-2.5, 3.5, -0.38); player_balloon_js2.isPickable = true; player_balloon_js2.width = 0.2; player_balloon_js2.height = 0.2; player_balloon_js2.playAnimation(0, 6, true, 200); //3 player_balloon_js3 = new BABYLON.Sprite( "player_balloon_js3", spriteManagerPlayer ); player_balloon_js3.size = 0.1; player_balloon_js3.name = "8"; player_balloon_js3.nameID = "cabinet08"; player_balloon_js3.cellIndex = 0; player_balloon_js3.position = new BABYLON.Vector3(-2.5, 3.5, -0.03); player_balloon_js3.isPickable = true; player_balloon_js3.width = 0.2; player_balloon_js3.height = 0.2; player_balloon_js3.playAnimation(0, 6, true, 200); //4 player_balloon_js4 = new BABYLON.Sprite( "player_balloon_js4", spriteManagerPlayer ); player_balloon_js4.size = 0.1; player_balloon_js4.name = "7"; player_balloon_js4.nameID = "cabinet07"; player_balloon_js4.cellIndex = 0; player_balloon_js4.position = new BABYLON.Vector3(-2.5, 3.5, 0.3); player_balloon_js4.isPickable = true; player_balloon_js4.width = 0.2; player_balloon_js4.height = 0.2; player_balloon_js4.playAnimation(0, 6, true, 200); //5 player_balloon_js5 = new BABYLON.Sprite( "player_balloon_js5", spriteManagerPlayer ); player_balloon_js5.size = 0.1; player_balloon_js5.name = "6"; player_balloon_js5.nameID = "cabinet06"; player_balloon_js5.cellIndex = 0; player_balloon_js5.position = new BABYLON.Vector3(-2.5, 3.5, 0.64); player_balloon_js5.isPickable = true; player_balloon_js5.width = 0.2; player_balloon_js5.height = 0.2; player_balloon_js5.playAnimation(0, 6, true, 200); //6 player_balloon_js6 = new BABYLON.Sprite( "player_balloon_js6", spriteManagerPlayer ); player_balloon_js6.size = 0.1; player_balloon_js6.name = "5"; player_balloon_js6.nameID = "cabinet05"; player_balloon_js6.cellIndex = 0; player_balloon_js6.position = new BABYLON.Vector3(-2.5, 3.5, 0.98); player_balloon_js6.isPickable = true; player_balloon_js6.width = 0.2; player_balloon_js6.height = 0.2; player_balloon_js6.playAnimation(0, 6, true, 200); //7 player_balloon_js7 = new BABYLON.Sprite( "player_balloon_js7", spriteManagerPlayer ); player_balloon_js7.size = 0.1; player_balloon_js7.name = "4"; player_balloon_js7.nameID = "cabinet04"; player_balloon_js7.cellIndex = 0; player_balloon_js7.position = new BABYLON.Vector3(-2.5, 3.5, 1.32); player_balloon_js7.isPickable = true; player_balloon_js7.width = 0.2; player_balloon_js7.height = 0.2; player_balloon_js7.playAnimation(0, 6, true, 200); //8 player_balloon_js8 = new BABYLON.Sprite( "player_balloon_js8", spriteManagerPlayer ); player_balloon_js8.size = 0.1; player_balloon_js8.name = "3"; player_balloon_js8.nameID = "cabinet03"; player_balloon_js8.cellIndex = 0; player_balloon_js8.position = new BABYLON.Vector3(-2.5, 3.5, 1.66); player_balloon_js8.isPickable = true; player_balloon_js8.width = 0.2; player_balloon_js8.height = 0.2; player_balloon_js8.playAnimation(0, 6, true, 200); //9 player_balloon_js9 = new BABYLON.Sprite( "player_balloon_js", spriteManagerPlayer ); player_balloon_js9.size = 0.1; player_balloon_js9.name = "2"; player_balloon_js9.nameID = "cabinet02"; player_balloon_js9.cellIndex = 0; player_balloon_js9.position = new BABYLON.Vector3(-2.5, 3.5, 2); //-2.3895861905112934, 3.402393519214794, z: 0.3225995832152506 player_balloon_js9.isPickable = true; player_balloon_js9.width = 0.2; player_balloon_js9.height = 0.2; player_balloon_js9.playAnimation(0, 6, true, 200); //10 player_balloon_js10 = new BABYLON.Sprite( "player_balloon_js10", spriteManagerPlayer ); player_balloon_js10.size = 0.1; player_balloon_js10.name = "1"; player_balloon_js10.nameID = "cabinet01"; player_balloon_js10.cellIndex = 0; player_balloon_js10.position = new BABYLON.Vector3(-2.5, 3.5, 2.33); player_balloon_js10.isPickable = true; player_balloon_js10.width = 0.2; player_balloon_js10.height = 0.2; player_balloon_js10.playAnimation(0, 6, true, 200); scene.onPointerDown = function(evt) { var pickResult = scene.pickSprite(this.pointerX, this.pointerY); var pick = scene.pick(scene.pointerX, scene.pointerY); console.log(pick.pickedPoint); if (pickResult.pickedSprite != null) { if (pickResult.hit) { cabinetClick(pickResult.pickedSprite); } } }; // renderCanvas.style.backgroundImage = 'url("./textures/' + '4' + '.jpg")'; assetsManager.load(); drag = new BABYLON.PointerDragBehavior({ dragPlaneNormal: new BABYLON.Vector3(0, 0, 1) }); //drag.useObjectOrienationForDragging = false; drag.validateDrag = targetPosition => { console.log(targetPosition); if (targetPosition.x > 10.5 || targetPosition.x < -10.5) { return false; } if (targetPosition.z > 10.5 || targetPosition.z < -10.5) { return false; } if (oldtransformNodex != null) { return true; } }; drag.onDragEndObservable.add(event => { console.log("dragEnd"); //console.log(event); //console.log(line03_position) }); //GUI h1 = new BABYLON.HighlightLayer("hl1", scene); h2 = new BABYLON.HighlightLayer("hl2", scene); h3 = new BABYLON.HighlightLayer("hl3", scene); var step = 0.1; var currentx = 1; var step2 = 0.1; var currentx2 = 0.1; h1.blurHorizontalSize = 0.1; var showx = 0; var showx2 = 2; scene.registerAfterRender(() => { h1.blurHorizontalSize = h1.blurVerticalSize + currentx; h2.blurHorizontalSize = h2.blurVerticalSize + currentx2; h3.blurHorizontalSize = h3.blurVerticalSize + currentx2; var nodealert = scene.getTransformNodeByName("yangan01"); if (nodealert != null) { var mesheses3 = null; if (nodealert.getClassName() == "TransformNode") { mesheses3 = nodealert.getChildMeshes(false); } else { mesheses3 = []; mesheses3.push(nodealert); } for (var i = 0; i < mesheses3.length; i++) { try { if (nodealert.baojing == true) { h3.addMesh(mesheses3[i], new BABYLON.Color3(1, 0, 0)); } else { h3.removeMesh(mesheses3[i]); } } catch (error) { // alert(error) } } } var nodealert = scene.getTransformNodeByName("yangan02"); if (nodealert != null) { var mesheses3 = null; if (nodealert.getClassName() == "TransformNode") { mesheses3 = nodealert.getChildMeshes(false); } else { mesheses3 = []; mesheses3.push(nodealert); } for (var i = 0; i < mesheses3.length; i++) { try { if (nodealert.baojing == true) { h3.addMesh(mesheses3[i], new BABYLON.Color3(1, 0, 0)); } else { h3.removeMesh(mesheses3[i]); } } catch (error) { // alert(error) } } } var nodealert = scene.getTransformNodeByName("yangan03"); if (nodealert != null) { var mesheses3 = null; if (nodealert.getClassName() == "TransformNode") { mesheses3 = nodealert.getChildMeshes(false); } else { mesheses3 = []; mesheses3.push(nodealert); } for (var i = 0; i < mesheses3.length; i++) { try { if (nodealert.baojing == true) { h3.addMesh(mesheses3[i], new BABYLON.Color3(1, 0, 0)); } else { h3.removeMesh(mesheses3[i]); } } catch (error) { // alert(error) } } } var nodealert = scene.getTransformNodeByName("yangan04"); if (nodealert != null) { var mesheses3 = null; if (nodealert.getClassName() == "TransformNode") { mesheses3 = nodealert.getChildMeshes(false); } else { mesheses3 = []; mesheses3.push(nodealert); } for (var i = 0; i < mesheses3.length; i++) { try { if (nodealert.baojing == true) { h3.addMesh(mesheses3[i], new BABYLON.Color3(1, 0, 0)); } else { h3.removeMesh(mesheses3[i]); } } catch (error) { // alert(error) } } } var nodealert = scene.getTransformNodeByName("camera01"); if (nodealert != null) { var mesheses3 = null; if (nodealert.getClassName() == "TransformNode") { mesheses3 = nodealert.getChildMeshes(false); } else { mesheses3 = []; mesheses3.push(nodealert); } for (var i = 0; i < mesheses3.length; i++) { try { if (nodealert.baojing == true) { h3.addMesh(mesheses3[i], new BABYLON.Color3(1, 0, 0)); } else { h3.removeMesh(mesheses3[i]); } } catch (error) { // alert(error) } } } var nodealert = scene.getTransformNodeByName("camera02"); if (nodealert != null) { var mesheses3 = null; if (nodealert.getClassName() == "TransformNode") { mesheses3 = nodealert.getChildMeshes(false); } else { mesheses3 = []; mesheses3.push(nodealert); } for (var i = 0; i < mesheses3.length; i++) { try { if (nodealert.baojing == true) { h3.addMesh(mesheses3[i], new BABYLON.Color3(1, 0, 0)); } else { h3.removeMesh(mesheses3[i]); } } catch (error) { // alert(error) } } } var nodealert = scene.getTransformNodeByName("camera03"); if (nodealert != null) { var mesheses3 = null; if (nodealert.getClassName() == "TransformNode") { mesheses3 = nodealert.getChildMeshes(false); } else { mesheses3 = []; mesheses3.push(nodealert); } for (var i = 0; i < mesheses3.length; i++) { try { if (nodealert.baojing == true) { h3.addMesh(mesheses3[i], new BABYLON.Color3(1, 0, 0)); } else { h3.removeMesh(mesheses3[i]); } } catch (error) { // alert(error) } } } var nodealert = scene.getTransformNodeByName("camera04"); if (nodealert != null) { var mesheses3 = null; if (nodealert.getClassName() == "TransformNode") { mesheses3 = nodealert.getChildMeshes(false); } else { mesheses3 = []; mesheses3.push(nodealert); } for (var i = 0; i < mesheses3.length; i++) { try { if (nodealert.baojing == true) { h3.addMesh(mesheses3[i], new BABYLON.Color3(1, 0, 0)); } else { h3.removeMesh(mesheses3[i]); } } catch (error) { // alert(error) } } } var a = scene.getMaterialByName("carpaint_baseRed"); if (a != null) { if (a.albedoColor == b) { b = new BABYLON.Color3(0, 1, 0); a.albedoColor = b; } } var v2 = scene.getMeshByName("tapblue"); if (v2 != null) { v2.lookAt(camera.globalPosition, 0, 0, Math.PI); } var v3 = scene.getMeshByName("tapred"); if (v3 != null) { v3.lookAt(camera.globalPosition, 0, 0, Math.PI); } if (currentx > 0.5) { step *= -1; } if (currentx < 0) { step *= -1; } currentx += step; if (currentx2 > 5) { step2 *= -1; } if (currentx2 < 0) { step2 *= -1; } currentx2 += step2; if (dynamicTexture != null && PointerOverYangan != null) { var textx = scene.getTransformNodeByName(PointerOverYangan).wendu; var font_size = 48; var font = "bold " + font_size + "px Arial"; dynamicTexture.drawText( textx + "°C", null, null, font, "#FFFFFF", "#000000", true ); showx++; show = 50; } if (dynamicTexture2 != null && PointerOverYangan != null) { var textx = scene.getTransformNodeByName(PointerOverYangan).sidu; var font_size = 50; var font = "bold " + font_size + "px Arial"; dynamicTexture2.drawText( textx + "%", null, null, font, "#FFFFFF", "#000000", true ); } if (dynamicTexture3 != null && PointerOverYangan != null) { var textx = scene.getTransformNodeByName(PointerOverYangan).wendu; var font_size = 48; var font = "bold " + font_size + "px Arial"; dynamicTexture3.drawText( textx + "°C", null, null, font, "#FFFFFF", "#000000", true ); } if (dynamicTexture4 != null && PointerOverYangan != null) { var textx = scene.getTransformNodeByName(PointerOverYangan).sidu; var font_size = 50; var font = "bold " + font_size + "px Arial"; dynamicTexture4.drawText( textx + "%", null, null, font, "#FFFFFF", "#000000", true ); } /*show--; showdd--;*/ }); return scene; }; var canvas = document.getElementById("renderCanvas"); // load the 3D engine var engine = new BABYLON.Engine(canvas, true, { stencil: true }); // call the createScene function var scene = createScene(); scene.autoClear = true; scene.imageProcessingConfiguration.exposure = 1; scene.imageProcessingConfiguration.contrast = 1; scene.environmentIntensity = 0.4; engine.runRenderLoop(function() { scene.render(); }); window.addEventListener("resize", function() { engine.resize(); }); function HashMap() { //定义长度 var length = 0; //创建一个对象 var obj = new Object(); //判断Map是否为空 this.isEmpty = function() { return length == 0; }; //判断对象中是否包含给定Key this.containsKey = function(key) { return key in obj; }; //判断对象中是否包含给定的Value this.containsValue = function(value) { for (var key in obj) { if (obj[key] == value) { return true; } } return false; }; //向map中添加数据 this.put = function(key, value) { if (!this.containsKey(key)) { length++; } obj[key] = value; }; //根据给定的key获取Value this.get = function(key) { return this.containsKey(key) ? obj[key] : null; }; //根据给定的Key删除一个值 this.remove = function(key) { if (this.containsKey(key) && delete obj[key]) { length--; } }; //获得Map中所有的value this.values = function() { var _values = new Array(); for (var key in obj) { _values.push(obj[key]); } return _values; }; //获得Map中的所有key this.keySet = function() { var _keys = new Array(); for (var key in obj) { _keys.push(key); } return _keys; }; //获得Map的长度 this.size = function() { return length; }; //清空Map this.clear = function() { length = 0; obj = new Object(); }; } var yangans = new HashMap(); yangans.put("DAK_MO_OAO_001", "yangan01"); yangans.put("DAK_MO_OAO_002", "yangan02"); yangans.put("DAK_MO_OAO_003", "yangan03"); yangans.put("DAK_MO_OAO_004", "yangan04"); yangans.put("DAK_MO_CAM_001", "camera01"); yangans.put("DAK_MO_CAM_002", "camera02"); yangans.put("DAK_MO_CAM_003", "camera03"); yangans.put("DAK_MO_CAM_004", "camera04"); //功能转入报警 function Myalert(MathineID, baojing) { scene.getMeshByName("tapblue").setEnabled(false); scene.getMeshByName("tapred").setEnabled(false); var theName = yangans.get(MathineID); if (theName == "yangan01") { scene.getTransformNodeByName("yangan01").baojing = baojing; } if (theName == "yangan02") { scene.getTransformNodeByName("yangan02").baojing = baojing; } if (theName == "yangan03") { scene.getTransformNodeByName("yangan03").baojing = baojing; } if (theName == "yangan04") { scene.getTransformNodeByName("yangan04").baojing = baojing; } if (theName == "camera01") { scene.getTransformNodeByName("camera01").baojing = baojing; } if (theName == "camera02") { scene.getTransformNodeByName("camera02").baojing = baojing; } if (theName == "camera03") { scene.getTransformNodeByName("camera03").baojing = baojing; } if (theName == "camera04") { scene.getTransformNodeByName("camera04").baojing = baojing; } } //报警 true:表示报警, false :表示不报警 //Myalert("DAK_MO_OAO_001",true) //设置温湿度 function setAlertValue(MathineID, wendu, sidu) { var theName = yangans.get(MathineID); if (theName == "yangan01") { scene.getTransformNodeByName("yangan01").wendu = wendu; scene.getTransformNodeByName("yangan01").sidu = sidu; } if (theName == "yangan02") { scene.getTransformNodeByName("yangan02").wendu = wendu; scene.getTransformNodeByName("yangan02").sidu = sidu; } if (theName == "yangan03") { scene.getTransformNodeByName("yangan03").wendu = wendu; scene.getTransformNodeByName("yangan03").sidu = sidu; } if (theName == "yangan04") { scene.getTransformNodeByName("yangan04").wendu = wendu; scene.getTransformNodeByName("yangan04").sidu = sidu; } } //设置温湿度: setAlertValue("DAK_MO_OAO_001",4,5) // 设置是否显示 function setYangGanCanshow(MathineID, canshow){ var theName = yangans.get(MathineID); if(theName.indexOf("yangan") >= 0){ scene.getTransformNodeByName(theName).canshow = canshow; } } // setYangGanCanshow("DAK_MO_OAO_001",false) //功能:档案柜标点点击 // function cabinetClick(cabinet) { // alert(cabinet.nameID); // } function cabinetClick(cabinet) { window.parent.postMessage( { data: cabinet.nameID }, "*" ); } // 摄像头和温湿度点击 // function cameraClick(TheCamera) { // alert(TheCamera.nameID); // } function cameraClick(TheCamera) { window.parent.postMessage( { data: TheCamera.nameID }, "*" ); } // 监测父页面传来得初始化得温度湿度值 window.addEventListener( "message", function(e) { deviceData = e.data.data; }, false );