矢量数据格式访问开源包OGR

合集下载

OGR介绍

OGR介绍



第四步: 从获取的层中读取各种实体(feature)。
OGRFeature *poFeature; //定位至开头 poLayer->ResetReading(); while( (poFeature = poLayer->GetNextFeature()) != NULL ) {






最后一步: 释放资源 OGRFeature::DestroyFeature( poFeature ); OGRDataSource::DestroyDataSource( poDS );



OGRFeature::GetGeometryRef()返回的是 OGRFeature中数据的的指针, 因此用完之 后我们不能删除 poGeometry指针对应内容。 OGRLayer::GetNextFeature() 返回的是层中 当前实体的一个拷贝,因此在使用完 poFeature之后必须手工释放。 OGRDataSource::GetLayerByName() 返回的 OGRLayer是OGRDataSource中数据的引用, 因此我们可以不用delete它。但是我们需要 删除OGRDataSource本身,这样才会关闭文 件。
OGR实例

假设读取一个名为point.shp的shapefile格式 文件中的POINT层数据并输出至STDOUT。 第一步: 调用OGRRegisterAll(); 注册所有格式的驱动



第二步: 打开用于输入的数据源(Datasources)。 Datasources可以是文件、RDBMSes、 目录中 的所有文件或者是被连接到本机的 web地址。 OGRDataSource *poDS; poDS = OGRSFDriverRegistrar::Open( "point.shp", FALSE ); 第二个参数FALSE表示Open()方法并不需要更 新的权限。 如果操作失败,则会返回NULL

基于GDAL/OGR的测绘成果检查方法

基于GDAL/OGR的测绘成果检查方法

基于GDAL/OGR的测绘成果检查方法测绘内业成果通常都有着严格的要求,包括字段名称、字段类型及赋值等方面。

为了提高内业成果的审核效率,可以开发专用工具来实现自动检查。

本文以开源的GIS库GDAL/OGR为例,详细介绍测绘成果审核的流程、方法及实行方式。

同时介绍GDAL/OGR库,抛砖引玉,拓展开源GIS技术在测绘行业中的应用。

标签:GDAL/OGR 开源GIS0引言测绘内业成果结果多为shape file、coverage、ESRI Geodatabase等通用的矢量数据格式,对这些格式的数据进行读取操作需要使用成熟的GIS平台,比如ArcGIS、SuperMap和GDAL/OGR等。

由于ArcGIS、SuperMap是商业软件,且有严格的版本限制;GDAL/OGR是一套开源的GIS库,使用GDAL/OGR可以摆脱授权、版本等依赖,不影响现有的作业环境。

因此我们选用GDAL/OGR来开发数据审核工具。

1 GDAL/OGR介绍GDAL/OGR是一套开源的GIS库,提供各种GIS算法和多种开发语言的支持,如c++、.Net、Java、Perl、Python等,广泛用于多个GIS平台,如ESRI的ARCGIS ,Google Earth和跨平台的GRASS GIS系统。

利用GDAL/OGR库,可以使基于Linux的地理空间数据管理系统提供对矢量和栅格文件数据的支持。

2设计思路2.1数据审核流程内业成果数据的审核,其核心只有一个,就是对所有数据进行规则匹配,如果全部满足规则要求,则是合格数据;如果有一条规则不符合,则视为不合格数据。

因此数据的审核流程就是对所有数据,对照设计规则一一比对,首先审核规则一、如果符合规则一,则继续比对规则二、否则退出。

如此循环,直到比对完规则库中所有的规则,如果全部符合,则判定为合格的数据,否则判定为不合格数据。

2.2 GDAL/OGR数据读取方法GDAL/OGR库目前最新版本为1.11,可上GDAL的网站http://www.gdal.ogr 去下载最新的源代码及编译后的成果。

OGR入门

