(二十五)arcpy开发&实现对面和线要素端点的统计

这个例子是学习使用arcpy来统计面要素和线要素的个数,以及顶点(端点)个数的。利用到pointCount以及令牌方面的知识。首先还是对要素进行了遍历,然后统计相应的顶点数。下面我们来看一下实现代码。

#coding=utf-8
import arcpy

def getVertCount(featureclass):

    desc = arcpy.Describe(featureclass)
    if desc.shapeType == "Polygon" or desc.shapeType == "Line":
        numberrecords = int(arcpy.GetCount_management(featureclass).getOutput(0))
        with arcpy.da.SearchCursor(featureclass, "SHAPE@") as cursor:
            totVert = 0
            for row in cursor:
                totVert += row[0].pointCount
        return numberrecords, totVert


input_fc = 'D:/Data/中国国界和省界的SHP格式数据/省界/bou2_4p.shp'
counts = getVertCount(input_fc)

if counts is not None:
    arcpy.AddMessage('\n# Total number of records: {}'.format('{0:,}'.format(counts[0])))
    arcpy.AddMessage('\n# Total number of vertices: {}\n'.format('{0:,}'.format(counts[1])))
else:
    arcpy.AddMessage('\n# Not a polygon or line\n')

以及最终的运行效果。


                           更多内容,请微信扫二维码关注公众号,或者加入arcpy开发qq学习群:487352121

                                                                 

转载自:https://blog.csdn.net/u010608964/article/details/88368384

You may also like...