下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Python与开源GIS :使用OGR生成几何要素对象2012-05-1107:30作者:bukunu来源:本站浏览:757views我要评论字号:大中小摘要:前面部分我们详细地介绍了如何读取矢量数据,包括数据源、图层、要素、几何形状、 字段属性等各个部分。下面来看一下如何使用OGR来创建矢量数据,亦即使用OGR写GIS 矢量文件。首先先看一下写文件的示意。在这里先不对这个图做太多的解释,但是在后面介绍各 个部分的时候,前面部分我们详细地介绍了如何读取矢量数据,包括数据源、图层、要素、几何形状、 字段属性等各个部分。下面来看一下如何使用OGR来创建矢量数据,亦即使用OGR写GIS矢量文件。首先
2、 先看一下写文件的示意。在这里先不对这个图做太多的解释,但是在后面介绍各个部分的时 候,请自行参考此图。建立空的geometry对象:1 org.Geometryogr 中提供了不同的类型,常用的有:ogr.wkbPoint, ogr.wkbLineString , ogr.wkbPolygon。定义各种不同的geometry使用的方法是不一样的。在构建这三种不同的要素时,要注 意使用的格式。创建点要素下面我们先来看一下如何创建一个点。注意,此时只是在内存中将对象创建出来,跟文 件没有关系。All# -*- coding: utf-8 -*-from osgeo import ogrpoint
3、 = ogr.Geometry(ogr.wkbPoint)point.AddPoint(10,20)print(type(point)print(point)注意,向point中添加多个点,并不会出错,但最后的结果只会用最后添加的点。创建线要素新建Line的方法与点基本一致。与点不同的是,线需要添加多个点。LLJfrom osgeo import ogrline = ogr.Geometry(ogr.wkbLineString)line.AddPoint(10,20)line.AddPoint(20,30)line.AddPoint(10,30) 6 print(type(line)7 pri
4、nt(line)可以使用线对象的SetPoint方法来修改点的坐标,譬如LJline.SetPoint(1,50,50)print(line)另外,还有其他一些有用的函数统计所有点的数目:1 print line.GetPointCount()读取0号点的x坐标和y坐标LIprint line.GetX(0)print line.GetY(0)创建多边形要素创建多边形要素与创建点和线的方法的区别就比较大了。新建多边形,首先要新建环(ring),然后把环添加到多边形对象中。那么怎样创建一个ring呢?这个与创建线比较类似:先新建一个ring对象,然后向里 面逐个添加点。Llj /from osg
5、eo import ogrring = ogr.Geometry(ogr.wkbLinearRing)ring.AddPoint(10,10)ring.AddPoint(50,0)ring.AddPoint(50,50)ring.AddPoint(0,10)与创建线不同的是,ring是需要封闭的,这可以使用CloseRings()方法,或者将最后一个点的坐标设置成与第一个点相同。一般情况下,最好是使用CloseRings()方法。IIS1 ring.CloseRings()然后,使用下面的语句,将ring对象添加到多边形中。polygon = ogr.Geometry(ogr.wkbPolygon)polygon.AddGeometry(outring)polygon.AddGeometry(inring)对于polygon对象,没法直接打印它里面的坐标,而是需要先获取它其中的几何对象,也就是ring。I
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年黑河职业学院高职单招职业适应性测试考试题库含完整答案详解【历年真题】
- 2026年沙澧食品职业学院高职单招职业技能考试模拟试卷及完整答案详解
- 2026年四川宜宾市屏山县宇客景区管理有限公司第四批招聘1人笔试备考题库及答案详解
- 2026四川虹信软件股份有限公司招聘销售会计岗位1人考试参考题库及答案详解
- 2026年日照五莲县教体系统公开招聘教师(15人)笔试备考试题及答案详解
- 2026年消防安全知识培训试题附答案
- 2026上海政法学院招聘科研助理岗位6人笔试备考试题及答案详解
- 2026陕西渭南师范学院专职辅导员招聘11人笔试备考题库及答案详解
- 2026年江苏通州湾示范区教育系统招聘公办幼儿园备案制教师4人考试备考题库及答案详解
- 2026云南省劳动力中心市场有限公司招聘劳务派遣人员10人笔试参考题库及答案详解
- 双重预防机制题库及答案
- 元代文学-课件
- 特殊感染手术术后处理流程
- 公司清欠工作管理办法
- 职业妆容技巧培训课件
- DB52T 873-2018 大曲酱香型白酒生产技术规范
- 中级消防设施操作员实操技能指导手册
- 水平三田径大单元18课时教案
- 民用建筑电线电缆防火技术规程DBJ-T 15-226-2021
- 《石家庄市消防设计审查疑难问题操作指南》修订版(2023.2.28)
- 华信惠悦咨询美的集团职位分析与职位说明书研讨会
评论
0/150
提交评论