From 896c2dfc99ea2855fbc66bdcddaf7aae960a4ef9 Mon Sep 17 00:00:00 2001 From: ZhuDongming <773644075@qq.com> Date: Tue, 03 Sep 2019 16:15:06 +0800 Subject: [PATCH] update 污染传播接口 --- src/main/webapp/view/pollutionsource.jsp | 120 ++++++++++++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 101 insertions(+), 19 deletions(-) diff --git a/src/main/webapp/view/pollutionsource.jsp b/src/main/webapp/view/pollutionsource.jsp index dbde898..bbcd5d6 100644 --- a/src/main/webapp/view/pollutionsource.jsp +++ b/src/main/webapp/view/pollutionsource.jsp @@ -157,6 +157,8 @@ var latitude = params["device"]["latitude"]; var point = new BMap.Point(longitude, latitude); var icon = new BMap.Icon("/img/ico00.png", new BMap.Size(50, 50)); + var icon1 = new BMap.Icon("/img/ico01.png", new BMap.Size(50, 50)); + var icon2 = new BMap.Icon("/img/ico02.png", new BMap.Size(50, 50)); var marker = new BMap.Marker(point, {icon: icon, offset: new BMap.Size(0, -20)}); map.addOverlay(marker); map.centerAndZoom(point, 16); @@ -173,7 +175,6 @@ var windDir = parseFloat(getPollutionSourceData["e23"]); var iconDir = new BMap.Icon("/img/ico07.gif", new BMap.Size(50, 50)); var markerDir = new BMap.Marker(dirPoint, {icon: iconDir, offset: new BMap.Size(0, -20)}); - //centre:���������������,X:������������,Y:������������ function add_oval(centre, x, y) { @@ -211,25 +212,71 @@ } var distance = windSpeed * 3600; - var winDirStart = 240 - windDir; - var winDirEnd = 300 - windDir; + var winDirStartLeft = 240 - windDir; + var winDirEndLeft = 250 - windDir; + var winDirStartMiddle = 250 - windDir; + var winDirEndMiddle = 290 - windDir; + var winDirStartRight = 290 - windDir; + var winDirEndRight = 300 - windDir; + var winDirStart = 255 - windDir; + var winDirEnd = 285 - windDir; + var polyline1 = new BMap.Polyline([ + dirPoint, + EOffsetBearing(dirPoint, distance, winDirStart) + ], + {strokeColor: "red", strokeWeight: 4, strokeOpacity: 1} + ); + var polyline2 = new BMap.Polyline([ + dirPoint, + EOffsetBearing(dirPoint, distance, winDirEnd) + ], + {strokeColor: "red", strokeWeight: 4, strokeOpacity: 1} + ); setTimeout(function () { - var oval = new BMap.Polygon(Sector(dirPoint, distance, winDirStart, winDirEnd), { - strokeColor: "grey", - strokeWeight: 1, - strokeOpacity: 0.8, - fillColor: "grey" + var ovalLeft = new BMap.Polygon(Sector(dirPoint, distance, winDirStartLeft, winDirEndLeft), { + strokeColor: "#ADADAD", + strokeWeight: 0.1, + strokeOpacity: 0.7, + fillColor: "#ADADAD" + }); + map.addOverlay(ovalLeft); + var oval = new BMap.Polygon(Sector(dirPoint, distance, winDirStartMiddle, winDirEndMiddle), { + strokeColor: "#A6A6A6", + strokeWeight: 0.1, + strokeOpacity: 0.95, + fillColor: "#A6A6A6" }); map.addOverlay(oval); + var ovalRight = new BMap.Polygon(Sector(dirPoint, distance, winDirStartRight, winDirEndRight), { + strokeColor: "#ADADAD", + strokeWeight: 0.1, + strokeOpacity: 0.7, + fillColor: "#ADADAD" + }); + map.addOverlay(ovalRight); }, 1500); setTimeout(function () { - var oval = new BMap.Polygon(Sector(dirPoint, distance * 0.66, winDirStart, winDirEnd), { - strokeColor: "grey", - strokeWeight: 1, - strokeOpacity: 0.6, - fillColor: "grey" + var ovalLeft = new BMap.Polygon(Sector(dirPoint, distance * 0.66, winDirStartLeft, winDirEndLeft), { + strokeColor: "#ADADAD", + strokeWeight: 0.1, + strokeOpacity: 0.5, + fillColor: "#ADADAD" + }); + map.addOverlay(ovalLeft); + var oval = new BMap.Polygon(Sector(dirPoint, distance * 0.66, winDirStartMiddle, winDirEndMiddle), { + strokeColor: "#A6A6A6", + strokeWeight: 0.1, + strokeOpacity: 0.75, + fillColor: "#A6A6A6" }); map.addOverlay(oval); + var ovalRight = new BMap.Polygon(Sector(dirPoint, distance * 0.66, winDirStartRight, winDirEndRight), { + strokeColor: "#ADADAD", + strokeWeight: 0.1, + strokeOpacity: 0.7, + fillColor: "#ADADAD" + }); + map.addOverlay(ovalRight); var polyline = new BMap.Polyline([ dirPoint, point @@ -239,16 +286,51 @@ addArrow(polyline, 0, Math.PI / 7, temperature, humidity, windSpeed, windDir); }, 1000); setTimeout(function () { - var oval = new BMap.Polygon(Sector(dirPoint, distance * 0.33, winDirStart, winDirEnd), { - strokeColor: "grey", - strokeWeight: 1, - strokeOpacity: 0.4, - fillColor: "grey" + var ovalLeft = new BMap.Polygon(Sector(dirPoint, distance * 0.33, winDirStartLeft, winDirEndLeft), { + strokeColor: "#ADADAD", + strokeWeight: 0.1, + strokeOpacity: 0.3, + fillColor: "#ADADAD" }); + map.addOverlay(ovalLeft); + var oval = new BMap.Polygon(Sector(dirPoint, distance * 0.33, winDirStartMiddle, winDirEndMiddle), { + strokeColor: "#A6A6A6", + strokeWeight: 0.1, + strokeOpacity: 0.55, + fillColor: "#A6A6A6" + }); + var ovalRight = new BMap.Polygon(Sector(dirPoint, distance * 0.33, winDirStartRight, winDirEndRight), { + strokeColor: "#ADADAD", + strokeWeight: 0.1, + strokeOpacity: 0.7, + fillColor: "#ADADAD" + }); + map.addOverlay(ovalRight); map.addOverlay(markerDir); + var marker1 = new BMap.Marker(EOffsetBearing(dirPoint, distance * 0.15, winDirStart), { + icon: icon2, + offset: new BMap.Size(0, -20) + }); + var marker2 = new BMap.Marker(EOffsetBearing(dirPoint, distance * 0.31, winDirEnd), { + icon: icon2, + offset: new BMap.Size(0, -20) + }); + var marker3 = new BMap.Marker(EOffsetBearing(dirPoint, distance * 0.61, winDirStart), { + icon: icon1, + offset: new BMap.Size(0, -20) + }); + var marker4 = new BMap.Marker(EOffsetBearing(dirPoint, distance * 0.78, winDirEnd), { + icon: icon1, + offset: new BMap.Size(0, -20) + }); + map.addOverlay(marker1); + map.addOverlay(marker2); + map.addOverlay(marker3); + map.addOverlay(marker4); map.addOverlay(oval); + map.addOverlay(polyline1);// ��������������� + map.addOverlay(polyline2);// ��������������� }, 500); - var winfowTextCause = "<p style='height: 44px;line-height: 22px'>���������������������������������������������������������������������������������������������������������������������</p>"; var winfowTextSource; -- Gitblit v1.8.0