diff --git a/src/assets/icon/sdcgq.png b/src/assets/icon/sdcgq.png
new file mode 100644
index 0000000..ed6a1ea
Binary files /dev/null and b/src/assets/icon/sdcgq.png differ
diff --git a/src/assets/icon/sfj.png b/src/assets/icon/sfj.png
new file mode 100644
index 0000000..e5799fd
Binary files /dev/null and b/src/assets/icon/sfj.png differ
diff --git a/src/assets/icon/sgbj.png b/src/assets/icon/sgbj.png
new file mode 100644
index 0000000..6f0f75a
Binary files /dev/null and b/src/assets/icon/sgbj.png differ
diff --git a/src/assets/icon/wdcgq.png b/src/assets/icon/wdcgq.png
new file mode 100644
index 0000000..9b09092
Binary files /dev/null and b/src/assets/icon/wdcgq.png differ
diff --git a/src/assets/icon/xfzj.png b/src/assets/icon/xfzj.png
new file mode 100644
index 0000000..3a59ab3
Binary files /dev/null and b/src/assets/icon/xfzj.png differ
diff --git a/src/assets/icon/yjzm.png b/src/assets/icon/yjzm.png
new file mode 100644
index 0000000..dc8d1ee
Binary files /dev/null and b/src/assets/icon/yjzm.png differ
diff --git a/src/assets/icon/yqcgq.png b/src/assets/icon/yqcgq.png
new file mode 100644
index 0000000..e4de2c9
Binary files /dev/null and b/src/assets/icon/yqcgq.png differ
diff --git a/src/assets/icon/ywcgq.png b/src/assets/icon/ywcgq.png
new file mode 100644
index 0000000..15cfb26
Binary files /dev/null and b/src/assets/icon/ywcgq.png differ
diff --git a/src/assets/icons/index.js b/src/assets/icons/index.js
new file mode 100644
index 0000000..d79e164
--- /dev/null
+++ b/src/assets/icons/index.js
@@ -0,0 +1,9 @@
+import Vue from 'vue'
+import SvgIcon from '@/components/SvgIcon'// svg component
+
+// register globally
+Vue.component('svg-icon', SvgIcon)
+
+const req = require.context('./svg', false, /\.svg$/)
+const requireAll = requireContext => requireContext.keys().map(requireContext)
+requireAll(req)
diff --git a/src/assets/icons/svg/1.svg b/src/assets/icons/svg/1.svg
new file mode 100644
index 0000000..b258268
--- /dev/null
+++ b/src/assets/icons/svg/1.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/icons/svg/404.svg b/src/assets/icons/svg/404.svg
new file mode 100644
index 0000000..6df5019
--- /dev/null
+++ b/src/assets/icons/svg/404.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/icons/svg/afmj.svg b/src/assets/icons/svg/afmj.svg
new file mode 100644
index 0000000..d661899
--- /dev/null
+++ b/src/assets/icons/svg/afmj.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/icons/svg/afxt.svg b/src/assets/icons/svg/afxt.svg
new file mode 100644
index 0000000..c83f66e
--- /dev/null
+++ b/src/assets/icons/svg/afxt.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/assets/icons/svgo.yml b/src/assets/icons/svgo.yml
new file mode 100644
index 0000000..14f8f5c
--- /dev/null
+++ b/src/assets/icons/svgo.yml
@@ -0,0 +1,22 @@
+# replace default config
+
+# multipass: true
+# full: true
+
+plugins:
+
+ # - name
+ #
+ # or:
+ # - name: false
+ # - name: true
+ #
+ # or:
+ # - name:
+ # param1: 1
+ # param2: 2
+
+- removeAttrs:
+ attrs:
+ - 'fill'
+ - 'fill-rule'
diff --git a/src/views/plan.vue b/src/views/plan.vue
index 9667bfc..39cab86 100644
--- a/src/views/plan.vue
+++ b/src/views/plan.vue
@@ -248,6 +248,8 @@ const MOUSE_CURRENT_Y = ref(0);
const activeMarker = ref({ target: "" });
const Shrink = ref(false);
+const SELECT_ACTION_TYPE = ref('');
+
//背景图片/标记图片等(保持不变)
const backgroundImage = new URL("../assets/gl.png", import.meta.url).href;
const icons = {
@@ -325,6 +327,11 @@ const handleTabbar = (e) => {
d.isSelected = false;
}
});
+ if(e.isSelected) {
+ SELECT_ACTION_TYPE.value = e.value;
+ } else {
+ SELECT_ACTION_TYPE.value = "";
+ }
showFlag.value = false;
nextTick(() => {
showFlag.value = true;
@@ -606,6 +613,9 @@ const draw = (alpha = 1) => {
for (const key in points) {
let _points = points[key];
_points.forEach((point) => {
+ if(SELECT_ACTION_TYPE.value && point.TypeId !== SELECT_ACTION_TYPE.value) {
+ return
+ }
let status = getIconStatus(point.TypeId);
const size =
@@ -645,6 +655,21 @@ const draw = (alpha = 1) => {
);
}
+ // 添加文字传感器数值
+ if(point.TypeId == 26) {
+
+ ctx.value.font = `10px Arial`; // 设置字体和大小
+ ctx.value.fillStyle = "#FFF"; // 设置文字颜色
+ // 计算文字位置(图标右侧10px处,垂直居中对齐)
+
+ let _value = point.Data[0].Value; //传感器数值value
+
+ const textX = point.x * BL.value + (iSize * BL.value) / scale.value / 2 + 1;
+ const textY = point.y * BL.value + 15; // +5是为了视觉上垂直居中
+ ctx.value.fillText(_value, textX, textY); // 绘制文字
+
+ }
+
if (point.target == "device" && point.IsOpen) {
ctx.value.strokeStyle = window.customConfigUrl.openColor;
ctx.value.lineWidth = (4 / scale.value) * BL.value;