Ich habe mir SAGA ( http://www.saga-gis.org/en/index.html ) angesehen und es scheint einige nette Tools für die Geoverarbeitung zu haben.
Ich habe mich gefragt, ob jemand da draußen Glück hatte, SAGA-Module (Python) in ArcGIS Desktop und ArcToolbox zu integrieren.
Wenn ja, welche Schritte haben Sie ausgeführt?
Antworten:
Damit ArcGIS mit SAGA kommunizieren kann, erstellen wir einfache Toolboxen, mit denen .bat-Dateien von einem temporären Speicherort aus erstellt und ausgeführt werden. Dadurch wird das SAGA-Modul über die Befehlszeilenschnittstelle ausgeführt. Im Allgemeinen muss die Toolbox Datenformate konvertieren, Projektionsprobleme usw. vor und nach dem Ausführen der SAGA-Funktion beheben, aber das ist ziemlich einfach. Die erste ist die Hürde, aber dann müssen Sie sie nur anpassen, wenn Sie eine Verbindung zu zusätzlichen SAGA-Modulen herstellen müssen. Sobald Sie die Toolbox haben, können Sie sie natürlich in komplexeren Workflows über Modelbuilder oder in Python wiederverwenden.
quelle
Um ehrlich zu sein, scheint es, als ob SAGA in Bezug auf die Verarbeitungsfunktionalität stark von anderen OpenSource-Projekten abhängt (z. B. GRASS, gdal, proj.4 usw.).
Es ist möglicherweise viel einfacher, QGIS Desktop GIS zu installieren und dann ein oder mehrere QGIS Python-Plugins zu schreiben, um das zu tun, was Sie möchten. Sie hätten wahrscheinlich programmgesteuerten Zugriff auf einen Großteil der über SAGA verfügbaren Funktionen.
Nebenbei bemerkt, obwohl SAGA unter der GPL lizenziert ist, glaube ich nicht, dass Sie rechtliche Probleme beim Schreiben eines Skripts haben würden, das ESRI- und SAGA-Code kombiniert, aber es könnte möglicherweise Probleme beim Veröffentlichen des Codes in ArcScripts geben.
quelle
Es gibt einige Bemühungen, Saga-Module in Arcgis über Sextante auszuführen: http://sextantegis.blogspot.com/2011/08/here-is-another-video-of-sextante-on.html
quelle
Wir machen genau das unter: www.frogtech.com.au
Es geht darum, Funktionen zu erhalten, die denen ähneln, die durch Erweiterungen oder Lizenzstufen in ArcGIS Desktop gebunden sind. Es macht keinen Sinn, Tausende für eine Erweiterung zu bezahlen, wenn Sie nur eine oder zwei ihrer Funktionen verwenden. Dann können wir unser weniger spezialisiertes GIS erhalten Wenn Benutzer dieses Tool durch einen regulären Workflow rollen möchten, passen wir es so an, dass Ein- / Ausgaben auch aus unseren regulären Workflows stammen.
quelle
Ein leichterer Ansatz: Verwenden Sie die Pakete rpy / rpy2 (für Python) und RSAGA (für R), um die ArcGIS-zu-Python-zu-R-zu-SAGA-Verbindung herzustellen. Ich beschäftige mich jetzt damit. Es dauert einige Zeit, aber es kann getan werden.
Das bedeutet natürlich, dass ArcGIS / Python, R und SAGA unter kompatiblen Versionen installiert sein müssen. Aber hey, nichts Gutes kommt leicht.
quelle
erledigt, z. B. import saga_api, sys.argv usw.; Denken Sie daran, dass Saga die meisten Dinge im Speicher erledigt und Sie Daten von der Festplatte importieren und exportieren müssen
quelle
Beachten Sie, dass SAGA seit Version 2.2.1 Toolboxen unterstützt, die von arcgis ausgeführt werden können: https://sourceforge.net/p/saga-gis/news/2015/09/saga-221-released/
"Um ArcSAGA-Tools auszuführen, müssen Sie mit dem ArcCatalog-Steuerelement zu Ihrem SAGA-Installationsverzeichnis navigieren und die ArcSAGA Python-Toolboxen öffnen. Es sollte ohne weitere Installationsschritte sofort funktionieren."
quelle