到達圏の生成(Generate Service Areas) (Network Analyst)

ライセンス レベル:BasicStandardAdvanced

サマリ

到達圏ネットワーク解析レイヤを作成し、解析プロパティを設定し、解析を実行します。このツールは、Web 上で到達圏のジオプロセシング サービスを設定する場合に最適です。到達圏ネットワークは、1 つ以上の施設から、指定した距離または移動時間内でアクセスできる道路をすべて含む領域です。

通常、到達圏は、アクセシビリティの表示と計測に使用されます。たとえば、食料品店から 3 分の走行時間のポリゴンは、3 分以内にその店に到達可能な居住者、つまりその店で買い物をする可能性の高い居住者を特定できます。

注意注意:

[到達圏の生成(Generate Service Areas)] ツールと [到達圏レイヤの作成(Make Service Area Layer)] ツールは類似していますが、それぞれ異なる目的で設計されています。ジオプロセシング サービスをセットアップする場合、[到達圏の生成(Generate Service Areas)] ツールを使用すると、セットアップ プロセスが簡単になります。そうでない場合は、[到達圏レイヤの作成(Make Service Area Layer)] を使用します。到達圏ラインを生成する必要がある場合にも、[到達圏レイヤの作成(Make Service Area Layer)] を使用します。ラインを生成するオプションは、[到達圏の生成(Generate Service Areas)] では提供されません。

[到達圏の生成(Generate Service Areas)] を使用して到達圏ジオプロセシング サービスを作成する場合、1 つのツールをセットアップするだけで済みます。このツールをサービスとして直接公開することができます。これに対して、[到達圏レイヤの作成(Make Service Area Layer)] を使用して到達圏ジオプロセシング サービスを作成するには、モデルを作成し、それをさまざまな他のツールに正しく接続して公開する必要があります。

チュートリアル データを使用した走行時間ポリゴン サービスの設定方法については、「ジオプロセシング サービスの例: 走行時間ポリゴン」をご参照ください。

使用法

構文

GenerateServiceAreas_na (Facilities, Break_Values, Break_Units, Network_Dataset, Service_Areas, {Travel_Direction}, {Time_of_Day}, {UTurn_Policy}, {Point_Barriers}, {Line_Barriers}, {Polygon_Barriers}, {Time_Attribute}, {Time_Attribute_Units}, {Distance_Attribute}, {Distance_Attribute_Units}, {Use_Hierarchy_in_Analysis}, {Restrictions}, {Attribute_Parameter_Values}, {Maximum_Snap_Tolerance}, {Exclude_Restricted_Portions_of_the_Network}, {Feature_Locator_WHERE_Clause}, {Polygons_for_Multiple_Facilities}, {Polygon_Overlap_Type}, {Detailed_Polygons}, {Polygon_Trim_Distance}, {Polygon_Simplification_Tolerance}, {Maximum_Facilities}, {Maximum_Number_of_Breaks}, {Maximum_Features_Affected_by_Point_Barriers}, {Maximum_Features_Affected_by_Line_Barriers}, {Maximum_Features_Affected_by_Polygon_Barriers}, {Maximum_Break_Time_Value}, {Maximum_Break_Distance_Value}, {Force_Hierarchy_beyond_Break_Time_Value}, {Force_Hierarchy_beyond_Break_Distance_Value})
パラメータ説明データ タイプ
Facilities

周辺に到達圏が作成される施設。

施設フィーチャ セットには、以下の 3 つの属性があります。

ObjectID:

システムで管理される ID フィールド。

Shape:

ネットワーク解析オブジェクトの地理的な位置を示すジオメトリ フィールド。

Name:

施設の名前。名前が空、空白、または NULL の場合、名前は解析時に自動的に生成されます。

Feature Set
Break_Values

施設ごとに作成される到達圏ポリゴンのサイズと数を指定します。単位は、[ブレークの単位] の値によって決まります。