OGR入门
2 OGR库数据模型
OGR数据模型是基于OpenGIS的标准来设立的,相关的接口规范请参考OGC的官方网站 。纵观OGR的类结构,它主要的类如下面所示。
Geometry SpatialReference Feature FeatureDefn Layer DataSource Driver
2.1.1 几何形状基类
2.1.1.1 OGRGeometry
OGRGeometry 是几何形状的基类,所有的几何形状,如点、线、面均是由该类继承而 来。该类中包含了一些空间分析的虚函数。主要函数及其功能如下:
getDimension 函数:获取几何对象的维数,如点为 0,线为 1,面为 2。 getCoordinateDimension 函数:获取几何对象的坐标维数,如二维与三维。 IsEmpty 函数:判断几何对象是否为空。 IsSimple 函数:判断几何对象是否为简单几何形状。 empty 函数:清空几何对象中的数据。 clone 函数:复制几何对象。 getEnvelope 函数:获取几何对象的外包矩形。 WkbSize 函数:获取用 wkb 格式来表达几何对象数据时所需的字节数大小。 importFromWkb 函数:由 wkb 格式导入几何对象的数据。 exportToWkb 函数:将几何对象的数据导出为 wkb 格式。 importFromWkt 函数:由 wkt 格式导入几何对象的数据。 exportToWkt 函数:将几何对象的数据导出为 wkt 格式。 getGeometryType 函数:获取几何对象的类型。返回的是几何类型的编码。 getGeometryName 函数:获取几何对象类型的名称,该名称由 wkt 格式定义。
OGR入 门
陈泰生 2008.8
1

Python与开源GIS:使用OGR创建数据集的几何形状

Python与开源GIS:使用OGR创建数据集的几何形状

下面我们来看一下使用OGR创建数据集的更常用的情形。

这一部分重点说明一下如何使用OGR创建数据集的几何形状,对于字段、属性的处理,放到后面。

对于创建Geometry来讲,wkt是最直观的。

wkt是最简单的字符串格式,Python提供了丰富的函数来对字符串进行处理。

使用wkt创建矢量数据集与使用拷贝的方法创建数据集的基本步骤是一样的。

首先是创建Driver,然后创建dataSource,再创建Layer,接下来就创建Feature了。

这是分别创建点、线、与多边形,使用extent变量来存储多边形的四个角点,点、线的坐标根据extent变量来生成。

下面先看一下生成的数据的图,可能会更加有助于理解。

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 from osgeo import ogrimport os,mathdriver = ogr.GetDriverByName("ESRI Shapefile")extfile = 'point_demo.shp'point_coors = [[300,450], [750, 700], [1200, 450], [750, 200], [750, 450]]print point_coorsdriver = ogr.GetDriverByName("ESRI Shapefile")if os.access( extfile, os.F_OK ):driver.DeleteDataSource( extfile )newds = driver.CreateDataSource(extfile)layernew = newds.CreateLayer('point',None,ogr.wkbPoint)for aa in point_coors:wkt = 'POINT (' + str(aa[0]) + ' ' + str(aa[1]) + ')'geom = ogr.CreateGeometryFromWkt(wkt)feat = ogr.Feature(layernew.GetLayerDefn())feat.SetGeometry(geom)layernew.CreateFeature(feat)newds.Destroy()1 2 from osgeo import ogrimport os,math3 4 5 6 7 8 910111213141516171819202122 driver = ogr.GetDriverByName("ESRI Shapefile")extfile = 'line_demo.shp'point_coors = [300,450, 750, 700, 1200, 450, 750, 200]print point_coorsdriver = ogr.GetDriverByName("ESRI Shapefile")if os.access( extfile, os.F_OK ):driver.DeleteDataSource( extfile )newds = driver.CreateDataSource(extfile)layernew = newds.CreateLayer('point',None,ogr.wkbLineString)wkt = 'LINESTRING (%f %f,%f %f,%f %f,%f %f,%f %f)' % (point_coors[0],point_coors[1], point_coors[2],point_coors[3], point_coors[4],point_coors[5],point_coors[6],point_coors[7], point_coors[0],point_coors[1])print(wkt)geom = ogr.CreateGeometryFromWkt(wkt)feat = ogr.Feature(layernew.GetLayerDefn())feat.SetGeometry(geom)layernew.CreateFeature(feat)newds.Destroy()1 2 3 4 5 6 from osgeo import ogrimport os,mathdriver = ogr.GetDriverByName("ESRI Shapefile")extfile = 'rect_demo.shp'if os.access( extfile, os.F_OK ):7 8 91011121314151617181920212223242526 driver.DeleteDataSource( extfile )extent = [400, 1100, 300, 600]newds = driver.CreateDataSource(extfile)layernew = newds.CreateLayer('rect',None,ogr.wkbPolygon)width = math.fabs(extent[1]-extent[0])height = math.fabs(extent[3]-extent[2])tw = width/2th = width/2extnew = extent[0]+twwkt = 'POLYGON ((%f %f,%f %f,%f %f,%f %f,%f %f))' % (extent[0],extent[3], extent[1],extent[3], extent[1],extent[2],extent[0],extent[2], extent[0],extent[3])geom = ogr.CreateGeometryFromWkt(wkt)feat = ogr.Feature(layernew.GetLayerDefn())feat.SetGeometry(geom)layernew.CreateFeature(feat)newds.Destroy()。

