# -*- coding: utf-8 -*- #by gisoracle 2021.01.23 import arcpy import math #保存数据 def Save(polygon,rows): row = rows.newRow() #row.setValue(shapefieldname,featureList) row.shape=polygon rows.insertRow(row) del row outFeature=arcpy.GetParameterAsText(0) x0=500000 y0=0 r=500.0 y2=500 n=9 h=int(360/n) arcpy.AddMessage("h="+str(h)) pi=3.1415926 rows = arcpy.InsertCursor(outFeature) array = arcpy.Array() for i in range(0,360,h): x1=x0+r*math.cos(i*pi/180) y=y0+r*math.sin(i*pi/180) Z=n*100+360-i point = arcpy.Point(x1,y,Z) #point.X=x1 #point.Y=y #point.Z=Z arcpy.AddMessage("Z="+str(Z)) array.add(point) polygon = arcpy.Polygon(array, None, True) Save(polygon, rows) polygon = None