[到達圏の生成(Generate Service Areas)] ツールを実行すると、次のパラメータは互いに影響して新しい値が定義されます。[ブレーク値][ブレークの単位]、および [時間属性] または [距離属性] のいずれかです。[ブレーク値][ブレークの単位] を組み合わせて、1 つまたは複数の施設の周囲で到達圏が延長される、距離または時間を定義します。[時間属性] パラメータと [距離属性] パラメータは、それぞれ 1 つのネットワーク コスト属性を定義します。ただし、これら 2 つのコスト属性のうちの 1 つのみが使用されます。解析に使用することが選択されたコスト属性は、[ブレークの単位] の値に対応します。つまり、時間を基準にした [ブレークの単位] の値(秒や分など)を指定した場合、ツールは、[時間属性] パラメータで定義されたコスト属性を使用して解析します。距離を基準にした [ブレークの単位] の値(キロメートルやマイルなど)を指定した場合、[距離属性] パラメータで定義されたコスト属性が使用されます。

複数のポリゴンのブレーク値を設定することで、同心状の到達圏を施設ごとに作成できます。たとえば、施設ごとに 2 マイル、3 マイル、および 5 マイルの到達圏を検索するには、「2 3 5」というように、値をスペースで区切って入力します。[ブレークの単位] をマイルに設定し、距離を基準にしたネットワーク属性を [距離属性] パラメータに対して選択していることを確認してください。

String
Break_Units

[ブレーク値] パラメータの単位。

  • 時間
  • マイル
  • キロメートル
  • メートル
  • フィート
  • 海里マイル
  • ヤード

[到達圏の生成(Generate Service Areas)] ツールは、ここで時間ベースまたは距離ベースのどちらの単位を指定したかに応じて、[時間属性] パラメータで指定されたネットワーク コスト属性を使用するのか、[距離属性] パラメータで指定されたネットワーク コスト属性を使用するのかを選択します。

[ブレークの単位] が、対応する時間または距離のコスト属性の単位と異なる場合、ツールは必要な単位変換を実行します。

String
Network_Dataset

到達圏解析が実行されるネットワーク データセット。ネットワーク データセットには、少なくとも、1 つの時間ベースのコスト属性と 1 つの距離ベースのコスト属性が必要です。

Network Dataset Layer
Service_Areas

出力フィーチャの出力ワークスペースと出力名。このワークスペースはすでに存在している必要があります。デフォルトの出力ワークスペースは、インメモリです。

Feature Class
Travel_Direction
(オプション)

到達圏ポリゴンの作成に使用される移動方向について、施設に向かうのか、施設から離れるのかを選択します。

  • TRAVEL_FROM施設から離れる方向に到達圏が作成されます。
  • TRAVEL_TO施設に向かう方向に到達圏が作成されます。

道路の両側でインピーダンスが異なったり、一方通行道路が存在する場合があるため、移動方向によってポリゴンの形状が変化することがあります。方向は、到達圏解析の目的に応じて選択する必要があります。たとえば宅配ピザの到達圏であれば、施設から離れる方向に作成され、病院の到達圏であれば、施設に向かう方向に作成されます。これは、患者にとって、病院に向かう移動時間が重要であるためです。

String
Time_of_Day
(オプション)

施設からの出発時間と施設への到着時間。この値の解釈は、移動方向が施設への到着である場合と施設からの出発である場合で異なります。

  • [移動方向] が TRAVEL_FROM に設定されている場合、出発時間を表します。
  • [移動方向] が TRAVEL_TO に設定されている場合、到着時間を表します。

ネットワーク データセットには、このパラメータに影響を与える交通量データを含める必要があります。

同じ解析を [時刻] の値を変えて繰り返し実行します。これにより、時間の経過に伴う施設の到着時間の変化を確認できます。たとえば、消防署から 5 分間の到達圏は、早朝には大きくなり、混雑する朝の時間帯は縮小し、朝の遅い時間帯には拡大するなど、一日を通して変化します。

Date
UTurn_Policy
(オプション)

