Crear clases

Disponible con una licencia de Spatial Analyst.

Para utilizar clases para parámetros de entrada correspondientes a herramientas de geoprocesamiento, primero debe crearlas. Una vez creada la instancia, puede acceder a sus propiedades y consultar o modificar los objetos. La manera más eficiente de aprender a crear los diversos objetos de clase es ver ejemplos de ellos que se crean utilizando diferentes tipos de entrada.

Sugerencia:

La documentación para cada clase contiene un ejemplo de secuencia de comandos de cómo se puede definir y utilizar cada una de ellas en un parámetro de herramienta.

Clases creadas con un número fijo de entradas

  • Los siguientes son ejemplos de cómo crear una variedad de clases de un número de entrada fijo:
    # 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)

Clases que se crean con listas de Python o listas de listas

  • El siguiente es un ejemplo de cómo crear una clase a partir de una lista para utilizarla en la herramienta De topo a ráster:
    # 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])
  • El siguiente es un ejemplo de cómo crear una clase a partir de una lista para utilizarla en la herramienta Reclasificar:
    # 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)

Clases creadas a partir de una serie de clases dentro de una lista

  • El siguiente es un ejemplo de cómo crear clases a partir de una serie de clases Point dentro de una lista para usarlas en la extracción de celdas ráster:
    # 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)

Argumentos predeterminados

  • Ciertos argumentos son opcionales y se definen mediante {} (llaves) en el uso. Por ejemplo, la sintaxis para la clase de vecindad en cuña es la siguiente:
    NbrWedge({radius}, {startAngle}, {endAngle}, {units})
  • Si no se especifica un argumento opcional, se utilizará un valor predeterminado.
    # The circle neighborhood will default to
    #   a radius of 3 and units of CELL
    circle = NbrCircle()
  • Los argumentos opcionales se pueden especificar utilizando comillas vacías, "" o "#", que denota que el valor se debe omitir y se desea el valor predeterminado.

Temas relacionados