GDAL python教程基础篇OGR空间计算

GDAL python教程基础篇OGR空间计算

GDAL python教程基础篇OGR空间计算GDAL是一个用于地理空间数据读写的库,它支持多种常见的地理格式,如GeoTIFF和ESRI Shapefile等。

而OGR则是GDAL中的一个子库,它支持矢量数据格式,如ESRI Shapefile和GeoJSON等。

本文主要介绍如何使用OGR进行空间计算。

首先需要安装GDAL和OGR,可以通过pip来安装:```bashpip install gdal```接着可以在Python中使用OGR来读取矢量数据,如下所示:```pythonfrom osgeo import ogr# 打开Shapefile文件driver = ogr.GetDriverByName('ESRI Shapefile')dataSource = driver.Open('data.shp', 0)# 获取图层layer = dataSource.GetLayer()# 可以遍历所有要素for feature in layer:# 处理每个要素```接着可以使用OGR进行空间计算,如计算两个多边形的相交部分,代码如下:```pythonfrom osgeo import ogr# 打开Shapefile文件driver = ogr.GetDriverByName('ESRI Shapefile')dataSource1 = driver.Open('data1.shp', 0)dataSource2 = driver.Open('data2.shp', 0)# 获取图层layer1 = dataSource1.GetLayer()layer2 = dataSource2.GetLayer()# 获取多边形要素polygon1 = layer1.GetFeature(0).GetGeometryRef()polygon2 = layer2.GetFeature(0).GetGeometryRef()# 计算相交部分intersection = polygon1.Intersect(polygon2)# 打印相交面积print(intersection.GetArea())```以上代码假设每个Shapefile文件只有一个多边形要素,如果有多个要素,需要修改代码来遍历所有要素。

矢量数据格式访问开源包OGR

矢量数据格式访问开源包OGR

几何图形坐标点操作
OGR_G_GetPointCount OGR_G_GetX OGR_G_GetY OGR_G_GetZ OGR_G_GetPoint OGR_G_AddPoint OGR_G_AddPoint_2D OGR_G_SetPoint OGR_G_SetPoint_2D
复合几何图形操作
OGR_L_SetSpatialFilterRect
– 设置矩形搜索范围(目前只支持Intersect),且可能不准确 设置矩形搜索范围(目前只支持Intersect),且可能不准确
OGR_L_GetSpatialFilter
– 获取空间搜索的geometry 获取空间搜索的geometry
要素
要素代表空间对象,包括空间信息和属性 信息 要素用FID标识 要素用FID标识 空间信息用几何图形(geometry)标识 空间信息用几何图形(geometry)标识 属性信息用关系模型的字段标识 要素还与空间参照系统相关联
获取要素字段值
FID: FID:
– OGR_F_GetFID
空间信息:
– OGR_F_GetGeometryRef
属性信息:
– – – – – – – – OGR_F_GetFieldAsInteger OGR_F_GetFieldAsDouble OGR_F_GetFieldAsString OGR_F_GetFieldAsIntegerList OGR_F_GetFieldAsDoubleList OGR_F_GetFieldAsStringList OGR_F_GetFieldAsBinary OGR_F_GetFieldAsDateTime
OGR_L_GetGeometryColumn
– 获取geometry所在字段的字段名 获取geometry所பைடு நூலகம்字段的字段名

gdal ogr2ogr 转矢量瓦片

GDAL (Geospatial Data Abstraction Library) 是一个在地理信息系统(GIS)领域中非常流行的开源库,它提供了对各种地理空间数据格式的支持。

而 ogr2ogr 则是 GDAL 中一个重要的命令行工具,用于在不同的地理空间数据格式之间进行转换和处理。

本篇文章将重点介绍如何使用 gdal ogr2ogr 工具来进行矢量瓦片的转换。

1. 背景介绍为了更好地展示地理空间数据,瓦片地图已经成为了 Web 地图服务的标准。

