当前位置: 移动技术网 > IT编程>开发语言>.net > 最简单的ArcGIS Engine应用程序(上)

最简单的ArcGIS Engine应用程序(上)

2019年10月21日  | 移动技术网IT编程  | 我要评论

苏易正秋佳乙,野菱,秋天的图画课件

 

名词:

iworkspacefactory 工作空间工厂

shapefileworksapcefactory 矢量文件工作空间工厂

iworkspce 工作空间

ifeatrueworkspace 要素工作空间

ifeatureclass 要素类

ifeaturelayer 要素图层

featurelayerclass 要素图层类

ilayer 图层对象

imap 地图对象

 

加载指定的shp文件(代码分析)

using system;
using system.collections.generic;
using system.componentmodel;
using system.data;
using system.drawing;
using system.linq;
using system.text;
using system.threading.tasks;
using system.windows.forms;

using esri.arcgis.datasourcesfile;
using esri.arcgis.geodatabase;
using esri.arcgis.carto;

namespace simplearcenginedemo
{
    public partial class form1 : form
    {
        public form1()
        {
            initializecomponent();
        }

        private void menuaddshp_click(object sender, eventargs e)
        {
            //通过工作空间工厂创建一个矢量文件工作空间工厂, 通过矢量文件工作空间加载数据并保存在一个新创建的工作空间中。
            iworkspacefactory pworkspacefactory = new shapefileworkspacefactory();
            iworkspace pworkspace1 = pworkspacefactory.openfromfile(@"d:\data", 0);  //数据目录
            
            //将这个新创建的工作空间强转成要素工作空间,通过要素工作空间打开一个要素类并保存在一个新创建的要素类中。
            ifeatureworkspace pfeatureworkspce = pworkspace1 as ifeatureworkspace;
            ifeatureclass pfc = pfeatureworkspce.openfeatureclass("华东地区.shp");

            //通过要素图层创建一个要素图层类,将新创建的要素类放在刚创建的要素图层类中并按照原本的名字命名。
            ifeaturelayer pflayer = new featurelayerclass();
            pflayer.featureclass = pfc;
            pflayer.name = pfc.aliasname;

            //将创建的要素图层类强转成图层对象并保存一个新创建的图层对象中。
            ilayer player = pflayer as ilayer;
            
            //绑定地图对象到控件axmapcontrol
            imap pmap = axmapcontrol1.map;

            //地图对象添加新创建的图层对象
            pmap.addlayer(player);
            
            //将控件axmapcontrol设置为动态刷新
            axmapcontrol1.activeview.refresh();

        }
    }
}

 

简述:

通过工作空间工厂创建一个矢量文件工作空间工厂,通过矢量文件工作空间加载数据并保存在一个新创建的工作空间中。

将这个新创建的工作空间强转成要素工作空间,通过要素工作空间打开一个要素类并保存在一个新创建的要素类中。

通过要素图层创建一个要素图层类,将新创建的要素类放在刚创建的要素图层类中并按照原本的名字命名。

将创建的要素图层类强转成图层对象并保存一个新创建的图层对象中。

绑定地图对象到控件axmapcontrol。

地图对象添加新创建的图层对象。

将控件axmapcontrol设置为动态刷新。

 

谢谢观看!本人初学gis二次开发,如果有不对的地方,请多多包涵!

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网