Python Add-Ins in ArcGIS 10.1

Letztens habe ich mir das Live Training Seminar zur Erstellung von Python Add-Ins in ArcGIS 10.1 angeschaut und bin ziemlich begeistert. Durch die neue Integration von Python rückt die Sprache immer mehr in den Kern von ArcGIS und es eröffnen sich zahlreiche neue Möglichkeiten, um sich die tägliche Arbeit mit dem Programm zu erleichtern.

Die Palette reicht von simplen Aktionen nach Klick auf einen Button bis hin zu komplexen Erweiterungen, die bei bestimmten auftretenden Ereignissen ihre Funktionen ausführen. Andrew hat in seinem Blog eine gute kurze Übersicht dazu geschrieben.

Für die Integration wird der Add-In Wizard zur Verfügung gestellt. Dieser macht es einfach, das benötigte Add-In Projekt zu erstellen und in ArcGIS verfügbar zu machen. Der Wizard erstellt auch schon die grundsätzliche Dateistruktur für den Python Quellcode. Jetzt muss eigentlich „nur noch“ die Programmlogik geschrieben werden.

Womit ich noch nicht zufrieden bin, sind die eingeschränkten Möglichkeiten beim Debuggen der Skripte. Wenn sich ein ArcGIS-Nutzer mit wenig Python-Entwicklungserfahrung traut, ein Skript zu erstellen, wird er vermutlich ziemlich schnell auf Fehler treffen, die er nicht erklären und nachvollziehen kann. Hier kann der immer wiederkehrende Zyklus aus Fehlerbehebung im Code, Installieren und Testen in ArcMap recht schnell zu Frust führen, wenn keine aussagekräftigen Fehlermeldungen kommen. Es wird hier empfohlen, im Quellcode ab und zu print Befehle einzufügen. Dadurch werden zumindest deren Ausgaben im ArcGIS Python Fenster ausgegeben. Es ist zu hoffen, dass hier in Zukunft weitere Möglichkeiten hinzukommen.

Bei dem Training Seminar hatte ich noch die Frage gestellt, ob es in Zukunft wieder ein Objektmodell-Diagramm geben wird wie es in Version 9.3 noch zur Verfügung stand. Das wurde leider verneint und nur auf die Hilfe verwiesen. Schade, wirklich schade! Zumindest gibt es mittlerweile eine inoffizielle Version für das geoprocessing mit arcpy.

Jetzt bin ich allerdings erst einmal auf das nächste Release gespannt und freue mich auf den ersten Praxistest.