コンター(Contour) (3D Analyst)
使用法
-
コンターはラスタの空間範囲を超えることはなく、NoData のエリアに作成されることもありません。そのため隣接するコンターの入力データはまず、隣り合うフィーチャ データセットとエッジを合わせる必要があります。エッジを合わせる代わりに、コンターを計算する前に隣接するラスタをマージすることもできます。
-
コンターは負のラスタ値を持つエリアにも作成できます。そのようなエリアではコンター値は負の値になります。負のコンター指定はできません。
ArcGIS Spatial Analyst エクステンションを使用できる場合、正確さには劣るにしても滑らかなコンターを作成したい場合には、[フォーカル統計(Focal Statistics)] ツールの [MEAN] オプションを使用するか、[フィルタ(Filter)] ツールの [LOW] オプションを使用して、入力ラスタを事前処理します。
-
ベース コンターは、たとえば、10 メートルから開始して、15 メートルおきにコンターを作成する場合に使用されます。この場合、10 がベース コンターとして使用され、15 がコンター間隔になります。コンターの値は 10、25、40、55 のようになります。
-
ベース コンターを指定しても、その値より上または下のコンターが作成されるのを防ぐことはできません。
構文
パラメータ | 説明 | データ タイプ |
in_raster |
入力サーフェス ラスタ。 | Raster Layer |
out_polyline_features |
出力コンター ポリライン フィーチャ。 | Feature Class |
contour_interval | コンター ライン間の間隔、すなわち距離。 正の数値を指定できます。 | Double |
base_contour (オプション) |
ベース コンター値。 入力ラスタの値の範囲全体をカバーするように、必要に応じてこの値の上下にコンターが生成されます。デフォルトは 0 です。 | Double |
z_factor (オプション) | コンターを生成するときに使用する単位変換係数。デフォルト値は 1 です。 コンター ラインは、入力ラスタの Z 値に基づいて生成されます。これは、多くの場合、メートルまたはフィート単位です。デフォルト値が 1 の場合、コンターは入力ラスタの Z 値と同じ単位になります。Z 値とは異なる単位のコンターを作成するには、Z 係数に適切な値を設定します。このツールでは、地表 X、Y 単位とサーフェス Z 単位を一致させる必要はありません。 たとえば、入力ラスタの標高値はフィート単位であるが、コンターはメートル単位で生成したい場合、Z 係数を 0.3048 に設定します(1 フィート = 0.3048 メートルであるため)。 もう 1 つの例として、WGS_84 地理座標系で標高値がメートル単位の入力ラスタに対し、50 フィートをベースして 100 フィートごとにコンター ラインを生成する場合を考えます(つまり、コンターは 50 フィート、150 フィート、250 フィート、などとなります)。この場合、[contour_interval] を 100 に、[base_contour] を 50 に、[z_factor] を 3.2808 に、それぞれ設定します。(1 メートル = 3.2808 フィートであるため)。 | Double |
コードのサンプル
この例では、Esri Grid ラスタからコンターを作成して、それをシェープファイルとして出力します。
import arcpy
from arcpy import env
env.workspace = "C:/data"
arcpy.Contour_3d("elevation", "C:/output/outcontours.shp", 200, 0)
この例では、Esri Grid ラスタからコンターを作成して、それをシェープファイルとして出力します。
# Name: Contour_3d_Ex_02.py
# Description: Creates contours or isolines from a raster surface.
# Requirements: 3D Analyst Extension
# Import system modules
import arcpy
from arcpy import env
# Set environment settings
env.workspace = "C:/data"
# Set local variables
inRaster = "elevation"
contourInterval = 200
baseContour = 0
outContours = "C:/sapyexamples/output/outcontours02.shp"
# Check out the ArcGIS 3D Analyst extension license
arcpy.CheckOutExtension("3D")
# Execute Contour
arcpy.Contour_3d(inRaster, outContours, contourInterval, baseContour)