From 5178a8e85f1a544cbd255f01fae1905e40112228 Mon Sep 17 00:00:00 2001 From: 13693261870 <252740454@qq.com> Date: 星期三, 28 六月 2023 16:47:34 +0800 Subject: [PATCH] 1 --- ExportMap/UE.html | 277 ++++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 190 insertions(+), 87 deletions(-) diff --git a/ExportMap/UE.html b/ExportMap/UE.html index 498e4f4..5ef47f0 100644 --- a/ExportMap/UE.html +++ b/ExportMap/UE.html @@ -61,11 +61,14 @@ // 鍧愭爣杞寲 function transform() { - var coordinate = { x: 117.038112825, y: 39.382696649 } + var coordinate = { + "x": 117.04046434254622, + "y": 39.722702758997606, + "z": 0 + } var Wgs84ToLocal = map.transformWGS84ToLocal(coordinate.x, coordinate.y) console.log('Wgs84ToLocal', Wgs84ToLocal) - - var LocalToWGS84 = map.transformLocalToWGS84(Wgs84ToLocal.x, coordinate.y) + var LocalToWGS84 = map.transformLocalToWGS84(Wgs84ToLocal.x, Wgs84ToLocal.y) console.log('LocalToWGS84', LocalToWGS84) } @@ -79,131 +82,223 @@ // 椋炶 function flyTo() { - var x = 117.038112825, y = 39.382696649, z = 5000; + + + const v = { + z: 0, + pitch: -8.675049781799316, + roll: 0, + yaw: 60.92010498046875, + distance: 120112.3671875, + time: 3 + }; + var x = 116.48915493897739; y = 39.81061022857503; z = 5000; + var LocalToWGS84 = transToWGS84ToLocal(x, y) + var roll = 0, pitch = 0, yaw = 0, distance = 1000; var callBack = function () { console.log("flyTo"); } var time = 3; // 3s - map.flyTo(x, y, z, roll, pitch, yaw, distance, callBack, time); + map.flyTo(LocalToWGS84.x, LocalToWGS84.y, v.z, v.roll, v.pitch, v.yaw, v.distance, callBack, time); } + + function transToWGS84ToLocal(x, y) { + return map.transformWGS84ToLocal(x, y) + } + + // 鍒囨崲闀滃ご function setView() { - var x = 117.038112825, y = 39.382696649, z = 5000; - var roll = 0, pitch = 0, yaw = 0, distance = 1000; - - map.setView(x, y, z, roll, pitch, yaw, distance); + const v = { + x: -567870.625, + y: -964962.4375, + z: 0, + pitch: -8.675049781799316, + roll: 0, + yaw: 120.92010498046875, + distance: 120112.3671875, + time: 3 + }; + map.setView(v.x, v.y, v.z, v.roll, v.pitch, v.yaw, v.distance); } // 鏃堕棿鐗规晥 + var timeFlag = true; function setTime() { // morning-鏃╂櫒,noon-涓崍,evening-鍌嶆櫄,night-澶滄櫄,darkWorld-鏆楄壊鍦烘櫙,12 - map.setTime("evening"); + if (timeFlag) { + map.setTime("evening"); + } else { + map.setTime("noon"); + } + timeFlag = !timeFlag } // 鏂囧瓧鏍囩 + var labelFlag = true; + var label_val = null; function createLabel() { - var options = { - id: 1, // 鍞竴鏍囪瘑锛屼笉鍙噸澶嶏紝鍙笉濉� - x: 1000, // x杞磚e4鍧愭爣 - y: 1000, // y杞磚e4鍧愭爣 - z: 0, // z杞磚e4鍧愭爣 - size: { width: 480, height: 180 }, // label鐨勫ぇ灏� - text: '娴嬭瘯鏂囧瓧', // 鏄剧ず鐨勬枃瀛� - scale: 0.5, // 缂╂斁 - type: 'Type1', // 绫诲瀷 Default,Type1,Type2 - backgroundColor: "#ffffff", // 鑳屾櫙鑹叉敮鎸乺gba - fillColor: "#00ff00", // 鏂囧瓧棰滆壊 - visibility: true // 榛樿鏄惁鏄剧ず - }; + var x = 116.48915493897739; y = 39.81061022857503; z = 5000; + var LocalToWGS84 = transToWGS84ToLocal(x, y) + if (labelFlag) { + var options = { + id: 1, // 鍞竴鏍囪瘑锛屼笉鍙噸澶嶏紝鍙笉濉� + x: LocalToWGS84.x, // x杞磚e4鍧愭爣 + y: LocalToWGS84.y, // y杞磚e4鍧愭爣 + z: 0, // z杞磚e4鍧愭爣 + size: { width: 100, height: 100 }, // label鐨勫ぇ灏� + text: '娴嬭瘯鏂囧瓧', // 鏄剧ず鐨勬枃瀛� + scale: 0.5, // 缂╂斁 + type: 'Type1', // 绫诲瀷 Default,Type1,Type2 + backgroundColor: "#ffffff", // 鑳屾櫙鑹叉敮鎸乺gba + fillColor: "#00ff00", // 鏂囧瓧棰滆壊 + visibility: true // 榛樿鏄惁鏄剧ず + }; - var lbl = map.createLabel(options); - // lbl.show(true); // 鏄剧ず + label_val = map.createLabel(options); + } else { + label_val.removeFromMap(); + label_val = null; + } + labelFlag = !labelFlag; } // POI鐐� + var poiFlag = true; + var poi_val = null; function createBillboard() { - var param = { - x: 1000, // x杞磚e4鍧愭爣 - y: 1000, // y杞磚e4鍧愭爣 - z: 0, // z杞磚e4鍧愭爣 - image: "123.png", // 鍥剧墖鍦板潃 - scale: 0.5, // 缂╂斁姣斾緥 - clickedScale: 0.7, // 鐐瑰嚮鍚庢瘮渚� - visibility: true, // 榛樿鏄惁鏄剧ず - alertWindow: { // 鍙�夛紝鐐瑰嚮寮圭獥 - url: "http://192.168.20.89:12306/popupThree.html", // 寮圭獥鍦板潃 - size: new TUVector2(180, 90), // 寮圭獥澶у皬 - offset: new TUVector2(90, -90) // 寮圭獥浣嶇疆锛屽彸锛歺姝o紝涓嬶細y姝� + var x = 116.48815493897739; y = 39.81061022857503; z = 5000; + var LocalToWGS84 = transToWGS84ToLocal(x, y) + if (poiFlag) { + var param = { + x: LocalToWGS84.x, // x杞磚e4鍧愭爣 + y: LocalToWGS84.y, // y杞磚e4鍧愭爣 + z: 0, // z杞磚e4鍧愭爣 + image: "123.png", // 鍥剧墖鍦板潃 + scale: 0.5, // 缂╂斁姣斾緥 + clickedScale: 0.7, // 鐐瑰嚮鍚庢瘮渚� + visibility: true, // 榛樿鏄惁鏄剧ず + alertWindow: { // 鍙�夛紝鐐瑰嚮寮圭獥 + url: "http://192.168.20.89:12306/popupThree.html", // 寮圭獥鍦板潃 + size: new TUVector2(180, 90), // 寮圭獥澶у皬 + offset: new TUVector2(-45, -110) // 寮圭獥浣嶇疆锛屽彸锛歺姝o紝涓嬶細y姝� + } } + poi_val = map.createBillboard(param); + poi_val.show(true); // 鏄剧ず + } else { + poi_val.removeFromMap(); + poi_val = null; } + poiFlag = !poiFlag; - var poi = map.createBillboard(param); - poi.show(true); // 鏄剧ず - // poi.show(false); // 闅愯棌 - // poi.removeFromMap(); // 绉婚櫎 } // 3DPOI鐐� + var thPoiFlag = true; + var poi_3d_val = null function create3DBillboard() { - var testPoints = [{ "x": 10000, "y": 10000, "z": 4000 }]; - var points = []; - testPoints.forEach(function (item) { - points.push({ - x: item.x, - y: item.y, - z: item.z, - image: "123.png", - text: "", - scale: 120, - clickedScale: 1, - flash: false, - canClick: true + if (thPoiFlag) { + var testPoints = [{ x: 116.49255493897739, y: 39.81451022857503, z: 4000 }]; + var points = []; + testPoints.forEach(function (item) { + var LocalToWGS84 = transToWGS84ToLocal(item.x, item.y) + points.push({ + x: LocalToWGS84.x, + y: LocalToWGS84.y, + z: item.z, + image: "123.png", + text: "", + scale: 80, + clickedScale: 1, + flash: false, + canClick: true + }); }); - }); - var pois = map.create3DBillboard(points); - pois.forEach(function (poi) { - poi.show(true); - // poi.show(false); // 闅愯棌 - // poi.removeFromMap(); // 绉婚櫎 - }); + poi_3d_val = map.create3DBillboard(points); + poi_3d_val.forEach(function (poi) { + poi.show(true); + + }); + } else { + poi_3d_val.forEach(function (poi) { + poi.removeFromMap(); + }); + poi_3d_val = null + } + thPoiFlag = !thPoiFlag; } - // 娣诲姞鍖哄煙 + // 娣诲姞鍖哄煙\ + var areaFlag = true; + var area_val = null; function createAreaData() { - var obj = map.createAreaData({ - id: "fdfdfdfdfd", - data: [ - new TUVector3(0, 0, 0), - new TUVector3(10000, 0, 0), - new TUVector3(10000, 10000, 0), - new TUVector3(0, 10000, 0) + if (areaFlag) { + + + var val = [ + { x: 116.48855493897739, y: 39.81251022857503, z: 4000 }, + { x: 116.48505493897739, y: 39.81651022857503, z: 4000 }, + { x: 116.48905493897739, y: 39.81851022857503, z: 4000 }, + { x: 116.49255493897739, y: 39.81451022857503, z: 4000 }, + + { x: 116.48855493897739, y: 39.81251022857503, z: 4000 }, ] - }); - // obj.removeFromMap(); // 绉婚櫎 + var data = []; + for (var i in val) { + var item = transToWGS84ToLocal(val[i].x, val[i].y) + data.push( + new TUVector3(item.x, item.y, 0), + ) + } + area_val = map.createAreaData({ + id: "fdfdfdfdfd", + data: data + }); + } else { + area_val.removeFromMap(); + area_val = null; + } + areaFlag = !areaFlag; } // 鍥存爮 + var boundflag = true; + var bound_val = null function createAreaBoundary() { - var param = { - type: 0, // 0涓婃诞妯牸锛�1瀹炶壊锛�2绠ご锛�3涓夎 - height: 5000, // 榛樿5000 - color: "#ff0000", // 榛樿鐧借壊 - brightness: 10, // 榛樿10 - data: [ // 鍥存爮鐐逛綅鏁扮粍 - new TUVector3(0, 0, 0), - new TUVector3(100000, 0, 0), - new TUVector3(100000, 100000, 0), - new TUVector3(0, 100000, 0), - new TUVector3(0, 0, 0) + if (boundflag) { + var val = [ + { x: 116.48855493897739, y: 39.81251022857503, z: 4000 }, + { x: 116.48505493897739, y: 39.81651022857503, z: 4000 }, + { x: 116.48905493897739, y: 39.81851022857503, z: 4000 }, + { x: 116.49255493897739, y: 39.81451022857503, z: 4000 }, + + { x: 116.48855493897739, y: 39.81251022857503, z: 4000 }, ] - }; - var bound = map.createAreaBoundary(param); + var data = []; + for (var i in val) { + var item = transToWGS84ToLocal(val[i].x, val[i].y) + data.push( + new TUVector3(item.x, item.y, 0), + ) + } + var param = { + type: 0, // 0涓婃诞妯牸锛�1瀹炶壊锛�2绠ご锛�3涓夎 + height: 5000, // 榛樿5000 + color: "#ff0000", // 榛樿鐧借壊 + brightness: 10, // 榛樿10 + data: data + }; + bound_val = map.createAreaBoundary(param); - map.focusOn(new TUVector3(739, 303, 1040), new TURotator(0, -73, 147), 107737); - // bound.removeFromMap(); // 绉婚櫎 + } else { + bound_val.removeFromMap(); + bound_val = null; + } + boundflag = !boundflag; } // 鎷惧彇鍧愭爣 @@ -222,7 +317,15 @@ // 娓呴櫎 function objclear() { map.clearAllCovering(); - map.setTime("noon"); // map.resetTime(); + map.setTime("noon"); + boundflag = true; + bound_val = null + areaFlag = true; + area_val = null; + thPoiFlag = true; + poi_3d_val = null; + poiFlag = true; + poi_val = null; } </script> -- Gitblit v1.9.3