Daha çox

XY nöqtəsi məlumatlarını daxil etməyə çalışarkən InsertCursor uğursuz olur

XY nöqtəsi məlumatlarını daxil etməyə çalışarkən InsertCursor uğursuz olur


X və Y koordinatları olan bir mətn sənədim və üçüncü bir məlumatım var. Bu mətn sənədindən bir əlavə imleci istifadə edərək bir nöqtə xüsusiyyət sinfi yaratmağa çalışıram. İlə işləyirəm"SHAPE @ XY"jeton, lakin dəqiq sintaksisini anlaya bilmir. Nə səhv edirəm?

Müvafiq kod:

# Aç mətn faylı textFile = açıq (inFile, "r") # X, Y və PGA sətirlərini əldə edin = [r.split ("") [0: 3] textFile-də r üçün] #Spatial reference SR = SpatialReference (") WGS 1984 ") #Create point xüsusiyyət sinfi CreateFeatureclass_management (outPath, outName," POINT ", spatial_reference = SR) # Add PGA field AddField_management (outFc," PGA "," FLOAT ") # Insert cursor object cursor = Insert ["SHAPE @ XY", "PGA"]) X, Y, PGA üçün sətirlərdə: #XY tuple XY = (float (X), float (Y)) # Satır tuple row = (XY, float (PGA)) ) satırı çap et # satır cursor.insertRow (sıra) daxil edin

İlk sətir gözlədiyim kimi çap olunur:

((-123.224, 38.4105), 0.02)

Ancaq növbəti sətirdə bu səhv olur:

Traceback (son zəng son): "C: /Users/e1b8/Desktop/E1B8/DASH_GIS_Integration/Calculate_PGA_per_plat_Point.py" faylı, 277 sətir, textToFeatureClass cursor.insertRow (sıra) Dosyasında "C:  Program Files (x86) ArcGIS  Desktop10.1  arcpy  arcpy  arcobjects  arcobjects.py ", sətir 106, insertRow return returnArcObjectToPythonObject (self._arc_object.InsertRow (* gp_fixargs (args))) RuntimeError: Səhv

Mətn sənədindən üç nümunə sətri:

-123.2240 38.4105 0.02 0.01 1 -123.2157 38.4105 0.02 0.01 1 -123.2073 38.4105 0.02 0.01 1

İstifadə etdiyimdən bəriarcpy idxalından *(göstərilməyib), sətir:

imlec = InsertCursor (outFc, ["SHAPE @ XY", "PGA"])

... InsertCursor-un köhnə versiyasına zəng edirdi.

Müvafiq kod:

cursor = da.InsertCursor (outFc, ["SHAPE @ XY", "PGA"])

Bu sətir məlumat daxilolmasını InsertCursor çağırır.


Videoya baxın: Arcpy Data Access Module Insert Cursor