屏幕座標和地圖座標轉換,就是字面意思,將電腦屏幕的座標轉換爲帶有空間信息的地圖座標,主要運用PIE SDK地圖控件的ToMapPoint()方法,而地圖座標轉換爲設備座標(屏幕),用的是FromMapPoint()方法。ide
第一步spa |
實例化point對象code |
第二步orm |
調用ToMapPoint()或FromMapPoint()方法對設備點座標和地圖座標經進行轉化視頻 |
接口/類對象 |
方法blog |
說明教程 |
PIE.AxControls.MapControl接口 |
ToMapPoint事件 |
將屏幕座標轉換爲地圖座標 |
FromMapPoint |
從地圖座標轉換爲設備座標 |
|
PIE.Carto. IPageLayout |
ToPagePoint |
將屏幕座標轉換爲製圖座標 |
FromPagePoint |
將頁面點轉換爲設備點 |
項目路徑 |
百度雲盤地址下/PIE示例程序/02.地圖操做/06.地圖鼠標事件監聽/MapMouseEventsDemo |
數據路徑 |
百度雲盤地址下/PIE示例數據/柵格數據/04.World/World.tif(tif數據均可以) |
視頻路徑 |
百度雲盤地址下/PIE視頻教程/02.地圖操做/05.屏幕和地圖座標轉換.avi |
示例代碼 |
|
![]() 1 /// <summary> 2 /// 鼠標按下事件 3 /// </summary> 4 /// <param name="sender"></param> 5 /// <param name="e"></param> 6 private void mapControlMain_MouseDown(object sender, MouseEventArgs e) 7 { 8 //地圖座標轉換爲地圖座標 9 PIE.Geometry.IPoint point = new PIE.Geometry.Point(); 10 //將屏幕座標轉換爲地圖座標 11 point = mapControlMain.ToMapPoint(e.X, e.Y); 12 //彈出座標信息顯示框 13 string srcgreenCoor = string.Format("屏幕座標:X:{0},Y:{1}", e.X, e.Y); 14 string mapCoor = string.Format("地圖座標:X:{0},Y:{1}", point.X.ToString(), point.Y.ToString()); 15 MessageBox.Show(srcgreenCoor + "\r\n" + mapCoor, "屏幕座標轉換地圖座標"); 16 //地圖座標轉換爲屏幕座標 17 int x=0, y=0; 18 mapControlMain.FromMapPoint(point,ref x,ref y); 19 string tempPoint = string.Format("屏幕設備點:X:{0},Y:{1}",x,y); 20 MessageBox.Show(mapCoor+"\r\n"+tempPoint, "地圖座標轉換爲設備點"); 21 } |
屏幕座標轉換地圖座標
地圖座標轉換爲屏幕座標