Ваш код заменяет текст пути к файлу infc
, но на самом деле не переименовывает файл .
Кроме того, outfc
- это путь к новому проецируемому шейп-файлу, который вы создаете, а infc
- путь к исходному файлу. Разве вы не хотите, чтобы outfc
имел суффикс "_projected.shp"
?
Приведенный ниже код изменяет текст пути к выходному файлу и включает "_projected.shp"
перед вызовом arcpy.Project_management
для создания нового файла.
import arcpy
import os
arcpy.env.workspace = "inputdatafolder"
arcpy.env.overwriteOutput = True
outWorkspace = "outputdatafolder"
for infc in arcpy.ListFeatureClasses():
dsc = arcpy.Describe(infc)
if dsc.spatialReference.Name == "Unknown":
print ("skipped this fc due to undefined coordinate system: "+ infc)
else:
outfc = os.path.join(outWorkspace, infc).replace(".shp","_projected.shp")
outCS = arcpy.SpatialReference('NAD 1983 UTM Zone 10N')
arcpy.Project_management(infc, outfc, outCS)
Я также не уверен, правильно ли вы используете Describe
. Возможно, вам придется использовать infc.name
при построении путей к файлам.