如何创建一个FeatureClass,IFeatureWorkspace 接口漫谈
2014-12-30 15:13
387 查看
IFeatureWorkspace接口是在工作空间中创建对象主要使用的接口。方法:
1、创建一个FeatureClass
2、创建FeatureDataset
3、
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. //打开存在的表 |
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 );[code]
打开一个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; }
相关文章推荐
- 如何创建一个FeatureClass,IFeatureWorkspace 接口漫谈
- 在workspace下创建一个新的featureclass
- 基于Personal Geodatabase中的Feature class创建一个MXD文档
- 如何判断一个featureclass是否存在
- 关于AE中IFeatureWorkspace接口的CreateFeatureClass方法
- WSS3SDK之:如何创建一个简单的Feature
- android 如何创建一个模拟接口
- WSS3SDK之:如何创建一个事件处理程序Feature
- 如何在MOSS2007中创建一个定制的 Document Library Feature
- 电机控制笔记之一:如何创建一个库函数中未包含的新的通讯接口实体
- 如何创建一个自定义帐户来运行 ASP.NET
- [转]Creating Custom Web Controls in C# Stats(演示了如何创建一个导航条)
- 如何用VB.Net创建一个三层的数据库应用程序
- 通过Visual C#创建一个Windows组件,然后把其接口以COM形式发布即可(转贴)
- 如何创建一个用弹出窗口来查看详细信息的超链接列
- 如何创建一个简单的JAVA存储过程?[转贴]
- 如何创建一个用弹出窗口来查看详细信息的超链接列
- 如何用Delphi创建一个能随意拨号,并连接到对方的“猫”上的程序,谢谢(小弟才浅,请指教)
- 如何创建一个用弹出窗口来查看详细信息的超链接列
- 如何在VC中利用系统函数创建一个新的线程