Ich wurde mit ArcGIS (Desktop und Workstation) in GIS geschult und habe mit (sehr) kurzen Einblicken in MapInfo und uDig damit recherchiert. Während dieser Zeit war ich mit dem Programm zufrieden, da ich relativ kleine Datenbanken verwendete und nicht viele Wiederholungsaufgaben erledigte und ArcGIS viele coole Tools zum Analysieren wissenschaftlicher Daten hat.
Seit meinem Abschluss arbeite ich seit zwei Jahren in einem ganz anderen Unternehmen. Ich beschäftige mich mit riesigen Datenbanken und erledige relativ "einfachere" Aufgaben, aber darüber hinaus bestehen sie aus sich wiederholenden Aufgaben (ich mache einmal pro Woche eine Reihe einfacher Aufgaben für die gesamte Datenbank). Während dieser Zeit habe ich viel AutoCAD verwendet (da viele unserer Daten mit AutoCAD gezeichnet werden) und es immer mehr zu schätzen gelernt. Der größte Vorteil ist, dass Sie mit der Programmiersprache LISP und mit Systemvariablen ein Ganzes steuern können Viele der Einstellungen - ob es darum geht, den Standardwert für ein Werkzeug anzupassen, die Verwendung von Dialogfeldern im Programm zu eliminieren oder Optionen zum Skript zum automatischen Öffnen und Bearbeiten von Zeichnungen.
Gibt es kostenlose oder nicht kostenlose GIS-Plattformen mit diesem hohen Anpassungsgrad oder bin ich zu frustrierter manueller Arbeit verurteilt?
Ich bevorzuge Plattformen mit einer guten Benutzeroberfläche entlang der Skriptoptionen, aber das ist kein Muss.
Antworten:
Ich bin nicht erfahren genug, um eine Antwort aus sehr vielen Aspekten zu geben, aber ... Ich habe meine ersten Dinge in GIS in ArcView 3.x in Avenue geschrieben. Die Geschwindigkeit und die Möglichkeiten haben mir sehr gut gefallen. Dann habe ich nie die Freude verstanden, darauf zu warten, dass ArcGIS gestartet wird, nach dem richtigen Werkzeug zu suchen und dann das Werkzeug zu finden, das ich brauche, und ArcInfo benötigt.
Meine neue Liebe ist PostGIS. Es ist sehr viel mehr als eine Datenbank zum Speichern. Die eingebaute Funktionalität ermöglicht es, alle Verarbeitungen und Analysen durchzuführen, die ich bisher verwendet habe. In den meisten Fällen ist es sehr viel schneller als Arc-Produkte.
In der Open Source-Welt erhalten Sie nicht für alles eine Lösung, aber es gibt Projekte und Software, die alle Ihre Anforderungen abdecken.
Wie gesagt, ich verarbeite und analysiere in PostGIS. Ich kann die SQL-Abfragen in Textdateien speichern, um sie wiederzuverwenden (wie jedes Tool in anderer Software, aber viel transparenter). Sie können Funktionen in vielen verschiedenen Sprachen wie plpgsql (eine spezielle PostgreSQL-Sprache), Python, pLR, C und vielen mehr schreiben.
Für Desktop-GIS verwende ich hauptsächlich QGIS. Was nicht im Kern von QGIS enthalten ist, sind die Erweiterungen. Wenn das nicht genug ist, kannst du deine eigene Erweiterung in Python schreiben und ich denke auch C ++)
Wenn Sie an uDig gewöhnt sind, ist dies natürlich eine Alternative.
Wenn Sie ein Web-Mapping durchführen möchten, können Sie MapServer ausprobieren. Mapserver gewann den großen Benchmark auf der diesjährigen FOSS4G-Konferenz im Dienste von WMS. Esri wollte dieses Jahr nicht teilnehmen. Letztes Jahr hatten sie sich für die Teilnahme angemeldet, aber nie. Dieses Jahr haben sie sich nicht einmal registriert.
GeoServer ist eine weitere Alternative zum Bereitstellen von Webkarten. Es ist sehr benutzerfreundlich und bedient viele verschiedene Formate. Es verarbeitet auch WFS-T, sodass Sie Kartendaten bearbeiten und die Änderungen an den Server zurücksenden können.
Wenn Sie einen leichten und sehr schnellen WFS-T-Server wünschen, sollten Sie sich Tiny-OWS ansehen
Nun, die Liste könnte lange aus kompetenter Software bestehen, die zusammen eine sehr leistungsfähige und natürlich anpassbare Suite bildet.
Ich meine, kann es anpassbarer sein. Sie haben Zugriff auf den gesamten Quellcode. Und für das Geld, das Sie sparen, wenn Sie keine jährlichen Gebühren an Esri zahlen, können Sie kostenlos Programmieren lernen oder einen Programmierer einstellen. In diesen Projekten erhalten Sie viel Codierung für die Kosten einer ArcGIS Server-Lizenz.
quelle
Ich stimme dir nicht zu.
Ich denke, die ArcGIS-Hilfe / Foren / Blogs / Videos / usw. bieten einen guten Überblick darüber, was Sie mit der ArcGIS-Produktreihe erreichen können.
Sie sind nicht auf Python beschränkt, um Ihre Geodaten zu bearbeiten. Sie können weiterhin VBA bei 931 und 10 verwenden, um auf die ArcObjects-Bibliothek zuzugreifen, oder Sie können noch einen Schritt weiter gehen und .NET verwenden, um alle möglichen Aufgaben zu erledigen. Auch dies ist gut dokumentiert.
Ich finde auch die Verknüpfungen für ArcGIS Desktop großartig, und Sie können bei Bedarf Ihre eigenen Verknüpfungen über das Dialogfeld "Anpassen" erstellen.
Wenn Sie nicht lernen möchten, wie man programmiert , gibt es auch ModelBuilder, mit dem sich mühsame Aufgaben / allgemeine Workflows, insbesondere bei der Geoverarbeitung , hervorragend automatisieren lassen .
Ich bin voreingenommen, habe aber Erfahrung mit anderen Produkten.
Ich weiß, dass Python nicht in der Lage ist, einfach anpassbare Benutzeroberflächen für Benutzer bereitzustellen, aber wie bereits erwähnt, können Sie mit VBA / .NET inhaltsreiche Formulare zusammenstellen, um Benutzern eine benutzerdefinierte Benutzeroberfläche zu bieten, auf der sie das tun können, was sie benötigen machen.
quelle
Komisch, ich habe letzte Woche gelernt, wie man das macht.
DS Map Book könnte eine Lösung für Sie sein? Oder wenn Sie auf v10, D ata Driven Pages sind ? Wie gesagt, .NET / VBA-Skripte könnten dies tun. Ich bin nicht zu scharf auf Python, um eine Python-Lösung bereitzustellen
Ich stimme dir hier zu. Ich weiß, dass ESRI sich dessen bewusst ist, bin mir aber nicht sicher, ob etwas in der Pipeline ist. Dieser Link kann als Starter hilfreich sein, wenn Sie einen Hintergrund in VBA haben. Ich würde immer noch argumentieren, dass die GTK AO immer noch eine gültige Lektüre ist und die gewonnenen Erkenntnisse weiterhin für .NET gelten (und Sie können das Buch in einer Woche um 1-2 Stunden pro Tag durcharbeiten).
Ich war / bin ein großer Fan von VBA ...
quelle
Wenn Sie auf der ArcGIS-Plattform nicht zur manuellen Arbeit verurteilt sind, sind Sie dazu verdammt, Programmierarbeit zu leisten (nicht schlecht für mich, da mir so etwas Spaß macht)!
Ich kenne keine Möglichkeit in 9.3.x, Standardwerte in der Geodatabase zu überschreiben, ohne auf benutzerdefinierte Tools zurückzugreifen. Dies ist, was ich tue, insbesondere wenn es sich um eine Reihe sich wiederholender Bearbeitungsvorgänge handelt.
In ArcGIS 10 kann der Benutzer zunächst Vorlagen zum Erstellen von Features erstellen und Standardwerte für jede Vorlage festlegen. Die Vorlagen sind die Symbole für einen Feature-Layer. Sie können die Vorlagen zum Erstellen von Features jedoch nach Bedarf kopieren / entfernen / ändern . Ich bin noch nicht zu ArcGIS 10 übergegangen, aber dies ist eine der Funktionen, auf die sich unsere GIS-Editoren freuen.
Ich musste nie eine Verknüpfung entfernen, daher bin ich mir nicht sicher, ob Sie dies in einer beliebigen Version von ArcGIS tun können. Sie können sie definitiv hinzufügen (Beschleuniger). Ich bin nicht sicher, ob Sie sie überschreiben können. Wenn Sie können, können Sie sie möglicherweise mit einem Dummy-Befehl überschreiben, der nichts bewirkt.
Wie von Simon erwähnt, können Sie ArcObjects / .NET verwenden und mit mehreren MXDs arbeiten. Obwohl ich finde, dass ArcObjects sehr wählerisch ist, wenn das MXD entweder unterbrochene Datenverbindungen oder eine der verschiedenen Service-Schichten enthält. In ArcGIS 10 haben Sie arcpy.mapping in Python, das bei der Skripterstellung für MXDs / LYRs in Python hilft. Es ist immer noch ein kleiner Buggy, aber es könnte für Sie funktionieren, je nachdem, was Sie in Ihrem MXD haben.
quelle
Obwohl ich ArcGIS wirklich mag, muss ich zugeben, dass die Möglichkeit, auf der Workstation ArcInfo bereitgestellte Überwachungsdateien zu erstellen, auf dem Desktop schmerzlich fehlt. Viele kennen die Fähigkeit von Excel, Makros aufzuzeichnen. Es scheint, als könnte ESRI ähnliche Funktionen entwickeln - auch nach 10.0, wenn VBA in den Ruhestand geht. Neooffice kann beispielsweise Python-Makros aufzeichnen .
ArcGIS Engine ist in hohem Maße anpassbar. Sie können damit kleine, fokussierte Tools erstellen, die eines tun und es gut machen. Es enthält Vorlagenprojekte für Visual Studio, einschließlich der kostenlosen Express Edition (?), Mit der kleine, leichte Kartenbetrachter-Apps ohne Codierung erstellt werden können. Um jedoch alle Vorteile von ArcGIS Engine nutzen zu können, müssen Sie Zeit in das Erlernen einer .NET-Programmiersprache investieren.
quelle
Dies ist die Realität, wenn das Toolset die Datenbank steuert und nicht umgekehrt. Sie scheinen sich an der Stelle zu befinden, an der Sie eine umfassende Datenbankstruktur benötigen, mit der Sie Berichte ableiten, Aktualisierungen erstellen, Karten veröffentlichen usw. mit oder ohne GIS-Teil. Wenn Sie die Daten aus dem Tool freigeben, können Sie ein geeignetes Tool Ihrer Wahl verwenden. Deshalb haben wir offene Standards. Von dort aus können Sie die Anwendung verwenden, die den gewünschten Zweck am besten erfüllt. Ich hatte heute Morgen gerade das Gespräch, dass wenn Sie Daten in Spalten darstellen, diese nicht zu einer Excel-Tabelle werden.
Ein anderer Antwortender diskutierte die Einschränkung von Python, dies ist jedoch nicht der Fall. Aufgrund der umfangreichen Bibliotheken können Sie mit Python wahrscheinlich mehr Dinge tun als mit den meisten anderen Sprachen, und die Schnittstellen sind nicht so schwierig. Was einschränkt, ist die ESRI-Implementierung von Python in ArcGIS. Verwechseln Sie die beiden nicht.
quelle
Vielleicht möchten Sie MapWindow als kostenlose Alternative ausprobieren ... liest Shapefiles usw., aber Sie müssen wissen, wie man in C # programmiert. Aber dann haben Sie die totale Kontrolle über alles ...
http://www.mapwindow.org/
quelle