




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、OGR,官网:/ogr OGR是一个开源的矢量空间数据的读写、转换器,已被松散集成到GDAL中。 目前支持40多种格式(/ogr/ogr_formats.html) C/C+,OGR数据模型,核心对象 驱动(Driver) 数据源(DataSource) 图层(Layer) 要素(Feature) 几何图形(Geometry) 其他相关对象 要素定义(FeatureDefn) 字段定义(FieldDefn) 空间参照系统定义(SpatialReference) ,函数命名规律,OGR_DS_xxx:数据源操作 OGR_L_
2、xxx:图层操作 OGR_FD_xxx:要素定义操作 OGR_F_xxx:要素操作 OGR_G_xxx:几何图形操作 OGR_Fld_xxx:字段定义操作,注册所有格式,注册所有格式 OGRRegisterAll(); 注意: 必须在编译时打开格式开关。 通常在程序中调用其他OGR函数之前,必须首先调用此函数,数据集,打开 OGROpen 释放 OGR_DS_Destroy,OGRDataSourceH OGROpen ( const char * pszName, int bUpdate, OGRSFDriverH * pahDriverList ) 遍历所有支持的格式,直到成功打开,或者没
3、有合适的驱动则返回NULL。成功返回数据源句柄。 bUpdate:FALSE:只读方式打开,TRUE:读写方式打开。 pahDriverList:是输出参数,如果成功打开,可返回打开的驱动。 void OGR_DS_Destroy ( OGRDataSourceH hDataSource ) 释放打开的数据源,打开和释放数据集,数据集常用操作,OGR_DS_GetName 获取数据源名称 OGR_DS_GetLayerCount 获取图层数 OGR_DS_GetLayer 根据索引号打开图层,返回图层句柄 OGR_DS_GetLayerByName 根据图层名打开图层,返回图层句柄 OGR_D
4、S_DeleteLayer 根据索引号删除图层 OGR_DS_CreateLayer 创建新图层,图层,一个数据集中可以包含多个图层 图层由多个要素构成 可以基于给定条件搜索要素,图层基本信息操作,OGR_L_GetLayerDefn 获取图层定义信息 OGR_L_GetSpatialRef 获取图层空间参照系统信息(投影信息) OGR_L_GetFeatureCount 获取要素数目 OGR_L_GetExtent 获取外接矩形范围 OGR_L_GetFIDColumn 获取FID所在字段的字段名 OGR_L_GetGeometryColumn 获取geometry所在字段的字段名,图层要素
5、操作,OGR_L_GetFeature 根据FID获取要素 OGR_L_SetFeature 根据FID修改要素 OGR_L_CreateFeature 创建新的要素 OGR_L_DeleteFeature 删除要素,图层要素查找,OGR_L_ResetReading 重置以开始读取下一个要素,调用OGR_L_GetNextFeature之前必须先调用本函数 OGR_L_GetNextFeature 获取下一个满足SpatialFilter条件的要素 OGR_L_SetSpatialFilter 设置空间搜索geometry(目前只支持Intersect),且可能不准确 OGR_L_SetSp
6、atialFilterRect 设置矩形搜索范围(目前只支持Intersect),且可能不准确 OGR_L_GetSpatialFilter 获取空间搜索的geometry,要素,要素代表空间对象,包括空间信息和属性信息 要素用FID标识 空间信息用几何图形(geometry)标识 属性信息用关系模型的字段标识 要素还与空间参照系统相关联,要素基本信息操作,OGR_F_Create OGR_F_Destroy 所有的Feature在使用完后,一定要使用本函数来释放内存。 OGR_F_GetDefnRef OGR_F_GetFieldCount OGR_F_GetFieldDefnRef OGR
7、_F_GetFieldIndex,获取要素字段值,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,设置要素字段值,FID: OGR_F_SetFI
8、D 空间信息: 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,几何图形,几何图形代表空间几何形状,是要素的空间信息,可以存在独立于要素之外的几何图形。 几何图形操作包括对构成几何图
9、形的点进行增删改等操作、空间相互关系操作、坐标变换操作等,几何图形基本信息操作,OGR_G_GetDimension OGR_G_GetEnvelope OGR_G_GetArea OGR_G_Centroid OGR_G_IsSimple OGR_G_IsRing,几何图形坐标点操作,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_G_GetGeom
10、etryCount 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_G_GetBoundary OGR_G_ConvexHull OGR_G_Buffer OGR_G_Intersection OGR_G_Union OGR_G_Difference OG
11、R_G_Distance,坐标变换,OGR_G_Transform OGR_G_TransformTo,要素定义(FeatureDefn),要素定义对象( FeatureDefn )与图层相关联,是图层的重要属性,它确定了图层的结构 FeatureDefn主要由若干个字段构成 FeatureDefn 通常至少包含两个重要的字段:FID和Geometry。FID用长整数表示,Geometry是抽象类型。,要素定义操作,OGR_FD_Create OGR_FD_Destroy OGR_FD_GetName OGR_FD_GetFieldCount OGR_FD_GetFieldDefn OGR_F
12、D_GetFieldIndex OGR_FD_AddFieldDefn OGR_FD_SetGeomType,常用的空间数据类型,wkbPoint = 1, wkbLineString = 2, wkbPolygon = 3, wkbMultiPoint = 4, wkbMultiLineString = 5, wkbMultiPolygon = 6, wkbGeometryCollection = 7,字段定义操作,字段定义用于定义图层的属性表结构 每个字段通常包含:名字、类型、宽度、小数位(实数类型)等信息,字段定义操作,OGR_Fld_Create OGR_Fld_SetName OGR
13、_Fld_GetNameRef OGR_Fld_GetType OGR_Fld_SetType OGR_Fld_GetWidth OGR_Fld_SetWidth OGR_Fld_GetPrecision OGR_Fld_SetPrecision,/* Simple 32bit integer */ OFTInteger = 0, /* List of 32bit integers */ OFTIntegerList = 1, /* Double Precision floating point */ OFTReal = 2, /* List of doubles */ OFTRealList
14、 = 3, /* String of ASCII chars */ OFTString = 4, /* Array of strings */ OFTStringList = 5, /* Double byte string (unsupported) */ OFTWideString = 6, /* List of wide strings (unsupported) */ OFTWideStringList = 7, /* Raw Binary data */ OFTBinary = 8, /* Date */ OFTDate = 9, /* Time */ OFTTime = 10, /
15、* Date and Time */ OFTDateTime = 11,空间参照系统(OGRSpatialReference),遵循OGC的坐标转换规范(OpenGIS Coordinate Transformations specification) 使用WKT格式描述坐标系统 调用PROJ.4实现投影变换,投影设置,OGRSpatialReference oSRS; oSRS.SetGeogCS( My geographic coordinate system, WGS_1984, My WGS84 Spheroid, SRS_WGS84_SEMIMAJOR, SRS_WGS84_INVF
16、LATTENING, Greenwich, 0.0, degree, SRS_UA_DEGREE_CONV );,WKT格式,PROJCSUTM 17 (WGS84) in northern hemisphere., GEOGCSWGS 84, DATUMWGS_1984, SPHEROIDWGS 84,6378137,298.257223563, AUTHORITYEPSG,7030, TOWGS840,0,0,0,0,0,0, AUTHORITYEPSG,6326, PRIMEMGreenwich,0,AUTHORITYEPSG,8901, UNITDMSH,0.017453292519943
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025届辽宁省七校协作体高三11月期中考-语文试题(含答案)
- 2025年江苏年货运从业资格证模拟考试题
- 加强潜水装备水下压力测试规定
- 2025商业采购合同协议样本
- 极坐标铣圆弧编程格式
- 二零二五版房屋买卖首付款支付协议书
- 试岗期劳动合同范例二零二五年
- 蛋糕公司积分管理制度
- 饮料生产工厂管理制度
- 车辆应急报警管理制度
- (2024版)机动车查验员理论知识考试题库及答案
- 2022年10月自考00233税法试题及答案含解析
- 2024智能AI中台白皮书
- 意大利古罗马斗兽场课件
- 《万以内数的认识》大单元整体设计
- 供配电技术 课件 第4章-变配电系统的电气设备及选择
- 二模冲刺动员主题班会通用课件
- 大学国旗护卫班培训方案
- 胃肠术后吻合口瘘的观察与护理
- 幼儿游戏与社会性的发展
- (医学课件)特应性皮炎
评论
0/150
提交评论