From c208b104011e0bbdc824960ed025b597d081c78f Mon Sep 17 00:00:00 2001
From: zhangzengfei <zhangzengfei@smartai.com>
Date: 星期六, 18 六月 2022 01:56:31 +0800
Subject: [PATCH] 摄像机配置: 修复国标刷底图api

---
 src/components/canvas/index.vue |  392 ++++++++++++++++++++++++++------------------------------
 1 files changed, 182 insertions(+), 210 deletions(-)

diff --git a/src/components/canvas/index.vue b/src/components/canvas/index.vue
index 7e4e217..aec91a9 100644
--- a/src/components/canvas/index.vue
+++ b/src/components/canvas/index.vue
@@ -1,23 +1,21 @@
 <template>
-  <div class="s-cavas" :style="{width:canvasWidth+'px',height:canvasHeight+'px'}">
+  <div class="s-cavas" :style="{ width: canvasWidth + 'px', height: canvasHeight + 'px' }">
     <canvas
       ref="myCanvas"
       :width="canvasWidth"
       :height="canvasHeight"
-      :style="`background:url(${canvasBg}) center / ${canvasWidth}px ${canvasHeight}px no-repeat; background-size: contain;`"
+      :style="
+        `background:url(${canvasBg}) center / ${canvasWidth}px ${canvasHeight}px no-repeat; background-size: contain;`
+      "
     ></canvas>
 
     <el-tooltip content="鍒锋柊搴曞浘" placement="bottom" popper-class="atooltip" v-if="isShowRefresh">
       <span class="iconfont icongengxin" @click="refresh"></span>
     </el-tooltip>
-    <p class="tip" :style="disabled ? `display:block;` : `display:none;`">鎵归噺閰嶇疆鏂瑰紡涓嶅厑璁哥粯鍒跺尯鍩燂紝璇烽�夋嫨鎽勫儚鏈鸿繘琛屽尯鍩熺粯鍒�</p>
-    <el-dialog
-      title
-      :visible.sync="visible"
-      width="1150px"
-      append-to-body
-      :before-close="cancelFunc"
-    >
+    <p class="tip" :style="disabled ? `display:block;` : `display:none;`">
+      鎵归噺閰嶇疆鏂瑰紡涓嶅厑璁哥粯鍒跺尯鍩燂紝璇烽�夋嫨鎽勫儚鏈鸿繘琛屽尯鍩熺粯鍒�
+    </p>
+    <el-dialog title :visible.sync="visible" width="1150px" append-to-body :before-close="cancelFunc">
       <canvas-dialog
         ref="bigCanvas"
         :canvasDataToChild="canvasData"
@@ -32,8 +30,8 @@
   </div>
 </template>
 <script>
-import canvasDialog from "./Dialog";
-import { updateSnapshot } from "@/api/camera";
+import canvasDialog from "./Dialog"
+import { updateSnapshot } from "@/api/camera"
 export default {
   name: "myCanvas",
   components: {
@@ -66,7 +64,7 @@
     },
     canvasDataShow: {
       default: () => {
-        return { line: [], rect: [], arrow: [], polygon: [] };
+        return { line: [], rect: [], arrow: [], polygon: [] }
       },
       type: Object
     },
@@ -104,17 +102,16 @@
       if (this.snapshot_url) {
         // 鏁版嵁鏍堣嚜鍔ㄤ笂浼犲鐞�
         if (this.snapshot_url.indexOf("/opt/vasystem") == 0) {
-          return this.snapshot_url.replace("/opt/vasystem", "");
+          return this.snapshot_url.replace("/opt/vasystem", "")
         }
 
         if (this.sourceType == 2) {
-          return `${this.snapshot_url}`;
+          return `${this.snapshot_url}`
         } else {
-          return `/httpImage/${this.snapshot_url}`;
+          return `/httpImage/${this.snapshot_url}`
         }
-
       } else {
-        return this.blackImg;
+        return this.blackImg
       }
     }
   },
@@ -133,17 +130,17 @@
       c: null,
       ctx: null,
       visible: false,
-      baseImg: undefined,
+      baseImg: undefined
       //showProportion: 1.666
