Abfragen von Klassen

Mit der Spatial Analyst-Lizenz verfügbar.

Sie können ein einzelnes Argument identifizieren, das in einem Parameter verwendet wurde, und basierend auf diesem Wert bestimmte Funktionen ausführen. In den folgenden Abschnitten werden die Regeln zum Abfragen der verschiedenen Argumente für Spatial Analyst-Klassen zusammengefasst.

Mit einer festen Anzahl von Eingaben erstellte Klassen

  • Um den Wert eines Arguments in einem Klassenobjekt abzufragen, können Sie auf die Eigenschaft des Objekts zugreifen.
    circle = NbrCircle(5, "CELL")
    
    # varRadius will be assigned the radius property (which is 5)
    varRadius = circle.radius
  • Sie können den Wert eines Objekts oder einer Objekteigenschaft leicht überprüfen.
    >>> circle = NbrCircle(5, "CELL")
    >>> print(circle)
    Circle 5 Cell
    >>> print(circle.radius)
    5

Aus Listen oder einer Listenauflistung erstellte Klassen

  • Mit der print-Funktion von Python können Sie die gesamte Neuzuordnungs-Tabelle anzeigen.
    >>> remap = RemapValue([[1, 11], [2, 12], [3, 13]])
    >>> print(remap)
    1 11; 2 12; 3 13
    >>> print(remap.remapTable)
    [[1, 11], [2, 12], [3, 13]]
  • Um aus einem einzelnen Eintrag in der Liste Klassenobjekte abzufragen, die aus Listen in Listen erstellt worden sind, identifizieren Sie die Liste, die den Eintrag enthält, und adressieren Sie die Position des Eintrags in dieser Liste.
    >>> remap = RemapValue([[1, 11], [2, 12], [3, 13]])
    >>> print(remap.remapTable[1][1])
    12

Innerhalb einer Liste aus einer Reihe von Klassen erstellte Klassen

  • Um ein Klassenobjekt, das aus einer Reihe von Klassen innerhalb einer Liste erstellt wurde, aus einer einzelnen X- oder Y-Koordinate oder aus den X- und Y-Koordinaten eines Punktes innerhalb einer Liste abzufragen, greifen Sie auf die Eigenschaft der jeweiligen Klasse in der Eingabereihe zu.
    >>> points = [Point(0, 5), Point(15, 175), Point(225, 450)]
    >>> # The following statement queries the x value of the second input point
    >>> xvalue = points[1].X
    >>> print(xvalue)
    15

Bestimmen des Typs

  • Um den Typ eines Klassenobjekts zu bestimmen, kann die type-Funktion von Python verwendet werden.
    >>> neighborhood = NbrCircle(5, "CELL")
    >>> neighType = type(neighborhood)
    >>> print(neighType)
    <class 'arcpy.sa.ParameterClasses.NbrWedge'>
  • Zum Vergleichen von Typen kann die isinstance-Funktion von Python verwendet werden.
    circle = NbrCircle(5, "CELL")
    
    # The general format is: isinstance(AnyObject, AnyClass)
    # In the following statement, val will be assigned True
    val = isinstance(circle, NbrCircle) 
    
    # In the following statement, val will be assigned False
    val = isinstance(circle, NbrRectangle)

Verwandte Themen