|
@@ -14,6 +14,15 @@
|
|
|
style="cursor: pointer;position: absolute;right: 10px;top: 25px;height: 38px;width: 38px;text-align: center;"
|
|
|
onclick="backMasterView()"><img src="image/view.png"></div>
|
|
|
</div>
|
|
|
+<div class="bottom">
|
|
|
+ <div for="FAC" style="display: flex; justify-content: center; flex-flow: row;">
|
|
|
+ <img src="image/fac_btn.png" onclick="loadFacModel(playerNative);backMasterView();">
|
|
|
+ <img src="image/in02_btn.png" onclick="loadIn02Model(playerNative);backMasterView();">
|
|
|
+ <img src="image/in04_btn.png">
|
|
|
+ <img src="image/in03_btn.png" onclick="loadIn03Model(playerNative);backMasterView();">
|
|
|
+ <img src="image/in05_btn.png">
|
|
|
+ </div>
|
|
|
+</div>
|
|
|
<div for="IN03" id="top" class="top top03 hideDiv">
|
|
|
<div title="返回主视图"
|
|
|
style="cursor: pointer;position: absolute;right: 10px;top: 25px;height: 38px;width: 38px;text-align: center;"
|
|
@@ -47,8 +56,8 @@
|
|
|
<div itemcode="11"><span>生产绩效月报</span><img src="image/imp2.png" style="float: right;margin-top: 7px;"></div>
|
|
|
<div itemcode="12"><span>车间能耗日报</span><img src="image/imp2.png" style="float: right;margin-top: 7px;"></div>
|
|
|
<div itemcode="13"><span>车间能耗月报</span><img src="image/imp2.png" style="float: right;margin-top: 7px;"></div>
|
|
|
- <!-- <div itemcode="1"><span>最近7天</span><img src="image/imp2.png" style="float: right;margin-top: 7px;"></div>-->
|
|
|
- <!-- <div itemcode="2"><span>自定义日期</span><img src="image/imp2.png" style="float: right;margin-top: 7px;"></div>-->
|
|
|
+ <!-- <div itemcode="1"><span>最近7天</span><img src="image/imp2.png" style="float: right;margin-top: 7px;"></div>-->
|
|
|
+ <!-- <div itemcode="2"><span>自定义日期</span><img src="image/imp2.png" style="float: right;margin-top: 7px;"></div>-->
|
|
|
</div>
|
|
|
<div for="IN02" id="date_select">
|
|
|
<div class="triangle"></div>
|
|
@@ -1402,7 +1411,7 @@
|
|
|
// 渲染的格式svg/canvas/html,svg性能更优,兼容性更好
|
|
|
renderer: "svg",
|
|
|
});
|
|
|
- var currentTargetType="FAC";//当前视图对象类型。FAC:厂房 IN02:2号楼内部 IN03:3号楼内部
|
|
|
+ var currentTargetType="";//当前视图对象类型。FAC:厂房 IN02:2号楼内部 IN03:3号楼内部
|
|
|
//切换点列表
|
|
|
var inPoints={
|
|
|
"IN02":{"Text001_002":1,"x1":-28.07801,"y1":37.95126,"x2":-23.32394,"y2":31.16921},
|
|
@@ -2563,7 +2572,7 @@
|
|
|
// alert("送经量");
|
|
|
window.open(SERVER_URL + "/export/warp-run-in");
|
|
|
break;
|
|
|
- case 9:
|
|
|
+ case 9:
|
|
|
e.stopPropagation();
|
|
|
$("#prev_day").val('7');
|
|
|
// alert("纱线规格");
|
|
@@ -2910,55 +2919,175 @@
|
|
|
console.info(`用户长时间没有操作三维视图,会话即将退出,可调用player.resetTimer()取消退出`);
|
|
|
if (!AutoPlayer && currentTargetType=='IN02') $("#autoplayer_btn").trigger('click') //开启自动漫游
|
|
|
});
|
|
|
+ async function showMarker(type){
|
|
|
+ for (var t in MarkerMapFac) {
|
|
|
+ if(t==type){
|
|
|
+ for (var markPtr in MarkerMapFac[t]) {
|
|
|
+ var options = MarkerMapFac[t][markPtr];
|
|
|
+ options["visible"]=true;
|
|
|
+ await player.Native.GisMarker.update(markPtr, options);
|
|
|
+ }
|
|
|
+ }else{
|
|
|
+ for (var markPtr in MarkerMapFac[t]) {
|
|
|
+ var options = MarkerMapFac[t][markPtr];
|
|
|
+ options["visible"]=false;
|
|
|
+ await player.Native.GisMarker.update(markPtr, options);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
async function loadFacModel(Native){
|
|
|
+ if(currentTargetType=="FAC") return;
|
|
|
+ currentTargetType="FAC";
|
|
|
$("body>div.hideDiv[for='FAC']").show();
|
|
|
$("body>div.hideDiv[for!='FAC']").hide();
|
|
|
await player.Native.Model.setModelVisible("IN02",false);
|
|
|
await player.Native.Model.setModelVisible("IN03",false);
|
|
|
await player.Native.Model.setModelVisible("IN04",false);
|
|
|
- await player.Native.Model.setModelVisible("IN05",false);
|
|
|
- currentTargetType="FAC";
|
|
|
- if(modelLoadState[currentTargetType]==null){
|
|
|
+ await player.Native.Model.setModelVisible("IN05",false);
|
|
|
+ if(modelLoadState[currentTargetType]==null){
|
|
|
var cf = "data://models/T_ALL.pr";
|
|
|
var errStr = await PlayerUtils.call(Native.Model.loadModel, currentTargetType, cf);
|
|
|
modelLoadState[currentTargetType] = true;
|
|
|
+ //获取4号楼顶对象
|
|
|
+ var obj02 = await player.Native.ModelTree.findItemByName("Box013",0,true,1);
|
|
|
+ var imgid = await player.Native.GisMarker.loadImage("data://icon/qietu/tip2.png");
|
|
|
+ var options = {
|
|
|
+ "text": "白胚布\r\r当日入库:100 出库:200\r当月入库:1000 出库:2000\r",
|
|
|
+ "visible": true,
|
|
|
+ //"maxLod": 130,
|
|
|
+ "minLod": 0,
|
|
|
+ "textFontSize":18,
|
|
|
+ "textColor": parseInt("0xffffffff"),
|
|
|
+ "contentPadding":[5,5,5,5]
|
|
|
+ };
|
|
|
+
|
|
|
+ var obj02Aabb = await player.Native.ModelTree.getItemShapeInfo(obj02.item);
|
|
|
+ options.pos = [obj02Aabb.aabb[0][0], obj02Aabb.aabb[0][1], obj02Aabb.aabb[0][2]+70];
|
|
|
+ //options.parentNode=tmp.item;
|
|
|
+ options.imgId = imgid
|
|
|
+ options.imgSize = [0, 110];
|
|
|
+ var markPtr = await player.Native.GisMarker.create(options);
|
|
|
+ //await player.Native.GisMarker.update(markPtr, options);
|
|
|
+ MarkerMapFac["FAC"]={};
|
|
|
+ MarkerMapFac["FAC"][markPtr]=options;
|
|
|
+ //获取盘头仓对象
|
|
|
+ var pantou = await player.Native.ModelTree.findItemByName("Object023",0,true,1);
|
|
|
+ //var imgid = await player.Native.GisMarker.loadImage("rgba:255,0,255,255");
|
|
|
+ var options = {
|
|
|
+ "text": "盘头\r\r当日入库:100 出库:200\r当月入库:1000 出库:2000",
|
|
|
+ "visible": true,
|
|
|
+ //"maxLod": 130,
|
|
|
+ "minLod": 0,
|
|
|
+ "textFontSize":16,
|
|
|
+ "textColor": parseInt("0xffffffff"),
|
|
|
+ "contentPadding":[5,5,5,5]
|
|
|
+ };
|
|
|
+ var obj02Aabb = await player.Native.ModelTree.getItemShapeInfo(pantou.item);
|
|
|
+ options.pos = [obj02Aabb.aabb[0][0], obj02Aabb.aabb[0][1]-20, obj02Aabb.aabb[0][2]+10];
|
|
|
+ //options.parentNode=tmp.item;
|
|
|
+ options.imgId = imgid
|
|
|
+ options.imgSize = [0, 110];
|
|
|
+ var markPtr = await player.Native.GisMarker.create(options);
|
|
|
+ MarkerMapFac["FAC"][markPtr]=options;
|
|
|
+ //await player.Native.GisMarker.update(markPtr, options);
|
|
|
+ //获取原材料仓对象
|
|
|
+ var pantou = await player.Native.ModelTree.findItemByName("B412",0,true,1);
|
|
|
+ //var imgid = await player.Native.GisMarker.loadImage("rgba:255,0,255,255");
|
|
|
+ var options = {
|
|
|
+ "text": "原材料\r\r当日入库:100 出库:200\r当月入库:1000 出库:2000",
|
|
|
+ "visible": true,
|
|
|
+ //"maxLod": 130,
|
|
|
+ "minLod": 0,
|
|
|
+ "textFontSize":16,
|
|
|
+ "textColor": parseInt("0xffffffff"),
|
|
|
+ "contentPadding":[5,5,5,5]
|
|
|
+ };
|
|
|
+ var obj02Aabb = await player.Native.ModelTree.getItemShapeInfo(pantou.item);
|
|
|
+ options.pos = [obj02Aabb.aabb[0][0], obj02Aabb.aabb[0][1], obj02Aabb.aabb[0][2]+20];
|
|
|
+ //options.parentNode=tmp.item;
|
|
|
+ options.imgId = imgid
|
|
|
+ options.imgSize = [0, 110];
|
|
|
+ var markPtr = await player.Native.GisMarker.create(options);
|
|
|
+ MarkerMapFac["FAC"][markPtr]=options;
|
|
|
+ //await player.Native.GisMarker.update(markPtr, options);
|
|
|
+ //var imgid = await player.Native.GisMarker.loadImage("rgba:255,0,255,255");
|
|
|
+ var options = {
|
|
|
+ "text": "成品\r\r当日入库:100 出库:200\r当月入库:1000 出库:2000",
|
|
|
+ "visible": true,
|
|
|
+ //"maxLod": 130,
|
|
|
+ "minLod": 0,
|
|
|
+ "textFontSize":16,
|
|
|
+ "textColor": parseInt("0xffffffff"),
|
|
|
+ "contentPadding":[5,5,5,5]
|
|
|
+ };
|
|
|
+ options.pos = [obj02Aabb.aabb[0][0]+120, obj02Aabb.aabb[0][1], obj02Aabb.aabb[0][2]+20];
|
|
|
+ //options.parentNode=tmp.item;
|
|
|
+ options.imgId = imgid
|
|
|
+ options.imgSize = [0, 110];
|
|
|
+ var markPtr = await player.Native.GisMarker.create(options);
|
|
|
+ MarkerMapFac["FAC"][markPtr]=options;
|
|
|
+ //await player.Native.GisMarker.update(markPtr, options);
|
|
|
+ }else{
|
|
|
+ showMarker(currentTargetType);
|
|
|
}
|
|
|
+ player.Native.Settings.set('ambientIndenty', 'float', 0.39);//初始化环境光补偿
|
|
|
+ player.Native.Settings.set('diffuseIntensity', 'float', 0.8);//初始化光线强度
|
|
|
+ player.Native.Settings.set('specularIntensity', 'float', 0.64);//初始化高光强度
|
|
|
await player.Native.Model.setModelVisible(currentTargetType,true);
|
|
|
player.Native.CameraAnimation.clearKeyFrame();
|
|
|
}
|
|
|
async function loadIn05Model(Native){
|
|
|
+ if(currentTargetType=="IN05") return;
|
|
|
currentTargetType="IN05";
|
|
|
currentTargetType="FAC";//还未实现,默认停在工厂视图
|
|
|
}
|
|
|
async function loadIn04Model(Native){
|
|
|
+ if(currentTargetType=="IN04") return;
|
|
|
currentTargetType="IN04";
|
|
|
currentTargetType="FAC"; //还未实现,默认停在工厂视图
|
|
|
}
|
|
|
async function loadIn03Model(Native){
|
|
|
+ if(currentTargetType=="IN03") return;
|
|
|
currentTargetType="IN03";
|
|
|
await player.Native.Model.setModelVisible("FAC",false);
|
|
|
await player.Native.Model.setModelVisible("IN02",false);
|
|
|
await player.Native.Model.setModelVisible("IN04",false);
|
|
|
await player.Native.Model.setModelVisible("IN05",false);
|
|
|
$("body>div.hideDiv[for='FAC']").hide();
|
|
|
+ $("body>div.hideDiv[for='IN02']").hide();
|
|
|
+ $("body>div.hideDiv[for='IN04']").hide();
|
|
|
+ $("body>div.hideDiv[for='IN05']").hide();
|
|
|
$("body>div.hideDiv[for='"+currentTargetType+"']").show();
|
|
|
+ player.Native.Settings.set('ambientIndenty', 'float', 1);//初始化环境光补偿
|
|
|
+ player.Native.Settings.set('diffuseIntensity', 'float', 1);//初始化光线强度
|
|
|
+ player.Native.Settings.set('specularIntensity', 'float', 1.2);//初始化高光强度
|
|
|
if(modelLoadState[currentTargetType]==null){
|
|
|
var cf = "data://models/T_03.pr";
|
|
|
var errStr = await PlayerUtils.call(Native.Model.loadModel, currentTargetType, cf);
|
|
|
modelLoadState[currentTargetType] = true;
|
|
|
+ }else{
|
|
|
+ showMarker(currentTargetType);
|
|
|
}
|
|
|
await player.Native.Model.setModelVisible(currentTargetType,true);
|
|
|
player.Native.CameraAnimation.clearKeyFrame();
|
|
|
}
|
|
|
async function loadIn02Model(Native){
|
|
|
+ if(currentTargetType=="IN02") return;
|
|
|
currentTargetType="IN02";
|
|
|
await player.Native.Model.setModelVisible("FAC",false);
|
|
|
await player.Native.Model.setModelVisible("IN03",false);
|
|
|
await player.Native.Model.setModelVisible("IN04",false);
|
|
|
await player.Native.Model.setModelVisible("IN05",false);
|
|
|
$("body>div.hideDiv[for='FAC']").hide();
|
|
|
+ $("body>div.hideDiv[for='IN03']").hide();
|
|
|
+ $("body>div.hideDiv[for='IN04']").hide();
|
|
|
+ $("body>div.hideDiv[for='IN05']").hide();
|
|
|
$("body>div.hideDiv[for='"+currentTargetType+"']").show();
|
|
|
+ player.Native.Settings.set('ambientIndenty', 'float', 0.39);//初始化环境光补偿
|
|
|
+ player.Native.Settings.set('diffuseIntensity', 'float', 0.8);//初始化光线强度
|
|
|
+ player.Native.Settings.set('specularIntensity', 'float', 0.64);//初始化高光强度
|
|
|
if(modelLoadState[currentTargetType]==null){
|
|
|
var cf = "data://models/T_02.pr";
|
|
|
var errStr = await PlayerUtils.call(Native.Model.loadModel, currentTargetType, cf);
|
|
@@ -3029,6 +3158,8 @@
|
|
|
GetAlarmData();
|
|
|
//获取在线设备列表
|
|
|
GetOnlineDev();
|
|
|
+ }else{
|
|
|
+ showMarker(currentTargetType);
|
|
|
}
|
|
|
for (var i in ANIMATION_DATA) {
|
|
|
// 添加关键帧
|
|
@@ -3095,8 +3226,7 @@
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
- if(inTxt!=""){
|
|
|
- currentTargetType=inTxt;
|
|
|
+ if(inTxt!=""){
|
|
|
switch(inTxt){
|
|
|
case "IN02":
|
|
|
loadIn02Model(Native);
|
|
@@ -3113,6 +3243,7 @@
|
|
|
default:
|
|
|
break;
|
|
|
}
|
|
|
+ currentTargetType=inTxt;
|
|
|
backMasterView();
|
|
|
}else{
|
|
|
moveFacAnything("LClick", event);
|
|
@@ -3157,7 +3288,7 @@
|
|
|
// if (object.checked) {
|
|
|
player.Native.ModelTree.setSelectItem(sam0023.item);
|
|
|
// } else {
|
|
|
- // player.Native.ModelTree.setSelectItem(0);
|
|
|
+ // player.Native.ModelTree.setSelectItem(0);
|
|
|
// }
|
|
|
} else if (object.id == "itemColor") {
|
|
|
console.log("瓦特?", JSON.stringify(sam0023))
|
|
@@ -3175,6 +3306,8 @@
|
|
|
}
|
|
|
|
|
|
var MarkerMap = {};//标记记录
|
|
|
+ var MarkerMapFac={};
|
|
|
+ var MarkerMapIN03={};
|
|
|
var MarkerOptMap = {};
|
|
|
|
|
|
//设置设置名称或者模型id的颜色
|