From 28e9535f217b2965515ffb959bacc23234d17aca Mon Sep 17 00:00:00 2001
From: ZhuDongming <773644075@qq.com>
Date: Tue, 06 Aug 2019 15:26:35 +0800
Subject: [PATCH] 重合点改为聚合图片,调整重合数量显示位置
---
src/main/webapp/view/uavTrajectory.jsp | 97 +++++++++++++++++++++---------------------------
1 files changed, 43 insertions(+), 54 deletions(-)
diff --git a/src/main/webapp/view/uavTrajectory.jsp b/src/main/webapp/view/uavTrajectory.jsp
index ff444b3..4f87a45 100644
--- a/src/main/webapp/view/uavTrajectory.jsp
+++ b/src/main/webapp/view/uavTrajectory.jsp
@@ -85,7 +85,7 @@
var coincidentPoints = new Array();
if (sensorInfo.length > 0) {
$.each(sensorInfo, function (item, value) {
- trackPoints.push(new BMap.Point(value.e76, value.e77));
+ trackPoints.push(new BMap.Point(value.������, value.������));
})
for (var i = 0; i < trackPoints.length; i++) {
var startPoint = trackPoints[i];
@@ -136,9 +136,10 @@
);
if (i < trackPoints.length - 1) {
map.addOverlay(polyline);// ���������������
- if (i != 0) {
- addArrow(polyline, arrowLength, Math.PI / 7);
+ if (i == 0) {
+ map.centerAndZoom(startPoint, 17);
}
+ addArrow(polyline, arrowLength, Math.PI / 7);
}
if (coincidentPoints.indexOf(i) > -1) {
//������������������������������������������������������������������
@@ -147,8 +148,8 @@
var startIcon = new BMap.Icon("/img/start.png", new BMap.Size(48, 48));
var endIcon = new BMap.Icon("/img/end.png", new BMap.Size(48, 48));
+ var aggregationIcon = new BMap.Icon("/img/aggregation.png", new BMap.Size(48, 48));
if (i == 0) {
- map.centerAndZoom(startPoint, 17);
marker = new BMap.Marker(startPoint, {icon: startIcon, offset: new BMap.Size(0, -20)});
}
if (i == trackPoints.length - 1) {
@@ -158,7 +159,8 @@
marker = new BMap.Marker(startPoint);
}
var count = 0;
- var winfowText = "";
+ var winfowText =
+ '<div style="min-height:20px;overflow-y:auto;max-height:400px;" >';
for (var j = i + 1; j < trackPoints.length; j++) {
distance = map.getDistance(trackPoints[i], trackPoints[j]).toFixed(5);
if (distance <= 1.9) {
@@ -167,39 +169,22 @@
}
coincidentPoints.push(j);
count++;
- winfowTextAdd = '<p id="' + j + '" onclick="openInfo(this)">' + "���������" + sensorInfo[j].uavDate + "</p>";
+ marker = new BMap.Marker(startPoint, {icon: aggregationIcon});
+ winfowTextAdd = '<p id="' + j + '" onclick="openInfo(this)" onmousemove="red(this.id)" onmouseout="black(this.id)">' + "���������" + sensorInfo[j].������ + "</p>";
winfowText += winfowTextAdd;
- if (j == trackPoints.length - 1) {
- marker = new BMap.Marker(trackPoints[j], {icon: endIcon, offset: new BMap.Size(0, -20)});
- }
}
}
if (coincidentPoints.indexOf(i) > -1) {
- winfowText = '<p id="' + i + '" onclick="openInfo(this)">' + "���������" + sensorInfo[i].uavDate + "</p>" + winfowText;
+ winfowText = '<p id="' + i + '" onclick="openInfo(this)" onmousemove="red(this.id)" onmouseout="black(this.id)">' + "���������" + sensorInfo[i].������ + "</p>" + winfowText + "</div>";
} else {
- winfowText = "���������" + sensorInfo[i].uavDate
- + "</br> PM 2.5���" + sensorInfo[i].e1
- + "</br> PM 10���" + sensorInfo[i].e2
- + "</br> ������������0.1������0.3um���������" + sensorInfo[i].e3
- + "</br> ������������0.1������2.5um���������" + sensorInfo[i].e4
- + "</br> ���������" + sensorInfo[i].e6
- + "</br> ���������" + sensorInfo[i].e7
- + "</br> ���������CL���������" + sensorInfo[i].e9
- + "</br> ���������������CO������" + sensorInfo[i].e10
- + "</br> ���������������SO���������" + sensorInfo[i].e11
- + "</br> ���������O���������" + sensorInfo[i].e15
- + "</br> ������������������������TVOC������" + sensorInfo[i].e17
- + "</br> ������������������" + sensorInfo[i].e27
- + "</br> ���������" + sensorInfo[i].e28
- + "</br> ���������" + sensorInfo[i].e76
- + "</br> ���������" + sensorInfo[i].e77
- + "</br> ���������" + sensorInfo[i].e78
- + "</br> ������x���" + sensorInfo[i].e79
- + "</br> ������y���" + sensorInfo[i].e80
- + "</br> ������z���" + sensorInfo[i].e81;
+ for (var prop in sensorInfo[i]) {
+ if (sensorInfo[i].hasOwnProperty(prop)) {
+ winfowText += (prop + "���" + sensorInfo[i][prop] + "</br>");
+ }
+ }
+ winfowText += "</div>";
}
-
(function (x) {
var infoWindow = new BMap.InfoWindow(winfowText, {enableMessage: false});
marker.addEventListener("click", function () {
@@ -208,34 +193,38 @@
})(i);
function openInfo(e) {
- var point = new BMap.Point(sensorInfo[e.id].e76, sensorInfo[e.id].e77);
- // ������������������������
- var infoWindow1 = new BMap.InfoWindow("���������" + sensorInfo[e.id].uavDate
- + "</br> PM 2.5���" + sensorInfo[e.id].e1
- + "</br> PM 10���" + sensorInfo[e.id].e2
- + "</br> ������������0.1������0.3um���������" + sensorInfo[e.id].e3
- + "</br> ������������0.1������2.5um���������" + sensorInfo[e.id].e4
- + "</br> ���������" + sensorInfo[e.id].e6
- + "</br> ���������" + sensorInfo[e.id].e7
- + "</br> ���������CL���������" + sensorInfo[e.id].e9
- + "</br> ���������������CO������" + sensorInfo[e.id].e10
- + "</br> ���������������SO���������" + sensorInfo[e.id].e11
- + "</br> ���������O���������" + sensorInfo[e.id].e15
- + "</br> ������������������������TVOC������" + sensorInfo[e.id].e17
- + "</br> ������������������" + sensorInfo[e.id].e27
- + "</br> ���������" + sensorInfo[e.id].e28
- + "</br> ���������" + sensorInfo[e.id].e76
- + "</br> ���������" + sensorInfo[e.id].e77
- + "</br> ���������" + sensorInfo[e.id].e78
- + "</br> ������x���" + new Number(sensorInfo[e.id].e79).toLocaleString()
- + "</br> ������y���" + new Number(sensorInfo[e.id].e80).toLocaleString()
- + "</br> ������z���" + new Number(sensorInfo[e.id].e81).toLocaleString(), {enableMessage: false});
+ var point = new BMap.Point(sensorInfo[e.id].������, sensorInfo[e.id].������);
+ var winfowText1 = "";
+ for (var prop in sensorInfo[e.id]) {
+ if (sensorInfo[e.id].hasOwnProperty(prop)) {
+ winfowText1 += (prop + "���" + sensorInfo[e.id][prop] + "</br>");
+ }
+ }
+ var infoWindow1 = new BMap.InfoWindow(winfowText1, {enableMessage: false});
//������������������
map.openInfoWindow(infoWindow1, point);
}
+ function red(x) {
+ document.getElementById(x).style.color = "#FF1111";
+ document.getElementById(x).style.cursor = "pointer";
+ }
+
+ function black(x) {
+ document.getElementById(x).style.color = "#000000";
+ }
+
if (count > 0) {
- var lab = new BMap.Label(count + 1, {position: startPoint, offset: new BMap.Size(-7, -23)});
+ var lab;
+ if(count>0 && count<=8){
+ lab = new BMap.Label(count + 1, {position: startPoint, offset: new BMap.Size(-5, -9)});
+ }else if(count>8 && count<=98){
+ lab = new BMap.Label(count + 1, {position: startPoint, offset: new BMap.Size(-10, -9)});
+ }else if(count>98 && count<=998){
+ lab = new BMap.Label(count + 1, {position: startPoint, offset: new BMap.Size(-14, -9)});
+ }else{
+ lab = new BMap.Label(count + 1, {position: startPoint, offset: new BMap.Size(-18, -9)});
+ }
lab.setStyle({
color: "#fff",
fontSize: "16px",
--
Gitblit v1.8.0