File GeoDatabase API系列1——简介

在ArcGIS10中,就提到了要推出File GDB API,这对于用户来说又是一个福音,用户可以直接使用API来操作File GDB对象而不用使用ArcObject接口,这无疑是一种省时省钱的途径,下面就简单介绍一下目前的Beta版。
开发环境支持平台

操作系统

Windows 2003 Server Standard, Enterprise & Datacenter (32-bit) SP2

Windows 2008 Server Standard, Enterprise & Datacenter (32-bit) SP2

Windows 7 Ultimate, Enterprise, Professional, Home Premium (32-bit)

Windows Vista Ultimate, Enterprise, Business, Home Premium (32-bit) SP2

Windows XP Professional Edition, Home Edition (32-bit) SP3

软件环境

Visual Studio 2008 SP1 (C++) Standard, Professional, or Team Editions

API支持

创建、打开、删除FGDB对象

读取GDB里面的Schema

创建GDB里面简单的对象(普通表、点线面要素类、数据集、子类、域)

读取GDB里面的数据集的内容

简单数据集内容(表、点线面、多点、多片要素类)的编辑(增删改)

进行属性和空间查询(有限制的只支持envelope-intersects空间查询)

操作附件


API不支持

注记和多维要素类

关系类

几何网络和网络数据集

拓扑

Terrains数据集

Representations

Parcel Fabrics

以下还不能被执行

Geodatabase::Move

Geodatabase::Rename

Table::AlterField

File GDB SQL选择不支持ORDER By和Joins

在首次发布的API对影像对象也不支持(RD、RC、MD),但是感觉随着版本的不断更新,这些是能够支持的,只是现在不支持。


API说明

在上面看来FGDB API可以操作简单模型而不能操作复杂模型,用户可以使用Table::IsEditable 方法来进行判断。

FGDB API可以让用户不使用ArcObject来完成某些功能,但是不代表可以代替ArcObject,通过上面的介绍可以感受到,使用FGDB API之能操作简单的对象,实现一些简单的功能需要,而复杂的对象还是不能够完成,这个等待一会API的完善和Esri的技术策略了。

FGDB API是针对ArcGIS10的新的GDB Schema来设计的,所以只支持或者说只能操作ArcGIS10以后的版本,对以前的版本是不支持的。
下载地址

https://github.com/Esri/file-geodatabase-api/tree/master/FileGDB_API_1.5.1
文件说明

下载完毕后,我们可以看到里面有相关的File GDBAPI.dll,相关的帮助文档、一些示例,还有一些头文件的定义,很全面。
 

相关帮助


头文件


示例代码

在运行示例代码时,Display例子是需要使用OpenGL库,需要下载一个glut.dll

http://www.opengl.org/resources/libraries/glut/glutdlls37beta.zip

clip_image012解压缩后,放到相应的文件中,然后进行引用

可执行文件、引用文件、库文件、源文件都需要进行引用。

在进行重新编译没有什么问题,但是F5执行时,出现以下错误

解决方法:将glut32.dll拷贝到示例的Bin文件夹即可

现在就可以看到Display的例子了

好了,这样基本上用户就可以运行他们的示例来学习File GDB API了,目前还是Beta版,估计随着ArcGIS的不断发展,File GDB API也会有一个很好的发展的。
 

猜你喜欢

转载自blog.csdn.net/kone0611/article/details/89641807
今日推荐