ジャンクションでの U ターン ポリシーU ターンを許可するということは、解析においてジャンクションで方向転換し、同じ道路を引き返すことができるということを意味します。 ジャンクションが道路の交差と行き止まりを表すことを前提に、さまざまな車両が、一部のジャンクションでは方向転換でき、他のジャンクションでは方向転換できない、というように設定できます。これは、ジャンクションが交差と行き止まりのどちらを表すかによって変わります。これに対応するには、ジャンクションに接続するエッジの数(ジャンクションでのノードへの接続数)によって、暗黙的に U ターン ポリシーを指定します。以下では、このパラメータで選択できる値と、ジャンクションので接続におけるそれぞれの意味について示します。

  • ALLOW_UTURNS(U ターンを許可)任意の数の接続されたエッジを持つジャンクションで U ターンを許可します。これがデフォルト値です。
  • NO_UTURNS(U ターンを規制)ジャンクションの接続にかかわらず、すべてのジャンクションで U ターンを禁止します。ただし、この設定が選択されている場合でも、ネットワーク ロケーションでは U ターンが許可されます。同様に、個々のネットワーク ロケーションの CurbApproach プロパティで U ターンを禁止するように設定できます。
  • ALLOW_DEAD_ENDS_ONLY(行き止まりのみ許可)1 つの隣接エッジを持つジャンクション(行き止まり)を除くすべてのジャンクションでの U ターンを禁止します。
  • ALLOW_DEAD_ENDS_AND_INTERSECTIONS_ONLY2 つの隣接するエッジが接するジャンクションでの U ターンを禁止します。ただし、交差点(3 つ以上の隣接エッジを持つジャンクション)および行き止まり(1 つの隣接エッジを持つジャンクション)では U ターンを許可します。ネットワークには、道路セグメントの中間に無関係のジャンクションが存在する場合があります。このオプションは、これらの場所で車両が U ターンすることを防ぎます。
ヒントヒント:

U ターン ポリシーをさらに正確に定義する必要がある場合、グローバル ターン遅延エバリュエータをネットワーク コスト属性に追加するか、すでに存在する場合はそれを調整することを検討してください。その際、逆ターンの設定には特に注意が必要です。また、ネットワーク ロケーションの CurbApproach プロパティの設定についても調べてください。

String
Point_Barriers
(オプション)

ポイント バリアを指定します。ポイント バリアは、通行不可と追加コストの 2 種類に分かれています。これらは、一時的にネットワーク上のポイントの通行を規制したり、ポイントにインピーダンスを追加したりします。ポイント バリアはフィーチャ セットで定義されます。ポイント フィーチャに指定した属性値によって、ポイント バリアが通行不可バリアなのか、追加コスト バリアなのかが決まります。属性テーブルの各フィールドとその説明を以下に示します。

ObjectID:

システムで管理される ID フィールド。

Shape:

ネットワーク解析オブジェクトの地理的な位置を示すジオメトリ フィールド。

Name:

バリアの名前。

BarrierType:

バリアの通過を完全に規制するのか、バリアを通過する際のコストを追加するのかを指定します。次の 2 つのオプションがあります。

  • 通行不可(0): バリアを通過できません。これがデフォルト値です。
  • 追加コスト(2): バリアを通過するたびに、[Additional_Time] フィールドと [AdditionalDistance] フィールドで指定した値だけネットワーク コストが加算されます。

[規制] の場合は 0 の値、[追加コスト] の場合は 2 の値を使用します。

AdditionalCost:

AdditionalCost は、到達圏がバリアを通過するときに追加されるインピーダンスを指定します。

このフィールド値の単位は、[ブレークの単位] で指定した単位と同じです。

Feature Set
Line_Barriers
(オプション)

一時的にラインの横断を規制するライン バリアを指定します。ライン バリアは、フィーチャ セットで定義されます。属性テーブルの各フィールドとその説明を以下に示します。

ObjectID:

システムで管理される ID フィールド。

Shape:

ネットワーク解析オブジェクトの地理的な位置を示すジオメトリ フィールド。

Name:

バリアの名前。

Feature Set
Polygon_Barriers
(オプション)

ポリゴン バリアを指定します。ポリゴン バリアは、通行不可とコスト係数指定の 2 種類に分かれています。これらは、ポリゴン バリアに含まれるネットワークの一部に対して、一時的に通行を規制したり、インピーダンスを増減したりします。ポリゴン バリアはフィーチャ セットで定義されます。ポリゴン フィーチャに指定した属性値によって、ポリゴン バリアが通行不可バリアなのか、コスト係数指 バリアなのかが決まります。属性テーブルの各フィールドとその説明を以下に示します。

ObjectID:

システムで管理される ID フィールド。

Shape:

ネットワーク解析オブジェクトの地理的な位置を示すジオメトリ フィールド。

Name:

バリアの名前。

BarrierType:

バリアの通過を完全に禁止するか、バリアを通過する際のコストを係数に基づいて計算するかを指定します。次の 2 つのオプションがあります。

  • [通行不可](0)- バリアのどの部分も通過できません。これがデフォルト値です。
  • [コスト係数指定](1)- ScaledCostFactor プロパティの値を乗算して、対象エッジのインピーダンスを増減します。エッジの一部だけがバリアの対象になっている場合は、インピーダンスが比率に応じて乗算されます。

