var return_positionJsonArray = ${positionJsonArray} // console.log(return_positionJsonArray);
//117.126617,36.656588 濟南市 var map;
initMap();
function initMap() { createMap();//創建地圖
addMarker();
}
function createMap() { // debugger // 創建Map實例 map = new BMap.Map("l-map"); var point = new BMap.Point(117.1510815360, 36.6647373487); // 創建點坐標 map.centerAndZoom(point, 10); // 初始化地圖,設置中心點坐標和地圖級別
//開啟鼠標滾輪縮放 map.enableScrollWheelZoom(true); // 左下角,添加比例尺 var bottom_left_control = new BMap.ScaleControl({anchor: BMAP_ANCHOR_BOTTOM_LEFT}); //左上角,添加縮放平移控件 var top_left_navigation = new BMap.NavigationControl({ anchor: BMAP_ANCHOR_TOP_LEFT, type: BMAP_NAVIGATION_CONTROL_LARGE, // 啟用顯示定位 enableGeolocation: false }); map.addControl(bottom_left_control); map.addControl(top_left_navigation); //右上角,地圖類型控件 var mapType = new BMap.MapTypeControl({mapTypes: [BMAP_NORMAL_MAP, BMAP_HYBRID_MAP]}); map.addControl(mapType); //右下角,鷹眼 var overViewOpen = new BMap.OverviewMapControl({isOpen: true, anchor: BMAP_ANCHOR_BOTTOM_RIGHT}); map.addControl(overViewOpen);
// // 禁用 雙擊縮放功能 // map.disableDoubleClickZoom();
}
// 禁用 雙擊縮放功能 map.disableDoubleClickZoom();
function G(id) { return document.getElementById(id); }
// 創建點位 function addMarker() { var myIcon = new BMap.Icon("mapImg/marker/point.png", new BMap.Size(24, 36)); for (var i = 0; i < return_positionJsonArray.length; i++) { // console.log(return_positionJsonArray[i].name); var points = new BMap.Point(return_positionJsonArray[i].longitude, return_positionJsonArray[i].latitude); var markers = new BMap.Marker(points, {icon: myIcon}); map.addOverlay(markers); // 創建點位 圖標 var label = new BMap.Label(return_positionJsonArray[i].name, {offset: new BMap.Size(10, -10)}); markers.setLabel(label); // 創建點位 標注
var content = "經度:" + return_positionJsonArray[i].longitude + "<br>緯度:" + return_positionJsonArray[i].latitude;
addClickHandler(content, markers); // 創建 信息窗口 } }
function addClickHandler(content, markers) { markers.addEventListener("click", function (e) { openInfo(content, e) } ); } function openInfo(content, e) { var p = e.target; var point = new BMap.Point(p.getPosition().lng, p.getPosition().lat); var infoWindow = new BMap.InfoWindow(content, opts); // 創建信息窗口對象 map.openInfoWindow(infoWindow, point); //開啟信息窗口 } var opts = { 200, // 信息窗口寬度 height: 80, // 信息窗口高度 title: "信息窗口", // 信息窗口標題 enableMessage: true//設置允許信息窗發送短息 };
// 位點查詢 function searchWeidian() {
var weidian = $('#weidian').val(); if (weidian == '' || weidian == null) { alert("請輸入要查詢的位點"); } else {
var myIcon = new BMap.Icon("mapImg/marker/point.png", new BMap.Size(24, 36)); for (var i = 0; i < return_positionJsonArray.length; i++) { // console.log(return_positionJsonArray[i].name); if (return_positionJsonArray[i].name == weidian) { var point = new BMap.Point(return_positionJsonArray[i].longitude, return_positionJsonArray[i].latitude); map.centerAndZoom(point, 11); break; }
} addDrawingManager(); } }
function ceju() {
var myDis = new BMapLib.DistanceTool(map); // map.addEventListener("click", function () { // myDis.open(); //開啟鼠標測距 // //myDis.close(); //關閉鼠標測距大 // }); map.addEventListener("dblclick", function () { myDis.open(); //開啟鼠標測距 // myDis.close(); //關閉鼠標測距大 });
} var kxName = ""; var drawingManagers; function kuanxuan() { //實例化鼠標繪制工具
rectangleOptions: styleOptions //矩形的樣式 }); drawingManagers.open(); drawingManagers.setDrawingMode(BMAP_DRAWING_RECTANGLE); //添加鼠標繪制工具監聽事件,用于獲取繪制結果 // drawingManagers.addEventListener('overlaycomplete', overlaycompletess(e)); drawingManagers.addEventListener('overlaycomplete', function (e) { var overlays = e.overlay; var overlay = overlays.getPath(); var lngA = overlay[0].lng; var latA = overlay[0].lat; var lngB = overlay[1].lng; var latB = overlay[1].lat; var lngC = overlay[2].lng; var latC = overlay[2].lat; var lngD = overlay[3].lng; var latD = overlay[3].lat; //alert("lngA:"+lngA+"http://lngB"+lngB+"http:///lngC"+lngC+"http:///lngD"+lngD); //alert("latA:"+latA+"http://latB"+latB+"http:///latC"+latC+"http:///latD"+latD);
//注意:lng 比較a 和b ,lat 比較 a 和 c ; var lngE; var lngW; if (lngA <= lngB) { lngE = lngB; lngW = lngA; } else { lngE = lngA; lngW = lngB; } var latN; var latS; if (latA <= latC) { latN = latC; latS = latA; } else { latN = latA; latS = latC; }
var nameMarker = []; for (var i = 0; i < return_positionJsonArray.length; i++) { if ((lngW <= return_positionJsonArray[i].longitude) && (return_positionJsonArray[i].longitude <= lngE) && (latS <= return_positionJsonArray[i].latitude ) && (return_positionJsonArray[i].latitude <= latN)) {
function query() { var startime = $('#startime').datebox('getValue'); var endtime = $('#endtime').datebox('getValue'); var imsi = $('#imsi').val(); debugger var content = ""; $.ajax({ type: "POST", url: "MapBaiduBasicServlet", data: {"action": "query", "startime": startime, "endtime": endtime, "imsi": imsi}, async: false, cache: false, error: function (request) { // alert("Connection error"); }, success: function (data) { console.log(typeof(data));
var weidianObj = data.plist; var wdImsiObj = data.simlistObj;
console.dir("weidianObj==" + weidianObj); console.dir("wdImsiObj==" + wdImsiObj); map.clearOverlays(); // 清除地圖 覆蓋物 var myIcon = new BMap.Icon("mapImg/marker/point.png", new BMap.Size(24, 36));
for (var i = 0; i < weidianObj.length; i++) { for (var j = 0; j < wdImsiObj.length; j++) { if (wdImsiObj[j] != "" || wdImsiObj[j] != null) { for (var k = 0; k < wdImsiObj[j].length; k++) { if (weidianObj[i].number == wdImsiObj[j][k].number) { var points = new BMap.Point(weidianObj[i].longitude, weidianObj[i].latitude); var markers = new BMap.Marker(points, {icon: myIcon}); map.addOverlay(markers); // 創建點位 圖標 var label = new BMap.Label(weidianObj[i].name, {offset: new BMap.Size(10, -10)}); markers.setLabel(label); // 創建點位 標注