コンター (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 m = 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)