您的位置:首页 > 其它

【ArcEngine入门与提高】加载地图

2010-10-11 21:51 183 查看
1.功能描述

对于刚接触GIS开发的人来说,第一步莫过于先要连接图形数据,通俗点说就是加载地图。谁都会在MapControl控件里按“+”号加载地图,但很多时候我们需要用代码来实现。

2.实现方法

通过图形数据的工作空间工厂(WorkspaceFactory)建立一个工作空间(Workspace),在这个工作空间中打开图形数据,图像数据将以要素类(FeatureClass)的形式创建,然后将要素类转换为要素图层(FeatureLayer),最后加载到MapControl控件中。

3.接口类型

IWorkspaceFactory,IWorkspace,IFeatureClass,IFeatureLayer,ILayer

4.详细描述

如果图形数据是存在文件夹中的,则可采用直接添加ShapeFile的方式:

axMapControl1.AddShapeFile(Application.StartupPath + @"/Spatial Data");


以上括号中路径为相对路径,我们也可以写成绝对路径,如:D:/Spatial Data/等。

通常的我们还是采取根据工作空间打开的方式,因为无论图形数据储存在文件夹中还是数据库中,都可以采用这个方法打开:

//新建工作空间工厂
IWorkspaceFactory pWorkspaceFactory = new AccessWorkspaceFactoryClass();
//生成工作空间
IWorkspace pWorkspace = pWorkspaceFactory.OpenFromFile(Application.StartupPath + @"/Spatial Data/TEST.mdb",0);
//接口转换->要素类工作空间
IFeatureWorkspace pFeatureWorkspace = pWorkspace as IFeatureWorkspace;
//生成要素类
IFeatureClass pFeatureClass = pFeatureWorkspace.OpenFeatureClass("China");
//生成要素图层
IFeatureLayer pFeatureLayer = new FeatureLayerClass();
pFeatureLayer.FeatureClass = pFeatureClass;
//加载到地图窗口
axMapControl1.Map.AddLayer(pFeatureLayer);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: