liling 1 year ago
parent
commit
f58311cb6a
1 changed files with 27 additions and 16 deletions
  1. 27 16
      main.html

+ 27 - 16
main.html

@@ -104,7 +104,7 @@
 							</tr>
 						</thead>
 				</table>
-				<div style="max-height: 128px;width: 100%;overflow: hidden;">
+				<div style="height: 128px;width: 100%;overflow: hidden;">
 					<table id="dev_alarm_list" style="width: 100%;background: rgba(25,57,103,0.3);" cellspacing=0>
 						<tbody>
 							<tr>
@@ -1958,7 +1958,7 @@
                 }
                 if(is20){
                     //当前盘头有小于20%的,则不再做其他判断了
-                    break
+                    continue
                 }
                 //判断盘头中是否有低于50的,但大于20%的
                 var is50=false;
@@ -1978,7 +1978,7 @@
                     }
                 }
                 if(is50){
-                    break
+                    continue
                 }
                 if (MODEL_LOADED == 1) {
                     this.PanAlarm[devCode]=null;
@@ -2367,6 +2367,7 @@
     }
 
     var MarkerMap={};//标记记录
+    var MarkerOptMap={};
     //设置设置名称或者模型id的颜色
     async function ChangeModelColor(name, color, hinttxt) {
         var iteminfo = modelsMap[name]
@@ -2385,25 +2386,35 @@
                 var srcPosition = iteminfo.xyz // await player.Native.NodeProxy.getNodePosition(temp.item);
                 //console.log("posio",srcPosition)
                 // 创建标记
-                var imgid = await player.Native.GisMarker.loadImage("rgba:255,0,0,255");
-                var options = {
-                    "text": hinttxt,
-                    "visible": true,
-                    "maxLod": 110,
-                    "minLod": 0.1,
-                    "textColor": parseInt("0xffffffff")
-                };
-                options.pos = [srcPosition[0] - 1, srcPosition[1] - 2, srcPosition[2]];
-                //options.parentNode=tmp.item;
-                options.imgId = imgid
-                options.imgSize = [-1, -1];
+                var options = {};
+                if(MarkerOptMap[name]==null)
+                {
+                    var imgid = await player.Native.GisMarker.loadImage("rgba:255,0,0,255");
+                    options = {
+                        "text": hinttxt,
+                        "visible": true,
+                        "maxLod": 110,
+                        "minLod": 0.1,
+                        "textColor": parseInt("0xffffffff")
+                    };
+                    options.pos = [srcPosition[0] - 1, srcPosition[1] - 2, srcPosition[2]];
+                    //options.parentNode=tmp.item;
+                    options.imgId = imgid
+                    options.imgSize = [-1, -1];
+                    MarkerOptMap[name] = options;
+                }else{
+                    options = MarkerOptMap[name]
+                    options.text = hinttxt;
+                }
                 if(MarkerMap[name]!=null){
                     player.Native.GisMarker.update(MarkerMap[name],options);
                 }else{
                     var markPtr = await player.Native.GisMarker.create(options);
                     player.Native.GisMarker.update(markPtr, options);
-                    MarkerMap[name] = markPtr;
+                    MarkerMap[name] = markPtr;                    
                 }
+            }else{
+                player.Native.GisMarker.update(MarkerMap[name],{"visible":false});
             }
         }
     }