地圖相關javascript
//地圖相關demo mapFun: function () { //獲取地圖中心點 let center = this.mapView.center; //地圖中心點座標(同地圖座標系) let x = center.x; let y = center.y; //地圖中心點座標(經緯度座標系) //PS:此經緯度座標是地圖自動投影轉換而來,由於不必定準確(投影轉換不必定準) let longitude = center.longitude; let latitude = center.latitude; //設置地圖中心點 this.mapView.center = [113.5411, 22.2399]; //獲取地圖縮放級別 let zoom = this.mapView.zoom; //設置地圖縮放級別 this.mapView.zoom = 12; //獲取地圖比例尺 let scale = this.mapView.scale; //設置地圖比例尺 this.mapView.scale = 5000; //獲取地圖範圍 let extent = this.mapView.extent; //地圖範圍座標 let xmax = extent.xmax; let xmin = extent.xmin; let ymax = extent.ymax; let ymin = extent.ymin; //地圖範圍寬高(注意此寬高是地圖單位,而不是屏幕像素) let width = extent.width; let height = extent.height; //設置地圖範圍 this.mapView.extent = new this.apiInstance.Extent({ xmin: -9177882, ymin: 4246761, xmax: -9176720, ymax: 4247967, spatialReference: { wkid: 102100 } }); //屏幕座標轉地圖座標 //PS:參數1類型是ScreenPoint let mapPoint1 = this.mapView.toMap(new this.apiInstance.ScreenPoint(10, 10)); //地圖座標轉屏幕座標 let screenPoint1 = this.mapView.toScreen(mapPoint1); },
地圖點擊事件,同時圖形(graphic)點擊在此實現java
//mapView綁定點擊事件 this.mapView.on("click", function (event) { this.mapView.hitTest(event).then(function (response) { //圖形(graphic)點擊事件的實現 if (response.results[0]) { //獲取到點擊的圖形 var graphic = response.results[0].graphic; //因爲全部圖形都在此事件,實際需求可能須要判斷圖形是哪一個圖形,或者圖形所在哪一個圖層,能夠經過uid和圖層id來判斷 let uid = graphic.uid; //圖層不必定有,例如在mapView的graphics下的就沒有 if (graphic.layer) { let layerId = graphic.layer.id; } } }.bind(this)) }.bind(this));