From c6d9be2aac4965e847fd958288170e26e79b219d Mon Sep 17 00:00:00 2001
From: 15832144755 <67030627+15832144755@users.noreply.github.com>
Date: 星期三, 01 九月 2021 16:09:44 +0800
Subject: [PATCH] 9.1
---
src/main/webapp/hxzk/mapshow/mapShow.jsp | 2415 +++++++++++++++++++++++++++++-----------------------------
1 files changed, 1,206 insertions(+), 1,209 deletions(-)
diff --git a/src/main/webapp/hxzk/mapshow/mapShow.jsp b/src/main/webapp/hxzk/mapshow/mapShow.jsp
index 8c0cd4c..b0880b9 100644
--- a/src/main/webapp/hxzk/mapshow/mapShow.jsp
+++ b/src/main/webapp/hxzk/mapshow/mapShow.jsp
@@ -208,786 +208,781 @@
<!-- END CONTENT PART -->
<!-- END MAIN CONTAINER -->
- <%
- String username=(String)session.getAttribute("username");
- if(username==null || username.equals("")){
- request.getRequestDispatcher("/hxzk/login.jsp").forward(request,response);
- return;
- }
- %>
- <!-- BEGIN GLOBAL MANDATORY SCRIPTS -->
- <script src="/hxzkoa/hxzk/assets/js/libs/jquery-3.1.1.min.js"></script>
- <script src="/hxzkoa/hxzk/bootstrap/js/popper.min.js"></script>
- <script src="/hxzkoa/hxzk/bootstrap/js/bootstrap.min.js"></script>
- <script src="/hxzkoa/hxzk/plugins/perfect-scrollbar/perfect-scrollbar.min.js"></script>
- <script src="/hxzkoa/hxzk/assets/js/app.js"></script>
- <script src="/hxzkoa/hxzk/plugins/sweetalerts/promise-polyfill.js"></script>
- <script src="/hxzkoa/hxzk/plugins/sweetalerts/sweetalert2.min.js"></script>
- <script src="/hxzkoa/hxzk/plugins/sweetalerts/custom-sweetalert.js"></script>
- <script src="/hxzkoa/hxzk/plugins/table/datatable/button-ext/dataTables.buttons.min.js"></script>
- <script src="/hxzkoa/hxzk/plugins/table/datatable/button-ext/jszip.min.js"></script>
- <script src="/hxzkoa/hxzk/plugins/table/datatable/button-ext/buttons.html5.min.js"></script>
- <script src="/hxzkoa/hxzk/plugins/table/datatable/button-ext/buttons.print.min.js"></script>
- <script>
- var result;
- $(document).ready(function () {
- App.init(); $.ajax({ async: false, type: "POST", url: "/hxzkoa/getSysSetting_list.do", data: {}, dataType: "json", success: function (data) { /* title = data[0].title; document.title = title; */ }, });
- result = getAllMap(); //result["mapname"]=mapnamelist, ['floor']=floorlist
- diaoyonghuatu(result);
- });
-
- $('.header-page').load('/hxzkoa/hxzk/top.html'); $('.login-page').load('/hxzkoa/hxzk/head.html');
- </script>
- <script src="/hxzkoa/hxzk/assets/js/custom.js"></script>
- <!-- END GLOBAL MANDATORY SCRIPTS -->
-
- <!-- > BEGIN PAGE FUNCTION SCRIPTS -->
-
-
- <script>
- //棣栭〉鍦板浘鎺у埗
- var full_screen = false;
- var timer_list = [];
- function getAllMap() {
- var map = [];
- var floor = [];
- $.ajax({
- async: false,
- type: "POST",
- url: "/hxzkoa/qiehuanditu_option.do",
- dataType: 'json',
- data: {},
- success: function (data) {
- if (data.length == 0) {
- document.getElementById("map0").style.display = "none";
- document.getElementById("map1").style.display = "none";
- document.getElementById("map2").style.display = "none";
- document.getElementById("map3").style.display = "none";
- } else if (data.length == 1) {
- document.getElementById("map0").style.width = "100%";
- document.getElementById("mapname0").innerHTML = data[0].mapname;
- document.getElementById("maphead0").style.height = "800px";
- document.getElementById("wrap0").style.height = "750px";
- document.getElementById("map1").style.display = "none";
- document.getElementById("map2").style.display = "none";
- document.getElementById("map3").style.display = "none";
- full_screen = true;
- } else if (data.length == 2) {
- document.getElementById("map2").style.display = "none";
- document.getElementById("map3").style.display = "none";
- };
- for (var i = 0; i < data.length; i++) {
- str = "mapname" + i;
- document.getElementById(str).innerHTML = data[i].mapname;
- map.push(data[i].mapname);
- floor.push(data[i].floor);
- if (i == 3) {
- break;
- }
- };
- },
+ <% String username=(String)session.getAttribute("username"); if(username==null || username.equals("")){
+ request.getRequestDispatcher("/hxzk/login.jsp").forward(request,response); return; } %>
+ <!-- BEGIN GLOBAL MANDATORY SCRIPTS -->
+ <script src="/hxzkoa/hxzk/assets/js/libs/jquery-3.1.1.min.js"></script>
+ <script src="/hxzkoa/hxzk/bootstrap/js/popper.min.js"></script>
+ <script src="/hxzkoa/hxzk/bootstrap/js/bootstrap.min.js"></script>
+ <script src="/hxzkoa/hxzk/plugins/perfect-scrollbar/perfect-scrollbar.min.js"></script>
+ <script src="/hxzkoa/hxzk/assets/js/app.js"></script>
+ <script src="/hxzkoa/hxzk/plugins/sweetalerts/promise-polyfill.js"></script>
+ <script src="/hxzkoa/hxzk/plugins/sweetalerts/sweetalert2.min.js"></script>
+ <script src="/hxzkoa/hxzk/plugins/sweetalerts/custom-sweetalert.js"></script>
+ <script src="/hxzkoa/hxzk/plugins/table/datatable/button-ext/dataTables.buttons.min.js"></script>
+ <script src="/hxzkoa/hxzk/plugins/table/datatable/button-ext/jszip.min.js"></script>
+ <script src="/hxzkoa/hxzk/plugins/table/datatable/button-ext/buttons.html5.min.js"></script>
+ <script src="/hxzkoa/hxzk/plugins/table/datatable/button-ext/buttons.print.min.js"></script>
+ <script>
+ var result;
+ $(document).ready(function () {
+ App.init(); $.ajax({ async: false, type: "POST", url: "/hxzkoa/getSysSetting_list.do", data: {}, dataType: "json", success: function (data) { /* title = data[0].title; document.title = title; */ }, });
+ result = getAllMap(); //result["mapname"]=mapnamelist, ['floor']=floorlist
+ diaoyonghuatu(result);
});
- var result = [];
- result['map'] = map;
- result['floor'] = floor;
- return result
- }
- </script>
+ $('.header-page').load('/hxzkoa/hxzk/top.html'); $('.login-page').load('/hxzkoa/hxzk/head.html');
+ </script>
+ <script src="/hxzkoa/hxzk/assets/js/custom.js"></script>
+ <!-- END GLOBAL MANDATORY SCRIPTS -->
- <!-- 甯哥敤鍑芥暟 -->
- <script>
- function getTruemap_all() {
- var map_wl = {};
- $.ajax({
- async: false,
- type: "POST",
- url: "/hxzkoa/floornumTomap_all.do",
- dataType: 'json',
- data: {},
- success: function (data) {
- let tmp = new Set();
- for (var i = 0; i < data.length; i++) {
- tmp.add(data[i].floor);
- };
- let tmpl = Array.from(tmp);
- for (i in tmpl) {
- map_wl[tmpl[i]] = [];
- }
- for (var i = 0; i < data.length; i++) {
- map_wl[data[i].floor].push([data[i].x_Truelength, data[i].y_Truewidth]);
- }
- },
- });
- return map_wl;
- };
+ <!-- > BEGIN PAGE FUNCTION SCRIPTS -->
- function getYuandian_all() {
- var yuandian = {};
- $.ajax({
- async: false,
- type: "POST",
- url: "/hxzkoa/floornumTomap_all.do",
- dataType: 'json',
- data: {},
- success: function (data) {
- let tmp = new Set();
- for (var i = 0; i < data.length; i++) {
- tmp.add(data[i].floor);
- };
- let tmpl = Array.from(tmp);
- for (i in tmpl) {
- yuandian[tmpl[i]] = [];
- }
- for (var i = 0; i < data.length; i++) {
- yuandian[data[i].floor].push([data[i].x0_length, data[i].y0_width]);
- }
- }
- });
- return yuandian;
- };
- function getSystemSetting() {
- var sysset = [];
- $.ajax({
- async: false,
- type: 'POST',
- url: "/hxzkoa/getSysSetting_list.do",
- dataType: 'json',
- success: function (data) {
- sysset = data;
- },
- });
- return sysset;
- };
-
- function loadImages(sources, callback) {
- var count = 0,
- images = {},
- imgNum = 0;
- for (src in sources) {
- imgNum++;
- }
- for (src in sources) {
- images[src] = new Image();
-
- images[src].onload = function () {
- if (++count >= imgNum) {
- callback(images);
- }
- }
- images[src].src = sources[src];
- }
- };
-
- function getTrackColor(yanse) {
- var color;
- if (yanse == "绾㈣壊") {
- var color = "red";
- } else if (yanse == "缁胯壊") {
- var color = "green";
- } else if (yanse == "钃濊壊") {
- var color = "blue";
- } else if (yanse == "鐧借壊") {
- var color = "white";
- } else if (yanse == "榛戣壊") {
- var color = "black";
- } else if (yanse == "榛勮壊") {
- var color = "yellow";
- }
- return color
- };
-
- function getExistFence_all(leixing) {
- var fencelist = {};
- var fencecolor = {};
- var fencename = {};
- var fencetype = {};
- $.ajax({
- async: false,
- type: 'POST',
- url: "/hxzkoa/getFloorFence_all.do",
- dataType: 'json',
- data: {},
- success: function (data) {
- let tmp = new Set();
- for (var i = 0; i < data.length; i++) {
- tmp.add(data[i].floor);
- };
- let tmpl = Array.from(tmp);
- for (i in tmpl) {
- fencelist[tmpl[i]] = [];
- fencecolor[tmpl[i]] = [];
- fencename[tmpl[i]] = [];
- fencetype[tmpl[i]] = [];
- }
- for (var i = 0; i < data.length; i++) {
- fencelist[data[i].floor].push(data[i].zuobiao);
- fencecolor[data[i].floor].push(data[i].color);
- fencename[data[i].floor].push(data[i].name);
- fencetype[data[i].floor].push(data[i].type);
- }
- }
- });
- if (leixing == "zuobiao") {
- return fencelist
- } else if (leixing == "color") {
- return fencecolor
- } else if (leixing == "name") {
- return fencename
- } else if (leixing == "type") {
- return fencetype
- };
- };
-
- function getDrawColor(yanse) {
- var color;
- if (yanse == "绾㈣壊") {
- var color = "rgba(255,0,0,0.3)";
- } else if (yanse == "缁胯壊") {
- var color = "rgba(0,255,0,0.3)";
- } else if (yanse == "钃濊壊") {
- var color = "rgba(0,0,255,0.3)";
- } else if (yanse == "鐧借壊") {
- var color = "rgba(255,255,255,0.3)";
- } else if (yanse == "榛戣壊") {
- var color = "rgba(0,0,0,0.3)";
- }
- return color
- };
- function inFenceOrNot(fence_list, node_list) {
- //fence_list[x,y]
- //node_list[x,y]
- if (fence_list.length == 2) { //鐭╁舰
- if (node_list[0] >= Math.min(fence_list[0][0], fence_list[1][0]) && node_list[0] <= Math.max(fence_list[0][0], fence_list[1][0])) {
- if (node_list[1] >= Math.min(fence_list[0][1], fence_list[1][1]) && node_list[1] <= Math.max(fence_list[0][1], fence_list[1][1])) {
- return true //鍦ㄨ�冨嫟鍖哄煙
- }
- }
- return false //涓嶅湪鑰冨嫟鍖哄煙
- } else if (fence_list.length > 2) { //澶氳竟褰�
- for (var c = false, i = -1, l = fence_list.length, j = l - 1; ++i < l; j = i)
- ((fence_list[i][1] <= node_list[1] && node_list[1] < fence_list[j][1]) || (fence_list[j][1] <= node_list[1] && node_list[1] < fence_list[i][1]))
- && (node_list[0] < (fence_list[j][0] - fence_list[i][0]) * (node_list[1] - fence_list[i][1]) / (fence_list[j][1] - fence_list[i][1]) + fence_list[i][0])
- && (c = !c);
- return c;
- }
- };
-
- function getGas(leixing) {
- var gaslist = [];
- var gasnongdu = [];
- var gastype = [];
- $.ajax({
- async: false,
- type: 'POST',
- url: "/hxzkoa/getGas_list.do",
- dataType: 'json',
- data: {},
- success: function (data) {
- for (var i = 0; i < data.length; i++) {
- gaslist.push([data[i].x, data[i].y]);
- gasnongdu.push(data[i].nong_du);
- gastype.push(data[i].gas_type);
- }
- }
- });
- if (leixing == "zuobiao") {
- return gaslist
- } else if (leixing == "type") {
- return gastype
- } else if (leixing == "nongdu") {
- return gasnongdu
- };
- };
-
- function getRealPosition(current_floor) {
- var realposition = [];
- $.ajax({
- async: false,
- type: 'POST',
- url: "/hxzkoa/getRealPosition.do",
- dataType: 'json',
- data: {
- floor: current_floor,
- },
- success: function (data) {
- for (var i = 0; i < data.length; i++) {
- //playMark[id,name,power,life,x,y,time]
- realposition.push([data[i].tagid, data[i].name, data[i].power, data[i].life, data[i].posx, data[i].posy, data[i].time, data[i].fence == 1 || data[i].sos == 1, data[i].sousuo, data[i].shipin])
- }
- },
- });
- return realposition
- };
-
- function str_to_time(str) {
- //鏍规嵁瀛楃涓茶浆鎹㈡垚瀵瑰簲鐨勬椂闂达紙绉掞級
- if (str == "涓嶆樉绀哄疄鏃惰建杩�") {
- return 0;
- } else if (str == "10绉掗挓") {
- return 10;
- } else if (str == "30绉掗挓") {
- return 30;
- } else if (str == "1鍒嗛挓") {
- return 60;
- } else if (str == "10鍒嗛挓") {
- return 600;
- } else if (str == "30鍒嗛挓") {
- return 1800;
- } else if (str == "1灏忔椂") {
- return 3600;
- };
- };
-
- function getTracknow(current_floor, tagid_str, time) {
- var finalrealtrack = {};
- $.ajax({
- async: false,
- type: 'POST',
- url: "/hxzkoa/getRealTrack.do",
- dataType: 'json',
- data: {
- time: time,
- floor: current_floor,
- tagid: tagid_str,
- },
- success: function (data) {
- for (var i = 0; i < data.length; i++) {
- finalrealtrack[data[i][0].tagid] = [];
- for (var j = 0; j < data[i].length; j++) {
- finalrealtrack[data[i][0].tagid].push([data[i][j].x, data[i][j].y, data[i][j].time])
- }
- }
- },
- });
- return finalrealtrack;
- };
-
- function getAnchorInfo_all() {
- var anchorList_on = {};
- var anchorList_off = {};
- $.ajax({
- async: false,
- type: 'POST',
- url: "/hxzkoa/getAnchorInfo_all.do",
- dataType: 'json',
- data: {},
- success: function (data) {
- let tmp = new Set();
- for (var i = 0; i < data.length; i++) {
- tmp.add(data[i].layer);
- };
- let tmpl = Array.from(tmp);
- for (i in tmpl) {
- anchorList_on[tmpl[i]] = [];
- anchorList_off[tmpl[i]] = [];
- }
- for (var i = 0; i < data.length; i++) {
- if (data[i].anchormode == "1") {
- anchorList_on[data[i].layer].push([data[i].anchorid, data[i].posx, data[i].posy, data[i].posz, data[i].GreateTime]);
- } else if (data[i].anchormode == "0") {
- anchorList_off[data[i].layer].push([data[i].anchorid, data[i].posx, data[i].posy, data[i].posz, data[i].GreateTime]);
-
- }
- }
- }
- });
- return [anchorList_on, anchorList_off]
- };
-
- /**璇ユ柟娉曠敤鏉ョ粯鍒朵竴涓湁濉厖鑹茬殑鍦嗚鐭╁舰
- *@param cxt:canvas鐨勪笂涓嬫枃鐜
- *@param x:宸︿笂瑙抶杞村潗鏍�
- *@param y:宸︿笂瑙抷杞村潗鏍�
- *@param width:鐭╁舰鐨勫搴�
- *@param height:鐭╁舰鐨勯珮搴�
- *@param radius:鍦嗙殑鍗婂緞
- *@param fillColor:濉厖棰滆壊
- **/
- function fillRoundRect(cxt, x, y, width, height, radius, /*optional*/ fillColor) {
- //鍦嗙殑鐩村緞蹇呯劧瑕佸皬浜庣煩褰㈢殑瀹介珮
- if (2 * radius > width || 2 * radius > height) { return false; }
-
- cxt.save();
- cxt.translate(x, y);
- //缁樺埗鍦嗚鐭╁舰鐨勫悇涓竟
- drawRoundRectPath(cxt, width, height, radius);
- cxt.fillStyle = fillColor || "#000"; //鑻ユ槸缁欏畾浜嗗�煎氨鐢ㄧ粰瀹氱殑鍊煎惁鍒欑粰浜堥粯璁ゅ��
- cxt.fill();
- cxt.restore();
- }
-
- function drawRoundRectPath(cxt, width, height, radius) {
- cxt.beginPath(0);
- //浠庡彸涓嬭椤烘椂閽堢粯鍒讹紝寮у害浠�0鍒�1/2PI
- cxt.arc(width - radius, height - radius, radius, 0, Math.PI / 2);
-
- //鐭╁舰涓嬭竟绾�
- cxt.lineTo(radius, height);
-
- //宸︿笅瑙掑渾寮э紝寮у害浠�1/2PI鍒癙I
- cxt.arc(radius, height - radius, radius, Math.PI / 2, Math.PI);
-
- //鐭╁舰宸﹁竟绾�
- cxt.lineTo(0, radius);
-
- //宸︿笂瑙掑渾寮э紝寮у害浠嶱I鍒�3/2PI
- cxt.arc(radius, radius, radius, Math.PI, Math.PI * 3 / 2);
-
- //涓婅竟绾�
- cxt.lineTo(width - radius, 0);
-
- //鍙充笂瑙掑渾寮�
- cxt.arc(width - radius, radius, radius, Math.PI * 3 / 2, Math.PI * 2);
-
- //鍙宠竟绾�
- cxt.lineTo(width, height - radius);
- cxt.closePath();
- }
- </script>
- <!-- 甯哥敤鍑芥暟缁撴潫 -->
-
- <!-- 璋冪敤瀹ゅ唴瀹氫綅鍦板浘鍔熻兘 -->
- <script>
- function diaoyonghuatu(result) {
-
- var truemap_list = getTruemap_all();
- var yuandian_list = getYuandian_all();
- var fencezuobiao_list = getExistFence_all("zuobiao");
- var fencecolor_list = getExistFence_all("color");
- var fencename_list = getExistFence_all("name");
- var fencetype_list = getExistFence_all("type");
- var onlineAnchorinfo_list = getAnchorInfo_all()[0];
- var offlineAnchorinfo_list = getAnchorInfo_all()[1];
-
- //璇诲彇绯荤粺璁剧疆
- var sysSetting = getSystemSetting();
-
- for (var i = 0; i < result['map'].length; i++) {
- var cf = result['floor'][i];//褰撳墠floor
- var tml = [];
- if (truemap_list[cf]) {
- tml = truemap_list[cf];
- };
- var ydl = [];
- if (yuandian_list[cf]) {
- ydl = yuandian_list[cf];
- };
- var fzbl = [];
- if (fencezuobiao_list[cf]) {
- fzbl = fencezuobiao_list[cf];
- };
- var fcl = [];
- if (fencecolor_list[cf]) {
- fcl = fencecolor_list[cf];
- };
- var fnl = [];
- if (fencename_list[cf]) {
- fnl = fencename_list[cf];
- };
- var ftl = []
- if (fencetype_list[cf]) {
- ftl = fencetype_list[cf];
- };
- var ail_on = [];
- if (onlineAnchorinfo_list[cf]) {
- ail_on = onlineAnchorinfo_list[cf];
- };
- var ail_off = [];
- if (offlineAnchorinfo_list[cf]) {
- ail_off = offlineAnchorinfo_list[cf];
- };
- subgraph(i, result['map'][i], result['floor'][i], tml, ydl, fzbl, fcl, fnl, ftl, ail_on, ail_off, sysSetting, result['map'].length)
- }
-
- };
- //subgraph(i,result['map'][i],result['floor'][i],tml,ydl,fzbl,fcl,fnl,ftl,ail,sysSetting)
- function subgraph(index, mp, fr, tml, ydl, fzbl, fcl, fnl, ftl, ail_on, ail_off, sysSetting, ttm) {
- var imgUrl = '/hxzkoa/hxzk/image/mapfile/' + mp;//鍥剧墖璺緞
- //var imgUrl = '/hxzkoa/hxzk/image/mapfile/office.jpg';//鍥剧墖璺緞
- var imgList = new Array();
- imgList['map'] = imgUrl;
- var iconUrl = '/hxzkoa/hxzk/image/targeticon/default.png';
- imgList['icon'] = iconUrl;
-
- // var anckicon = '/hxzkoa/hxzk/image/anchor/lingjin.png';
- // imgList['anchor']=anckicon;
- var anckicon_on = '/hxzkoa/hxzk/image/anchor/鍩虹珯鍦ㄧ嚎.png';
- //var anckicon_on = '/hxzkoa/hxzk/image/anchor/lingjin.png';
- imgList['anchor_online'] = anckicon_on;
-
- var anckicon_off = '/hxzkoa/hxzk/image/anchor/鍩虹珯绂荤嚎.png'
- //var anckicon_off = '/hxzkoa/hxzk/image/anchor/ceju.png';
- imgList['anchor_offline'] = anckicon_off;
-
- new MarkPoints(index, fr, imgList, tml, ydl, fzbl, fcl, fnl, ftl, ail_on, ail_off, sysSetting, ttm);
- };
- var serial;
- var code;
- var isDelete = false;
- var shipinka = true;
- var tuodong = false;
- var colorbbb = "rgba(255,0,0,0.3)";
- var sosType = [];
- var sousuoType = true;
- for (var i = 0; i < 500; i++) {
- sosType[i] = true;
- }
- var sos = document.createElement('img');
- sos.src = '/hxzkoa/hxzk/image/icon/SOS.png';
- var sos1 = document.createElement('img');
- sos1.src = '/hxzkoa/hxzk/image/icon/SOS1.png';
- var sousuo0 = document.createElement('img');
- sousuo0.src = '/hxzkoa/hxzk/image/icon/sousuo0.png';
- function MarkPoints(index, current_floor, imgList, tml, ydl, fzbl, fcl, fnl, ftl, ail_on, ail_off, sysSetting, ttm) {
- this.imgX = 0;//鍦ㄧ敾甯冧笂鍥剧墖鐨刋鍋忕Щ閲�
- this.imgY = 0;//鍦ㄧ敾甯冧笂鍥剧墖鐨刌鍋忕Щ閲�
- this.imgScale = 1;//鍥剧墖鐨勭缉鏀炬瘮渚�
- this.rateNum;//鍥剧墖楂樺害鑷�傚簲姣斾緥,鍥剧墖绛夋瘮灞呬腑灞曠ず鍦╟anvas
- this.scaleFlag = 0;//缂╂斁鍥犲瓙锛屾渶澶х缉鏀�9,鏈�灏忕缉鏀�-9
- this.context;
- this.img; //鍦板浘
- this.playIndex = 0;
- this.pos = {};//姣忔鎷栨嫿鍓嶅潗鏍囦繚瀛�
-
- this.imgLoadList = new Array();
- this.rateNumList = new Array();
- this.imgXList = new Array();
- this.imgYList = new Array();
- this.imgScaleList = new Array();
-
- //鑾峰彇鐪熷疄鍦板浘
- this.trueMeasure;
- this.trueLength;
- this.trueWidth;
- this.x_ratio;
- this.y_ratio;
- this.x_x0;
- this.y_y0;
- this.expand = false;
-
- //system setting
- this.sysSetting;
- this.tagZb = '0';//鏄惁鏄剧ず鏍囩鍧愭爣
- this.diskaoqin = '0'; //鍑鸿�冨嫟鍖哄煙鏄惁娑堝け
- this.viewAnckid = '0';//鏄惁鏄剧ず鍩虹珯ID
- this.viewName = '0';//鏄惁鏄剧ず浜哄憳鍚嶇О
- this.tunlDw = '0'//闅ч亾瀹氫綅妯″紡
- this.guiji_sava = '0'//鏄惁寮�鍚建杩逛繚瀛�
- this.viewPower = '0';//鏄惁鏄剧ず鐢甸噺
- this.viewTagid = '0';//鏄惁鏄剧ず鏍囩ID
- this.viewAnckzb = '0';//鏄惁鏄剧ず鍩虹珯鍧愭爣
- this.offView = '0'//鏄惁绂荤嚎涓嶆樉绀哄浘鏍�
- this.anckicon = '0'//鏄惁鏄剧ず鍩虹珯鍥炬爣
- this.gas_show = '0'//鏄剧ず鍏朵粬妫�娴�(姘斾綋鏄剧ず)
- this.quiet = '0'//闈欐杈撳嚭鍥哄畾鍧愭爣
- this.real_trak_time = 0//瀹炴椂杞ㄨ抗鏄剧ず鏃堕暱
- this.real_trak_color = '绾㈣壊'//瀹炴椂杞ㄨ抗鏄剧ず鐨勯鑹�
- this.fence_show = '0'//鏄惁鏄剧ず鍥存爮
-
- this.playFlag = false;//鏄惁鎾斁
- this.dragFlag = false;//鏄惁鍙嫋鎷藉綋鍓峣mg锛岄粯璁や笉鑳�
- this.markFlag = false;//鏍囪鍖哄煙寮�鍚叧闂璮lag
- this.CreatLinepoints = [];//姣忔鍒涘缓鏂板尯鍩熺殑鍧愭爣闆嗗悎
- this.playMark; //姝e湪灞曠ず鐨勬爣璁�
- this.playMarkInKaoQin;//褰撳墠鏍囪鏄惁鍦ㄨ�冨嫟鍖哄煙鍐�
- this.trackNow; //褰撳墠杞ㄨ抗
-
- this.onlineAnchorList;//褰撳墠鍩虹珯鍒楄〃
- this.offlineAnchorList;
-
- this.allMarkLins = [];//宸插垱寤虹殑鍖哄煙闆嗗悎锛屼緥濡俒[{x,y},{x,y},{x,y}],[{n,m},{n,m},{n,m}]]鐩墠鍙渶瑕佷竴涓尯鍩燂紝鎵�浠ユ暟缁勫唴閮ㄥ彧鏈変竴椤�
- this.allFenceColor = [];//宸插垱寤虹殑鍖哄煙棰滆壊
-
- this.FenceList; //鍥存爮鍧愭爣
- this.FenceColor; //鍥存爮棰滆壊
- this.FenceName; //鍥存爮鍚嶇О
- this.realFenceList = []; // [鍚嶇О锛岀被鍨嬶紝瀹為檯鍧愭爣]
- this.fenceMarkCount; //鍖哄煙鍐呯殑鍧愭爣鏁伴噺
- this.cacheCanvas = null; //缂撳瓨鍥存爮缁樺浘
-
- this.GasList; //姘斾綋鍧愭爣
- this.GasType; //姘斾綋绫诲瀷
- this.GasNongdu; //姘斾綋娴撳害
-
- this.ttm;
- this.timer;
-
- this.getImgLoad(index, imgList, current_floor);
- this.init(current_floor, tml, ydl, fzbl, fcl, fnl, ftl, ail_on, ail_off, sysSetting, ttm);
-
- document.oncontextmenu = new Function("event.returnValue=false;");
- document.onselectstart = new Function("event.returnValue=false;");
- };
-
- MarkPoints.prototype = {
- getImgLoad: function (index, imgList, current_floor) {
- var _this = this;
- var str = "wrap" + index;
- var wrap = document.getElementById(str);
- var str2 = "draw" + index;
- _this.canvas = document.getElementById(str2);
- _this.context = _this.canvas.getContext('2d');
- _this.canvas.height = wrap.offsetHeight;
- _this.canvas.width = wrap.offsetWidth;
-
- loadImages(imgList, function (images) {
- for (var key in images) {
- if (key == 'map') {
- _this.imgScaleList[key] = 1;
- _this.img = images[key];
- } else if (key == 'icon') {
- _this.imgScaleList[key] = 0.03;
- } else {
- _this.imgScaleList[key] = images[key].naturalWidth / images['map'].naturalWidth;
+ <script>
+ //棣栭〉鍦板浘鎺у埗
+ var full_screen = false;
+ var timer_list = [];
+ function getAllMap() {
+ var map = [];
+ var floor = [];
+ $.ajax({
+ async: false,
+ type: "POST",
+ url: "/hxzkoa/qiehuanditu_option.do",
+ dataType: 'json',
+ data: {},
+ success: function (data) {
+ if (data.length == 0) {
+ document.getElementById("map0").style.display = "none";
+ document.getElementById("map1").style.display = "none";
+ document.getElementById("map2").style.display = "none";
+ document.getElementById("map3").style.display = "none";
+ } else if (data.length == 1) {
+ document.getElementById("map0").style.width = "100%";
+ document.getElementById("mapname0").innerHTML = data[0].mapname;
+ document.getElementById("maphead0").style.height = "800px";
+ document.getElementById("wrap0").style.height = "750px";
+ document.getElementById("map1").style.display = "none";
+ document.getElementById("map2").style.display = "none";
+ document.getElementById("map3").style.display = "none";
+ full_screen = true;
+ } else if (data.length == 2) {
+ document.getElementById("map2").style.display = "none";
+ document.getElementById("map3").style.display = "none";
};
- _this.rateNumList[key] = _this.canvas.width / images[key].naturalWidth;
- _this.imgXList[key] = (_this.canvas.width - images[key].naturalWidth * _this.imgScaleList[key] * _this.rateNumList[key]) / 2;
- _this.imgYList[key] = (_this.canvas.height - images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key]) / 2;//榛樿杩涙潵褰撳墠鍥惧儚灞呬腑鏄剧ず
- _this.imgLoadList[key] = images[key];
- }
- /*鐢诲嚭褰撳墠鍥剧墖*/
- //_this.drawImg(current_floor);
+ for (var i = 0; i < data.length; i++) {
+ str = "mapname" + i;
+ document.getElementById(str).innerHTML = data[i].mapname;
+ map.push(data[i].mapname);
+ floor.push(data[i].floor);
+ if (i == 3) {
+ break;
+ }
+ };
+ },
});
- },
+ var result = [];
+ result['map'] = map;
+ result['floor'] = floor;
+ return result
+ }
- drawImg: function (current_floor) {
- var _this = this;
- var can = _this.context;
- can.clearRect(0, 0, _this.canvas.width, _this.canvas.height);
+ </script>
- can.globalCompositeOperation = "source-over";
- var images = _this.imgLoadList;
+ <!-- 甯哥敤鍑芥暟 -->
+ <script>
+ function getTruemap_all() {
+ var map_wl = {};
+ $.ajax({
+ async: false,
+ type: "POST",
+ url: "/hxzkoa/floornumTomap_all.do",
+ dataType: 'json',
+ data: {},
+ success: function (data) {
+ let tmp = new Set();
+ for (var i = 0; i < data.length; i++) {
+ tmp.add(data[i].floor);
+ };
+ let tmpl = Array.from(tmp);
+ for (i in tmpl) {
+ map_wl[tmpl[i]] = [];
+ }
+ for (var i = 0; i < data.length; i++) {
+ map_wl[data[i].floor].push([data[i].x_Truelength, data[i].y_Truewidth]);
+ }
+ },
+ });
+ return map_wl;
+ };
- //鐢诲湴鍥�
- can.drawImage(_this.img, 0, 0, _this.img.naturalWidth, _this.img.naturalHeight, _this.imgXList['map'], _this.imgYList['map'], _this.img.naturalWidth * _this.imgScaleList['map'] * _this.rateNumList['map'], _this.img.naturalHeight * _this.imgScaleList['map'] * _this.rateNumList['map']);
+ function getYuandian_all() {
+ var yuandian = {};
+ $.ajax({
+ async: false,
+ type: "POST",
+ url: "/hxzkoa/floornumTomap_all.do",
+ dataType: 'json',
+ data: {},
+ success: function (data) {
+ let tmp = new Set();
+ for (var i = 0; i < data.length; i++) {
+ tmp.add(data[i].floor);
+ };
+ let tmpl = Array.from(tmp);
+ for (i in tmpl) {
+ yuandian[tmpl[i]] = [];
+ }
+ for (var i = 0; i < data.length; i++) {
+ yuandian[data[i].floor].push([data[i].x0_length, data[i].y0_width]);
+ }
+ }
+ });
+ return yuandian;
+ };
- $("#jiazai0").remove()
- $("#jiazai1").remove()
- $("#jiazai2").remove()
- $("#jiazai3").remove()
+ function getSystemSetting() {
+ var sysset = [];
+ $.ajax({
+ async: false,
+ type: 'POST',
+ url: "/hxzkoa/getSysSetting_list.do",
+ dataType: 'json',
+ success: function (data) {
+ sysset = data;
+ },
+ });
+ return sysset;
+ };
- //瀹為檯涓庡浘鐗囩殑姣斾緥灏�
- _this.x_ratio = new Number(_this.imgLoadList['map'].naturalWidth / _this.trueLength);
- _this.y_ratio = new Number(_this.imgLoadList['map'].naturalHeight / _this.trueWidth);
+ function loadImages(sources, callback) {
+ var count = 0,
+ images = {},
+ imgNum = 0;
+ for (src in sources) {
+ imgNum++;
+ }
+ for (src in sources) {
+ images[src] = new Image();
- if (tuodong == true) {
- return false;
+ images[src].onload = function () {
+ if (++count >= imgNum) {
+ callback(images);
+ }
+ }
+ images[src].src = sources[src];
+ }
+ };
+
+ function getTrackColor(yanse) {
+ var color;
+ if (yanse == "绾㈣壊") {
+ var color = "red";
+ } else if (yanse == "缁胯壊") {
+ var color = "green";
+ } else if (yanse == "钃濊壊") {
+ var color = "blue";
+ } else if (yanse == "鐧借壊") {
+ var color = "white";
+ } else if (yanse == "榛戣壊") {
+ var color = "black";
+ } else if (yanse == "榛勮壊") {
+ var color = "yellow";
+ }
+ return color
+ };
+
+ function getExistFence_all(leixing) {
+ var fencelist = {};
+ var fencecolor = {};
+ var fencename = {};
+ var fencetype = {};
+ $.ajax({
+ async: false,
+ type: 'POST',
+ url: "/hxzkoa/getFloorFence_all.do",
+ dataType: 'json',
+ data: {},
+ success: function (data) {
+ let tmp = new Set();
+ for (var i = 0; i < data.length; i++) {
+ tmp.add(data[i].floor);
+ };
+ let tmpl = Array.from(tmp);
+ for (i in tmpl) {
+ fencelist[tmpl[i]] = [];
+ fencecolor[tmpl[i]] = [];
+ fencename[tmpl[i]] = [];
+ fencetype[tmpl[i]] = [];
+ }
+ for (var i = 0; i < data.length; i++) {
+ fencelist[data[i].floor].push(data[i].zuobiao);
+ fencecolor[data[i].floor].push(data[i].color);
+ fencename[data[i].floor].push(data[i].name);
+ fencetype[data[i].floor].push(data[i].type);
+ }
+ }
+ });
+ if (leixing == "zuobiao") {
+ return fencelist
+ } else if (leixing == "color") {
+ return fencecolor
+ } else if (leixing == "name") {
+ return fencename
+ } else if (leixing == "type") {
+ return fencetype
+ };
+ };
+
+ function getDrawColor(yanse) {
+ var color;
+ if (yanse == "绾㈣壊") {
+ var color = "rgba(255,0,0,0.3)";
+ } else if (yanse == "缁胯壊") {
+ var color = "rgba(0,255,0,0.3)";
+ } else if (yanse == "钃濊壊") {
+ var color = "rgba(0,0,255,0.3)";
+ } else if (yanse == "鐧借壊") {
+ var color = "rgba(255,255,255,0.3)";
+ } else if (yanse == "榛戣壊") {
+ var color = "rgba(0,0,0,0.3)";
+ }
+ return color
+ };
+ function inFenceOrNot(fence_list, node_list) {
+ //fence_list[x,y]
+ //node_list[x,y]
+ if (fence_list.length == 2) { //鐭╁舰
+ if (node_list[0] >= Math.min(fence_list[0][0], fence_list[1][0]) && node_list[0] <= Math.max(fence_list[0][0], fence_list[1][0])) {
+ if (node_list[1] >= Math.min(fence_list[0][1], fence_list[1][1]) && node_list[1] <= Math.max(fence_list[0][1], fence_list[1][1])) {
+ return true //鍦ㄨ�冨嫟鍖哄煙
+ }
+ }
+ return false //涓嶅湪鑰冨嫟鍖哄煙
+ } else if (fence_list.length > 2) { //澶氳竟褰�
+ for (var c = false, i = -1, l = fence_list.length, j = l - 1; ++i < l; j = i)
+ ((fence_list[i][1] <= node_list[1] && node_list[1] < fence_list[j][1]) || (fence_list[j][1] <= node_list[1] && node_list[1] < fence_list[i][1]))
+ && (node_list[0] < (fence_list[j][0] - fence_list[i][0]) * (node_list[1] - fence_list[i][1]) / (fence_list[j][1] - fence_list[i][1]) + fence_list[i][0])
+ && (c = !c);
+ return c;
+ }
+ };
+
+ function getGas(leixing) {
+ var gaslist = [];
+ var gasnongdu = [];
+ var gastype = [];
+ $.ajax({
+ async: false,
+ type: 'POST',
+ url: "/hxzkoa/getGas_list.do",
+ dataType: 'json',
+ data: {},
+ success: function (data) {
+ for (var i = 0; i < data.length; i++) {
+ gaslist.push([data[i].x, data[i].y]);
+ gasnongdu.push(data[i].nong_du);
+ gastype.push(data[i].gas_type);
+ }
+ }
+ });
+ if (leixing == "zuobiao") {
+ return gaslist
+ } else if (leixing == "type") {
+ return gastype
+ } else if (leixing == "nongdu") {
+ return gasnongdu
+ };
+ };
+
+ function getRealPosition(current_floor) {
+ var realposition = [];
+ $.ajax({
+ async: false,
+ type: 'POST',
+ url: "/hxzkoa/getRealPosition.do",
+ dataType: 'json',
+ data: {
+ floor: current_floor,
+ },
+ success: function (data) {
+ for (var i = 0; i < data.length; i++) {
+ //playMark[id,name,power,life,x,y,time]
+ realposition.push([data[i].tagid, data[i].name, data[i].power, data[i].life, data[i].posx, data[i].posy, data[i].time, data[i].fence == 1 || data[i].sos == 1, data[i].sousuo, data[i].shipin])
+ }
+ },
+ });
+ return realposition
+ };
+
+ function str_to_time(str) {
+ //鏍规嵁瀛楃涓茶浆鎹㈡垚瀵瑰簲鐨勬椂闂达紙绉掞級
+ if (str == "涓嶆樉绀哄疄鏃惰建杩�") {
+ return 0;
+ } else if (str == "10绉掗挓") {
+ return 10;
+ } else if (str == "30绉掗挓") {
+ return 30;
+ } else if (str == "1鍒嗛挓") {
+ return 60;
+ } else if (str == "10鍒嗛挓") {
+ return 600;
+ } else if (str == "30鍒嗛挓") {
+ return 1800;
+ } else if (str == "1灏忔椂") {
+ return 3600;
+ };
+ };
+
+ function getTracknow(current_floor, tagid_str, time) {
+ var finalrealtrack = {};
+ $.ajax({
+ async: false,
+ type: 'POST',
+ url: "/hxzkoa/getRealTrack.do",
+ dataType: 'json',
+ data: {
+ time: time,
+ floor: current_floor,
+ tagid: tagid_str,
+ },
+ success: function (data) {
+ for (var i = 0; i < data.length; i++) {
+ finalrealtrack[data[i][0].tagid] = [];
+ for (var j = 0; j < data[i].length; j++) {
+ finalrealtrack[data[i][0].tagid].push([data[i][j].x, data[i][j].y, data[i][j].time])
+ }
+ }
+ },
+ });
+ return finalrealtrack;
+ };
+
+ function getAnchorInfo_all() {
+ var anchorList_on = {};
+ var anchorList_off = {};
+ $.ajax({
+ async: false,
+ type: 'POST',
+ url: "/hxzkoa/getAnchorInfo_all.do",
+ dataType: 'json',
+ data: {},
+ success: function (data) {
+ let tmp = new Set();
+ for (var i = 0; i < data.length; i++) {
+ tmp.add(data[i].layer);
+ };
+ let tmpl = Array.from(tmp);
+ for (i in tmpl) {
+ anchorList_on[tmpl[i]] = [];
+ anchorList_off[tmpl[i]] = [];
+ }
+ for (var i = 0; i < data.length; i++) {
+ if (data[i].anchormode == "1") {
+ anchorList_on[data[i].layer].push([data[i].anchorid, data[i].posx, data[i].posy, data[i].posz, data[i].GreateTime]);
+ } else if (data[i].anchormode == "0") {
+ anchorList_off[data[i].layer].push([data[i].anchorid, data[i].posx, data[i].posy, data[i].posz, data[i].GreateTime]);
+
+ }
+ }
+ }
+ });
+ return [anchorList_on, anchorList_off]
+ };
+
+ /**璇ユ柟娉曠敤鏉ョ粯鍒朵竴涓湁濉厖鑹茬殑鍦嗚鐭╁舰
+ *@param cxt:canvas鐨勪笂涓嬫枃鐜
+ *@param x:宸︿笂瑙抶杞村潗鏍�
+ *@param y:宸︿笂瑙抷杞村潗鏍�
+ *@param width:鐭╁舰鐨勫搴�
+ *@param height:鐭╁舰鐨勯珮搴�
+ *@param radius:鍦嗙殑鍗婂緞
+ *@param fillColor:濉厖棰滆壊
+ **/
+ function fillRoundRect(cxt, x, y, width, height, radius, /*optional*/ fillColor) {
+ //鍦嗙殑鐩村緞蹇呯劧瑕佸皬浜庣煩褰㈢殑瀹介珮
+ if (2 * radius > width || 2 * radius > height) { return false; }
+
+ cxt.save();
+ cxt.translate(x, y);
+ //缁樺埗鍦嗚鐭╁舰鐨勫悇涓竟
+ drawRoundRectPath(cxt, width, height, radius);
+ cxt.fillStyle = fillColor || "#000"; //鑻ユ槸缁欏畾浜嗗�煎氨鐢ㄧ粰瀹氱殑鍊煎惁鍒欑粰浜堥粯璁ゅ��
+ cxt.fill();
+ cxt.restore();
+ }
+
+ function drawRoundRectPath(cxt, width, height, radius) {
+ cxt.beginPath(0);
+ //浠庡彸涓嬭椤烘椂閽堢粯鍒讹紝寮у害浠�0鍒�1/2PI
+ cxt.arc(width - radius, height - radius, radius, 0, Math.PI / 2);
+
+ //鐭╁舰涓嬭竟绾�
+ cxt.lineTo(radius, height);
+
+ //宸︿笅瑙掑渾寮э紝寮у害浠�1/2PI鍒癙I
+ cxt.arc(radius, height - radius, radius, Math.PI / 2, Math.PI);
+
+ //鐭╁舰宸﹁竟绾�
+ cxt.lineTo(0, radius);
+
+ //宸︿笂瑙掑渾寮э紝寮у害浠嶱I鍒�3/2PI
+ cxt.arc(radius, radius, radius, Math.PI, Math.PI * 3 / 2);
+
+ //涓婅竟绾�
+ cxt.lineTo(width - radius, 0);
+
+ //鍙充笂瑙掑渾寮�
+ cxt.arc(width - radius, radius, radius, Math.PI * 3 / 2, Math.PI * 2);
+
+ //鍙宠竟绾�
+ cxt.lineTo(width, height - radius);
+ cxt.closePath();
+ }
+ </script>
+ <!-- 甯哥敤鍑芥暟缁撴潫 -->
+
+ <!-- 璋冪敤瀹ゅ唴瀹氫綅鍦板浘鍔熻兘 -->
+ <script>
+ function diaoyonghuatu(result) {
+
+ var truemap_list = getTruemap_all();
+ var yuandian_list = getYuandian_all();
+ var fencezuobiao_list = getExistFence_all("zuobiao");
+ var fencecolor_list = getExistFence_all("color");
+ var fencename_list = getExistFence_all("name");
+ var fencetype_list = getExistFence_all("type");
+ var onlineAnchorinfo_list = getAnchorInfo_all()[0];
+ var offlineAnchorinfo_list = getAnchorInfo_all()[1];
+
+ //璇诲彇绯荤粺璁剧疆
+ var sysSetting = getSystemSetting();
+
+ for (var i = 0; i < result['map'].length; i++) {
+ var cf = result['floor'][i];//褰撳墠floor
+ var tml = [];
+ if (truemap_list[cf]) {
+ tml = truemap_list[cf];
+ };
+ var ydl = [];
+ if (yuandian_list[cf]) {
+ ydl = yuandian_list[cf];
+ };
+ var fzbl = [];
+ if (fencezuobiao_list[cf]) {
+ fzbl = fencezuobiao_list[cf];
+ };
+ var fcl = [];
+ if (fencecolor_list[cf]) {
+ fcl = fencecolor_list[cf];
+ };
+ var fnl = [];
+ if (fencename_list[cf]) {
+ fnl = fencename_list[cf];
+ };
+ var ftl = []
+ if (fencetype_list[cf]) {
+ ftl = fencetype_list[cf];
+ };
+ var ail_on = [];
+ if (onlineAnchorinfo_list[cf]) {
+ ail_on = onlineAnchorinfo_list[cf];
+ };
+ var ail_off = [];
+ if (offlineAnchorinfo_list[cf]) {
+ ail_off = offlineAnchorinfo_list[cf];
+ };
+ subgraph(i, result['map'][i], result['floor'][i], tml, ydl, fzbl, fcl, fnl, ftl, ail_on, ail_off, sysSetting, result['map'].length)
}
- if (_this.cacheCanvas == null) {
- _this.cacheCanvas = document.createElement("canvas");
- _this.cacheCanvas.width = _this.canvas.width;
- _this.cacheCanvas.height = _this.canvas.height;
- var cacheCtx = _this.cacheCanvas.getContext("2d");
- //鐢诲嚭褰撳墠宸叉湁鐨勫洿鏍忓尯鍩�
- if (_this.fence_show == "1") {
- if (_this.FenceList.length) {
- //閬嶅巻姣忎釜fence锛屽苟鐢诲嚭
- for (var m = 0; m < _this.FenceList.length; m++) {
- var draw_points_list = [];
- var points_list = _this.FenceList[m].split(",");
- //瀹為檯鍧愭爣杞垚鍥句笂鍧愭爣
- for (var i = 0; i < points_list.length; i++) {
- if (i % 2 == 0) {
- //鍋舵暟鍧愭爣锛屽嵆x鍧愭爣
- tmp_list = [];
- var tmp_point = new Number(_this.imgXList['map'] + _this.imgScaleList['map'] * _this.rateNumList['map'] * _this.x_ratio * (points_list[i] - _this.x_x0));
- tmp_list.push(tmp_point);
- } else {
- var tmp_point = new Number(_this.imgYList['map'] + _this.imgScaleList['map'] * _this.rateNumList['map'] * _this.y_ratio * (points_list[i] - _this.y_y0));
- tmp_list.push(tmp_point);
- draw_points_list.push(tmp_list);
- };
- };
+ };
+ //subgraph(i,result['map'][i],result['floor'][i],tml,ydl,fzbl,fcl,fnl,ftl,ail,sysSetting)
+ function subgraph(index, mp, fr, tml, ydl, fzbl, fcl, fnl, ftl, ail_on, ail_off, sysSetting, ttm) {
+ var imgUrl = '/hxzkoa/hxzk/image/mapfile/' + mp;//鍥剧墖璺緞
+ //var imgUrl = '/hxzkoa/hxzk/image/mapfile/office.jpg';//鍥剧墖璺緞
+ var imgList = new Array();
+ imgList['map'] = imgUrl;
+ var iconUrl = '/hxzkoa/hxzk/image/targeticon/default.png';
+ imgList['icon'] = iconUrl;
- var color = getDrawColor(_this.FenceColor[m]);
- var name = _this.FenceName[m];
+ // var anckicon = '/hxzkoa/hxzk/image/anchor/lingjin.png';
+ // imgList['anchor']=anckicon;
+ var anckicon_on = '/hxzkoa/hxzk/image/anchor/鍩虹珯鍦ㄧ嚎.png';
+ //var anckicon_on = '/hxzkoa/hxzk/image/anchor/lingjin.png';
+ imgList['anchor_online'] = anckicon_on;
- if (draw_points_list.length == 2) {
- cacheCtx.beginPath();
- cacheCtx.fillStyle = color;
- cacheCtx.fillRect(draw_points_list[0][0], draw_points_list[0][1], draw_points_list[1][0] - draw_points_list[0][0], draw_points_list[1][1] - draw_points_list[0][1]);
- cacheCtx.stroke();
- cacheCtx.fillStyle = "red";
- cacheCtx.fillText(name, (draw_points_list[0][0] + draw_points_list[1][0]) / 2, (draw_points_list[0][1] + draw_points_list[1][1]) / 2);
- cacheCtx.closePath();
- } else {
- cacheCtx.beginPath();
- cacheCtx.fillStyle = color;
- cacheCtx.lineWidth = 1;
- var text_x = new Number(0);
- var text_y = new Number(0);
- for (var j = 0; j < draw_points_list.length; j++) {
- if (j == 0) {
- cacheCtx.moveTo(draw_points_list[j][0], draw_points_list[j][1]);
+ var anckicon_off = '/hxzkoa/hxzk/image/anchor/鍩虹珯绂荤嚎.png'
+ //var anckicon_off = '/hxzkoa/hxzk/image/anchor/ceju.png';
+ imgList['anchor_offline'] = anckicon_off;
+
+ new MarkPoints(index, fr, imgList, tml, ydl, fzbl, fcl, fnl, ftl, ail_on, ail_off, sysSetting, ttm);
+ };
+ var serial;
+ var code;
+ var isDelete = false;
+ var shipinka = true;
+ var tuodong = false;
+ var colorbbb = "rgba(255,0,0,0.3)";
+ var sosType = [];
+ var sousuoType = true;
+ for (var i = 0; i < 500; i++) {
+ sosType[i] = true;
+ }
+ var sos = document.createElement('img');
+ sos.src = '/hxzkoa/hxzk/image/icon/SOS.png';
+ var sos1 = document.createElement('img');
+ sos1.src = '/hxzkoa/hxzk/image/icon/SOS1.png';
+ var sousuo0 = document.createElement('img');
+ sousuo0.src = '/hxzkoa/hxzk/image/icon/sousuo0.png';
+ function MarkPoints(index, current_floor, imgList, tml, ydl, fzbl, fcl, fnl, ftl, ail_on, ail_off, sysSetting, ttm) {
+ this.imgX = 0;//鍦ㄧ敾甯冧笂鍥剧墖鐨刋鍋忕Щ閲�
+ this.imgY = 0;//鍦ㄧ敾甯冧笂鍥剧墖鐨刌鍋忕Щ閲�
+ this.imgScale = 1;//鍥剧墖鐨勭缉鏀炬瘮渚�
+ this.rateNum;//鍥剧墖楂樺害鑷�傚簲姣斾緥,鍥剧墖绛夋瘮灞呬腑灞曠ず鍦╟anvas
+ this.scaleFlag = 0;//缂╂斁鍥犲瓙锛屾渶澶х缉鏀�9,鏈�灏忕缉鏀�-9
+ this.context;
+ this.img; //鍦板浘
+ this.playIndex = 0;
+ this.pos = {};//姣忔鎷栨嫿鍓嶅潗鏍囦繚瀛�
+
+ this.imgLoadList = new Array();
+ this.rateNumList = new Array();
+ this.imgXList = new Array();
+ this.imgYList = new Array();
+ this.imgScaleList = new Array();
+
+ //鑾峰彇鐪熷疄鍦板浘
+ this.trueMeasure;
+ this.trueLength;
+ this.trueWidth;
+ this.x_ratio;
+ this.y_ratio;
+ this.x_x0;
+ this.y_y0;
+ this.expand = false;
+
+ //system setting
+ this.sysSetting;
+ this.tagZb = '0';//鏄惁鏄剧ず鏍囩鍧愭爣
+ this.diskaoqin = '0'; //鍑鸿�冨嫟鍖哄煙鏄惁娑堝け
+ this.viewAnckid = '0';//鏄惁鏄剧ず鍩虹珯ID
+ this.viewName = '0';//鏄惁鏄剧ず浜哄憳鍚嶇О
+ this.tunlDw = '0'//闅ч亾瀹氫綅妯″紡
+ this.guiji_sava = '0'//鏄惁寮�鍚建杩逛繚瀛�
+ this.viewPower = '0';//鏄惁鏄剧ず鐢甸噺
+ this.viewTagid = '0';//鏄惁鏄剧ず鏍囩ID
+ this.viewAnckzb = '0';//鏄惁鏄剧ず鍩虹珯鍧愭爣
+ this.offView = '0'//鏄惁绂荤嚎涓嶆樉绀哄浘鏍�
+ this.anckicon = '0'//鏄惁鏄剧ず鍩虹珯鍥炬爣
+ this.gas_show = '0'//鏄剧ず鍏朵粬妫�娴�(姘斾綋鏄剧ず)
+ this.quiet = '0'//闈欐杈撳嚭鍥哄畾鍧愭爣
+ this.real_trak_time = 0//瀹炴椂杞ㄨ抗鏄剧ず鏃堕暱
+ this.real_trak_color = '绾㈣壊'//瀹炴椂杞ㄨ抗鏄剧ず鐨勯鑹�
+ this.fence_show = '0'//鏄惁鏄剧ず鍥存爮
+
+ this.playFlag = false;//鏄惁鎾斁
+ this.dragFlag = false;//鏄惁鍙嫋鎷藉綋鍓峣mg锛岄粯璁や笉鑳�
+ this.markFlag = false;//鏍囪鍖哄煙寮�鍚叧闂璮lag
+ this.CreatLinepoints = [];//姣忔鍒涘缓鏂板尯鍩熺殑鍧愭爣闆嗗悎
+ this.playMark; //姝e湪灞曠ず鐨勬爣璁�
+ this.playMarkInKaoQin;//褰撳墠鏍囪鏄惁鍦ㄨ�冨嫟鍖哄煙鍐�
+ this.trackNow; //褰撳墠杞ㄨ抗
+
+ this.onlineAnchorList;//褰撳墠鍩虹珯鍒楄〃
+ this.offlineAnchorList;
+
+ this.allMarkLins = [];//宸插垱寤虹殑鍖哄煙闆嗗悎锛屼緥濡俒[{x,y},{x,y},{x,y}],[{n,m},{n,m},{n,m}]]鐩墠鍙渶瑕佷竴涓尯鍩燂紝鎵�浠ユ暟缁勫唴閮ㄥ彧鏈変竴椤�
+ this.allFenceColor = [];//宸插垱寤虹殑鍖哄煙棰滆壊
+
+ this.FenceList; //鍥存爮鍧愭爣
+ this.FenceColor; //鍥存爮棰滆壊
+ this.FenceName; //鍥存爮鍚嶇О
+ this.realFenceList = []; // [鍚嶇О锛岀被鍨嬶紝瀹為檯鍧愭爣]
+ this.fenceMarkCount; //鍖哄煙鍐呯殑鍧愭爣鏁伴噺
+ this.cacheCanvas = null; //缂撳瓨鍥存爮缁樺浘
+
+ this.GasList; //姘斾綋鍧愭爣
+ this.GasType; //姘斾綋绫诲瀷
+ this.GasNongdu; //姘斾綋娴撳害
+
+ this.ttm;
+ this.timer;
+
+ this.getImgLoad(index, imgList, current_floor);
+ this.init(current_floor, tml, ydl, fzbl, fcl, fnl, ftl, ail_on, ail_off, sysSetting, ttm);
+
+ document.oncontextmenu = new Function("event.returnValue=false;");
+ document.onselectstart = new Function("event.returnValue=false;");
+ };
+
+ MarkPoints.prototype = {
+ getImgLoad: function (index, imgList, current_floor) {
+ var _this = this;
+ var str = "wrap" + index;
+ var wrap = document.getElementById(str);
+ var str2 = "draw" + index;
+ _this.canvas = document.getElementById(str2);
+ _this.context = _this.canvas.getContext('2d');
+ _this.canvas.height = wrap.offsetHeight;
+ _this.canvas.width = wrap.offsetWidth;
+
+ loadImages(imgList, function (images) {
+ for (var key in images) {
+ if (key == 'map') {
+ _this.imgScaleList[key] = 1;
+ _this.img = images[key];
+ } else if (key == 'icon') {
+ _this.imgScaleList[key] = 0.03;
+ } else {
+ _this.imgScaleList[key] = images[key].naturalWidth / images['map'].naturalWidth;
+ };
+ _this.rateNumList[key] = _this.canvas.width / images[key].naturalWidth;
+ _this.imgXList[key] = (_this.canvas.width - images[key].naturalWidth * _this.imgScaleList[key] * _this.rateNumList[key]) / 2;
+ _this.imgYList[key] = (_this.canvas.height - images[key].naturalHeight * _this.imgScaleList[key] * _this.rateNumList[key]) / 2;//榛樿杩涙潵褰撳墠鍥惧儚灞呬腑鏄剧ず
+ _this.imgLoadList[key] = images[key];
+ }
+ /*鐢诲嚭褰撳墠鍥剧墖*/
+ //_this.drawImg(current_floor);
+ });
+ },
+
+ drawImg: function (current_floor) {
+ var _this = this;
+ var can = _this.context;
+ can.clearRect(0, 0, _this.canvas.width, _this.canvas.height);
+
+ can.globalCompositeOperation = "source-over";
+ var images = _this.imgLoadList;
+
+ //鐢诲湴鍥�
+ can.drawImage(_this.img, 0, 0, _this.img.naturalWidth, _this.img.naturalHeight, _this.imgXList['map'], _this.imgYList['map'], _this.img.naturalWidth * _this.imgScaleList['map'] * _this.rateNumList['map'], _this.img.naturalHeight * _this.imgScaleList['map'] * _this.rateNumList['map']);
+
+ $("#jiazai0").remove()
+ $("#jiazai1").remove()
+ $("#jiazai2").remove()
+ $("#jiazai3").remove()
+
+ //瀹為檯涓庡浘鐗囩殑姣斾緥灏�
+ _this.x_ratio = new Number(_this.imgLoadList['map'].naturalWidth / _this.trueLength);
+ _this.y_ratio = new Number(_this.imgLoadList['map'].naturalHeight / _this.trueWidth);
+
+ if (tuodong == true) {
+ return false;
+ }
+
+ if (_this.cacheCanvas == null) {
+ _this.cacheCanvas = document.createElement("canvas");
+ _this.cacheCanvas.width = _this.canvas.width;
+ _this.cacheCanvas.height = _this.canvas.height;
+ var cacheCtx = _this.cacheCanvas.getContext("2d");
+ //鐢诲嚭褰撳墠宸叉湁鐨勫洿鏍忓尯鍩�
+ if (_this.fence_show == "1") {
+ if (_this.FenceList.length) {
+ //閬嶅巻姣忎釜fence锛屽苟鐢诲嚭
+ for (var m = 0; m < _this.FenceList.length; m++) {
+ var draw_points_list = [];
+ var points_list = _this.FenceList[m].split(",");
+ //瀹為檯鍧愭爣杞垚鍥句笂鍧愭爣
+ for (var i = 0; i < points_list.length; i++) {
+ if (i % 2 == 0) {
+ //鍋舵暟鍧愭爣锛屽嵆x鍧愭爣
+ tmp_list = [];
+ var tmp_point = new Number(_this.imgXList['map'] + _this.imgScaleList['map'] * _this.rateNumList['map'] * _this.x_ratio * (points_list[i] - _this.x_x0));
+ tmp_list.push(tmp_point);
} else {
- cacheCtx.lineTo(draw_points_list[j][0], draw_points_list[j][1]);
- }
- if (j == draw_points_list.length - 1) {
- cacheCtx.lineTo(draw_points_list[0][0], draw_points_list[0][1]);
- cacheCtx.fill();
- }
- text_x = text_x + draw_points_list[j][0];
- text_y = text_y + draw_points_list[j][1];
+ var tmp_point = new Number(_this.imgYList['map'] + _this.imgScaleList['map'] * _this.rateNumList['map'] * _this.y_ratio * (points_list[i] - _this.y_y0));
+ tmp_list.push(tmp_point);
+ draw_points_list.push(tmp_list);
+ };
+ };
- }
- text_x = text_x / draw_points_list.length;
- text_y = text_y / draw_points_list.length;
+ var color = getDrawColor(_this.FenceColor[m]);
+ var name = _this.FenceName[m];
- cacheCtx.fillStyle = color;
- cacheCtx.fill();
- cacheCtx.strokeStyle = color;
- cacheCtx.stroke();
- cacheCtx.fillStyle = "red";
- cacheCtx.fillText(name, text_x, text_y);
- cacheCtx.closePath();
+ if (draw_points_list.length == 2) {
+ cacheCtx.beginPath();
+ cacheCtx.fillStyle = color;
+ cacheCtx.fillRect(draw_points_list[0][0], draw_points_list[0][1], draw_points_list[1][0] - draw_points_list[0][0], draw_points_list[1][1] - draw_points_list[0][1]);
+ cacheCtx.stroke();
+ cacheCtx.fillStyle = "red";
+ cacheCtx.fillText(name, (draw_points_list[0][0] + draw_points_list[1][0]) / 2, (draw_points_list[0][1] + draw_points_list[1][1]) / 2);
+ cacheCtx.closePath();
+ } else {
+ cacheCtx.beginPath();
+ cacheCtx.fillStyle = color;
+ cacheCtx.lineWidth = 1;
+ var text_x = new Number(0);
+ var text_y = new Number(0);
+ for (var j = 0; j < draw_points_list.length; j++) {
+ if (j == 0) {
+ cacheCtx.moveTo(draw_points_list[j][0], draw_points_list[j][1]);
+ } else {
+ cacheCtx.lineTo(draw_points_list[j][0], draw_points_list[j][1]);
+ }
+ if (j == draw_points_list.length - 1) {
+ cacheCtx.lineTo(draw_points_list[0][0], draw_points_list[0][1]);
+ cacheCtx.fill();
+ }
+ text_x = text_x + draw_points_list[j][0];
+ text_y = text_y + draw_points_list[j][1];
+
+ }
+ text_x = text_x / draw_points_list.length;
+ text_y = text_y / draw_points_list.length;
+
+ cacheCtx.fillStyle = color;
+ cacheCtx.fill();
+ cacheCtx.strokeStyle = color;
+ cacheCtx.stroke();
+ cacheCtx.fillStyle = "red";
+ cacheCtx.fillText(name, text_x, text_y);
+ cacheCtx.closePath();
+ };
};
};
};
+ can.drawImage(_this.cacheCanvas, 0, 0);
+ } else {
+ can.drawImage(_this.cacheCanvas, 0, 0);
};
- can.drawImage(_this.cacheCanvas, 0, 0);
- } else {
- can.drawImage(_this.cacheCanvas, 0, 0);
- };
- //鍒ゆ柇褰撳墠鍧愭爣鏄惁鍦ㄨ�冨嫟鍖哄煙鍐�
- _this.playMarkInKaoQin = [];
- for (var n in _this.playMark) { //_this.playMark涓哄綋鍓嶅疄鏃跺湪绾跨偣浣嶇疆锛屼负[array[id,name,power,life,x,y,time]]
- node_list = [Number(_this.playMark[n][4]), Number(_this.playMark[n][5])];
- for (var f in _this.realFenceList) {
- if (_this.realFenceList[f][1] == "鑰冨嫟鍖哄煙") {
- if (inFenceOrNot(_this.realFenceList[f][2], node_list)) {
- //inFenceOrNot(fence_list, node_list) return true/false
- _this.playMarkInKaoQin.push(true);
- break;
- }
- }
- };
- if (_this.playMarkInKaoQin.length == n) {
- _this.playMarkInKaoQin.push(false);
- }
- };
-
-
- //璁$畻鍖哄煙鍐呯殑鍧愭爣鏁伴噺锛堥毀閬撳畾浣嶏級
- _this.fenceMarkCount = [];
- for (var f in _this.realFenceList) {
- //f[name, type, zuobiao_array]
- var tmp_count = new Number(0);
- for (var n in _this.playMark) {//_this.playMark涓哄綋鍓嶅疄鏃跺湪绾跨偣浣嶇疆锛屼负[array[.x, .y]]
+ //鍒ゆ柇褰撳墠鍧愭爣鏄惁鍦ㄨ�冨嫟鍖哄煙鍐�
+ _this.playMarkInKaoQin = [];
+ for (var n in _this.playMark) { //_this.playMark涓哄綋鍓嶅疄鏃跺湪绾跨偣浣嶇疆锛屼负[array[id,name,power,life,x,y,time]]
node_list = [Number(_this.playMark[n][4]), Number(_this.playMark[n][5])];
- if (inFenceOrNot(_this.realFenceList[f][2], node_list)) {//inFenceOrNot(fence_list, node_list) return true/false
- tmp_count += 1;
- //break;
+ for (var f in _this.realFenceList) {
+ if (_this.realFenceList[f][1] == "鑰冨嫟鍖哄煙") {
+ if (inFenceOrNot(_this.realFenceList[f][2], node_list)) {
+ //inFenceOrNot(fence_list, node_list) return true/false
+ _this.playMarkInKaoQin.push(true);
+ break;
+ }
+ }
+ };
+ if (_this.playMarkInKaoQin.length == n) {
+ _this.playMarkInKaoQin.push(false);
}
};
- _this.fenceMarkCount.push(tmp_count);
- };
- // if (shipinka) {
+
+ //璁$畻鍖哄煙鍐呯殑鍧愭爣鏁伴噺锛堥毀閬撳畾浣嶏級
+ _this.fenceMarkCount = [];
+ for (var f in _this.realFenceList) {
+ //f[name, type, zuobiao_array]
+ var tmp_count = new Number(0);
+ for (var n in _this.playMark) {//_this.playMark涓哄綋鍓嶅疄鏃跺湪绾跨偣浣嶇疆锛屼负[array[.x, .y]]
+ node_list = [Number(_this.playMark[n][4]), Number(_this.playMark[n][5])];
+ if (inFenceOrNot(_this.realFenceList[f][2], node_list)) {//inFenceOrNot(fence_list, node_list) return true/false
+ tmp_count += 1;
+ //break;
+ }
+ };
+ _this.fenceMarkCount.push(tmp_count);
+ };
+
+ // if (shipinka) {
//鐢绘爣绛惧強鍩虹珯
for (var key in images) {
if (key == "icon" && _this.playMark) {
@@ -1198,493 +1193,495 @@
};
}
};
- // }
+ // }
- //寮�鍚毀閬撳畾浣嶅悗锛岄渶瑕佹樉绀哄綋鍓嶈�冨嫟鍖哄煙鍐呯殑鎬绘爣绛炬暟閲�
- if (_this.tunlDw == "1") {
- var k = 0;
- fillRoundRect(can, 10, 10, 140, 40 * _this.fenceMarkCount.length, 10, colorbbb);
- for (var i = 0; i < _this.fenceMarkCount.length; i++) {
- can.beginPath();
- can.fillStyle = getDrawColor(_this.FenceColor[i]);
- can.fillStyle = "rgba(255,255,0,0.7)";
- can.font = "15px Verdana";
- can.fillText(_this.realFenceList[i][0] + ":" + _this.fenceMarkCount[i], 34, 36 + 40 * k);
- can.closePath();
- k += 1;
+ //寮�鍚毀閬撳畾浣嶅悗锛岄渶瑕佹樉绀哄綋鍓嶈�冨嫟鍖哄煙鍐呯殑鎬绘爣绛炬暟閲�
+ if (_this.tunlDw == "1") {
+ var k = 0;
+ fillRoundRect(can, 10, 10, 140, 40 * _this.fenceMarkCount.length, 10, colorbbb);
+ for (var i = 0; i < _this.fenceMarkCount.length; i++) {
+ can.beginPath();
+ can.fillStyle = getDrawColor(_this.FenceColor[i]);
+ can.fillStyle = "rgba(255,255,0,0.7)";
+ can.font = "15px Verdana";
+ can.fillText(_this.realFenceList[i][0] + ":" + _this.fenceMarkCount[i], 34, 36 + 40 * k);
+ can.closePath();
+ k += 1;
+ };
};
- };
- //寮�鍚皵浣撴樉绀�
- if (_this.gas_show == "1") {
- _this.GasList = getGas("zuobiao"); //姘斾綋鍧愭爣
- _this.GasType = getGas("type"); //姘斾綋绫诲瀷
- _this.GasNongdu = getGas("nongdu"); //姘斾綋娴撳害
- for (var i = 0; i < _this.GasList.length; i++) {
- var cor_x = new Number(_this.GasList[i][0]);
- var cor_y = new Number(_this.GasList[i][1]);
- var x_cor = new Number(_this.imgXList['map'] + _this.imgScaleList['map'] * _this.rateNumList['map'] * _this.x_ratio * (cor_x - _this.x_x0));
- var y_cor = new Number(_this.imgYList['map'] + _this.imgScaleList['map'] * _this.rateNumList['map'] * _this.y_ratio * (cor_y - _this.y_y0));
- can.beginPath();
- can.arc(x_cor, y_cor, 6, 0, Math.PI * 2, true);
- can.fillStyle = "green";
- can.fill();
- can.fillStyle = "red";
- can.fillText(_this.GasType[i], x_cor + 10, y_cor);
- can.fillText(_this.GasNongdu[i], x_cor + 10, y_cor + 10);
- can.closePath();
- }
- };
- },
-
- init: function (current_floor, tml, ydl, fzbl, fcl, fnl, ftl, ail_on, ail_off, sysSetting, ttm) {
- var _this = this;
-
- //璇诲彇绯荤粺璁剧疆
- _this.tagZb = sysSetting[0].tagZb;//鏄惁鏄剧ず鏍囩鍧愭爣
- _this.diskaoqin = sysSetting[0].diskaoqing; //鍑鸿�冨嫟鍖哄煙鏄惁娑堝け
- _this.viewAnckid = sysSetting[0].viewAnckid;//鏄惁鏄剧ず鍩虹珯ID
- _this.viewName = sysSetting[0].viewName;//鏄惁鏄剧ず浜哄憳鍚嶇О
- _this.tunlDw = sysSetting[0].tunlDw;//闅ч亾瀹氫綅妯″紡
- _this.guiji_sava = sysSetting[0].guiji_sava;//鏄惁寮�鍚建杩逛繚瀛�
- _this.viewPower = sysSetting[0].viewPower;//鏄惁鏄剧ず鐢甸噺
- _this.viewTagid = sysSetting[0].viewTagid;//鏄惁鏄剧ず鏍囩ID
- _this.viewAnckzb = sysSetting[0].viewAnckzb;//鏄惁鏄剧ず鍩虹珯鍧愭爣
- _this.offView = sysSetting[0].offView;//鏄惁绂荤嚎涓嶆樉绀哄浘鏍�
- _this.anckicon = sysSetting[0].anckicon;//鏄惁鏄剧ず鍩虹珯鍥炬爣
- _this.gas_show = sysSetting[0].gas_show;//鏄剧ず鍏朵粬妫�娴�(姘斾綋鏄剧ず)
- _this.quiet = sysSetting[0].quiet;//闈欐杈撳嚭鍥哄畾鍧愭爣
- _this.fence_show = sysSetting[0].fence_show;//鏄惁鏄剧ず鍥存爮
-
- //璇诲彇鐪熷疄鍦板浘
- //璇诲浘鐗囧疄闄呭昂瀵�
- _this.trueLength = new Number(tml[0][0]);
- _this.trueWidth = new Number(tml[0][1]);
-
- //璇诲疄闄呭師鐐瑰潗鏍�
- _this.x_x0 = new Number(ydl[0][0]);
- _this.y_y0 = new Number(ydl[0][1]);
-
- //璇诲彇褰撳墠鍥存爮淇℃伅
- _this.FenceList = fzbl;
- _this.FenceColor = fcl;
- _this.FenceName = fnl;
- _this.FenceType = ftl;
-
- _this.realFenceList = [];
- //閬嶅巻鍥存爮淇℃伅骞跺瓨鍌ㄦ垚[鍚嶇О锛岀被鍨嬶紝鍧愭爣]
- for (var m = 0; m < _this.FenceList.length; m++) {
- var tmp_list = [];
- var points = _this.FenceList[m];
- var points_list = _this.FenceList[m].split(",");
-
- //鍥存爮瀹為檯鍧愭爣锛堝姞涓婂亸绉婚噺鐨勶級
- var points_list_sort = [];
- for (var i = 0; i < points_list.length; i++) {
- if (i % 2 == 0) {
- tmp_list = [];
- tmp_list.push(new Number(points_list[i]));
- } else {
- tmp_list.push(new Number(points_list[i]));
- points_list_sort.push(tmp_list);
+ //寮�鍚皵浣撴樉绀�
+ if (_this.gas_show == "1") {
+ _this.GasList = getGas("zuobiao"); //姘斾綋鍧愭爣
+ _this.GasType = getGas("type"); //姘斾綋绫诲瀷
+ _this.GasNongdu = getGas("nongdu"); //姘斾綋娴撳害
+ for (var i = 0; i < _this.GasList.length; i++) {
+ var cor_x = new Number(_this.GasList[i][0]);
+ var cor_y = new Number(_this.GasList[i][1]);
+ var x_cor = new Number(_this.imgXList['map'] + _this.imgScaleList['map'] * _this.rateNumList['map'] * _this.x_ratio * (cor_x - _this.x_x0));
+ var y_cor = new Number(_this.imgYList['map'] + _this.imgScaleList['map'] * _this.rateNumList['map'] * _this.y_ratio * (cor_y - _this.y_y0));
+ can.beginPath();
+ can.arc(x_cor, y_cor, 6, 0, Math.PI * 2, true);
+ can.fillStyle = "green";
+ can.fill();
+ can.fillStyle = "red";
+ can.fillText(_this.GasType[i], x_cor + 10, y_cor);
+ can.fillText(_this.GasNongdu[i], x_cor + 10, y_cor + 10);
+ can.closePath();
}
- }
- //瀛樺尯鍩熷悕绉�+鍖哄煙绫诲瀷+鍖哄煙鍧愭爣锛屾柟渚垮悗缁垽鏂槸鍚﹀湪鏌愬尯鍩熷唴
- _this.realFenceList.push([_this.FenceName[m], _this.FenceType[m], points_list_sort]);
- };
+ };
+ },
- _this.real_trak_time = str_to_time(sysSetting[0].real_trak_time);//瀹炴椂杞ㄨ抗鏄剧ず鏃堕暱
- //褰撳墠浣嶇疆
- _this.playMark = getRealPosition(current_floor);
- var tagid_str = "";
- for (var i = 0; i < _this.playMark.length; i++) {
- tagid_str += _this.playMark[i][0]
- if (i != _this.playMark.length - 1) {
- tagid_str += ","
- }
- }
- //瀹炴椂杞ㄨ抗
- if (_this.real_trak_time != 0) {
- _this.trackNow = getTracknow(current_floor, tagid_str, _this.real_trak_time);
- } else {
- _this.trackNow = null;
- }
+ init: function (current_floor, tml, ydl, fzbl, fcl, fnl, ftl, ail_on, ail_off, sysSetting, ttm) {
+ var _this = this;
- _this.real_trak_color = getTrackColor(sysSetting[0].real_trak_color);//瀹炴椂杞ㄨ抗鏄剧ず鐨勯鑹�
+ //璇诲彇绯荤粺璁剧疆
+ _this.tagZb = sysSetting[0].tagZb;//鏄惁鏄剧ず鏍囩鍧愭爣
+ _this.diskaoqin = sysSetting[0].diskaoqing; //鍑鸿�冨嫟鍖哄煙鏄惁娑堝け
+ _this.viewAnckid = sysSetting[0].viewAnckid;//鏄惁鏄剧ず鍩虹珯ID
+ _this.viewName = sysSetting[0].viewName;//鏄惁鏄剧ず浜哄憳鍚嶇О
+ _this.tunlDw = sysSetting[0].tunlDw;//闅ч亾瀹氫綅妯″紡
+ _this.guiji_sava = sysSetting[0].guiji_sava;//鏄惁寮�鍚建杩逛繚瀛�
+ _this.viewPower = sysSetting[0].viewPower;//鏄惁鏄剧ず鐢甸噺
+ _this.viewTagid = sysSetting[0].viewTagid;//鏄惁鏄剧ず鏍囩ID
+ _this.viewAnckzb = sysSetting[0].viewAnckzb;//鏄惁鏄剧ず鍩虹珯鍧愭爣
+ _this.offView = sysSetting[0].offView;//鏄惁绂荤嚎涓嶆樉绀哄浘鏍�
+ _this.anckicon = sysSetting[0].anckicon;//鏄惁鏄剧ず鍩虹珯鍥炬爣
+ _this.gas_show = sysSetting[0].gas_show;//鏄剧ず鍏朵粬妫�娴�(姘斾綋鏄剧ず)
+ _this.quiet = sysSetting[0].quiet;//闈欐杈撳嚭鍥哄畾鍧愭爣
+ _this.fence_show = sysSetting[0].fence_show;//鏄惁鏄剧ず鍥存爮
- _this.canvas.onmousedown = function (event) {
- _this.clickDown(event);
- };
- _this.canvas.onmousemove = function (event) {
- _this.mouseMove(event)
- };
- _this.canvas.onmouseup = function (event) {
- _this.mouseUp(event);
- };
- _this.canvas.onmousewheel = function (event) {
- _this.onmouseWheel(event);
- };
- _this.ttm = ttm;
+ //璇诲彇鐪熷疄鍦板浘
+ //璇诲浘鐗囧疄闄呭昂瀵�
+ _this.trueLength = new Number(tml[0][0]);
+ _this.trueWidth = new Number(tml[0][1]);
- //褰撳墠鍦板浘澶т簬1涓椂鎵嶅彲浠ヨ皟鐢╠bclick
- if (_this.ttm > 1) {
- _this.canvas.ondblclick = function (event) {
- _this.doubleClick(event);
- }
- }
+ //璇诲疄闄呭師鐐瑰潗鏍�
+ _this.x_x0 = new Number(ydl[0][0]);
+ _this.y_y0 = new Number(ydl[0][1]);
- _this.onlineAnchorList = ail_on;
- _this.offlineAnchorList = ail_off;
+ //璇诲彇褰撳墠鍥存爮淇℃伅
+ _this.FenceList = fzbl;
+ _this.FenceColor = fcl;
+ _this.FenceName = fnl;
+ _this.FenceType = ftl;
- var t = 300;//300ms
+ _this.realFenceList = [];
+ //閬嶅巻鍥存爮淇℃伅骞跺瓨鍌ㄦ垚[鍚嶇О锛岀被鍨嬶紝鍧愭爣]
+ for (var m = 0; m < _this.FenceList.length; m++) {
+ var tmp_list = [];
+ var points = _this.FenceList[m];
+ var points_list = _this.FenceList[m].split(",");
- // function fn(){
- // //褰撳墠闇�瑕佺敾鐨勫潗鏍�
- // var realposition_list = getRealPosition_all()
- // _this.playMark = realposition_list[current_floor];
- // _this.drawImg(current_floor);
- // }
- function fn() {
- if (tuodong == true) {
- return false;
- }
- if (shipinka == false) {
- return false;
- }
- //褰撳墠瀹炴椂鍧愭爣
- _this.playMark = getRealPosition(current_floor);
- // var tagid_str = "";
- // for (var i=0;i<_this.playMark.length;i++){
- // tagid_str += _this.playMark[i][0]
- // if (i!= _this.playMark.length-1){
- // tagid_str += ","
- // }
- // }
-
- if (_this.real_trak_time != 0) {
- //灏嗗綋鍓嶅疄鏃跺潗鏍囨坊鍔犺繘track涓�
- var track_now = Date.parse(new Date()); //timestamp涓烘绉掑崟浣�
- track_now = track_now / 1000;
- var track_now_head = track_now - _this.real_trak_time;
- //褰撳墠track鏈�寮�濮嬬殑鏃堕棿
- var track_head_date = new Date();
- track_head_date.setTime(track_now_head * 1000 + 8 * 3600 * 1000);
- var track_head_date_str = track_head_date.toJSON().substr(0, 19).replace('T', ' ');
-
- for (var i = 0; i < _this.playMark.length; i++) {
- if (_this.trackNow[_this.playMark[i][0]] != null) {
- if (_this.trackNow[_this.playMark[i][0]].length > 1500) {
- _this.trackNow[_this.playMark[i][0]] = _this.trackNow[_this.playMark[i][0]].slice(-1200);
- };
- for (var j = 0; j < _this.trackNow[_this.playMark[i][0]].length; j++) {
- if (_this.trackNow[_this.playMark[i][0]][0][2] < track_head_date_str) {
- _this.trackNow[_this.playMark[i][0]].shift()
- } else {
- break
- }
- };
- };
- var now_time = new Date();
- now_time.setTime(track_now * 1000 + 8 * 3600 * 1000);
- var now_time_str = now_time.toJSON().substr(0, 19).replace('T', ' ');
- var tmp = [_this.playMark[i][4], _this.playMark[i][5], now_time_str];
- if (_this.trackNow[_this.playMark[i][0]] == null) {
- _this.trackNow[_this.playMark[i][0]] = []
+ //鍥存爮瀹為檯鍧愭爣锛堝姞涓婂亸绉婚噺鐨勶級
+ var points_list_sort = [];
+ for (var i = 0; i < points_list.length; i++) {
+ if (i % 2 == 0) {
+ tmp_list = [];
+ tmp_list.push(new Number(points_list[i]));
+ } else {
+ tmp_list.push(new Number(points_list[i]));
+ points_list_sort.push(tmp_list);
}
- _this.trackNow[_this.playMark[i][0]].push(tmp)
+ }
+ //瀛樺尯鍩熷悕绉�+鍖哄煙绫诲瀷+鍖哄煙鍧愭爣锛屾柟渚垮悗缁垽鏂槸鍚﹀湪鏌愬尯鍩熷唴
+ _this.realFenceList.push([_this.FenceName[m], _this.FenceType[m], points_list_sort]);
+ };
+
+ _this.real_trak_time = str_to_time(sysSetting[0].real_trak_time);//瀹炴椂杞ㄨ抗鏄剧ず鏃堕暱
+ //褰撳墠浣嶇疆
+ _this.playMark = getRealPosition(current_floor);
+ var tagid_str = "";
+ for (var i = 0; i < _this.playMark.length; i++) {
+ tagid_str += _this.playMark[i][0]
+ if (i != _this.playMark.length - 1) {
+ tagid_str += ","
}
}
- _this.drawImg(current_floor);
- }
- // if (full_screen==true){
- // clearInterval(timer);
- // timer_screen= setInterval(fn, t);
- // } else {
- // clearInterval(timer_screen);
- // timer = setInterval(fn, t);
- // }
- // var mapa0 = document.getElementById("wrap0")
- // mapa0.value = "姝e湪鍔犺浇鍦板浘......"
- // var mapa0 = document.getElementById("wrap0")
- // var tt = document.createElement("p");
- // tt.value="姝e湪鍔犺浇鍦板浘......"
- // tt.style=""
- // mapa0.appendChild(tt)
- setTimeout(fnnn, 3000)
- function fnnn(){
- _this.timer = setInterval(fn, t);
- }
- // _this.timer = setInterval(fn, t);
- timer_list.push(_this.timer);
- },
- /*璁$畻褰撳墠榧犳爣浣嶇疆璺濈canvas鐨勫亸绉婚噺*/
- xyToCanvas: function (ele, x, y) {
- var _this = this;
- var obj = _this.canvas.getBoundingClientRect();
- return {
- x: x - obj.left,
- y: y - obj.top
- };
- },
- /*榧犳爣鍙屽嚮浜嬩欢*/
- doubleClick: function (event) {
- var _this = this;
+ //瀹炴椂杞ㄨ抗
+ if (_this.real_trak_time != 0) {
+ _this.trackNow = getTracknow(current_floor, tagid_str, _this.real_trak_time);
+ } else {
+ _this.trackNow = null;
+ }
- if ((event.type == "dblclick") && (full_screen == false)) {
- _this.expand = true;
- full_screen = true;
+ _this.real_trak_color = getTrackColor(sysSetting[0].real_trak_color);//瀹炴椂杞ㄨ抗鏄剧ず鐨勯鑹�
- var targ = event.target;
- var tid = targ.id;
- var id = tid.substr(tid.length - 1, 1)
- var str = "map" + id;
- document.getElementById(str).style.width = "100%";
- document.getElementById(str).style.height = "800px";
- var str = "draw" + id;
- document.getElementById(str).style.width = "100%";
- document.getElementById(str).style.height = "750px";
- var str = "wrap" + id;
- document.getElementById(str).style.width = "100%";
- document.getElementById(str).style.height = "750px";
- for (var i = 0; i < 4; i++) {
- if (String(i) != id) {
+ _this.canvas.onmousedown = function (event) {
+ _this.clickDown(event);
+ };
+ _this.canvas.onmousemove = function (event) {
+ _this.mouseMove(event)
+ };
+ _this.canvas.onmouseup = function (event) {
+ _this.mouseUp(event);
+ };
+ _this.canvas.onmousewheel = function (event) {
+ _this.onmouseWheel(event);
+ };
+ _this.ttm = ttm;
+
+ //褰撳墠鍦板浘澶т簬1涓椂鎵嶅彲浠ヨ皟鐢╠bclick
+ if (_this.ttm > 1) {
+ _this.canvas.ondblclick = function (event) {
+ _this.doubleClick(event);
+ }
+ }
+
+ _this.onlineAnchorList = ail_on;
+ _this.offlineAnchorList = ail_off;
+
+ var t = 300;//300ms
+
+ // function fn(){
+ // //褰撳墠闇�瑕佺敾鐨勫潗鏍�
+ // var realposition_list = getRealPosition_all()
+ // _this.playMark = realposition_list[current_floor];
+ // _this.drawImg(current_floor);
+ // }
+ function fn() {
+ if (tuodong == true) {
+ return false;
+ }
+ if (shipinka == false) {
+ return false;
+ }
+ //褰撳墠瀹炴椂鍧愭爣
+ _this.playMark = getRealPosition(current_floor);
+ // var tagid_str = "";
+ // for (var i=0;i<_this.playMark.length;i++){
+ // tagid_str += _this.playMark[i][0]
+ // if (i!= _this.playMark.length-1){
+ // tagid_str += ","
+ // }
+ // }
+
+ if (_this.real_trak_time != 0) {
+ //灏嗗綋鍓嶅疄鏃跺潗鏍囨坊鍔犺繘track涓�
+ var track_now = Date.parse(new Date()); //timestamp涓烘绉掑崟浣�
+ track_now = track_now / 1000;
+ var track_now_head = track_now - _this.real_trak_time;
+ //褰撳墠track鏈�寮�濮嬬殑鏃堕棿
+ var track_head_date = new Date();
+ track_head_date.setTime(track_now_head * 1000 + 8 * 3600 * 1000);
+ var track_head_date_str = track_head_date.toJSON().substr(0, 19).replace('T', ' ');
+
+ for (var i = 0; i < _this.playMark.length; i++) {
+ if (_this.trackNow[_this.playMark[i][0]] != null) {
+ if (_this.trackNow[_this.playMark[i][0]].length > 1500) {
+ _this.trackNow[_this.playMark[i][0]] = _this.trackNow[_this.playMark[i][0]].slice(-1200);
+ };
+ for (var j = 0; j < _this.trackNow[_this.playMark[i][0]].length; j++) {
+ if (_this.trackNow[_this.playMark[i][0]][0][2] < track_head_date_str) {
+ _this.trackNow[_this.playMark[i][0]].shift()
+ } else {
+ break
+ }
+ };
+ };
+ var now_time = new Date();
+ now_time.setTime(track_now * 1000 + 8 * 3600 * 1000);
+ var now_time_str = now_time.toJSON().substr(0, 19).replace('T', ' ');
+ var tmp = [_this.playMark[i][4], _this.playMark[i][5], now_time_str];
+ if (_this.trackNow[_this.playMark[i][0]] == null) {
+ _this.trackNow[_this.playMark[i][0]] = []
+ }
+ _this.trackNow[_this.playMark[i][0]].push(tmp)
+ }
+ }
+ _this.drawImg(current_floor);
+ }
+ // if (full_screen==true){
+ // clearInterval(timer);
+ // timer_screen= setInterval(fn, t);
+ // } else {
+ // clearInterval(timer_screen);
+ // timer = setInterval(fn, t);
+ // }
+ // var mapa0 = document.getElementById("wrap0")
+ // mapa0.value = "姝e湪鍔犺浇鍦板浘......"
+ // var mapa0 = document.getElementById("wrap0")
+ // var tt = document.createElement("p");
+ // tt.value="姝e湪鍔犺浇鍦板浘......"
+ // tt.style=""
+ // mapa0.appendChild(tt)
+ setTimeout(fnnn, 3000)
+ function fnnn() {
+ _this.timer = setInterval(fn, t);
+ timer_list.push(_this.timer);
+
+ }
+
+ // _this.timer = setInterval(fn, t);
+ },
+ /*璁$畻褰撳墠榧犳爣浣嶇疆璺濈canvas鐨勫亸绉婚噺*/
+ xyToCanvas: function (ele, x, y) {
+ var _this = this;
+ var obj = _this.canvas.getBoundingClientRect();
+ return {
+ x: x - obj.left,
+ y: y - obj.top
+ };
+ },
+ /*榧犳爣鍙屽嚮浜嬩欢*/
+ doubleClick: function (event) {
+ var _this = this;
+
+ if ((event.type == "dblclick") && (full_screen == false)) {
+ _this.expand = true;
+ full_screen = true;
+
+ var targ = event.target;
+ var tid = targ.id;
+ var id = tid.substr(tid.length - 1, 1)
+ var str = "map" + id;
+ document.getElementById(str).style.width = "100%";
+ document.getElementById(str).style.height = "800px";
+ var str = "draw" + id;
+ document.getElementById(str).style.width = "100%";
+ document.getElementById(str).style.height = "750px";
+ var str = "wrap" + id;
+ document.getElementById(str).style.width = "100%";
+ document.getElementById(str).style.height = "750px";
+ for (var i = 0; i < 4; i++) {
+ if (String(i) != id) {
+ var str = "map" + i;
+ // document.getElementById(str).style.position = "fixed";
+ // document.getElementById(str).style.left = "100%";
+ document.getElementById(str).style.display = "none";
+ }
+ };
+ //_this.drawImg(current_floor);
+ clearInterval(_this.timer);
+ var can = _this.context;
+ can.clearRect(0, 0, _this.canvas.width, _this.canvas.height);
+ for (var i = 0; i < timer_list.length; i++) {
+ clearInterval(timer_list[i]);
+ }
+ timer_list = [];
+ console.log(result)
+ diaoyonghuatu(result);
+ } else if ((event.type == "dblclick") && (full_screen == true)) {
+ _this.expand = false;
+ full_screen = false;
+
+ var targ = event.target;
+ var tid = targ.id;
+ var id = tid.substr(tid.length - 1, 1)
+ var str = "map" + id;
+ document.getElementById(str).style.width = "49.5%";
+ document.getElementById(str).style.height = null;
+ var str = "draw" + id;
+ document.getElementById(str).style.width = null;
+ document.getElementById(str).style.height = null;
+ var str = "wrap" + id;
+ document.getElementById(str).style.width = "100%";
+ document.getElementById(str).style.height = "400px";
+
+ for (var i = 0; i < _this.ttm; i++) {
var str = "map" + i;
- // document.getElementById(str).style.position = "fixed";
- // document.getElementById(str).style.left = "100%";
- document.getElementById(str).style.display = "none";
+ document.getElementById(str).style.display = "";
+ };
+ //_this.drawImg(current_floor);
+ clearInterval(_this.timer);
+ var can = _this.context;
+ can.clearRect(0, 0, _this.canvas.width, _this.canvas.height);
+ for (var i = 0; i < timer_list.length; i++) {
+ clearInterval(timer_list[i]);
}
- };
- //_this.drawImg(current_floor);
- clearInterval(_this.timer);
- var can = _this.context;
- can.clearRect(0, 0, _this.canvas.width, _this.canvas.height);
- for (var i = 0; i < timer_list.length; i++) {
- clearInterval(timer_list[i]);
- }
- timer_list = [];
- console.log(result)
- diaoyonghuatu(result);
- } else if ((event.type == "dblclick") && (full_screen == true)) {
- _this.expand = false;
- full_screen = false;
-
- var targ = event.target;
- var tid = targ.id;
- var id = tid.substr(tid.length - 1, 1)
- var str = "map" + id;
- document.getElementById(str).style.width = "49.5%";
- document.getElementById(str).style.height = null;
- var str = "draw" + id;
- document.getElementById(str).style.width = null;
- document.getElementById(str).style.height = null;
- var str = "wrap" + id;
- document.getElementById(str).style.width = "100%";
- document.getElementById(str).style.height = "400px";
-
- for (var i = 0; i < _this.ttm; i++) {
- var str = "map" + i;
- document.getElementById(str).style.display = "";
- };
- //_this.drawImg(current_floor);
- clearInterval(_this.timer);
- var can = _this.context;
- can.clearRect(0, 0, _this.canvas.width, _this.canvas.height);
- for (var i = 0; i < timer_list.length; i++) {
- clearInterval(timer_list[i]);
- }
- timer_list = [];
- diaoyonghuatu(result);
- }
- },
- /*榧犳爣鍗曞嚮浜嬩欢*/
- clickDown: function (event) {
- var _this = this;
- if ((event.button == 0)) {//鐐瑰嚮榧犳爣宸﹂敭
- _this.dragFlag = true;
- tuodong = true;
- //_this.canvas.style.cursor = "move";
- _this.pos = _this.xyToCanvas(_this.canvas, event.clientX, event.clientY);
-
- }
- },
- /*榧犳爣绉诲姩浜嬩欢*/
- mouseMove: function (event) {
- var _this = this;
- /*鎷栨嫿*/
- if (_this.dragFlag) {
- tuodong = true;
- _this.canvas.style.cursor = "move";
- var pos1 = _this.xyToCanvas(_this.canvas, event.clientX, event.clientY);
- var x = pos1.x - _this.pos.x;
- var y = pos1.y - _this.pos.y;
- _this.pos = pos1;
- for (var key in _this.imgXList) {
- _this.imgXList[key] += x;
- _this.imgYList[key] += y;
- }
- //clearInterval(_this.timer);
- _this.cacheCanvas = null;
- _this.drawImg();
- }
- //diaoyonghuatu(result);
- },
- /*榧犳爣鏀惧紑浜嬩欢*/
- mouseUp: function (event) {
- var _this = this;
- _this.dragFlag = false;
- tuodong = false;
- if (_this.markFlag) {
- _this.canvas.style.cursor = "none";
- return;
- }
- _this.canvas.style.cursor = 'default';
-
- },
- /*榧犳爣婊氳疆浜嬩欢*/
- onmouseWheel: function (event) {
- var _this = this;
- _this.cacheCanvas = null;
- var pos = _this.xyToCanvas(_this.canvas, event.clientX, event.clientY);
- event.wheelDelta = event.wheelDelta ? event.wheelDelta : (event.deltaY * (-40));
- //鍙栨秷娴忚鍣ㄩ粯璁よ涓�
- if (event.preventDefault) {
- event.preventDefault();
- } else {
- event.returnValue = false;
- }
- if (event.wheelDelta > 0 && _this.scaleFlag < 9) {
- for (var key in _this.imgScaleList) {
- _this.imgScaleList[key] *= 1.25;
- _this.imgXList[key] = _this.imgXList[key] * 1.25 - 0.25 * pos.x;
- _this.imgYList[key] = _this.imgYList[key] * 1.25 - 0.25 * pos.y;
- }
- _this.scaleFlag += 1;
- }
- if (event.wheelDelta < 0 && _this.scaleFlag > -9) {//缂╁皬
- for (var key in _this.imgScaleList) {
- _this.imgScaleList[key] *= 0.8;
- _this.imgXList[key] = _this.imgXList[key] * 0.8 + pos.x * 0.2;
- _this.imgYList[key] = _this.imgYList[key] * 0.8 + pos.y * 0.2;
- }
- _this.scaleFlag -= 1;
- }
- _this.imgScaleList['icon'] = 0.03;
- _this.drawImg();
- },
- };
-
- function getRealPosition_all() {
- var realposition = [];
- $.ajax({
- async: false,
- type: 'POST',
- url: "/hxzkoa/getRealPosition_all.do",
- dataType: 'json',
- success: function (data) {
- for (var i = 0; i < data.length; i++) {
- //playMark[id,name,power,life,x,y,time]
- realposition.push([data[i].tagid, data[i].name, data[i].power, data[i].life, data[i].posx, data[i].posy, data[i].time, data[i].fence == 1 || data[i].sos == 1, data[i].sos, data[i].fence])
+ timer_list = [];
+ diaoyonghuatu(result);
}
},
- });
- return realposition
- };
- var audio1 = new Audio("/hxzkoa/hxzk/image/voice/sos.wav");
- var audio2 = new Audio("/hxzkoa/hxzk/image/voice/warning.wav");
- // var zaipan = []
- // var sosgaojing1 = getRealPosition();
- // for (var i = 0; i < sosgaojing1.length; i++) {
- // zaipan.push(false)
- // }
- // setInterval(baojing, 1000)
- function baojing() {
- var sosgaojing = getRealPosition_all();
- for (var i = 0; i < sosgaojing.length; i++) {
- if (sosgaojing[i][7] == 1) {
- if (sosgaojing[i][8] == 1) {
- // if (zaipan[i] == false) {
- var str = '娉ㄦ剰,缂栧彿[' + sosgaojing[i][0] + ']SOS鍛婅'
- // Audio1.click()
- audio1.play()
- // swal(str)
- // $.ajax({
- // url: "/hxzkoa/sosgaojing.do",
- // type: "POST",
- // dataType: "JSON",
- // data: {
- // tagid: sosgaojing[i][0]
- // }
- // })
- // }
- } if (sosgaojing[i][9] == 1) {
- // if (zaipan[i] == false) {
- var str = '娉ㄦ剰,缂栧彿[' + sosgaojing[i][0] + ']杩涘叆鍗遍櫓鍖哄煙'
- // audio2.click()
- audio2.play()
- // swal(str)
- // $.ajax({
- // url: "/hxzkoa/fencegaojing.do",
- // type: "POST",
- // dataType: "JSON",
- // data: {
- // tagid: sosgaojing[i][0]
- // }
- // })
- // }
+ /*榧犳爣鍗曞嚮浜嬩欢*/
+ clickDown: function (event) {
+ var _this = this;
+ if ((event.button == 0)) {//鐐瑰嚮榧犳爣宸﹂敭
+ _this.dragFlag = true;
+ tuodong = true;
+ //_this.canvas.style.cursor = "move";
+ _this.pos = _this.xyToCanvas(_this.canvas, event.clientX, event.clientY);
+
}
- // zaipan[i] = true
- }
- // } else {
- // zaipan[i] = false
- // }
- }
- }
+ },
+ /*榧犳爣绉诲姩浜嬩欢*/
+ mouseMove: function (event) {
+ var _this = this;
+ /*鎷栨嫿*/
+ if (_this.dragFlag) {
+ tuodong = true;
+ _this.canvas.style.cursor = "move";
+ var pos1 = _this.xyToCanvas(_this.canvas, event.clientX, event.clientY);
+ var x = pos1.x - _this.pos.x;
+ var y = pos1.y - _this.pos.y;
+ _this.pos = pos1;
+ for (var key in _this.imgXList) {
+ _this.imgXList[key] += x;
+ _this.imgYList[key] += y;
+ }
+ //clearInterval(_this.timer);
+ _this.cacheCanvas = null;
+ _this.drawImg();
+ }
+ //diaoyonghuatu(result);
+ },
+ /*榧犳爣鏀惧紑浜嬩欢*/
+ mouseUp: function (event) {
+ var _this = this;
+ _this.dragFlag = false;
+ tuodong = false;
+ if (_this.markFlag) {
+ _this.canvas.style.cursor = "none";
+ return;
+ }
+ _this.canvas.style.cursor = 'default';
- document.getElementById("stop").style.display = 'none';
- $("#search").click(function () {
- var input = document.getElementById("tagidaaa").value;
- $.ajax({
- async: false,
- url: "/hxzkoa/sousuo.do",
- type: "POST",
- dataType: "JSON",
- data: {
- tagid: input
+ },
+ /*榧犳爣婊氳疆浜嬩欢*/
+ onmouseWheel: function (event) {
+ var _this = this;
+ _this.cacheCanvas = null;
+ var pos = _this.xyToCanvas(_this.canvas, event.clientX, event.clientY);
+ event.wheelDelta = event.wheelDelta ? event.wheelDelta : (event.deltaY * (-40));
+ //鍙栨秷娴忚鍣ㄩ粯璁よ涓�
+ if (event.preventDefault) {
+ event.preventDefault();
+ } else {
+ event.returnValue = false;
+ }
+ if (event.wheelDelta > 0 && _this.scaleFlag < 9) {
+ for (var key in _this.imgScaleList) {
+ _this.imgScaleList[key] *= 1.25;
+ _this.imgXList[key] = _this.imgXList[key] * 1.25 - 0.25 * pos.x;
+ _this.imgYList[key] = _this.imgYList[key] * 1.25 - 0.25 * pos.y;
+ }
+ _this.scaleFlag += 1;
+ }
+ if (event.wheelDelta < 0 && _this.scaleFlag > -9) {//缂╁皬
+ for (var key in _this.imgScaleList) {
+ _this.imgScaleList[key] *= 0.8;
+ _this.imgXList[key] = _this.imgXList[key] * 0.8 + pos.x * 0.2;
+ _this.imgYList[key] = _this.imgYList[key] * 0.8 + pos.y * 0.2;
+ }
+ _this.scaleFlag -= 1;
+ }
+ _this.imgScaleList['icon'] = 0.03;
+ _this.drawImg();
+ },
+ };
+
+ function getRealPosition_all() {
+ var realposition = [];
+ $.ajax({
+ async: false,
+ type: 'POST',
+ url: "/hxzkoa/getRealPosition_all.do",
+ dataType: 'json',
+ success: function (data) {
+ for (var i = 0; i < data.length; i++) {
+ //playMark[id,name,power,life,x,y,time]
+ realposition.push([data[i].tagid, data[i].name, data[i].power, data[i].life, data[i].posx, data[i].posy, data[i].time, data[i].fence == 1 || data[i].sos == 1, data[i].sos, data[i].fence])
+ }
+ },
+ });
+ return realposition
+ };
+ var audio1 = new Audio("/hxzkoa/hxzk/image/voice/sos.wav");
+ var audio2 = new Audio("/hxzkoa/hxzk/image/voice/warning.wav");
+ // var zaipan = []
+ // var sosgaojing1 = getRealPosition();
+ // for (var i = 0; i < sosgaojing1.length; i++) {
+ // zaipan.push(false)
+ // }
+ // setInterval(baojing, 1000)
+ function baojing() {
+ var sosgaojing = getRealPosition_all();
+ for (var i = 0; i < sosgaojing.length; i++) {
+ if (sosgaojing[i][7] == 1) {
+ if (sosgaojing[i][8] == 1) {
+ // if (zaipan[i] == false) {
+ var str = '娉ㄦ剰,缂栧彿[' + sosgaojing[i][0] + ']SOS鍛婅'
+ // Audio1.click()
+ audio1.play()
+ // swal(str)
+ // $.ajax({
+ // url: "/hxzkoa/sosgaojing.do",
+ // type: "POST",
+ // dataType: "JSON",
+ // data: {
+ // tagid: sosgaojing[i][0]
+ // }
+ // })
+ // }
+ } if (sosgaojing[i][9] == 1) {
+ // if (zaipan[i] == false) {
+ var str = '娉ㄦ剰,缂栧彿[' + sosgaojing[i][0] + ']杩涘叆鍗遍櫓鍖哄煙'
+ // audio2.click()
+ audio2.play()
+ // swal(str)
+ // $.ajax({
+ // url: "/hxzkoa/fencegaojing.do",
+ // type: "POST",
+ // dataType: "JSON",
+ // data: {
+ // tagid: sosgaojing[i][0]
+ // }
+ // })
+ // }
+ }
+ // zaipan[i] = true
+ }
+ // } else {
+ // zaipan[i] = false
+ // }
}
- })
- document.getElementById("search").style.display = 'none';
- document.getElementById("stop").style.display = '';
- document.getElementById("tagidaaa").value = "";
- });
- $("#stop").click(function () {
- $.ajax({
- async: false,
- url: "/hxzkoa/sousuoquxiao.do",
- type: "POST",
- dataType: "JSON"
- })
- document.getElementById("search").style.display = '';
+ }
+
document.getElementById("stop").style.display = 'none';
- });
- function hidePopup(x, e) {
- if (e != undefined) {
- e.cancelBubble = true;
+ $("#search").click(function () {
+ var input = document.getElementById("tagidaaa").value;
+ $.ajax({
+ async: false,
+ url: "/hxzkoa/sousuo.do",
+ type: "POST",
+ dataType: "JSON",
+ data: {
+ tagid: input
+ }
+ })
+ document.getElementById("search").style.display = 'none';
+ document.getElementById("stop").style.display = '';
+ document.getElementById("tagidaaa").value = "";
+ });
+ $("#stop").click(function () {
+ $.ajax({
+ async: false,
+ url: "/hxzkoa/sousuoquxiao.do",
+ type: "POST",
+ dataType: "JSON"
+ })
+ document.getElementById("search").style.display = '';
+ document.getElementById("stop").style.display = 'none';
+ });
+ function hidePopup(x, e) {
+ if (e != undefined) {
+ e.cancelBubble = true;
+ }
+ document.getElementById("popup").style.display = "none";
+ isDelete = x;
+ shipinka = true;
+ document.getElementById("tanchuang").innerHTML = "";
}
- document.getElementById("popup").style.display = "none";
- isDelete = x;
- shipinka = true;
- document.getElementById("tanchuang").innerHTML = "";
- }
- </script>
- <!-- 缁撴潫璋冪敤瀹ゅ唴瀹氫綅鍦板浘鍔熻兘 -->
- <!-- > END PAGE FUNCTION SCRIPTS -->
+ </script>
+ <!-- 缁撴潫璋冪敤瀹ゅ唴瀹氫綅鍦板浘鍔熻兘 -->
+ <!-- > END PAGE FUNCTION SCRIPTS -->
- <!-- BEGIN PAGE LEVEL PLUGINS/CUSTOM SCRIPTS -->
- <script src="/hxzkoa/hxzk/plugins/apex/apexcharts.min.js"></script>
- <script src="/hxzkoa/hxzk/assets/js/dashboard/dash_2.js"></script>
- <!-- BEGIN PAGE LEVEL PLUGINS/CUSTOM SCRIPTS -->
+ <!-- BEGIN PAGE LEVEL PLUGINS/CUSTOM SCRIPTS -->
+ <script src="/hxzkoa/hxzk/plugins/apex/apexcharts.min.js"></script>
+ <script src="/hxzkoa/hxzk/assets/js/dashboard/dash_2.js"></script>
+ <!-- BEGIN PAGE LEVEL PLUGINS/CUSTOM SCRIPTS -->
</body>
--
Gitblit v1.10.0