diff --git a/src/assets/images/big_bg.png b/src/assets/images/big_bg.png
new file mode 100644
index 0000000..abb42be
Binary files /dev/null and b/src/assets/images/big_bg.png differ
diff --git a/src/assets/images/carMarker.png b/src/assets/images/carMarker.png
new file mode 100644
index 0000000..343f8d5
Binary files /dev/null and b/src/assets/images/carMarker.png differ
diff --git a/src/assets/images/营运线路-active.png b/src/assets/images/carType1-s.png
similarity index 100%
rename from src/assets/images/营运线路-active.png
rename to src/assets/images/carType1-s.png
diff --git a/src/assets/images/carType1.png b/src/assets/images/carType1.png
new file mode 100644
index 0000000..326ff53
Binary files /dev/null and b/src/assets/images/carType1.png differ
diff --git a/src/assets/images/carType2-s.png b/src/assets/images/carType2-s.png
new file mode 100644
index 0000000..3f93f8a
Binary files /dev/null and b/src/assets/images/carType2-s.png differ
diff --git a/src/assets/images/carType2.png b/src/assets/images/carType2.png
new file mode 100644
index 0000000..c63cd63
Binary files /dev/null and b/src/assets/images/carType2.png differ
diff --git a/src/assets/images/carType3-s.png b/src/assets/images/carType3-s.png
new file mode 100644
index 0000000..4695fb0
Binary files /dev/null and b/src/assets/images/carType3-s.png differ
diff --git a/src/assets/images/carType3.png b/src/assets/images/carType3.png
new file mode 100644
index 0000000..d301124
Binary files /dev/null and b/src/assets/images/carType3.png differ
diff --git a/src/assets/images/dialog.jpg b/src/assets/images/dialog.jpg
deleted file mode 100644
index a48ba8b..0000000
Binary files a/src/assets/images/dialog.jpg and /dev/null differ
diff --git a/src/assets/images/dialog.png b/src/assets/images/dialog.png
new file mode 100644
index 0000000..db85d92
Binary files /dev/null and b/src/assets/images/dialog.png differ
diff --git a/src/assets/images/diy-popup.png b/src/assets/images/diy-popup.png
index 3876474..5e5bf2c 100644
Binary files a/src/assets/images/diy-popup.png and b/src/assets/images/diy-popup.png differ
diff --git a/src/assets/images/island.png b/src/assets/images/island.png
new file mode 100644
index 0000000..40c62ad
Binary files /dev/null and b/src/assets/images/island.png differ
diff --git a/src/assets/images/linePoint2.png b/src/assets/images/linePoint2.png
index d19c16f..67ff233 100644
Binary files a/src/assets/images/linePoint2.png and b/src/assets/images/linePoint2.png differ
diff --git a/src/assets/images/origin.png b/src/assets/images/origin.png
new file mode 100644
index 0000000..ec83f50
Binary files /dev/null and b/src/assets/images/origin.png differ
diff --git a/src/assets/images/pointer.png b/src/assets/images/pointer.png
new file mode 100644
index 0000000..122804d
Binary files /dev/null and b/src/assets/images/pointer.png differ
diff --git a/src/assets/images/临时任务-选中.png b/src/assets/images/临时任务-选中.png
new file mode 100644
index 0000000..7d70f50
Binary files /dev/null and b/src/assets/images/临时任务-选中.png differ
diff --git a/src/assets/images/临时任务.png b/src/assets/images/临时任务.png
index d301124..8c8def1 100644
Binary files a/src/assets/images/临时任务.png and b/src/assets/images/临时任务.png differ
diff --git a/src/assets/images/维护线路.png b/src/assets/images/维护线路.png
index c63cd63..f0556da 100644
Binary files a/src/assets/images/维护线路.png and b/src/assets/images/维护线路.png differ
diff --git a/src/assets/images/营运线路.png b/src/assets/images/营运线路.png
index 326ff53..3a6ddae 100644
Binary files a/src/assets/images/营运线路.png and b/src/assets/images/营运线路.png differ
diff --git a/src/assets/styles/map.scss b/src/assets/styles/map.scss
index ece7643..76b10ff 100644
--- a/src/assets/styles/map.scss
+++ b/src/assets/styles/map.scss
@@ -14,19 +14,20 @@
text-align: center;
}
.mars-four-color {
- width: 84px;
+ width: 100px;
position: relative;
- top: -68px;
- left: -40px;
+ top: -60px;
+ left: -50px;
cursor: pointer;
}
.four-color_name {
width: 100%;
- height: 80px;
- line-height: 30px;
+ height: 100px;
+ line-height: 37px;
background: url("../images/areaName.png");
background-size: 100% 100%;
- font-size: 14px;
+ font-size: 16px;
+ font-weight: bold;
color: #fff250;
text-align: center;
text-shadow: 0px 0px 2px rgba(0, 0, 0, 0.5);
@@ -34,7 +35,7 @@
.mars3d-animation {
position: relative;
- animation: moveUpDown 1s linear infinite alternate;
+ // animation: moveUpDown 1s linear infinite alternate;
}
@keyframes moveUpDown {
@@ -49,33 +50,35 @@
.screen-list {
position: absolute;
top: 0;
- right: -195px;
+ right: -240px;
// transform: translateY(50%);
min-width: 60px;
- opacity: 0;
+ & > div {
+ display: none;
+ }
.lable-value {
- height: 35px;
- width: 190px;
+ height: 41px;
+ width: 234px;
background: url("../images/screen-list.png");
background-size: 100% 100%;
margin-bottom: 3px;
display: flex;
align-items: center;
- padding: 0 4px;
+ padding: 0 6px;
.lable-data {
width: 50%;
- font-size: 14px;
+ font-size: 16px;
color: #612500;
font-weight: bold;
}
.value-data {
flex: 1;
text-align: center;
- font-size: 18px;
+ font-size: 20px;
color: #f7c75d;
font-family: "DIN-Regular-2";
span {
- font-size: 14px;
+ font-size: 16px;
color: #ffffff;
}
}
@@ -110,7 +113,7 @@
.video-dialog {
background-color: transparent;
- width: 833px;
+ width: 750px;
height: 482px;
.el-dialog__header {
padding: 0;
@@ -118,7 +121,7 @@
.el-dialog__body {
height: 100%;
padding: 15px 10px;
- background: url("../images/dialog.jpg");
+ background: url("../images/dialog.png");
background-size: 100% 100%;
}
.el-dialog__headerbtn {
@@ -149,12 +152,23 @@
}
.diy-popup {
+ position: relative;
height: 430px;
width: 260px;
background: url("../images/diy-popup.png");
background-size: 100% 100%;
padding: 20px 25px;
- overflow-y: auto;
+ // overflow-y: auto;
+ .pointer {
+ position: absolute;
+ left: -145px;
+ top: 50%;
+ transform: translateY(-50%);
+ width: 145px;
+ height: 207px;
+ background: url("../images/pointer.png");
+ background-size: cover;
+ }
.popup-title {
font-size: 18px;
color: #ffffff;
@@ -194,3 +208,38 @@
}
}
}
+.mars3d-popup-content {
+ overflow-y: visible;
+}
+//车辆实时定位弹窗
+
+.car-page-popup {
+ .mars3d-popup-tip-container {
+ opacity: 0;
+ }
+ .mars3d-popup-background {
+ background: transparent;
+ box-shadow: 0 0px 0px transparent;
+ padding: 0;
+ text-align: left;
+ border-radius: 0;
+ }
+
+ .carPlate {
+ position: relative;
+ background: #00162d;
+ border-radius: 4px;
+ border: 1px solid #008cff;
+ padding: 2px 10px;
+ font-size: 14px;
+ padding-left: 30px;
+ .carType {
+ position: absolute;
+ left: 0;
+ top: 0;
+ display: inline-block;
+ height: 25px;
+ width: 25px;
+ }
+ }
+}
diff --git a/src/components/grids.vue b/src/components/grids.vue
index 8ace3f0..11b29ab 100644
--- a/src/components/grids.vue
+++ b/src/components/grids.vue
@@ -93,14 +93,14 @@ export default {
background-color: #fff;
font-size: 14px;
- opacity: 0.3;
+ opacity: 0.5;
border: none;
outline: none;
cursor: pointer;
padding: 9px 4px;
}
.scroll-btn:hover {
- opacity: 0.5;
+ opacity: 0.8;
}
.left {
diff --git a/src/utils/carCanvas.js b/src/utils/carCanvas.js
new file mode 100644
index 0000000..893eba9
--- /dev/null
+++ b/src/utils/carCanvas.js
@@ -0,0 +1,65 @@
+const obj = {
+ borderWidth: 2,
+ borderColor: "#006FCB",
+ backgroundColor: "#00162D",
+ fontSize: 14,
+ fontColor: "#FFFFFF",
+ paddingVertical: 6,
+ paddingHorizontal: 10,
+ text: "001号线_01_早送_守押001_苏E", // 这里可以更改为需要绘制的文字
+};
+export function adjustCanvasSize(id) {
+ const canvas = document.createElement("canvas");
+ const ctx = canvas.getContext("2d");
+ // 设置文字样式以计算文本宽度
+ ctx.font = `${obj.fontSize}px sans-serif`;
+
+ // 计算文本宽度
+ const textWidth = ctx.measureText(obj.text).width;
+
+ // 计算画布宽度和高度(加上内边距和边框)
+ const canvasWidth = textWidth + obj.paddingHorizontal * 2;
+ const canvasHeight = obj.fontSize + obj.paddingVertical * 2;
+
+ // 设置画布宽度和高度
+ canvas.width = canvasWidth;
+ canvas.height = canvasHeight;
+
+ // 重新绘制矩形和文字
+ return drawRectangle(canvas, id, canvasWidth, canvasHeight, textWidth);
+}
+function drawRectangle(canvas, id, canvasWidth, canvasHeight, textWidth) {
+ let marker = document.getElementById("carMarker");
+ canvas.id = id;
+ const ctx = canvas.getContext("2d");
+ // 清空画布
+ ctx.clearRect(0, 0, canvasWidth, canvasHeight);
+
+ // 绘制背景矩形
+ ctx.fillStyle = obj.backgroundColor;
+ ctx.fillRect(0, 0, canvasWidth, canvasHeight);
+
+ // 绘制边框
+ ctx.lineWidth = obj.borderWidth;
+ ctx.strokeStyle = obj.borderColor;
+ ctx.strokeRect(0.5, 0.5, canvasWidth - 1, canvasHeight - 1);
+
+ // 设置文字样式
+ ctx.font = `${obj.fontSize}px sans-serif`;
+ ctx.fillStyle = obj.fontColor;
+
+ // 计算文字的水平和垂直居中位置
+ const textX = (canvasWidth - textWidth) / 2;
+ const textY = (canvasHeight + obj.fontSize) / 2 - obj.paddingVertical / 2;
+ // 绘制文字
+ ctx.fillText(obj.text, textX, textY);
+ marker.appendChild(canvas);
+ return canvas;
+}
+
+export function changeBorderColor(id) {
+ let canvas = document.getElementById(id);
+
+ console.log(id, canvas);
+ canvas.style.border = `1px solid #C08700`;
+}
diff --git a/src/views/canvas.vue b/src/views/canvas.vue
new file mode 100644
index 0000000..8133a93
--- /dev/null
+++ b/src/views/canvas.vue
@@ -0,0 +1,79 @@
+
+
+
+
+
+
+
diff --git a/src/views/car copy.vue b/src/views/car copy.vue
new file mode 100644
index 0000000..af1e389
--- /dev/null
+++ b/src/views/car copy.vue
@@ -0,0 +1,452 @@
+
+
+ {{ item }}
+