[規制] の場合は 0 の値、[コスト係数指定] の場合は 1 の値を使用します。

ScaledCostFactor:

ScaledCostFactor は、到達圏がバリアを通過するときにインピーダンスに掛ける値を指定します。

Feature Set
Time_Attribute
(オプション)

[ブレークの単位] が時間単位の場合に使用されるネットワーク コスト属性を定義します。

[ブレークの単位] の値が、ここで定義したコスト属性の単位と異なる場合、ツールは必要な時間単位変換を実行します。つまり、ブレークの時間単位とネットワーク コスト属性の時間単位が同じである必要はありません。

String
Time_Attribute_Units
(オプション)

[時間属性] パラメータで指定したネットワーク コスト属性の単位。これは、単に情報パラメータであるため、ネットワーク データセットを直接編集しなければ、変更することはできません。ブレーク値の単位とコスト属性の間の単位変換が自動的に実行されるため、これを変更する必要もありません。

String
Distance_Attribute
(オプション)

[ブレークの単位] が距離単位の場合に使用されるネットワーク コスト属性を定義します。

[ブレークの単位] の値が、ここで定義したコスト属性の単位と異なる場合、ツールは必要な距離単位変換を実行します。つまり、ブレークの距離単位とネットワーク コスト属性の距離単位が同じである必要はありません。

String
Distance_Attribute_Units
(オプション)

[距離属性] パラメータで指定したネットワーク コスト属性の単位。これは、単に情報パラメータであるため、ネットワーク データセットを直接編集しなければ、変更することはできません。ブレーク値とコスト属性の間の単位変換が自動的に実行されるため、これを変更する必要もありません。

String
Use_Hierarchy_in_Analysis
(オプション)
  • USE_HIERARCHY Use the hierarchy attribute for the analysis. Using a hierarchy results in the solver preferring higher-order edges to lower-order edges. Hierarchical solves are faster, and they can be used to simulate the preference of a driver who chooses to travel on freeways over local roads when possible—even if that means a longer trip. This option is valid only if the input network dataset has a hierarchy attribute.
  • NO_HIERARCHYDo not use the hierarchy attribute for the analysis. Not using a hierarchy yields a service area measured along all edges of the network dataset regardless of hierarchy level.

The parameter is not used if a hierarchy attribute is not defined on the network dataset used to perform the analysis. In such cases, use "#" as the parameter value.

Boolean
Restrictions
(オプション)

解析時にどのネットワーク規制属性を考慮するかを指定します。

String
Attribute_Parameter_Values
(オプション)

パラメータを持つネットワーク属性のパラメータ値を指定します。レコード セットには、パラメータを一意に特定するために一緒に使用される 2 つの列と、パラメータ値を指定する別の列が含まれています。

属性パラメータ値 レコード セットには、属性が関連付けられています。属性テーブルの各フィールドとその説明を以下に示します。

ObjectID:

システムで管理される ID フィールド。

AttributeName:

テーブル行で設定される属性パラメータを持つネットワーク属性の名前。

ParameterName:

テーブル行で設定される値を持つ属性パラメータの名前。(オブジェクト タイプ パラメータは、このツールを使用して更新できません。)

ParameterValue:

属性パラメータに設定する値。値が指定されない場合、属性パラメータは NULL に設定されます。

Record Set
Maximum_Snap_Tolerance
(オプション)

最大スナップ許容値とは、Network Analyst がネットワーク上でポイントの配置や再配置を行う場合に検索できる最大距離のことです。検索によって適切なエッジまたはジャンクションを見つけ、そのうちで最も近い場所にポイントをスナップします。最大スナップ許容値内で適切な場所が見つからなかった場合、そのオブジェクトには未配置のマークが付けられます。

Linear unit
Exclude_Restricted_Portions_of_the_Network
(オプション)
  • EXCLUDE施設は、ネットワークの通過可能な部分にのみ配置されます。これによって、規制やバリアのために解析処理中に到達できないエレメントに施設が配置されることを防ぎます。このオプションをオフのままにすると、意図した場所から遠く離れて施設が配置されることがありますので、注意してください。
  • INCLUDE施設は、ネットワークの任意のエレメントに配置できます。ただし、規制されたエレメントに配置された施設を解析処理中に使用することはできません。