-    };
+    }
   },
   watch: {
     loading: {
       handler(newVal, oldVal) {
         // console.log(newVal,'loading')
         if (newVal) {
-          this.baseImg = "";
-          this.refresh();
+          this.baseImg = ""
+          this.refresh()
         }
       },
       deep: true
@@ -151,11 +148,11 @@
     canvasDataShow: {
       handler(newVal, oldVal) {
         // console.log(newVal, "canvasDataShow newVal");
-        this.canvasData.line = newVal.line;
-        this.canvasData.rect = newVal.rect;
-        this.canvasData.arrow = newVal.arrow;
-        this.canvasData.polygon = newVal.polygon;
-        this.clickSelect(this.canvasData);
+        this.canvasData.line = newVal.line
+        this.canvasData.rect = newVal.rect
+        this.canvasData.arrow = newVal.arrow
+        this.canvasData.polygon = newVal.polygon
+        this.clickSelect(this.canvasData)
       },
       deep: true
     }
@@ -163,156 +160,139 @@
   mounted() {
     this.$nextTick(() => {
       // this.c = document.querySelector("#" + this.divId);
-      this.c = this.$refs.myCanvas;
-      this.ctx = this.c.getContext("2d");
-      this.canvasData = JSON.parse(JSON.stringify(this.canvasDataShow));
-      this.clickSelect(this.canvasData);
-    });
+      this.c = this.$refs.myCanvas
+      this.ctx = this.c.getContext("2d")
+      this.canvasData = JSON.parse(JSON.stringify(this.canvasDataShow))
+      this.clickSelect(this.canvasData)
+    })
   },
   methods: {
     // 鑾峰彇canvas搴曞浘
     async getCanvasPic() {
       // this.$emit('changeBaseImg',this.currentCameraId)
-      this.$emit('changeLoading', true)
+      this.$emit("changeLoading", true)
       if (this.currentCameraId) {
-        let _this = this;
-        await updateSnapshot(this.currentCameraId)
-          .then(res => {
+        let _this = this
+        await updateSnapshot(this.currentCameraId, this.isGB28181)
+          .then((res) => {
             if (res.data.cameraId === _this.currentCameraId) {
-              this.baseImg = res.data.snapshotUrl;
-              this.$emit('refresh', res.data.snapshotUrl, _this.currentCameraId)
+              this.baseImg = res.data.snapshotUrl
+              this.$emit("refresh", res.data.snapshotUrl, _this.currentCameraId)
               this.$forceUpdate()
               this.$notify({
                 type: "success",
                 message: "搴曞浘宸插埛鏂�"
-              });
+              })
             }
           })
-          .catch(err => {
+          .catch((err) => {
             this.$notify({
               type: "error",
               message: "搴曞浘鍒锋柊澶辫触"
-            });
-          });
-        this.$emit('changeLoading', false)
+            })
+          })
+        this.$emit("changeLoading", false)
       }
     },
     showModal() {
       // console.log(this.canvasData, "鐐瑰嚮缁樺埗鐨勬椂鍊欎紶閫掕繃鍘荤殑鏁版嵁");
-      this.visible = true;
+      this.visible = true
       this.$nextTick(() => {
         // this.$refs.bigCanvas.delCursor = {}
       })
-
     },
     cancelFunc() {
-      this.visible = false;
-      this.$refs.bigCanvas.cancel();
+      this.visible = false
+      this.$refs.bigCanvas.cancel()
       // console.log("鍏抽棴浜�");
     },
     handleOk() {
       // 鍒ゆ柇鍥惧舰鐨勫悕瀛楁槸鍚﹂噸澶�
       // console.log("ok");
-      this.$refs.bigCanvas.changeType('0')
-      let repeatName = this.isRepeat();
+      this.$refs.bigCanvas.changeType("0")
+      let repeatName = this.isRepeat()
       if (repeatName !== "") {
         this.$notify({
           type: "error",
           message: repeatName + "鍥惧舰鍚嶇О閲嶅锛岃鏇存锛�"
-        });
-        return;
+        })
+        return
       }
       this.$notify({
         type: "success",
         message: "宸蹭繚瀛樼粯鍒讹紒"
-      });
+      })
       // 姣忔淇濆瓨鍏抽棴妯℃�佺獥鏃堕兘瑕佹妸妯℃�佺獥鐨勬暟鎹啓鍒扮埗缁勪欢閲屾潵
-      this.canvasData = this.$refs.bigCanvas.canvasData;
+      this.canvasData = this.$refs.bigCanvas.canvasData
       // 椤轰究鐢╁埌鏇村灞傚幓
