Domaine raster (3D Analyst)
Récapitulatif
Crée une emprise surfacique ou polylinéaire des portions de données d'un jeu de données raster.
Illustration
Utilisation
Des rasters monocanaux et multicanaux peuvent être fournis en entrée.
L'entité domaine se prolonge jusqu'au centre des cellules du périmètre dans les blocs de données contigus du raster. Le centre des cellules définit la zone d'interpolation d'une surface raster. Les cellules NoData sont ignorées dans l'entité en sortie.
La géométrie en sortie est placée dans un seul enregistrement d'entité et peut comprendre une entité multipart si le raster possède des cellules de données discontinues, séparées par des cellules NoData.
Remarque :Les polygones 3D contiennent seulement des valeurs d'altitude le long du périmètre des entités, car les portions intérieures du polygone ne contiendront pas de sommets. En cas de dessin en 3D avec une zone de remplissage, les sommets de limite sont connectés arbitrairement aux triangles pour l'affichage. A moins que le polygone soit plane, incliné ou horizontal, il est peu probable que le remplissage représente précisément la surface intérieure. Pour cette raison, il est recommandé que des polygones 3D non planaires soient dessinés sans symbologie de remplissage.
Syntaxe
Paramètre | Explication | Type de données |
in_raster |
Raster en entrée. | Raster Layer |
out_feature_class |
Classe d'entités en sortie. | Feature Class |
out_geometry_type |
Géométrie de la classe d'entités en sortie.
| String |
Exemple de code
L'exemple suivant illustre l'utilisation de cet outil dans la fenêtre Python :
import arcpy
from arcpy import env
arcpy.CheckOutExtension("3D")
env.workspace = "C:/data"
arcpy.RasterDomain_3d("dtm_grd", "raster_domain.shp", "POLYGON")
L'exemple suivant illustre l'utilisation de cet outil dans un script Python autonome :
'''*********************************************************************
Name: RasterDomain Example
Description: This script demonstrates how to use the
Raster Domain tool to generate polygon footprints for all
*.img rasters in a given workspace.
**********************************************************************'''
# Import system modules
import arcpy
from arcpy import env
# Obtain a license for the ArcGIS 3D Analyst extension
arcpy.CheckOutExtension("3D")
# Set environment settings
env.workspace = "C:/data"
try:
# Create the list of IMG rasters
rasterList = arcpy.ListRasters("*", "IMG")
# Verify there are rasters in the list
if rasterList:
# Loop the process for each raster
for raster in rasterList:
# Set Local Variables
outGeom = "POLYGON" # output geometry type
# The [:-4] strips the .img from the raster name
outPoly = "domain_" + raster[:-4] + ".shp"
print "Creating footprint polygon for " + raster + "."
#Execute RasterDomain
arcpy.RasterDomain_3d(raster, outPoly, outGeom)
print "Finished."
else:
"There are no IMG files in the " + env.workspace + " directory."
except Exception as e:
# Returns any other error messages
print e.message