Boolean
Feature_Locator_WHERE_Clause
(オプション)

ソース フィーチャのサブセットの選択に使用される SQL 式。これは、施設を配置可能なネットワーク エレメントを制限します。このパラメータの構文は、次の 2 つの部分から成ります。最初の部分はソース フィーチャのクラス名(スペースが続く)、次の部分は SQL 式です。2 つ以上のソース フィーチャクラスを含む SQL 式を記述するには、それらをセミコロンで区切ります。

たとえば、施設が有料道路上に配置されないようにするには、SQL 式を "Streets" "FUNC_CLASS not in('1', '2')" のように記述して、それらのソース フィーチャを除外します。

なお、バリアは、読み込み時にフィーチャ ロケータの WHERE 句を無視します。

String
Polygons_for_Multiple_Facilities
(オプション)

解析で複数の施設が存在する場合の、到達圏ポリゴンの作成方法を選択します。

  • NO_MERGE(マージしない)施設ごとに異なるポリゴンが作成されます。各ポリゴンは重なり合うことができます。
  • NO_OVERLAP(オーバーラップしない) ある施設のポリゴンが他の施設のポリゴンと重ならないように、個々のポリゴンを作成します。さらに、ネットワーク内の任意の部分は、最も近い施設の到達圏にのみ含まれます。
  • MERGE(マージする) 同じブレーク値を持つ複数の施設のポリゴンを作成して結合します。
String
Polygon_Overlap_Type
(オプション)

同心状の到達圏ポリゴンをディスク状に作成するか、またはリング状に作成するかを指定します。このオプションは、複数のブレーク値が施設に対して指定されている場合にのみ適用できます。

  • RINGS(リング)小さい方のブレーク値の領域を除外します。連続するブレーク値の間の領域に、ポリゴンが作成されます。あるブレーク値から別のブレーク値までの領域を検索する場合に、このオプションを使用します。たとえば、5 分と 10 分の到達圏を作成した場合、5 分の到達圏ポリゴンが 10 分の到達圏ポリゴンから除外されます。
  • DISKS(ディスク) 施設からブレーク値までの領域に、ポリゴンが作成されます。たとえば、5 分間と 10 分間の到達圏を生成する場合、5 分間の到達圏ポリゴンは 10 分間の到達圏ポリゴンに含まれます。
String
Detailed_Polygons
(オプション)

詳細ポリゴンはたは単純化ポリゴンを作成するオプションを指定します。

  • SIMPLE_POLYS(単純なポリゴン)適度な精度を持つ単純化ポリゴンが、高速に作成されます。これがデフォルトです。
  • DETAILED_POLYS(詳細なポリゴン)到達圏ラインを正確にモデリングする詳細なポリゴンが作成されます。未到達の領域が島状に残される場合があります。単純化ポリゴンを生成する場合に比べ、このオプションでは処理時間が非常に長くなります。階層を使用する場合、このオプションはサポートされません。
Boolean
Polygon_Trim_Distance
(オプション)

到達圏ポリゴンが切詰められる距離の範囲を指定します。データが非常にまばらで、サービス エリア内にフィーチャが存在しない広範領域ができるのを防ぎたい場合に役立ちます。

このパラメータの値が指定されないか、値が 0 の場合、到達圏ポリゴンは切詰められません。階層を使用する場合、このパラメータ値は無視されます。

Linear unit
Polygon_Simplification_Tolerance
(オプション)

ポリゴン ジオメトリをどのくらい単純化するかを指定します。

単純化によって、ポリゴンの基本的な形状を定義する重要ポイントは維持され、その他のポイントは削除されます。単純化の距離を指定します。これは、単純化されるポリゴンが元のポリゴンからどれだけ離れてもよいかを許容する最大オフセットです。ポリゴンを単純化すると、頂点の数が減ることにより、描画時間が低減する傾向があります。

Linear unit
Maximum_Facilities
(オプション)

到達圏解析に追加できる設備の数を制限します。

このパラメータは、解析時に発生する処理量を管理することに役立ちます。たとえば、作成中の無料版のサービスに対してはこのパラメータに小さい値を割り当て、有料サブスクリプション版のサービスには大きい値を割り当てるというようにできます。

NULL 値は、制限がないことを示します。

