![]() |
This document is archived and information here might be outdated. Recommended version. |
Obtain the real world (map) coordinates from the device (screen) coordinates.
///<summary>Obtain the real world (map) coordinates from the device (screen) coordinates.</summary>
///
///<param name="screenPoint">An IPoint interface that contains the X,Y values from the device (screen) in your Windows application.</param>
///<param name="activeView">An IActiveView interface</param>
///
///<returns>An IPoint interface containing the real world (map) coordinates is returned.</returns>
///
///<remarks></remarks>
public ESRI.ArcGIS.Geometry.IPoint GetMapCoordinatesFromScreenCoordinates(ESRI.ArcGIS.Geometry.IPoint screenPoint, ESRI.ArcGIS.Carto.IActiveView activeView)
{
if(screenPoint == null || screenPoint.IsEmpty || activeView == null)
{
return null;
}
ESRI.ArcGIS.Display.IScreenDisplay screenDisplay=activeView.ScreenDisplay;
ESRI.ArcGIS.Display.IDisplayTransformation displayTransformation=screenDisplay.DisplayTransformation;
return displayTransformation.ToMapPoint((System.Int32)screenPoint.X, (System.Int32)screenPoint.Y); // Explicit Cast
}
'''<summary>Obtain the real world (map) coordinates from the device (screen) coordinates.</summary>
'''
'''<param name="screenPoint">An IPoint interface that contains the X,Y values from the device (screen) in your Windows application.</param>
'''<param name="activeView">An IActiveView interface</param>
'''
'''<returns>An IPoint interface containing the real world (map) coordinates is returned.</returns>
'''
'''<remarks></remarks>
Public Function GetMapCoordinatesFromScreenCoordinates(ByVal screenPoint As ESRI.ArcGIS.Geometry.IPoint, ByVal activeView As ESRI.ArcGIS.Carto.IActiveView) As ESRI.ArcGIS.Geometry.IPoint
If screenPoint Is Nothing OrElse screenPoint.IsEmpty OrElse activeView Is Nothing Then
Return Nothing
End If
Dim screenDisplay As ESRI.ArcGIS.Display.IScreenDisplay=activeView.ScreenDisplay
Dim displayTransformation As ESRI.ArcGIS.Display.IDisplayTransformation=screenDisplay.DisplayTransformation
Return displayTransformation.ToMapPoint(CInt(screenPoint.X), CInt(screenPoint.Y))
End Function