クラスの作成
ジオプロセシング ツールの入力パラメータにクラスを使用するには、初めにクラスを作成する必要があります。いったんクラスをインスタンス化しておくと、そのプロパティへのアクセスおよびオブジェクトの検索または変更が可能になります。各種のクラス オブジェクトを作成する方法を学ぶ最も簡単な方法は、異なる入力タイプを使用して作成する例を見ることです。
![ヒント ヒント](rsrc/tip.png)
各クラスのドキュメントには、それぞれのクラスを定義し、ツール パラメータで使用する方法を示したスクリプト例が記載されています。
固定数の入力で作成したクラス
- 固定数の入力から各種のクラスを作成する例を次に示します。
# 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)
Python リストまたはリストのリストで作成したクラス
- [トポ → ラスタ(Topo to 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])
- [再分類(Reclassify)] ツールで使用するリストからクラスを作成する例を次に示します。
# 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)
リスト内の一連のクラスから作成したクラス
- ラスタ セル抽出で使用するために、リスト内の一連の Point クラスからクラスを作成する例を次に示します。
# 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)
デフォルトの引数
- 一部の引数はオプションであり、使用例では {}(中括弧)で定義されています。たとえば、扇形近傍クラスの構文は次のようになります。
NbrWedge({radius}, {startAngle}, {endAngle}, {units})
- オプションの引数が指定されていない場合は、デフォルト値が使用されます。
# The circle neighborhood will default to # a radius of 3 and units of CELL circle = NbrCircle()
- オプションの引数は、空の引用符 "" または "#" のいずれかを使用して指定できます。これは値が省略されること、およびデフォルト値が望ましいことを示します。
関連トピック
5/10/2014