//'功能描述:三维地图上鼠标移动 获取坐标信息,并在状态栏显示
private void axGlobeControl1_OnMouseMove(object sender, ESRI.ArcGIS.Controls.IGlobeControlEvents_OnMouseMoveEvent e)
{
try
{
//第一种办法
//object AppOwner;
//object AppObject;
//IPoint Apoint;
//this.axGlobeControl1.GlobeDisplay.Locate(this.axGlobeControl1.GlobeDisplay.ActiveViewer, e.x, e.y, false, true, out Apoint, out AppOwner, out AppObject);
//this.lblzt.Text = "经度:" + Apoint.X.ToString("f6") + " 纬度:" + Apoint.Y.ToString("f6") + " 比例尺:";
//第二种办法 此办法效率较快
IGlobeViewUtil m_globeViewUtil = axGlobeControl1.GlobeCamera as IGlobeViewUtil;
double dLon, dLat, dAlt;
//convert the window coordinate into geographic coordinates
m_globeViewUtil.WindowToGeographic(axGlobeControl1.GlobeDisplay,
axGlobeControl1.GlobeDisplay.ActiveViewer,
e.x,
e.y,
true,
out dLon,
out dLat,
out dAlt);
this.lblzt.Text = "经度:" + dLon.ToString("f6") + " 纬度:" + dLat.ToString("f6") + " 比例尺:";
}
catch (Exception ex)
{
this.axGlobeControl1.GlobeDisplay.RefreshViewers();
Class_Log4Net.WriteError("CheckGPS()检查GPS通信" + ex.Message + ex.Source);
}
}