Long
Maximum_Number_of_Breaks
(オプション)

到達圏解析に追加できるブレーク値の数を制限します。

このパラメータは、解析時に発生する処理量を管理することに役立ちます。たとえば、作成中の無料版のサービスに対してはこのパラメータに小さい値を割り当て、有料サブスクリプション版のサービスには大きい値を割り当てるというようにできます。

NULL 値は、制限がないことを示します。

Long
Maximum_Features_Affected_by_Point_Barriers
(オプション)

ポイント バリアが影響を与えることのできるフィーチャの数を制限します。

このパラメータは、解析時に発生する処理量を管理することに役立ちます。たとえば、作成中の無料版のサービスに対してはこのパラメータに小さい値を割り当て、有料サブスクリプション版のサービスには大きい値を割り当てるというようにできます。

NULL 値は、制限がないことを示します。

Long
Maximum_Features_Affected_by_Line_Barriers
(オプション)

ライン バリアが影響を与えることのできるフィーチャの数を制限します。

このパラメータは、解析時に発生する処理量を管理することに役立ちます。たとえば、作成中の無料版のサービスに対してはこのパラメータに小さい値を割り当て、有料サブスクリプション版のサービスには大きい値を割り当てるというようにできます。

NULL 値は、制限がないことを示します。

Long
Maximum_Features_Affected_by_Polygon_Barriers
(オプション)

ポリゴン バリアが影響を与えることのできるフィーチャの数を制限します。

このパラメータは、解析時に発生する処理量を管理することに役立ちます。たとえば、作成中の無料版のサービスに対してはこのパラメータに小さい値を割り当て、有料サブスクリプション版のサービスには大きい値を割り当てるというようにできます。

NULL 値は、制限がないことを示します。

Long
Maximum_Break_Time_Value
(オプション)

時間を基準にした到達圏の解析時に使用される [ブレーク値] パラメータの値の大きさを制限します。

このパラメータは、解析時に発生する処理量を管理することに役立ちます。たとえば、作成中の無料版のサービスに対してはこのパラメータに小さい値を割り当て、有料サブスクリプション版のサービスには大きい値を割り当てるというようにできます。

NULL 値は、制限がないことを示します。

Double
Maximum_Break_Distance_Value
(オプション)

距離を基準にした到達圏の解析時に使用される [ブレーク値] パラメータの値の大きさを制限します。

このパラメータは、解析時に発生する処理量を管理することに役立ちます。たとえば、作成中の無料版のサービスに対してはこのパラメータに小さい値を割り当て、有料サブスクリプション版のサービスには大きい値を割り当てるというようにできます。

NULL 値は、制限がないことを示します。

Double
Force_Hierarchy_beyond_Break_Time_Value
(オプション)

時間を基準にした到達圏の解析時に、この値を越えた場合に階層が有効でなくても強制的に階層が適用される、ブレーク値を指定します。

ネットワーク階層を使用しながら高いブレーク値の到達圏を解析すると、階層を使用しないで同じ到達圏を解析する場合に比べて、処理の負担が減る傾向にあります。このパラメータは、解析時に発生する処理量を管理することに役立ちます。

NULL 値を指定すると、階層は強制されません。[解析に階層を使用] パラメータの値を指定すると、常に階層が使用されます。入力ネットワーク データセットが階層をサポートしていない場合にこのパラメータの値を指定すると、エラーが発生します。その場合は、NULL 値を使用してください。

Double
Force_Hierarchy_beyond_Break_Distance_Value
(オプション)

距離を基準にした到達圏の解析時に、この値を越えた場合に階層が有効でなくても強制的に階層が適用される、ブレーク値を指定します。

ネットワーク階層を使用しながら高いブレーク値の到達圏を解析すると、階層を使用しないで同じ到達圏を解析する場合に比べて、処理の負担が減る傾向にあります。このパラメータは、解析時に発生する処理量を管理することに役立ちます。

NULL 値を指定すると、階層は強制されません。[解析に階層を使用] パラメータの値を指定すると、常に階層が使用されます。入力ネットワーク データセットが階層をサポートしていない場合にこのパラメータの値を指定すると、エラーが発生します。その場合は、NULL 値を使用してください。

Double

コードのサンプル

GenerateServiceAreas(到達圏の生成)の例 1(Python ウィンドウ)

Python ウィンドウから、必要なパラメータを使用してこのツールを実行します。

