概要
公共交通システムの車両が走行する経路の予測を生成します。このツールの出力を使って GTFS 公共交通機関データセット用の新しい shapes.txt ファイルを生成することができます。
オプションの GTFS shapes.txt ファイルには、交通システムの輸送車両が通る地理的な経路のリプレゼンテーションが含まれます。GTFS ベースのルート検索アプリでマップ上に正しい交通ルートを表示するには、質の高い shapes.txt ファイルを用意することが重要です。多くの交通機関が、自社の車両に取り付けた GPS トラッカーを使って独自の shapes.txt ファイルを生成しています。一方で、GPS トラッカーを持っていないその他の交通機関はこうしたファイルの作成に問題を抱えています。
このツールと [フィーチャ → GTFS Shapes (Features To GTFS Shapes)] ツールを組み合わせることで、既存の GTFS データセットのストップ、ルート、時刻表情報に基づいて shapes.txt ファイルを作成することができます。このツールは、交通システムの車両が使用する地理的な経路を高い精度で予測し、出力をフィーチャクラスに書き込みます。[フィーチャ → GTFS Shapes (Features To GTFS Shapes)] ツールを実行してシェープを新しい shapes.txt ファイルにエクスポートする前に、これらのライン フィーチャを確認して編集できます。
このツールは、以下の 3 つの主要ステップで構成されるワークフローで使用することを前提にしています。
- このツールを実行して、交通システムの車両が使う地理的な経路を高い精度で予測する。
- マップを使って、予測された各シェープを調べ、標準的な編集ツールを使って必要な修正を加える。
- [フィーチャ → GTFS Shapes (Features To GTFS Shapes)] ツールを実行して GTFS データセット用に shapes.txt を作成する。
メモ:
[GTFS Shapes → フィーチャ (GTFS Shapes To Features)] ツールおよび [GTFS からシェープ フィーチャを生成 (Generate Shapes Features From GTFS)] ツールは、異なる目的で使用されます。GTFS データセットにすでに shapes.txt ファイルが存在し、これらの形状をフィーチャクラスに変換してマップに表示する場合は、[GTFS Shapes → フィーチャ (GTFS Shapes To Features)] を使用します。GTFS データセットに shapes.txt ファイルが存在せず、GTFS データセットに含まれるその他の情報に基づいて形状を推定し、shapes.txt ファイルを作成する場合は、[GTFS からシェープ フィーチャを生成 (Generate Shapes Features From GTFS)] を使用します。
使用法
このツールでは、お使いのデータに含まれる交通機関のモードごとに以下のオプションのいずれかを使って公共交通ネットワークのルート シェープを予測します。
- 直線 - 隣接した交通機関ストップを接続する直線の交通ルート シェープ。地下鉄、フェリーや道路を走行しないその他の交通機関モードに最適です。
- 道路ネットワークを使って生成した道路上のルート - 隣接するストップと、ネットワーク上の道路を走行するモデル車両の間のルートを解決することで交通ライン シェープを生成します。
道路ネットワークに基づいてルート シェープを生成する方法は次の 2 つです。
- ローカル ネットワーク データセットを使う - このオプションでは、ArcGIS Network Analyst エクステンション とネットワーク データセットを用意する必要があります。
- ポータル サービスを使う - このオプションでは、ルート検索権限がある ArcGIS Online アカウントと十分なクレジット、または ArcGIS Enterprise routing services が設定されたポータルが必要です。ツールを実行する前にポータルにサイン インしている必要があります。
道路ネットワークのルート シェープを計算する際、一部のシェープのストップを接続するルートを Network Analyst で正しく計算できない場合があります。このような場合、ネットワーク シェープを作成できないため、代わりに直線シェープが作成されて、どの shape_id の値が影響を受けたかを示す警告メッセージが返されます。
ツールの出力を調査して修正する際は、フィルター設定を使ってマップ上に単一シェープとそれに関連するストップだけを表示することができます。両方の出力で shape_id フィールドを使って、表示するシェープを選択します。出力ストップの sequence フィールドには、交通機関ストップが通過する順番に表示されます。
メモ:
このツールで作成した出力シェープ フィーチャは、システムの交通車両が通過する実際の経路の予測です。各出力シェープ フィーチャを個別に手動で調査して経路が正しいことを確認します。
[フィーチャ → GTFS Shapes (Features To GTFS Shapes)] ツールを実行する前に、このツールのシェープ フィーチャ出力を調査し、シェープ ジオメトリに必要な修正を加えます。これによって、最終的な出力 shapes.txt ファイルの精度が上がり、stop_times.txt ファイルの shape_dist_traveled フィールドの計算でエラーを回避することができます。
シェープに基本的な修正を加えて通過する経路を正確に表現し、シェープを編集して直接重なるライン セグメントを回避します。バスが行きも帰りも同じ道路を走行し、センターラインでそのバスが重なる場合、シェープのそれぞれの方向をセンターラインの両側に少しだけずらすことでこの問題を解消できます。
[形状変更] 編集ツールを使ってシェープ ジオメトリを修正します。マップのシェープを手動でデジタイズすることでシェープ ジオメトリを完全に置換する場合、[ジオメトリの置換] 編集ツールを使います。
ストップの場所が正しくない場合は、[GTFS Stops → フィーチャ (GTFS Stops To Features)] ツールと [フィーチャ → GTFS Stops (Features To GTFS Stops)] ツールを使って修正し、このツールを再度実行します。
ツールの出力を確認して編集する際は、フィーチャ ジオメトリと属性を編集できますが、いずれの行も削除することはできません。削除された行は、[フィーチャ → GTFS Shapes (Features To GTFS Shapes)] ツール実行時のエラーの原因になることがあります。
構文
arcpy.conversion.GenerateShapesFeaturesFromGTFS(in_gtfs_folder, out_shape_lines, out_shape_stops, out_gtfs_trips, {network_modes}, {network_data_source}, {travel_mode}, {drive_side}, {bearing_tolerance}, {max_bearing_angle})
パラメーター | 説明 | データ タイプ |
in_gtfs_folder | shapes.txt ファイルを作成する有効な GTFS データセットを含むフォルダー。このフォルダーには GTFS の stops.txt、trips.txt、routes.txt、および stop_times.txt ファイルを含める必要があります。 | Folder |
out_shape_lines | このツールで計算した、予測ルート シェープを表すライン フィーチャクラス。出力の各ラインはこの GTFS データセットで必要な一意のシェープを表しています。ライン ジオメトリを編集して、[フィーチャ → GTFS Shapes (Features To GTFS Shapes)] ツールへの入力としてこのフィーチャクラスを使うことができます。 | Feature Class |
out_shape_stops | ツールで作成する各シェープ ラインとストップを関連付ける ID を持つ、GTFS 交通機関ストップのポイント フィーチャクラスです。複数のシェープが同じ GTFS ストップを訪問する場合、このフィーチャクラスには各シェープでそのストップと関連付けられる複数のコピーが含まれます。このフィーチャクラスは、一度に 1 つのシェープ ラインを編集するときのフィルター設定に便利です。このフィーチャクラスを [フィーチャ → GTFS Shapes (Features To GTFS Shapes)] ツールの入力として使います。 メモ:この出力フィーチャクラスは [GTFS Stops → フィーチャ (GTFS Stops To Features)] ツールの出力と同等ではありません。[GTFS Stops → フィーチャ (GTFS Stops To Features)] ツールでは元のデータセットのとおりに GTFS ストップのフィーチャクラスが生成されるのに対して、[フィーチャ → GTFS Shapes (Features To GTFS Shapes)] ツールでは各ステップのコピーが複数生成されてそれらが異なるシェープと関連付けられる可能性があります。この出力フィーチャクラスは、[GTFS からシェープ フィーチャを生成 (Generate Shapes Features From GTFS)] ツールの他の出力と組み合わせて shapes.txt ファイルを作成するケースのみを想定しています。 | Feature Class |
out_gtfs_trips | 出力 GTFS trips.txt ファイル。このファイルは入力 GTFS フォルダーにある trips.txt ファイルと同等になりますが、このファイルには出力交通シェープ ライン フィーチャクラスの shape_id フィールドに対応する値が追加および入力された shape_id フィールドが含まれます。 | File |
network_modes [network_modes,...] (オプション) | ライン シェープが直線ではなく道路ネットワークに沿って生成される交通機関モードを指定します。選択されていないすべてのモードのシェープは直線を使って生成されます。 通常は、バスなど道路を走行する交通機関モードを選択します。これらのモードは道路ネットワークで最も正確に表現されるためです。道路ネットワークでモデル化されていないモードは選択しないでください。たとえば、ネットワークでフェリーの航路を明示的にモデル化していない限り、フェリーが通過する経路をこのネットワークを使って表現しないでください。 モードは以下の表のコードを使って指定します。これらは GTFS ドキュメントの有効な GTFS routes.txt route_type の値に対応します。 デフォルトではモード 3、5、11 を使います。
| String |
network_data_source (オプション) | 道路ネットワークのルート シェープを計算する際に使用されるネットワーク データセットまたはサービス。カタログ パスをネットワーク データセット、ネットワーク データセット レイヤー オブジェクト、ネットワーク データセット レイヤーの文字列名、またはネットワーク分析サービスのポータル URL に使用できます。ネットワークには、少なくとも 1 つの移動モードが含まれている必要があります。 ポータル URL を使用するには、ルート検索権限があるアカウントでポータルにサイン インする必要があります。 ArcGIS Online をネットワーク データ ソースとして使用する場合、ツールを実行するとクレジットを消費します。 いずれかのネットワーク モードを選択する場合はこのパラメーターが必要です。 メモ:選択するネットワーク データセットは、道路を走行するバスなどの交通車両のモデリングに適切なものである必要があります。公共交通エバリュエーターとともに公共交通データを使うよう構成されたネットワーク データセットは使用しないでください。このタイプのネットワークでは公共交通機関を利用する乗客をモデル化しますが、道路を走行する公共交通機関の車両はモデル化しません。 | Network Data Source |
travel_mode (オプション) | 道路ネットワークのルート シェープを計算する際に使用するネットワーク データ ソースの移動モード。移動モードの文字列名または arcpy.nax.TravelMode オブジェクトとして移動モードを指定できます。 移動モードは、道路ネットワークを走行する交通システムの車両をモデル化するのに最も適しています。 いずれかのネットワーク モードを選択する場合はこのパラメーターが必要です。 メモ:移動モードでは道路を走行する公共交通車両ではなく公共交通機関を利用する乗客をモデル化するため、公共交通エバリュエーターを使用するインピーダンス属性と一緒に移動モードを使用しないでください。 | Network Travel Mode |
drive_side (オプション) | 交通システムで車両が走行する車線を指定します。これを使用することで、道路の正しい車線のストップに車両が停まるようにできます。
| String |
bearing_tolerance (オプション) | 道路ネットワークのルート シェープを計算する際は、方位と方位許容値を使用して道路ネットワークの交通ストップをより正確に配置します。交通機関の車両の方位は、交通ルートの現在のストップと前後のストップの間の角度に基づいて各ストップで予測されます。 このパラメーターで指定した値は、ストップにおける交通機関車両の予測進行方法と、ストップを設置できるネットワーク エッジの角度の間で許容される最大角度を示しています。この値以上に角度に差がある場合、ストップを設置するネットワーク エッジとして正しくないと Network Analyst では判断し、近くにあるより適切な他のネットワーク エッジの検索を続行します。 0 から 180 の間で角度の値を指定します。デフォルトは 30 です。 | Double |
max_bearing_angle (オプション) | 交通機関の車両の方位は、交通ルートの現在のストップと前後のストップの間の角度に基づいて各ストップで予測されます。交通ルートの大半が直線の場合、この角度が方位としては最適です。ただし、ルートで角を曲がったり、U ターンしたり、カーブの多い道を走行する、または駐車場や脇道に入る場合、平均角度は実際の方位の予測としては適切ではありません。また、この予測を使うことで、ネットワーク上で本来の位置から遠く離れた位置にストップが設置され、ツール出力の品質が悪化する原因になります。 前のストップから現在のストップ、および現在のストップから次のストップまでの角度差がこのパラメーターで指定した値よりも大きい場合、ツールでは方位予測を無視します。この場合、ストップは通常のネットワーク配置動作に戻り、最も近い非制限ネットワーク エッジに移動します。 0 から 180 の間で角度の値を指定します。デフォルトは 65 です。 | Double |
コードのサンプル
次のスクリプトは、ローカル ネットワーク データセットを使用して Python ウィンドウで GenerateShapesFeaturesFromGTFS 関数を使用する方法を示しています。
arcpy.conversion.GenerateShapesFeaturesFromGTFS(
r"C:\Data\GTFS",
r"C:\Data\GTFSShapes\GTFSShapes.gdb\Shapes",
r"C:\Data\GTFSShapes\GTFSShapes.gdb\Stops",
r"C:\Data\GTFSShapes\trips_new.txt",
["3", "5", "11"],
r"C:\Data\NetworkDatasets\Network.gdb\Routing\Routing_ND",
"Bus Driving Time", "Right", 30, 65)
次のスクリプトは、ArcGIS Online サービスで Python ウィンドウで GenerateShapesFeaturesFromGTFS 関数を使用して一部の交通機関モードのシェープを生成する方法を示しています。
arcpy.conversion.GenerateShapesFeaturesFromGTFS(
r"C:\Data\GTFS",
r"C:\Data\GTFSShapes\GTFSShapes.gdb\Shapes",
r"C:\Data\GTFSShapes\GTFSShapes.gdb\Stops",
r"C:\Data\GTFSShapes\trips_new.txt",
["0", "3", "5", "11", "OTHER"],
"https://www.arcgis.com/",
"Driving Time", "Right", 30, 65)
次のスクリプトは、network_modes パラメーターの空のリストを使用してすべての交通機関モードの直線シェープを生成する方法を示しています。
arcpy.conversion.GenerateShapesFeaturesFromGTFS(
r"C:\Data\GTFS",
r"C:\Data\GTFSShapes\GTFSShapes.gdb\Shapes",
r"C:\Data\GTFSShapes\GTFSShapes.gdb\Stops",
r"C:\Data\GTFSShapes\trips_new.txt",
[])
環境
ライセンス情報
- Basic: はい
- Standard: はい
- Advanced: はい