Ich habe seit einiger Zeit mit dem Hinzufügen von Ebenen zum Inhaltsverzeichnis zu kämpfen. Ich habe es geschafft, einzelne Ebenen hinzuzufügen, muss aber einen Ordner durchlaufen und alle Ebenen hinzufügen. Shapefiles kann ich gar nicht hinzufügen. Nur Layer-Dateien. Unten ist der Code, an dem ich mich befinde:
for layer in shp_List:
mxd = arcpy.mapping.MapDocument("CURRENT")
dataFrame = arcpy.mapping.ListDataFrames(mxd, "*")[0]
outlayer = lyr
layerfile = os.path.join(base_Folder, lyr + ".lyr")
arcpy.MakeFeatureLayer_management(layer, outlayer)
arcpy.SaveToLayerFile_management(outlayer, layerfile, "ABSOLUTE")
addlayer = arcpy.mapping.Layer(layerfile)
arcpy.mapping.AddLayer(dataFrame, addlayer, "BOTTOM")
#addLayer = arcpy.mapping.Layer(layer)
#arcpy.mapping.AddLayer(dataFrame, addLayer, "BOTTOM")
#arcpy.RefreshTOC()
#arcpy.RefreshActiveView()
del addlayer, mxd
Der obige Code fügt jede Ebene zum Inhaltsverzeichnis hinzu, entfernt sie dann wütend und fügt die nächste hinzu. Wenn das gesamte Skript beendet ist, befindet sich nichts mehr im Inhaltsverzeichnis. Ich habe versucht, dieses Skript zu einem Modell hinzuzufügen und einen abgeleiteten Ausgabeparameter zu erstellen, der dann als Modellparameter hinzugefügt wird, wobei "Zur Anzeige hinzufügen" aktiviert ist. Ich habe auch die Geoverarbeitungsoptionen überprüft, um sicherzustellen, dass das Kontrollkästchen zum Hinzufügen zur Anzeige aktiviert ist. Ich verwende Arc 10 (keine Service Packs). Kann jemand helfen?
quelle