Tengo un script que crea Áreas de Servicio (SA) utilizando Network Analyst. Necesito utilizar el polígono de la SA más adelante en el script. Necesito hacer un análisis utilizando cada SA resultante individualmente. El MakeFeatureLayer_management da un error que la entrada no es compatible por lo que asumo que sólo necesito el polígono no el archivo de capa. Desafortunadamente, el script crea un archivo de capa para el SA. No puedo averiguar cómo seleccionar o crear sólo el polígono del archivo de capa. ¿Existe una función "obtener característica de la capa" o "obtener polígono"? Abajo está el script.
Estoy utilizando ArcGIS 10.2 Desktop. Mi espacio de trabajo es un filegeodatabase.
with arcpy.da.SearchCursor(PL_Fac, PL_fld) as SAcursor:
for SArow in SAcursor:
#print('{0}, {1}'.format(SArow[0], SArow[1]))
SArow_new = str(SArow[1])
whereClause = 'Add_PNTID =' +SArow_new
# Process: Make Feature Layer
PL_Fac_MakeLay = arcpy.MakeFeatureLayer_management(PL_Fac, PL_Fac_Lay, whereClause)
# Process: Make Service Area Layer
result_object = arcpy.MakeServiceAreaLayer_na(ns_RoutingNetwork_ND, "SA_Lay", impedance, "TRAVEL_FROM", "25", "SIMPLE_POLYS", "NO_MERGE", "DISKS", "NO_LINES", "OVERLAP", "NO_SPLIT", "", "", "NO_UTURNS", "'One Way';Restricted", "NO_TRIM_POLYS", "100 Meters", "NO_LINES_SOURCE_FIELDS", "USE_HIERARCHY", "")
#Get the layer object from the result object. The service layer can now be referenced using the layer object.
layer_object = result_object.getOutput(0)
#Get the names of all the sublayers within the service area layer.
sublayer_names = arcpy.na.GetNAClassNames(layer_object)
#Stores the layer names that we will use later
facilities_layer_name = sublayer_names["Facilities"]
#Load the fire stations as facilities using default field mappings and
#default search tolerance
arcpy.na.AddLocations(layer_object, facilities_layer_name, PL_Fac_MakeLay, "", "")
#Solve the service area layer
arcpy.na.Solve(layer_object)
#Save the solved service area layer as a layer file on disk
layer_object.saveACopy(output_SAlay)