瓦片地图分为矢量瓦片和栅格瓦片两种类型,其中矢量瓦片由矢量数据渲染而成,能够在不同的屏幕分辨率下展现清晰的线条和图形,而栅格瓦片则是基于图片的瓦片,无法进行动态样式调整。

2. 使用 gdal ogr2ogr 转矢量瓦片在进行矢量瓦片转换之前,我们需要先准备好输入的矢量数据。

GDAL 支持的矢量数据格式有 Shapefile、GeoJSON、FileGDB 等,我们可以根据实际情况选择合适的格式作为输入。

接下来,我们可以使用ogr2ogr 命令行工具来进行矢量瓦片的转换。

下面是一个简单的示例:```bashogr2ogr -f MVT output.mbtiles input.shp```在这个示例中,我们使用 ogr2ogr 将一个名为 input.shp 的Shapefile 转换为矢量瓦片,并将结果输出为名为 output.mbtiles 的MBTiles 格式文件。

在实际应用中,我们还可以根据需要选择其他的输出格式,比如 GeoPackage 或者 GeoJSON 等。

3. 高级用法除了简单的矢量瓦片转换之外,gdal ogr2ogr 工具还支持一些高级的用法,比如对瓦片进行裁剪、过滤或者合并等操作。

我们可以使用ogr2ogr 命令的-sql参数来对输入数据进行 SQL 查询,并将查询结果转换为矢量瓦片。

又如,我们可以使用 ogr2ogr 的-clipdst参数来指定一个范围,只输出该范围内的矢量数据。

PostGIS中各种GIS数据格式的转换

GRASS No Yes
INTERLIS No Yes
Mapinfo File Yes Yes
Microstation DGN No No
MySQL No No
OGDI Vectors No Yes
ODBC No Yes
Oracle Spatial Yes Yes
PostgreSQL Yes Yes
alter table table_name add primary key (column_name);
另外我们发现ogr竟然是不支持最常见的GIS格式e00格式,好象是因为版权方面的原因吧。解决的方法就是去查找相关工具。我在上面就找到一个e002pg工具,支持将e00文件导入到postGIS数据库中。
DODS/OPeNDAP No Yes
DWG Yes No
DXF Yes No
ESRI Personal GeoDatabase No Yes
ESRI ArcSDE No Yes
ESRI Shapefile Yes Yes
FMEObjects Gateway No Yes
GML Yes No
简单地说,Gdal是一个各种Gis数据格式的转换软件库,ogr则是转换矢量GIS数据的软件库。
目前ogr能够支持的数据格式包括
字串3
Format Name Creation Georeferencing
Arc/Info Binary Coverage No Yes
Comma Separated Value (.csv) Yes No
下面我们从源码编译安装gdal---因为我在Debian下使用apt方式安装的gdal并不支持postgre以直接运行不用繁琐的编译,既有Windows的,也有Linux下用的,只不过这个包有些大。 字串4

Python与开源GIS:使用OGR生成几何要素对象

Python与开源GIS:使用OGR生成几何要素对象
2012-05-11 07:30 作者: bukunu 来源: 本站
摘要: 前面部分我们详细地介绍了如何读取矢量数据,包括数据源、图层、要素、几何形状、字段属性等各个部分。

下面来看一下如何使用OGR来创建矢量数据,亦即使用OGR 写GIS矢量文件。

首先先看一下写文件的示意。

在这里先不对这个图做太多的解释,但是在后面介绍各个部分的时候,...
前面部分我们详细地介绍了如何读取矢量数据,包括数据源、图层、要素、几何形状、字段属性等各个部分。

下面来看一下如何使用OGR来创建矢量数据,亦即使用OGR写GIS矢量文件。

首先先看一下写文件的示意。

在这
里先不对这个图做太多的解释,但是在后面介绍各个部分的时候,请自行参考此图。

建立空的geometry对象:的类型,常用的有:ogr.wkbPoint,ogr.wkbLineString,ogr.wkbPolygon。

定义各种不同的geometry使用的方法是不一样的。

在构建
这三种不同的要素时,要注意使用的格式。

创建点要素
下面我们先来看一下如何创建一个点。

注意,此时只是在内存中将对象创建出来,跟文件没有关系。

ogr 合并要素

ogr 合并要素合并要素:ogr 是一种开源的地理信息系统(GIS) 工具,可以用于将不同格式的地理数据进行转换和合并。

它可以将矢量数据(如点、线、面)和栅格数据(如影像)合并到一个统一的数据集中。

