Python(英语发音:/ˈpaɪθən/), 是一种面向对象、解释型计算机程序设计语言,由Guido van Rossum于1989年发明,第一个公开发行版发行于1991年。
Python是纯粹的自由软件, 源代码和解释器CPython遵循 GPL(GNU General Public License)协议。
ESRI公司的Shapefile文件是描述空间数据的几何和属性特征的非拓扑实体矢量数据结构的一种格式。
如带一个Shapefile文件最少包括三个文件:
主文件(*.shp)、--存储地理要素的几何图形的文件。
索引文件(*.shx)、--存储图形要素与属性信息索引的文件。
dBASE表文件(*.dbf),--存储要素信息属性的dBase表文件。
你是凯升要找环状图形吗?如果是这样你可以这样想,环状图形迅坦有什么特征呢?
理想的圆环,其重心不在圆环当中的。
那么根据重心选择不到的图形就是环状图形。
当然这样的方法依赖于你的数据特征,很有可能无法准确选出,也就是过滤的效果。
也可利用脚本的方式:
注1:版本为arcgis9.2,如果是9.3在create()改成create(9.3)。
注2:source与destination分别改成你的源文件与目标文件,路径中不要有汉字。
注3:仅适用于shapefile文件。
注4:执行的结果是将环状图形找到并导出到destination文件中。
注5:由于不知道你的数据实际状况,有可能存在不可预料的结果,使用请谨慎。
注6:脚本中缩进分别是4空格,8空格,12空格。
注7:使用方式是将下面代码复制到一个文本文件中,保存,修改后缀为.py,文件名随意,双击可执行。
注8:have fun!
#-*- coding: UTF-8 -*-
import arcgisscripting
gp = arcgisscripting.create()
# Create search cursor
source = r'E:\Data_Analysis\ArcGIS\source\Polygon\Pg_1.shp'
destination = r'E:\Data_Analysis\ArcGIS\source\Polygon\select.shp'
rows = gp.SearchCursor(source)
row = rows.Next()
#查找环状图形
mylist = []
while row:
feat = row.GetValue('Shape')
part = feat.getpart()
region = part.next()
point = region.next()
count = 0
while count <region.count:
if not point:
mylist.append(str(row.GetValue('亩孙桐FID')))
break
point = region.next()
count = count + 1
row = rows.Next()
sql_expr = '"FID" in (' + ','.join(mylist) + ')'
gp.Select_analysis(source, destination, sql_expr)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)