ARCGIS PRO SDK VB2022 创建要素类

在默认数据库创建要素类

Dim gdbPath As String = Project.Current.DefaultGeodatabasePath
Dim hasZ = False
Dim hasM = False
'创建义空间参考2000国家大地坐标系3°分带,36带。
dim  sr4524 as SpatialReference  = SpatialReferenceBuilder.CreateSpatialReference(4524)

'HasZ:   表示要素类是否包含Z值(即垂直坐标)。
'HasM:   表示要素类是否包含M值(即测量值)。
'下面创建面类型的要素类
Dim shapeDescription_Polygon = New ShapeDescription(GeometryType.Polygon, sr4524)
'下面创建线类型的要素类
Dim shapeDescription_Polyline = New ShapeDescription(GeometryType.Polyline, sr4524)
'下面创建点类型的要素类
Dim shapeDescription_Point = New ShapeDescription(GeometryType.Point, sr4524)
'定义要素类名称
Dim fcName = "素类类"
'定义2中字段类型
'字符串字段,字段名称: ZDDM
Dim stringFieldDescription = New ArcGIS.Core.Data.DDL.FieldDescription("ZDDM", FieldType.String)
'双精度字段,字段名称: TBMJ
Dim dblFieldDescription = New ArcGIS.Core.Data.DDL.FieldDescription("TBMJ", FieldType.Double)
Await QueuedTask.Run(Sub()
                         Try
                             '打开默认数据库gdb
                             Dim gdb As Geodatabase = New Geodatabase(New FileGeodatabaseConnectionPath(New Uri(gdbPath))) '收集字段列表
                             Dim fieldDescriptions = New List(Of ArcGIS.Core.Data.DDL.FieldDescription)
                             fieldDescriptions.Add(stringFieldDescription)
                             fieldDescriptions.Add(dblFieldDescription)

                             '创建FeatureClassDescription
                             '创建面要素类,将shapeDescription替换为shapeDescription_Polygon
                             '创建线要素类,将shapeDescription替换为shapeDescription_Polyline
                             '创建点要素类,将shapeDescription替换为shapeDescription_Point
                             Dim fcDescription = New FeatureClassDescription(fcName, fieldDescriptions, shapeDescription)
                             '创建SchemaBuilder
                             Dim SchemaBuilder As SchemaBuilder = New SchemaBuilder(gdb)
                             '将创建任务添加到DDL任务列表中
                             SchemaBuilder.Create(fcDescription)
                             '执行DDL
                             Dim success As Boolean = SchemaBuilder.Build
                         Catch ex As Exception
                             MsgBox("Exception: ex")
                         End Try
                     End Sub)

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值