Beschriftung | Erläuterung | Datentyp |
Eingabe-Raster | Das Eingabe-Raster-Dataset. Das Raster kann ein Ganzzahl- oder Gleitkomma-Raster sein. | Raster Layer |
Ausgabe-Float-Raster-Datei | Die Ausgabe-Raster-Datei im Gleitkommaformat. Der Dateiname muss die Erweiterung .flt aufweisen. | File |
Zusammenfassung
Konvertiert ein Raster-Dataset in eine Datei mit binären Gleitkommawerten, die Raster-Daten darstellen.
Verwendung
Als Eingabe-Raster-Dataset sind alle gültigen Raster-Datasets zulässig.
Es werden zwei Ausgabeformate erstellt: eine binäre 32-Bit-Datei mit Vorzeichen im IEEE-Gleitkomma-Format mit der Erweiterung .flt und eine ASCII-Header-Datei mit der Erweiterung .hdr. Beide verwenden denselben Ausgabe-Gleitkomma-Raster-Dateinamen.
Die ASCII-Datei besteht aus Header-Informationen mit einer Reihe von Schlüsselwörtern.
Das Format der Datei lautet im Allgemeinen wie folgt:
NCOLS xxx NROWS xxx XLLCORNER xxx YLLCORNER xxx CELLSIZE xxx NODATA_VALUE xxx BYTEORDER <MSBFIRST | LSBFIRST>
Die Definitionen der Schlüsselwörter lauten wie folgt:
NCOLS und NROWS geben die durch die Binärdatei definierte Anzahl der Spalten und Zeilen im Raster an.
XLLCORNER und YLLCORNER stehen für die Koordinaten der unteren linken Ecke der unteren linken Zelle.
Die Verwendung von XLLCENTER und YLLCENTER wird von Raster in Float nicht unterstützt.
CELLSIZE ist die Zellengröße des Rasters.
NODATA_VALUE ist der Wert, der die NoData-Zellen angibt.
Durch BYTEORDER wird festgelegt, wie Binärzahlen mit mehreren Byte in dem System gespeichert werden, in dem die Binärdatei generiert wurde. Bei Systemen mit Intel-CPU ist die Byte-Reihenfolge LSBFIRST (auch bekannt als "Little Endian"). In den meisten anderen Architekturen (die meisten Unix-Systeme außer Alpha sowie ältere Macintosh-Systeme mit Motorola CPUs) ist die Byte-Reihenfolge MSBFIRST (auch bekannt als "Big Endian").
Der Wert NODATA_VALUE wird in der Ausgabedatei den Zellen im Eingabe-Raster zugeordnet, die NoData-Werte enthalten. Dieser Wert ist normalerweise den Zellen vorbehalten, deren wahrer Wert unbekannt ist.
NoData-Werte im Eingabe-Raster erhalten in der Ausgabe-Float-Datei standardmäßig den Wert -9999. Wenn Sie einen anderen Wert verwenden möchten, gehen Sie wie folgt vor:
- Führen Sie das Werkzeug Erweiterung "ArcGIS Spatial Analyst" IsNull für das ursprüngliche Raster aus. Es wird ein Raster mit binären Werten ausgegeben, wobei der Wert "1" den NoData-Werten im ursprünglichen Raster entspricht. Der Wert "0" entspricht allen übrigen Werten.
- Führen Sie das Erweiterung "ArcGIS Spatial Analyst"-Werkzeug If-Else-Bedingungen aus. Geben Sie dabei folgende Werte an: das Ergebnis von IsNull als Eingabe-Bedingungs-Raster, den neuen Wert, der den NoData-Werten zugeordnet werden soll, als Eingabe-Wert, wenn Bedingung WAHR, das Ursprungs-Raster als Eingabe-Raster, wenn Bedingung FALSCH und den Bedingungsausdruck "value = 1".
- Konvertieren Sie das Con-Ausgabe-Raster mit dem Werkzeug Raster in FLOAT in eine Binärdatei im Gleitkommaformat.
- Ändern Sie in der ASCII-Header-Datei den Wert NODATA_VALUE in den Wert, in den NoData konvertiert wurde.
Bei diesem Werkzeug wird der Ursprung nur als linke untere Ecke der linken unteren Zelle geschrieben. Das Werkzeug Raster kopieren unterstützt als Ursprung auch den Mittelpunkt der unteren linken Zelle.
Parameter
arcpy.conversion.RasterToFloat(in_raster, out_float_file)
Name | Erläuterung | Datentyp |
in_raster | Das Eingabe-Raster-Dataset. Das Raster kann ein Ganzzahl- oder Gleitkomma-Raster sein. | Raster Layer |
out_float_file | Die Ausgabe-Raster-Datei im Gleitkommaformat. Der Dateiname muss die Erweiterung .flt aufweisen. | File |
Codebeispiel
Konvertiert ein Raster-Dataset in eine Datei mit binären Gleitkommawerten, die Raster-Daten darstellen.
import arcpy
arcpy.env.workspace = "C:/data"
inRaster = "elevation"
outFloat = "c:/output/elevation.flt"
arcpy.conversion.RasterToFloat("elevation", "c:/output/elevation.flt")
Konvertiert ein Raster-Dataset in eine Datei mit binären Gleitkommawerten, die Raster-Daten darstellen.
# Name: RasterToFloat_Ex_02.py
# Description: Converts a raster dataset to a file of binary floating-point
# values representing raster data.
# Requirements: None
# Import system modules
import arcpy
# Set environment settings
arcpy.env.workspace = "C:/data"
# Set local variables
inRaster = "elevation"
outFloat = "c:/output/elevation.flt"
# Run RasterToFloat
arcpy.conversion.RasterToFloat(inRaster, outFloat)