OGR的服务设施
ogr_utils的Python项目详细描述
ogr_utils是gdal/ogr模块的一个小包装器。基本上 是一个抽象层,为阅读、写作增加了便利性 以及操作地理数据格式。 它提供三个模块:几何、研究和复制助手。
重要!显然需要gdal。由于安装可能会很麻烦,因此此发行版中不包含此项要求。请手动安装。
第一个例子。将基于查询的图层保存到新的形状文件:
#!/usr/bin/env python from ogr_utils.copy_helper import CopyHelper c = CopyHelper() f = '/home/.../border_segs.shp' shp =ogr.Open(f,0) lyr = shp.GetLayer() lyr.GetFeatureCount() >>> 13411 c.lyr_2_shp(lyr,f,'line') lyr_sel = shp.ExecuteSQL("select * from 'border_segs' where 'FID' < 100 ") lyr_sel.GetFeatureCount() >>> 100 c.lyr_2_shp(lyr_sel,f,'line')
例二。将一组地理对象保存为shapefile(或ogr支持的任何其他文件格式):
#!/usr/bin/env python from ogr_utils.geometry import Geometry g = Geometry( [(xy),], [(fieldname_1, type),(fieldname_2, type),], [(value_field_1,...),(value_field_2,...)] ) f = '/home/.../outfile.shp' g.make_points(f)
例三。从左下角和右上角获取水平仪的几何尺寸:
#!/usr/bin/env python from ogr_utils.research import Research prof = Research() xy1 = (4.84692,52.3706) xy2 = (4.84397,52.36611) bb = prof.get_bounding_box( [xy1,xy2] )