답변:
포인트를 만들려면 :
ptList =[[20.000,43.000],[25.500, 45.085],[26.574, 46.025], [28.131, 48.124]]
pt = arcpy.Point()
ptGeoms = []
for p in ptList:
pt.X = p[0]
pt.Y = p[1]
ptGeoms.append(arcpy.PointGeometry(pt))
arcpy.CopyFeatures_management(ptGeoms, r"C:\Temp\test.shp")
다음과 같은 메시지가 나타납니다.
<Result 'C:\\Temp\\test.shp'>
또 다른 옵션은 기존의 Arcpy Geoprocessing 도구를 사용하는 것입니다. 아래 코드를 참조하십시오.
# Import arcpy module
import arcpy
# Local variables:
table_dbf = "C:\\temp\\table.dbf"
table_Layer2 = "table_Layer2"
point3_shp = "C:\\temp\\point3.shp"
# Process: Make XY Event Layer
arcpy.MakeXYEventLayer_management(table_dbf, "x_coord", "y_coord", table_Layer2, "", "")
# Process: Copy Features
arcpy.CopyFeatures_management(table_Layer2, point3_shp, "", "0", "0", "0")
mxd = arcpy.mapping.MapDocument(r"C:\temp\Untitled.mxd")
df = arcpy.mapping.ListDataFrames(mxd, "Layers")[0]
addLayer = arcpy.mapping.Layer(point3_shp)
arcpy.mapping.AddLayer(df, addLayer, "BOTTOM")
mxd.saveACopy(r"C:\temp\Untitled1.mxd")
피쳐 클래스 작성 도구를 사용하여 Python에서 쉐이프 파일을 작성할 수 있습니다 . 페이지 하단에 예가 있습니다.
위도 및 경도 데이터로 모양 파일을 채우려면 삽입 커서를 사용할 수 있습니다 .
아마도 위도 및 경도 데이터를 목록 으로 파이썬에로드 한 다음 삽입 커서를 사용하여 새 모양 파일의 행을 채우는 배열을 반복 할 수 있습니다.
파이썬 좌표 목록은 다음과 같이 구성 할 수 있습니다.
latLonList = [[40.000,-75.000],[39.998,-75.432],[39.981,-75.343]]
그런 다음 목록의 좌표를 반복하고 (예를 들어 인쇄) 다음과 같이하십시오.
for coord in latLonList:
print "lat: " + str(coord[0])
print "lon: " + str(coord[1])
mxd 파일에 레이어를 추가하려면 Python / ArcPy를 사용하여 ArcGIS Desktop에서 shapefile 또는 피처 클래스를 레이어로 레이어 추가하기를 참조하십시오 .