IFeatureWorkspace接口是在工作空间中创建对象主要使用的接口。方法:

  AllProperties Methods Description
CreateFeatureClass Creates a new standalone feature class under the workspace.//创建一个FeatureClass
CreateFeatureDataset Creates a new feature dataset.//创建一个FeatureDataset
CreateQueryDef Create a query definition object.
CreateRelationshipClass Creates a new relationship class.
CreateTable Creates a new table. //创建表
OpenFeatureClass Opens an existing feature class.//从工作空间中打开一个FeatureClass
OpenFeatureDataset Opens an existing feature dataset.
OpenFeatureQuery Opens a feature dataset containing a single feature class defined by the specified Query.
OpenRelationshipClass Opens an existing relationship class.
OpenRelationshipQuery The table of a relationship join query.
OpenTable Opens an existing table.                                            //打开存在的表

1、创建一个FeatureClass

public IFeatureClass CreateFeatureClass (
    string Name,IFields Fields,UID CLSID,UID EXTCLSID, esriFeatureType FeatureType,string ShapeFieldName,string ConfigKeyword
);
esriFeatureType见点击打开链接

2、创建FeatureDataset

public IFeatureDataset CreateFeatureDataset (string Name,ISpatialReference SpatialReference
);

3、

public IQueryDef CreateQueryDef (
);
4、
public IFeatureClass OpenFeatureClass (string Name
);

打开一个FeatureClass
(Workspace as IFeatureWorkspace).OpenFeatureClass(FeatureClassName);

创建例子:
        /// <summary>/// 创建要素类/// </summary>/// <param name="workspace"></param>/// <param name="featureDataset"></param>/// <param name="featureClassName"></param>/// <param name="fields"></param>/// <param name="CLSID"></param>/// <param name="CLSEXT"></param>/// <param name="strConfigKeyword"></param>/// <returns></returns>
        public static IFeatureClass CreateFeatureClass(IFeatureDataset featureDataset, String featureClassName, IFields fields){if (_workSpaceInstance == null) return null;IFeatureClass featureClass = null;IFeatureWorkspace featureWorkspace = (IFeatureWorkspace)_workSpaceInstance; // assign the class id value if not assigned
            ESRI.ArcGIS.esriSystem.UID CLSID = null;ESRI.ArcGIS.esriSystem.UID CLSEXT = null;string strConfigKeyword = "";if (CLSID == null){CLSID = new ESRI.ArcGIS.esriSystem.UIDClass();CLSID.Value = "esriGeoDatabase.Feature";}System.String strShapeField = "";// locate the shape field
            for (Int32 j = 0; j < fields.FieldCount; j++){esriFieldType dd = fields.get_Field(j).Type;if (dd == esriFieldType.esriFieldTypeGeometry){strShapeField = fields.get_Field(j).Name;}}// finally create and return the feature class
            if (featureDataset != null){featureClass = featureDataset.CreateFeatureClass(featureClassName, fields, CLSID, CLSEXT, esriFeatureType.esriFTSimple, strShapeField, strConfigKeyword);}return featureClass;}

转载于:https://www.cnblogs.com/dengshiwei/p/4258581.html

