Arcgis中怎样找出坐标连的图形?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Arcgis中怎样找出坐标连的图形?相关的知识,希望对你有一定的参考价值。

工作的图中遇到了这样的问题,一张图里有的多边形是环形的,中间一个多边形,外圈一个圆环形。圆环形的内圆部分坐标连反了,图上有很多这样的图形,怎样用简便的方法找到这些坐标连反了的多边形?

参考技术A 你是要找环状图形吗?
如果是这样你可以这样想,环状图形有什么特征呢?
理想的圆环,其重心不在圆环当中的。
那么根据重心选择不到的图形就是环状图形。
当然这样的方法依赖于你的数据特征,很有可能无法准确选出,也就是过滤的效果。

也可利用脚本的方式:
注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)

arcgis python图形信息

属性

说明

area

面要素的面积值;对于所有其他要素类型为空

centroid

如果质心位于要素之内或要素之上则为真;否则返回标注点(返回一个点对象)

范围

返回一个范围对象

firstPoint

要素的第一个坐标;返回一个点对象

hullRectangle

凸包矩形的坐标对

isMultipart

如果此几何的部分数大于一,则为真

labelPoint

标注所在的点;返回一个点对象(标注点始终位于要素之内或要素之上)。

lastPoint

要素的最后一个坐标;返回一个点对象

长度

线状要素的长度;对于点和多点要素类型为空

partCount

要素几何部分的数目

pointCount

当前几何部分的点对象数

trueCentroid

要素的重心;返回一个点对象

类型

面、折线、点、多点、多面体、尺寸、注记

以上是关于Arcgis中怎样找出坐标连的图形?的主要内容,如果未能解决你的问题,请参考以下文章

Arcgis应用矢量图形坐标变换方法Spatial Adjustment 之相似变换详解

Arcgis应用矢量图形坐标变换之放大和缩小

arcgis怎么把坐标生成点?

arcgis python图形信息

怎样把插入arcgis的图片转换成可以编辑的图形格式!

如何获取arcgis中面域的几何中心点