Ich habe ein ArcMap 10-Projekt mit mehreren Ebenengruppen. Eine Ebene ist ein Raster-DEM, eine andere Ebenengruppe besteht aus einer Reihe von Vektor-Shapefiles (einschließlich Punkten, Linien und Polygonen). Der Client möchte, dass alle Vektordaten Z-Werte enthalten.
Das Auffüllen der Attributtabellen für die Vektordaten mit X- und Y-Werten ist einfach genug, aber wie fülle ich die Z-Werte auf?
Gibt es eine Möglichkeit, mit dem Feldrechner die Höhenwerte für jedes Vektormerkmal aus der DEM-Ebene zu "erfassen"?
Ich sollte hinzufügen, dass wir keine Lizenz für die Erweiterungen 3D Analyst oder Spatial Analyst haben.
arcgis-desktop
arcgis-10.0
field-calculator
dem
Brad Torr
quelle
quelle
Antworten:
In ArcGIS habe ich dies bisher nur mit Punktvektoren gemacht. Ich bin mir nicht sicher, wie Sie dies mit Polygonen oder Linien-Features tun würden. Leider benötigen Sie Spatial Analyst. Unter Spatial Analyst Tools \ Extraction \ Extract Multi Values to Points und Extract Values to Points gibt es ein Tool . Das Extrahieren mehrerer Werte in Punkte ist besser, da Sie damit den Z-Feldnamen umbenennen können, in den Sie Ihre Werte extrahieren. Wenn Sie Werte in Punkte extrahieren, können Sie dies nicht tun. Ich habe Probleme damit in ArcMap (das Tool stürzt ab), aber es funktioniert gut in ArcCatalog.
Die (kostenlose) Hawths Analysis Tools- Erweiterung für ArcMap verfügte über ein Intersect Point Tool , die Entwicklung der Erweiterung wurde jedoch vor einigen Jahren eingestellt. Es wurde von der Geospatial Modeling Environment abgelöst , die ich nie verwendet habe.
SAGA-GIS (Freeware-Standalone-Software) verfügt unter Shapes über zwei Funktionen : Raster \ Rasterwerte zu Punkten und Formen hinzufügen - Raster \ Rasterwerte zu Formen hinzufügen , die wahrscheinlich das tun können, was Sie möchten. Dies ist die Beschreibung des Werkzeugs Gitterwerte zu Formen hinzufügen:
SAGA ist meiner Meinung nach die beste Wahl.
Hoffe das hilft!
quelle
Ich habe dies nicht für Polygone versucht, aber es funktioniert wirklich gut für Punkte. Wenn Sie in Arcmap 10 Zugriff auf ein 3D-Analystenwerkzeug haben, können Sie nach dem Werkzeug Interpolate Shape suchen. Anschließend wählen Sie Ihre Rasterdatei aus und Ihre Vektorebene passt die z-Werte an, wenn Sie Höhen in Fuß und Ihr DEM in Metern wünschen, und lassen Sie diese laufen . Sobald dies abgeschlossen ist, suchen Sie nach dem Werkzeug ADD XY und wählen Ihre neu erstellte Ebene aus. Anschließend werden Ihre X-, Y- und Z-Werte in dieser Ebenenattributtabelle berechnet.
quelle
Vielleicht können Sie gdallocationinfo verwenden , um alle Z-Werte abzurufen , indem Sie die X-, Y-Werte übergeben. Sobald Sie die Z-Werte haben, verwenden Sie den Feild-Rechner, um den Z-Wert zu den Punkten hinzuzufügen, aus denen jedes Feature besteht. Es würde einige Skripte geben, aber theoretisch sollte dies funktionieren.
quelle
Abhängig von Ihren Einheiten oder der erforderlichen Auflösung können Sie das DEM-Raster jederzeit direkt aus der Toolbox in ein Polygon-Shapefile exportieren und dann eine räumliche Verknüpfung durchführen - dies ist für Punkte am einfachsten. Wenn Sie Z-Werte für Linien oder Polygone benötigen, benötigen Sie offensichtlich definierte Segmente oder Unterteilungen von Polygonen bei jeder Höhenänderung, wie vom vektorisierten DEM-Gitter angegeben. Dies kann über Standard-Geoverarbeitungswerkzeuge und räumliche Verknüpfungen erfolgen. Sie müssen jedoch genau auf Ihre Auflösungsanforderungen und den Verarbeitungsaufwand achten, den ein großer Datensatz benötigt.
quelle
Ich empfehle, eine 3D Analyst-Lizenz zu erwerben und Oberflächeninformationen hinzufügen zu verwenden . Oder verwenden Sie Interpolate Shape, gefolgt von Add Z Information, wodurch einige Funktionen NA-Werte zurückgeben können, ohne das gesamte Programm zum Absturz zu bringen. Ansonsten gibt es zwei bewährte kostenlose Methoden , die mehr Beinarbeit erfordern. Es ist möglich, diese in QGIS zu implementieren , sodass Sie Ihre bequeme GIS-Umgebung nicht verlassen müssen.
quelle
Das ESRI-Tool, das Sie verwenden möchten, ist "Z-Informationen hinzufügen". Vielleicht können Sie eine Testversion erhalten und sehen, ob das Tool für Sie von weiterem Nutzen ist. Wenn das Erhalten der 3D Analyst-Erweiterung keine Option ist, fällt Ihnen (außer einer Programmierlösung) nur ein, dass Sie Ihre Daten aus ESRI entfernen und eine der kostenlosen Optionen wie SAGA-GIS / qGIS "Add Grid" verwenden Wert für Formen "oder" Rasterstatistik für Polygone "ist nicht so flexibel wie ESRIs, macht aber dasselbe, wenn Sie nach der durchschnittlichen Höhe entlang des Polygons / der Linie suchen.
quelle
Ich weiß, wie man das für Punkte macht. Linien und Polygone unterscheiden sich, weil sie mehrere Gitterzellen des DEM kreuzen. Sie können Punkte entlang der Linien oder ähnliches machen und Werte für diese extrahieren. In Arc benötigen Sie einen räumlichen Analysten, um die Werte abzurufen. Sie können sie jedoch über Qgis (kostenlos) abrufen, obwohl dies nicht so nützlich ist. Sie müssen in der Lage sein, mit Excel-Dateien zu arbeiten und diese aus Shapefiles hin und her zu konvertieren. Das Qgis generiert ein Shapefile, das nur die extrahierten Punkthöhen enthält. Sie müssen dieses also kopieren und als Excel-Datei in Ihre Originaltabelle einfügen (mit den X-, Y-Werten, damit Sie es wieder in ein Shapefile mit zurücksetzen können "x, y Daten anzeigen"). Sie müssen Ihre Projektionen im Auge behalten, um sicherzustellen, dass Sie die richtige auswählen, wenn Sie zurück in Shapefile konvertieren.
quelle