Création de classes
Pour utiliser des classes pour les paramètres en entrée des outils de géotraitement, vous devez d'abord les créer. Une fois les classes instanciées, vous pouvez accéder à leurs propriétés et interroger ou modifier les objets. La méthode la plus simple pour apprendre à créer les différents objets de classe consiste à examiner des exemples d'objets créés à l'aide des différents types d'entrée.
Astuce :
La documentation de chaque classe contient un exemple de script illustrant comment chacune peut être définie et utilisée dans un paramètre d'outil.
Classes créées avec un nombre fixe d'entrées
- Voici des exemples de création de diverses classes à partir d'un nombre fixe d'entrées :
# Creating a neighborhood class and assigning it to a variable neighborhood = NbrRectangle(10, 10, "CELL") outFocalStats = FocalStatistics(inRas, neighborhood, "MINORITY")
# Creating the Kriging model to be used kModelOrdinary = KrigingModelOrdinary("CIRCULAR", 2000, 2.6, 542, 0) # Creating a radius class and assigning it to a variable kRadius = RadiusFixed(20000, 1) outKriging = Kriging(inFeatures, field, kModelOrdinary, cellSize, kRadius, outVarRaster)
Classes créées à l'aide de listes Python ou d'une liste de listes
- Voici un exemple de création d'une classe à partir d'une liste pour utilisation dans l'outil Topo vers raster :
# Create classes as input for TopoToRaster myTopoPtElev = TopoPointElevation([["spots.shp", "spot_meter"], ["spots2.shp", "elev"]]) myTopoContour = TopoContour([["contours.shp", "spot_meter"]]) myTopoBoundary = TopoBoundary(["boundary.shp"]) myTopoLake = TopoLake(["lakes.shp"]) myTopoSink = TopoSink([["sink1.shp", "elevation"], ["sink2.shp", "NONE"]]) myTopoStream = TopoStream(["streams.shp"]) # Applying the tool outTopoToRaster = TopoToRaster([myTopoPtElev, myTopoContour, myTopoBoundary, myTopoLake, myTopoSink, myTopoStream])
- Voici un exemple de création d'une classe à partir d'une liste pour utilisation dans l'outil Reclassification :
# The RemapValue class has a usage of: # RemapRange(startValue, endValue, newValue) RemapTable = RemapValue([[1, 5], [2, 8], [3, 1], [4, 10]]) # Run the tool outReclass = Reclassify("inRas", RemapTable)
Classes créées à partir d'une série de classes dans une liste
- Voici un exemple de création de classes à partir d'une série de classes Point dans une liste, pour utilisation dans l'extraction de cellules raster :
# Identify the points to be extracted by creating a list # of Point objects. PointsToExtract = [Point(0, 5), Point(15, 175), Point(225, 450)] # Run the tool Outraster = ExtractByPoints(PointsToExtract)
Arguments par défaut
- Certains arguments sont facultatif et sont définis par {} (accolades) dans l'utilisation. Par exemple, la syntaxe pour la classe de voisinage en secteurs est la suivante :
NbrWedge({radius}, {startAngle}, {endAngle}, {units})
- Si un argument facultatif n'est pas spécifié, une valeur par défaut est utilisée.
# The circle neighborhood will default to # a radius of 3 and units of CELL circle = NbrCircle()
- Les arguments facultatifs peuvent être spécifiés à l'aide de guillemets vides, "" ou "#", pour indiquer que la valeur doit être ignorée et que la valeur par défaut est désirée.
Rubriques connexes
7/10/2012