-      this.$emit("fromCanvas", this.$refs.bigCanvas.canvasData);
+      this.$emit("fromCanvas", this.$refs.bigCanvas.canvasData)
       // console.log("浣犲ソ", this.canvasData);
 
-      this.clickSelect(this.canvasData);
-      this.visible = false;
+      this.clickSelect(this.canvasData)
+      this.visible = false
     },
     // 鍥炴樉cavas鏁版嵁
     // 鐐瑰嚮閫変腑鍙樿壊 灏嗗綋鍓嶉〉闈㈡墍鏈夎矾寰勯噸缁樺垽鏂綋鍓嶉紶鏍囩殑鍧愭爣鍦ㄥ摢涓浘褰㈠唴 濡傛灉涓嶄紶鍧愭爣鍙傛暟灏辨槸鍥炴樉鐨勬柟娉�
     clickSelect(e) {
-      this.ctx.clearRect(0, 0, this.c.width, this.c.height);
-      let _this = this; // 闆嗗悎涓亶鍘嗛渶瑕佸皢this杞瓨涓�涓嬩娇鐢�
-      _this.canvasData.line.forEach(function (v, i) {
-        _this.ctx.strokeStyle = "yellow";
-        _this.ctx.beginPath();
-        _this.ctx.moveTo(v.location[0].x / _this.showProportion, v.location[0].y / _this.showProportion);
-        _this.ctx.lineTo(v.location[1].x / _this.showProportion, v.location[1].y / _this.showProportion);
-        _this.ctx.stroke();
-        _this.showRemarks(
-          v.location[0].x / _this.showProportion,
-          v.location[0].y / _this.showProportion,
-          v.name
-        );
-        _this.c.style.cursor = "default";
+      this.ctx.clearRect(0, 0, this.c.width, this.c.height)
+      let _this = this // 闆嗗悎涓亶鍘嗛渶瑕佸皢this杞瓨涓�涓嬩娇鐢�
+      _this.canvasData.line.forEach(function(v, i) {
+        _this.ctx.strokeStyle = "yellow"
+        _this.ctx.beginPath()
+        _this.ctx.moveTo(v.location[0].x / _this.showProportion, v.location[0].y / _this.showProportion)
+        _this.ctx.lineTo(v.location[1].x / _this.showProportion, v.location[1].y / _this.showProportion)
+        _this.ctx.stroke()
+        _this.showRemarks(v.location[0].x / _this.showProportion, v.location[0].y / _this.showProportion, v.name)
+        _this.c.style.cursor = "default"
         if (e && _this.ctx.isPointInStroke(e.offsetX, e.offsetY)) {
           // 濡傛灉浼犲叆浜嗕簨浠跺潗鏍囷紝灏辩敤isPointInStroke鍒ゆ柇涓�涓�
           // 濡傛灉褰撳墠鐜瑕嗙洊浜嗚鍧愭爣锛屽氨灏嗗浘褰㈢殑index鏀惧埌鏁扮粍閲�
           // 褰撻紶鏍囩Щ鍏ヤ箣鍚庡皢褰撳墠鐨勬ā寮忓垏鎹负閫変腑妯″紡
-          _this.type = "0";
-          _this.delCursor.type = "1";
-          _this.delCursor.index = i;
+          _this.type = "0"
+          _this.delCursor.type = "1"
+          _this.delCursor.index = i
           // 灏嗗綋鍓嶅厓绱犳爣绾�
-          _this.ctx.strokeStyle = "red";
-          _this.ctx.beginPath();
-          _this.ctx.moveTo(v.location[0].x / _this.showProportion, v.location[0].y / _this.showProportion);
-          _this.ctx.lineTo(v.location[1].x / _this.showProportion, v.location[1].y / _this.showProportion);
-          _this.ctx.stroke();
-          _this.showRemarks(
-            v.location[0].x / _this.showProportion,
-            v.location[0].y / _this.showProportion,
-            v.name
-          );
-          _this.c.style.cursor = "pointer";
+          _this.ctx.strokeStyle = "red"
+          _this.ctx.beginPath()
+          _this.ctx.moveTo(v.location[0].x / _this.showProportion, v.location[0].y / _this.showProportion)
+          _this.ctx.lineTo(v.location[1].x / _this.showProportion, v.location[1].y / _this.showProportion)
+          _this.ctx.stroke()
+          _this.showRemarks(v.location[0].x / _this.showProportion, v.location[0].y / _this.showProportion, v.name)
+          _this.c.style.cursor = "pointer"
         }
-      });
-      _this.canvasData.rect.forEach(function (v, i) {
-        _this.ctx.strokeStyle = "yellow";
-        _this.ctx.beginPath();
-        _this.ctx.moveTo(v.location[0].x / _this.showProportion, v.location[0].y / _this.showProportion);
-        _this.ctx.lineTo(v.location[1].x / _this.showProportion, v.location[1].y / _this.showProportion);
-        _this.ctx.lineTo(v.location[2].x / _this.showProportion, v.location[2].y / _this.showProportion);
-        _this.ctx.lineTo(v.location[3].x / _this.showProportion, v.location[3].y / _this.showProportion);
-        _this.ctx.lineTo(v.location[0].x / _this.showProportion, v.location[0].y / _this.showProportion);
-        _this.ctx.stroke();
-        _this.showRemarks(
-          v.location[0].x / _this.showProportion,
-          v.location[0].y / _this.showProportion,
-          v.name
-        );
-        _this.c.style.cursor = "default";
+      })
+      _this.canvasData.rect.forEach(function(v, i) {
+        _this.ctx.strokeStyle = "yellow"
+        _this.ctx.beginPath()
+        _this.ctx.moveTo(v.location[0].x / _this.showProportion, v.location[0].y / _this.showProportion)
+        _this.ctx.lineTo(v.location[1].x / _this.showProportion, v.location[1].y / _this.showProportion)
+        _this.ctx.lineTo(v.location[2].x / _this.showProportion, v.location[2].y / _this.showProportion)
+        _this.ctx.lineTo(v.location[3].x / _this.showProportion, v.location[3].y / _this.showProportion)
+        _this.ctx.lineTo(v.location[0].x / _this.showProportion, v.location[0].y / _this.showProportion)
+        _this.ctx.stroke()
+        _this.showRemarks(v.location[0].x / _this.showProportion, v.location[0].y / _this.showProportion, v.name)
+        _this.c.style.cursor = "default"
         if (e && _this.ctx.isPointInPath(e.offsetX, e.offsetY)) {
           // 濡傛灉浼犲叆浜嗕簨浠跺潗鏍囷紝灏辩敤isPointInStroke鍒ゆ柇涓�涓�
           // 褰撻紶鏍囩Щ鍏ヤ箣鍚庡皢褰撳墠鐨勬ā寮忓垏鎹负閫変腑妯″紡
-          _this.type = "0";
-          _this.delCursor.type = "2";
-          _this.delCursor.index = i;
+          _this.type = "0"
+          _this.delCursor.type = "2"
+          _this.delCursor.index = i
           // 灏嗗綋鍓嶅厓绱犳爣绾�
-          _this.ctx.strokeStyle = "red";
-          _this.ctx.beginPath();
-          _this.ctx.moveTo(v.location[0].x / _this.showProportion, v.location[0].y / _this.showProportion);
-          _this.ctx.lineTo(v.location[1].x / _this.showProportion, v.location[1].y / _this.showProportion);
-          _this.ctx.lineTo(v.location[2].x / _this.showProportion, v.location[2].y / _this.showProportion);
-          _this.ctx.lineTo(v.location[3].x / _this.showProportion, v.location[3].y / _this.showProportion);
-          _this.ctx.lineTo(v.location[0].x / _this.showProportion, v.location[0].y / _this.showProportion);
-          _this.ctx.stroke();
-          _this.showRemarks(
-            v.location[0].x / _this.showProportion,
-            v.location[0].y / _this.showProportion,
-            v.name
-          );
-          _this.c.style.cursor = "pointer";
+          _this.ctx.strokeStyle = "red"
+          _this.ctx.beginPath()
+          _this.ctx.moveTo(v.location[0].x / _this.showProportion, v.location[0].y / _this.showProportion)
+          _this.ctx.lineTo(v.location[1].x / _this.showProportion, v.location[1].y / _this.showProportion)
+          _this.ctx.lineTo(v.location[2].x / _this.showProportion, v.location[2].y / _this.showProportion)
+          _this.ctx.lineTo(v.location[3].x / _this.showProportion, v.location[3].y / _this.showProportion)
+          _this.ctx.lineTo(v.location[0].x / _this.showProportion, v.location[0].y / _this.showProportion)
+          _this.ctx.stroke()
+          _this.showRemarks(v.location[0].x / _this.showProportion, v.location[0].y / _this.showProportion, v.name)
+          _this.c.style.cursor = "pointer"
         }
-      });
-      _this.canvasData.arrow.forEach(function (v, i) {
-        _this.ctx.strokeStyle = "yellow";
+      })
+      _this.canvasData.arrow.forEach(function(v, i) {
+        _this.ctx.strokeStyle = "yellow"
         // _this.ctx.beginPath()
         // _this.ctx.moveTo(v.location[0].x / 2, v.location[0].y / 2)
         // _this.ctx.lineTo(v.location[1].x / 2, v.location[1].y / 2)
@@ -326,22 +306,18 @@
           20,
           30,
           "yellow"
-        ); // 缁樺埗鏂规硶
-        _this.showRemarks(
-          v.location[0].x / _this.showProportion,
-          v.location[0].y / _this.showProportion,
-          v.name
-        );
-        _this.c.style.cursor = "default";
+        ) // 缁樺埗鏂规硶
+        _this.showRemarks(v.location[0].x / _this.showProportion, v.location[0].y / _this.showProportion, v.name)
+        _this.c.style.cursor = "default"
         if (e && _this.ctx.isPointInStroke(e.offsetX, e.offsetY)) {
           // 濡傛灉浼犲叆浜嗕簨浠跺潗鏍囷紝灏辩敤isPointInStroke鍒ゆ柇涓�涓�
           // 濡傛灉褰撳墠鐜瑕嗙洊浜嗚鍧愭爣锛屽氨灏嗗浘褰㈢殑index鏀惧埌鏁扮粍閲�
           // 褰撻紶鏍囩Щ鍏ヤ箣鍚庡皢褰撳墠鐨勬ā寮忓垏鎹负閫変腑妯″紡
-          _this.type = "0";
-          _this.delCursor.type = "4";
-          _this.delCursor.index = i;
+          _this.type = "0"
+          _this.delCursor.type = "4"
+          _this.delCursor.index = i
           // 灏嗗綋鍓嶅厓绱犳爣绾�
-          _this.ctx.strokeStyle = "red";
+          _this.ctx.strokeStyle = "red"
           //   _this.ctx.beginPath()
           //   _this.ctx.moveTo(v.location[0].x / _this.showProportion, v.location[0].y / _this.showProportion)
           //   _this.ctx.lineTo(v.location[1].x / _this.showProportion, v.location[1].y / _this.showProportion)
@@ -355,66 +331,62 @@
             20,
             30,
             "red"
-          ); // 缁樺埗鏂规硶
-          _this.showRemarks(
-            v.location[0].x / _this.showProportion,
-            v.location[0].y / _this.showProportion,
-            v.name
-          );
-          _this.c.style.cursor = "pointer";
+          ) // 缁樺埗鏂规硶
+          _this.showRemarks(v.location[0].x / _this.showProportion, v.location[0].y / _this.showProportion, v.name)
+          _this.c.style.cursor = "pointer"
         }
-      });
-      _this.canvasData.polygon.forEach(function (v, i) {
+      })
+      _this.canvasData.polygon.forEach(function(v, i) {
         if (v.location.length === 0) {
-          return;
+          return
         }
-        _this.ctx.strokeStyle = "yellow";
-        _this.ctx.beginPath();
-        _this.ctx.moveTo(v.location[0].x / _this.showProportion, v.location[0].y / _this.showProportion);
+        _this.ctx.strokeStyle = "yellow"
+        _this.ctx.beginPath()
+        _this.ctx.moveTo(v.location[0].x / _this.showProportion, v.location[0].y / _this.showProportion)
         for (let i = 1; i < v.location.length; i++) {
-          _this.ctx.lineTo(v.location[i].x / _this.showProportion, v.location[i].y / _this.showProportion);
+          _this.ctx.lineTo(v.location[i].x / _this.showProportion, v.location[i].y / _this.showProportion)
         }
-        _this.ctx.closePath();
-        _this.ctx.stroke();
+        _this.ctx.closePath()
+        _this.ctx.stroke()
         _this.showRemarks(
           v.location[v.location.length - 1].x / _this.showProportion,
           v.location[v.location.length - 1].y / _this.showProportion,
           v.name
-        );
-        _this.c.style.cursor = "default";
+        )
+        _this.c.style.cursor = "default"
         if (e && _this.ctx.isPointInPath(e.offsetX, e.offsetY)) {
           // 濡傛灉浼犲叆浜嗕簨浠跺潗鏍囷紝灏辩敤isPointInStroke鍒ゆ柇涓�涓�
           // 濡傛灉褰撳墠鐜瑕嗙洊浜嗚鍧愭爣锛屽氨灏嗗浘褰㈢殑index鏀惧埌鏁扮粍閲�
           // 褰撻紶鏍囩Щ鍏ヤ箣鍚庡皢褰撳墠鐨勬ā寮忓垏鎹负閫変腑妯″紡
-          _this.type = "0";
-          _this.delCursor.type = "5";
-          _this.delCursor.index = i;
+          _this.type = "0"
+          _this.delCursor.type = "5"
+          _this.delCursor.index = i
           // 灏嗗綋鍓嶅厓绱犳爣绾�
-          _this.ctx.strokeStyle = "red";
-          _this.ctx.beginPath();
-          _this.ctx.moveTo(v.location[0].x / _this.showProportion, v.location[0].y / _this.showProportion);
+          _this.ctx.strokeStyle = "red"
+          _this.ctx.beginPath()
+          _this.ctx.moveTo(v.location[0].x / _this.showProportion, v.location[0].y / _this.showProportion)
           for (let i = 1; i < v.location.length; i++) {
-            _this.ctx.lineTo(v.location[i].x / _this.showProportion, v.location[i].y / _this.showProportion);
+            _this.ctx.lineTo(v.location[i].x / _this.showProportion, v.location[i].y / _this.showProportion)
           }
-          _this.ctx.closePath();
-          _this.ctx.stroke();
+          _this.ctx.closePath()
+          _this.ctx.stroke()
           _this.showRemarks(
             v.location[v.location.length - 1].x / _this.showProportion,
             v.location[v.location.length - 1].y / _this.showProportion,
             v.name
-          );
-          _this.c.style.cursor = "pointer";
+          )
+          _this.c.style.cursor = "pointer"
         }