在这篇文章中,我将向您介绍如何使用ogr 工具来合并不同格式的地理数据。

不过,在开始之前,我想先向您简单介绍一下ogr 工具的背景和功能。

ogr 是一个功能强大的工具,它可以读取和写入多种地理数据格式,如shapefile、GeoJSON、KML 等。

使用ogr,您可以轻松地将这些格式的数据进行转换和合并。

无论您是在进行空间分析、地图制作还是其他地理数据处理工作,ogr 都是一个非常实用的工具。

让我们来看一个简单的例子。

假设我们有两个shapefile 文件,一个包含城市的点数据,另一个包含道路的线数据。

我们希望将这两个文件合并成一个文件,以便更方便地进行后续的空间分析。

我们需要打开 ogr 工具。

在命令行中输入 "ogr2ogr" 命令,然后加上相关的参数。

例如,要将城市点数据和道路线数据合并到一个名为merged.shp 的文件中,可以使用以下命令:ogr2ogr -f "ESRI Shapefile" merged.shp cities.shp -append roads.shp 在上述命令中,"-f" 参数指定输出格式为shapefile,"merged.shp"是输出文件的名称,"cities.shp" 是第一个输入文件(城市点数据),"-append" 参数表示将第二个输入文件(道路线数据)附加到输出文件中。

如果一切顺利,您应该可以看到ogr 工具开始执行,并在完成后生成 merged.shp 文件。

这个文件将包含合并后的城市点数据和道路线数据。

除了shapefile 格式,ogr 还支持其他格式的数据转换和合并。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
– OGR_F_GetGeometryRef
空间信息: 属性信息:
– – – – – – – – OGR_F_GetFieldAsInteger OGR_F_GetFieldAsDouble OGR_F_GetFieldAsString OGR_F_GetFieldAsIntegerList OGR_F_GetFieldAsDoubleList OGR_F_GetFieldAsStringList OGR_F_GetFieldAsBinary OGR_F_GetFieldAsDateTime
复合几何图形操作
OGR_G_GetGeometryCount OGR_G_GetGeometryRef OGR_G_AddGeometry OGR_G_RemoveGeometry

空间关系判断操作
OGR_G_Intersects OGR_G_Equals OGR_G_Disjoint OGR_G_Touches OGR_G_Crosses OGR_G_Within OGR_G_Contains OGR_G_Overlaps

OGR_L_GetNextFeature
– 获取下一个满足SpatialFilter条件的要素
OGR_L_SetSpatialFilter
– 设置空间搜索geometry(目前只支持Intersect),且可能不准确
OGR_L_SetSpatialFilterRect
– 设置矩形搜索范围(目前只支持Intersect),且可能不准确

– 所有的Feature在使用完后,一定要使用本函数 来释放内存。
OGR_F_GetDefnRef OGR_F_GetFieldCount OGR_F_GetFieldDefnRef OGR_F_GetFieldIndex

获取要素字段值

FID:
– OGR_F_GetFID

几何图形坐标点操作

OGR_G_GetPointCount OGR_G_GetX OGR_G_GetY OGR_G_GetZ OGR_G_GetPoint OGR_G_AddPoint OGR_G_AddPoint_2D OGR_G_SetPoint OGR_G_SetPoint_2D
– 释放打开的数据源
数据集常用操作

OGR_DS_GetName
– 获取数据源名称
OGR_DS_GetLayerCount
– 获取图层数
OGR_DS_GetLayer
– 根据索引号打开图层,返回图层句柄
OGR_DS_GetLayerByName
– 根据图层名打开图层,返回图层句柄


OGR_DS_DeleteLayer
OGR
官网:/ogr OGR是一个开源的矢量空间数据的读写、 转换器,已被松散集成到GDAL中。 目前支持40多种格式 (/ogr/ogr_formats.ht ml) C/C++

OGR数据模型

核心对象
– – – – – 驱动(Driver) 数据源(DataSource) 图层(Layer) 要素(Feature) 几何图形(Geometry) 要素定义(FeatureDefn) 字段定义(FieldDefn) 空间参照系统定义(SpatialReference) …
OGR_L_GetSpatialFilter
– 获取空间搜索的geometry
要素
要素代表空间对象,包括空间信息和属性 信息 要素用FID标识 空间信息用几何图形(geometry)标识 属性信息用关系模型的字段标识 要素还与空间参照系统相关联

