要将ArcGIS Engine的桌面坐标转换为地图坐标,请按照以下步骤操作:

  1. 获取当前激活的MapControl对象,例如:

    IMapControl3 mapControl = (IMapControl3)axMapControl1.Object;
    
  2. 获取当前地图对象,例如:

    IMap map = mapControl.Map;
    
  3. 创建一个IPoint对象,用于存储桌面坐标,例如:

    IPoint desktopPoint = new PointClass();
    desktopPoint.PutCoords(100, 100); // 假设桌面坐标是(100, 100)
    
  4. 调用IMapControl3接口的ToMapPoint方法将桌面坐标转换为地图坐标,例如:

    IPoint mapPoint = mapControl.ToMapPoint(desktopPoint);
    
  5. 完成转换后,可以使用mapPoint对象的X和Y属性获取地图坐标,例如:

    double mapX = mapPoint.X;
    double mapY = mapPoint.Y;
    

注意:在进行坐标转换时,需要确保桌面坐标和地图坐标使用相同的坐标系统。如果它们使用不同的坐标系统,则需要进行投影转换。可以使用ISpatialReferenceFactory接口创建投影坐标系统对象,并将其分配给桌面坐标和地图坐标

如何将arcgis engine的桌面坐标转换为地图坐标

原文地址: https://www.cveoy.top/t/topic/cokE 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录