import arcpy
facilities = arcpy.FeatureSet()
facilities.load("FireStations")
arcpy.na.GenerateServiceAreas(facilities, "1 2 3", "Minutes", "Streets_ND",
                              "in_memory\\FireStationServiceAreas")
GenerateServiceAreas(到達圏の生成)の例 2(ワークフロー)

以下のスタンドアロン Python スクリプトは、GenerateServiceAreas(到達圏の生成)を使用して店舗の到達時間を決定する方法を示しています。一日のうちのさまざまな時刻で、店舗の周囲に 5 分の到達圏を作成する方法を示します。このような解析は、5 分以内に店舗(ピザ店など)から到達可能な領域が、現在の交通条件に応じてどのように変化するか調べる場合に役立ちます。

# Name: GenerateServiceAreas_Workflow.py
# Description: Generate a 5 minute service area around a store location at
#              different times in a day. Such analysis can be useful, for example
#              for a pizza store, to see how the area that can be reached within
#              5 minutes from the store changes based on the current traffic
#              conditions.
# Requirements: Network Analyst Extension 

#Import system modules
import arcpy
from arcpy import env
import datetime

try:
    #Check out the Network Analyst extension license
    arcpy.CheckOutExtension("Network")

    #Set environment settings
    env.workspace = "C:/data/SanFrancisco.gdb"
    env.overwriteOutput = True
    
    #Set local variables
    inNetworkDataset = "Transportation/Streets_ND"
    impedanceAttribute = "TravelTime"
    breakValues = "5"
    breakUnits = "Minutes"
    inFacilities = "Analysis/ExistingStore"
    outGeodatabase = "C:/data/output/ServiceAreaOutput.gdb"
    serviceArea = "in_memory\\ServiceAreas"
    dateFieldName = "StartTime"
    nameField = "Name"
    #use today at 8 AM as the start time and then increment it by one hour
    startTime = datetime.datetime(1899,12,30,8,0,0) 
    
    #Create a new feature set with same schema as Facilities parameter in
    #Generate Service Areas tool. Load the feature from the ExistingStore
    #feature class in the feature set
    facilities = arcpy.GetParameterValue("GenerateServiceAreas_na",0)
    facilities.load(inFacilities)
    
    #Create an empty feature class with same spatial reference as the 
    #network dataset and a Date field called StartTime and a text field called Name
    outServiceAreas = arcpy.management.CreateFeatureclass(outGeodatabase, "ServiceAreas",
                                                          "POLYGON","","","",
                                                          inNetworkDataset).getOutput(0)
    arcpy.management.AddField(outServiceAreas, dateFieldName, "DATE")
    arcpy.management.AddField(outServiceAreas, nameField, "TEXT")
    
    #Open an insert cursor on the feature class to add new polygons
    cursor = arcpy.da.InsertCursor(outServiceAreas, ("SHAPE@", nameField,
                                                     dateFieldName))
    
    #Geneate a 5 minute service area around the store at every one hour interval
    #from 8 AM to 8 PM. Copy the output service area to a new feature class
    for i in range(1,14):
        timeFormat = startTime.time().strftime("%I %p")
        print "Generating {0} {1} service area at {2}".format(breakValues,breakUnits,
                                                              timeFormat)
        arcpy.na.GenerateServiceAreas(facilities,breakValues,breakUnits,
                                      inNetworkDataset, serviceArea, "TRAVEL_FROM",
                                      startTime, Time_Attribute=impedanceAttribute)
        #Get the shape from the output service area so that it can be inserted
        #in the feature class
        with arcpy.da.SearchCursor(serviceArea,("SHAPE@", nameField)) as inputRows:
            row = inputRows.next()
            cursor.insertRow((row[0],row[1],startTime))
        startTime = startTime + datetime.timedelta(seconds=3600)
    del cursor
    
    print "Script completed successfully"

except Exception as e:
    # If an error occurred, print line number and error message
    import traceback, sys
    tb = sys.exc_info()[2]
    print "An error occured on line %i" % tb.tb_lineno
    print str(e)

環境

関連トピック

ライセンス情報

ArcGIS for Desktop Basic: 次のものが必要 Network Analyst
ArcGIS for Desktop Standard: 次のものが必要 Network Analyst
ArcGIS for Desktop Advanced: 次のものが必要 Network Analyst
9/14/2013