要素基本信息操作
OGR_F_Create OGR_F_Destroy

要素定义操作
OGR_FD_Create OGR_FD_Destroy OGR_FD_GetName OGR_FD_GetFieldCount OGR_FD_GetFieldDefn OGR_FD_GetFieldIndex OGR_FD_AddFieldDefn OGR_FD_SetGeomType

空间关系运算
OGR_G_GetBoundary OGR_G_ConvexHull OGR_G_Buffer OGR_G_Intersection OGR_G_Union OGR_G_Difference OGR_G_Distance

坐标变换
OGR_G_Transform OGR_G_TransformTo

常用的空间数据类型
wkbPoint = 1, wkbLineString = 2, wkbPolygon = 3, wkbMultiPoint = 4, wkbMultiLineString = 5, wkbMultiPolygon = 6, wkbGeometryCollection = 7,

其他相关对象
– – – –
函数命名规律
OGR_DS_xxx:数据源操作 OGR_L_xxx:图层操作 OGR_FD_xxx:要素定义操作 OGR_F_xxx:要素操作 OGR_G_xxx:几何图形操作 OGR_Fld_xxx:字段定义操作

注册所有格式

注册所有格式
– OGRRegisterAll();
– 根据FID获取要素
OGR_L_SetFeature
– 根据FID修改要素
OGR_L_CreateFeature
– 创建新的要素
OGR_L_DeleteFeature
– 删除要素
图层要素查找

OGR_L_ResetReading
– 重置以开始读取下一个要素,调用OGR_L_GetNextFeature之前必 须先调用本函数
WKT格式
PROJCS["UTM 17 (WGS84) in northern hemisphere.", GEOGCS["WGS 84", DATUM["WGS_1984", SPHEROID["WGS 84",6378137,298.257223563, AUTHORITY["EPSG",7030]], TOWGS84[0,0,0,0,0,0,0], AUTHORITY["EPSG",6326]], PRIMEM["Greenwich",0,AUTHORITY["EPSG",8901]], UNIT["DMSH",0.0174532925199433,AUTHORITY["EPSG",9108]], AXIS["Lat",NORTH], AXIS["Long",EAST], AUTHORITY["EPSG",4326]], PROJECTION["Transverse_Mercator"], PARAMETER["latitude_of_origin",0], PARAMETER["central_meridian",-81], PARAMETER["scale_factor",0.9996], PARAMETER["false_easting",500000], PARAMETER["false_northing",0]]
设置要素字段值

FID:
– OGR_F_SetFID
– OGR_F_SetGeometry – OGR_F_SetGeometryDirectly
空间信息:

属性信息
– – – – – – – – OGR_F_SetFieldInteger OGR_F_SetFieldDouble OGR_F_SetFieldString OGR_F_SetFieldIntegerList OGR_F_SetFieldDoubleList OGR_F_SetFieldStringList OGR_F_SetFieldBinary OGR_F_SetFieldDateTime

要素定义(FeatureDefn)
要素定义对象( FeatureDefn )与图层相 关联,是图层的重要属性,它确定了图层 的结构 FeatureDefn主要由若干个字段构成 FeatureDefn 通常至少包含两个重要的字段: FID和Geometry。FID用长整数表示, Geometry是抽象类型。
注意:
– 必须在编译时打开格式开关。 – 通常在程序中调用其他OGR函数之前,必须首 先调用此函数
数据集

打开
– OGROpen
释放
– OGR_DS_Destroy
打开和释放数据集

OGRDataSourceH OGROpen ( const char * pszName, int bUpdate, OGRSFDriverH * pahDriverList )

字段定义操作
字段定义用于定义图层的属性表结构 每个字段通常包含:名字、类型、宽度、 小数位(实数类型)等信息

字段定义操作

OGR_Fld_Create OGR_Fld_SetName OGR_Fld_GetNameRef OGR_Fld_GetType OGR_Fld_SetType OGR_Fld_GetWidth OGR_Fld_SetWidth OGR_Fld_GetPrecision OGR_Fld_SetPrecision
– 遍历所有支持的格式,直到成功打开,或者没有合适的驱动则返 回NULL。成功返回数据源句柄。 – bUpdate:FALSE:只读方式打开,TRUE:读写方式打开。 – pahDriverList:是输出参数,如果成功打开,可返回打开的驱动。
相关文档
最新文档