- 1、本文档共4页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
ArcEngine接口大全一
ArcEngine接口大全(一)《转自ESRI中国社区》
1.??IField接口(esriGeoDatabase)IField接口的第一个属性AliasName(只读,获得字段的别名)IField接口的第二个方法CheckValue(Value)(方法,对于指定的属性字段,基于字段类型判断参数值是否有效,有效,则返回True,否则返回False)例子代码:
Set pField = pFields.Field(6)???’第六个字段
bChkField = pField.CheckValue(45.86)???
If bChkField = True Then……
IField接口的其他属性均为只读属性,常用有Name(只读,获得字段的名称)例子代码:
Dim pFields As IFields
Dim pField As IField
Dim pGeoDef As IGeometryDef
Dim pDomain As IDomain
Dim i As Long
Set pFields = pFeatClass.Fields
For i = 0 To pFields.FieldCount - 1
??Set pField = pFields.Field(i)
??If pField.Type = esriFieldTypeGeometry Then
? ? Set pGeoDef = pField.GeometryDef
??Else
? ? Debug.Print pField.AliasName
? ? Debug.Print pField.DefaultValue
? ? Set pDomain = pField.Domain
? ? Debug.Print pField.Editable
? ? Debug.Print pField.IsNullable
? ? Debug.Print pField.Length
? ? Debug.Print pField.Name
? ? Debug.Print pField.Precision
? ? Debug.Print pField.Required
? ? Debug.Print pField.Scale
? ? Debug.Print pField.Type
? ? Debug.Print pField.VarType
??End If
Next
2.? IFieldEdit接口(esriGeoDatabase)所有该接口的属性均为可读可写,经常用与对新建字段的设置,因为字段一旦被设置,其基本属性就不能被更改,所以就需要该接口类型的变量去转换,方法为:IFeatureClass pFC_SCP_PT;IFieldEdit editPT = new FieldClass();pFC_SCP_PT.AddField((IField)editPT);如果在vb中去编写代码,则赋值和获取均为同一属性,而在C#中,为了区分设置和获取,属性均有两个,类似于Name和Name_2,这样就可以区分了,普遍用设置的带有_2的那个属性。IFieldEdit接口的第一个属性Name (读写,设置或者获取该变量类型变量字段的名称)IFieldEdit接口的第二个属性Precision(读写,设置或者获取该变量类型变量字段的长度)IFieldEdit接口的第三个属性Scale(读写,设置或者获取该变量类型变量字段的精度)IFieldEdit接口的第四个属性Type(读写,设置或者获取该变量类型变量字段的类型)例子代码:
IFeatureClass pFC_SCP_PT;
editPT = new FieldClass();
editPT.Precision_2 = 8;
editPT.Scale_2 = 3;
editPT.Name_2 = ELEV1;
editPT.Type_2 = esriFieldType.esriFieldTypeDouble;
3.??IFields接口(esriGeoDatabase)IFields接口的第一个属性Field(Index) (只读,以用于获取具体的字段,返回类型为IField)IFields接口的第二个属性FieldCount(只读,以用于获取属性的数量)利用上面两个接口并用索引去依次循环获得每一列的属性pField(Ifield接口)例子代码:
Dim i As Long
Dim pField As IField
For i = 0 To (pFields.FieldCount - 1)
? ? Set pField = pFie
文档评论(0)