我從本網站 http://forums.arcgis.com/threads/30635-How-to-Select-Feature-by-XY-Location-and-Highlight-it-in-ArcMap-9.3-programmaticallyArcGIS中使用的參考
它涉及縮放到一個MapPoint借用了這個代碼。 但我不知道如何實現這一點。 或至少需要或使用的引用。
因爲我在arcgis和c#總noob。 如果有更多經驗的人可以幫助我 它將不勝感激。
public static void CaptureMapCoordinates(int x, int y)
{
// get the map coordinates from the screen coordinates
IPoint pScreenPoint = new ESRI.ArcGIS.Geometry.Point();
IPoint pMapPoint = new ESRI.ArcGIS.Geometry.Point();
IEnvelope pEnv = new EnvelopeClass();
pScreenPoint.X = x;
pScreenPoint.Y = y;
pMapPoint = GetMapCoordinatesFromScreenCoordinates(pScreenPoint, pActiveView);
pEnv = pActiveView.Extent;
pEnv.CenterAt(pMapPoint);
pActiveView.Extent = pEnv;
pActiveView.Refresh();
}
private static IPoint GetMapCoordinatesFromScreenCoordinates(IPoint pScreenPoint, IActiveView pActiveView)
{
IScreenDisplay pScreenDisplay;
IDisplayTransformation pDisplayTransformation;
if (pScreenPoint == null || pScreenPoint.IsEmpty || pActiveView == null)
{
return null;
}
pScreenDisplay = pActiveView.ScreenDisplay;
pDisplayTransformation = pScreenDisplay.DisplayTransformation;
return pDisplayTransformation.ToMapPoint((int)pScreenPoint.X, (int)pScreenPoint.Y);
}
你想達到什麼目的?要在WPF應用程序中將要素圖層添加到底圖中,然後在點擊/單擊要素圖層的要素時,是否要將該位置放大?你已經完成底圖部分和要素圖層部分了嗎?您是否已經使用ESRI API參考創建了一個WPF應用程序? – azmuhak
@azmuhak我想放大zo座標(如果可以在可停靠的窗口中通過事件)我只需要給它座標,它就會去那裏。 – Robin
明白了。你還可以在上面的評論中回答我的其他問題嗎? – azmuhak