-      });
+      })
     },
     // 鍥炴樉鍥惧舰澶囨敞
     showRemarks(x, y, remarks) {
-      this.ctx.moveTo(x, y - 10); // 鍥犱负鏀惧ぇ涔嬪悗鏄痽-20锛屾墍浠ョ缉灏忕増鐨勪负y-10
-      this.ctx.fillStyle = "green"; // 璁剧疆濉厖棰滆壊涓虹豢鑹�
-      this.ctx.font = '10px "寰蒋闆呴粦"'; // 璁剧疆瀛椾綋
-      this.ctx.textBaseline = "bottom"; // 璁剧疆瀛椾綋搴曠嚎瀵归綈缁樺埗鍩虹嚎
-      this.ctx.textAlign = "left"; // 璁剧疆瀛椾綋瀵归綈鐨勬柟寮�
-      this.ctx.fillText(remarks, x, y - 10); // 濉厖鏂囧瓧
+      this.ctx.moveTo(x, y - 10) // 鍥犱负鏀惧ぇ涔嬪悗鏄痽-20锛屾墍浠ョ缉灏忕増鐨勪负y-10
+      this.ctx.fillStyle = "green" // 璁剧疆濉厖棰滆壊涓虹豢鑹�
+      this.ctx.font = '10px "寰蒋闆呴粦"' // 璁剧疆瀛椾綋
+      this.ctx.textBaseline = "bottom" // 璁剧疆瀛椾綋搴曠嚎瀵归綈缁樺埗鍩虹嚎
+      this.ctx.textAlign = "left" // 璁剧疆瀛椾綋瀵归綈鐨勬柟寮�
+      this.ctx.fillText(remarks, x, y - 10) // 濉厖鏂囧瓧
     },
     // 绠ご缁樺埗鍑芥暟
     drawArrow(ctx, fromX, fromY, toX, toY, theta, headlen, width, color) {
@@ -425,86 +397,86 @@
       // headlen锛氫笁瑙掓枩杈归暱搴�
       // width锛氱澶寸嚎瀹藉害
       // color锛氱澶撮鑹�
-      theta = typeof theta !== "undefined" ? theta : 30;
-      headlen = typeof theta !== "undefined" ? headlen : 10;
-      width = typeof width !== "undefined" ? width : 1;
-      color = typeof color !== "undefined" ? color : "yellow";
+      theta = typeof theta !== "undefined" ? theta : 30
+      headlen = typeof theta !== "undefined" ? headlen : 10
+      width = typeof width !== "undefined" ? width : 1
+      color = typeof color !== "undefined" ? color : "yellow"
       // 璁$畻鍚勮搴﹀拰瀵瑰簲鐨凱2,P3鍧愭爣
-      let angle = (Math.atan2(fromY - toY, fromX - toX) * 180) / Math.PI;
-      let angle1 = ((angle + theta) * Math.PI) / 180;
-      let angle2 = ((angle - theta) * Math.PI) / 180;
-      let topX = headlen * Math.cos(angle1);
-      let topY = headlen * Math.sin(angle1);
-      let botX = headlen * Math.cos(angle2);
-      let botY = headlen * Math.sin(angle2);
+      let angle = (Math.atan2(fromY - toY, fromX - toX) * 180) / Math.PI
+      let angle1 = ((angle + theta) * Math.PI) / 180
+      let angle2 = ((angle - theta) * Math.PI) / 180
+      let topX = headlen * Math.cos(angle1)
+      let topY = headlen * Math.sin(angle1)
+      let botX = headlen * Math.cos(angle2)
+      let botY = headlen * Math.sin(angle2)
 
-      ctx.save();
-      ctx.beginPath();
-      let arrowX = fromX - topX;
-      let arrowY = fromY - topY;
-      ctx.moveTo(arrowX, arrowY);
-      ctx.moveTo(fromX, fromY);
-      ctx.lineTo(toX, toY);
-      arrowX = toX + topX;
-      arrowY = toY + topY;
-      ctx.moveTo(arrowX, arrowY);
-      ctx.lineTo(toX, toY);
-      arrowX = toX + botX;
-      arrowY = toY + botY;
-      ctx.lineTo(arrowX, arrowY);
-      ctx.strokeStyle = color;
-      ctx.lineWidth = width;
-      ctx.stroke();
-      ctx.restore();
+      ctx.save()
+      ctx.beginPath()
+      let arrowX = fromX - topX
+      let arrowY = fromY - topY
+      ctx.moveTo(arrowX, arrowY)
+      ctx.moveTo(fromX, fromY)
+      ctx.lineTo(toX, toY)
+      arrowX = toX + topX
+      arrowY = toY + topY
+      ctx.moveTo(arrowX, arrowY)
+      ctx.lineTo(toX, toY)
+      arrowX = toX + botX
+      arrowY = toY + botY
+      ctx.lineTo(arrowX, arrowY)
+      ctx.strokeStyle = color
+      ctx.lineWidth = width
+      ctx.stroke()
+      ctx.restore()
     },
     async refresh() {
       // console.log(this.loading,'鍒锋柊搴曞浘',this.snapshot_url)
       if (!this.currentCameraId) {
-        return false;
+        return false
       }
       // await this.$emit('changeLoading', true)
-      this.getCanvasPic();
+      this.getCanvasPic()
     },
     // 鍒ゆ柇鍥惧舰鍚嶇О鏄惁閲嶅
     isRepeat() {
-      let _this = this; // 闆嗗悎涓亶鍘嗛渶瑕佸皢this杞瓨涓�涓嬩娇鐢�
-      let nameArray = [];
+      let _this = this // 闆嗗悎涓亶鍘嗛渶瑕佸皢this杞瓨涓�涓嬩娇鐢�
+      let nameArray = []
       for (const v of _this.$refs.bigCanvas.canvasData.line) {
         for (const item of nameArray) {
           if (v.name === item) {
-            return v.name;
+            return v.name
           }
         }
-        nameArray.push(v.name);
+        nameArray.push(v.name)
       }
       for (const v of _this.$refs.bigCanvas.canvasData.arrow) {
         for (const item of nameArray) {
           if (v.name === item) {
-            return v.name;
+            return v.name
           }
         }
-        nameArray.push(v.name);
+        nameArray.push(v.name)
       }
       for (const v of _this.$refs.bigCanvas.canvasData.rect) {
         for (const item of nameArray) {
           if (v.name === item) {
-            return v.name;
+            return v.name
           }
         }
-        nameArray.push(v.name);
+        nameArray.push(v.name)
       }
       for (const v of _this.$refs.bigCanvas.canvasData.polygon) {
         for (const item of nameArray) {
           if (v.name === item) {
-            return v.name;
+            return v.name
           }
         }
-        nameArray.push(v.name);
+        nameArray.push(v.name)
       }
-      return "";
+      return ""
     }
   }
-};
+}
 </script>
 <style lang="scss" scoped>
 canvas {

--
Gitblit v1.8.0