如何创建一个FeatureClass,IFeatureWorkspace 接口漫谈相关推荐

  1. 创建一个Rectangle输出一个矩形的周长和面积。

    按以下要求编写程序: (1) 创建一个Rectangle类,添加width和height两个成员变量,有一个带有两个参数的构造函数,对width和height赋初值. (2) 在Rectangle中添 ...

  2. 博途pcpg接口无法选择_博途TIA功能,如何创建一个S7-1200的项目及硬件组态?

    今天给大家讲解一下博途软件的基本使用,我们从最开始的开始讲起,如何去创建一个S7-1200的项目,这其中就包括了几个步骤,包括:创建项目及硬件组态.添加程序块.建立变量表.程序的编写.#PLC编程# ...

  3. 创建一个抽象类动物类以及以下几个接口:进食的接口、睡觉的接口、思考的接口、说话的接口。分别定义猫类、人类、鸟类继承动物类并选择实现上述的接口,并创建实例验证。

    创建一个抽象类动物类以及以下几个接口:进食的接口.睡觉的接口.思考的接口.说话的接口.分别定义猫类.人类.鸟类继承动物类并选择实现上述的接口,并创建实例验证. 上代码 package ThirdDay ...

  4. 设计一个接口, 并设计一个实现类实现该接口,演示它们的使用。具体,创建一个名称为Person的接口,在接口中定义两个方法sayHello()和sayBye()。

    设计一个接口, 并设计一个实现类实现该接口,演示它们的使用. 具体,创建一个名称为Person的接口,在接口中定义两个方法sayHello()和sayBye().然后,创建两个实现了Person接口的 ...

  5. 创建一个 Dog 类继承 Thread ,每 2 秒叫一次(汪汪汪!!),创建一个 Cat 实现 Runnable 接口,每 3 秒求抚摸一次(主人快摸摸我!!),主函数(主线程)从 1 输出到 10

    题目:创建一个 Dog 类继承 Thread ,每 2 秒叫一次(汪汪汪!!),创建一个 Cat 实现 Runnable 接口,每 3 秒求抚摸一次(主人快摸摸我!!),主函数(主线程)从 1 输出到 ...

  6. 创建一个vehicle类并将它声明为抽象类_java_创建一个vehicle接口

    在两个名称分别为 Bike 和 Bus 的类中实现 Vehicle 接口.创建一个名 称为 interfaceDemo 的类,在 interfaceDemo 的 main()方法中创建 Bike 和 ...

  7. python写rest服务_Python 如何创建一个简单的REST接口

    问题 你想使用一个简单的REST接口通过网络远程控制或访问你的应用程序,但是你又不想自己去安装一个完整的web框架. 解决方案 构建一个REST风格的接口最简单的方法是创建一个基于WSGI标准(PEP ...

  8. java中接口有什么作用?请创建一个接口(举例)

    接口的作用就是把使用接口的人和实现接口的人分开,实现接口的人不必要关心谁去使用,而使用接口的人也不用关心谁实现的接口,由接口将他们联系在一起.以上像一段绕口令,那么通过下面的几段程序解释: 1.以生产 ...

  9. 如何创建一个基础jQuery插件

    如何创建一个基础插件 How to Create a Basic Plugin 有时你想使一块功能性的代码在你代码的任何地方有效.比如,也许你想调用jQuery对象的一个方法,对该对象进行一系列的操作 ...

最新文章

  1. idea 弹出框中有乱码_IDEA如何自定义快捷键
  2. 邮箱自动转发攻击邮件服务器
  3. 谈C/C++指针精髓
  4. String 类详解
  5. 【用jQuery来判断浏览器的类型】及【javascript获取用户ip地址】
  6. Overview of HEVC之2 Slices and Tiles
  7. jdbc 事务没有回滚_《Spring Cloud Alibaba》微服务搭建之Seata分布式事务quot;发现问题quot;(十四)...
  8. linux环境安装windows字体,linux安装windows字体
  9. 内存映射技术(共享内存)
  10. python列表元素提取_python提取list中的元素
  11. jenkins checkstyle:local variable hides a field
  12. 这一次我要真正学会C语言
  13. 华为交换机路由器consle忘记密码该怎么办?
  14. 【目标检测竞赛总结】IEEE UV 2022 “Vision Meets Algae” Object Detection Challenge
  15. ipv6联网几十分钟后显示无网络连接,v4网络正常的解决方法
  16. python下载mp3_Python 教你轻松下载网易音乐歌曲
  17. 4000w粉网红宣告散伙,抖音顶流为何总是一拍两散?
  18. 护眼灯显色指数怎么选择?护眼灯显色指数80和90的区别是什么
  19. 物联网主流技术及其应用场景分析
  20. 九张图纵观加密市场周期规律

热门文章

  1. mac mysql-python 失败_MAC OS安装MySQL-python总是失败,请帮忙看看什么原因?
  2. java filechannel api_FileChannel
  3. easyexcel注解样式无效_【Java神器】用@ResponseExcel注解将Java List直接转换为Excel文件。不好意思,今晚又可以早点下班了!...
  4. mysql的join算法_mysql的Join算法-阿里云开发者社区
  5. django 如何提升性能(高并发)
  6. django_form校验
  7. 一个sql题目, 统计每年每月的信息
  8. linux内核中断向量表,中断向量表
  9. ubuntu开启mysql日志记录
  10. 关于站库分离渗透思考总结