アイソクロンを生成するには、出発地、移動手段(自動車、オートバイ、自転車、徒歩など)、時間制限を API に指定します。また、ルート設定や、生成されるポリゴンの外観を調整することもできます。
タイム ホライズン
サービスに指定する主な制約は travel_duration です。これにより、計算のタイム ホライズンが定義されます。
- 最大所要時間: API は、
DRIVEモードとTWO_WHEELERモードでは最大 3,600 秒(1 時間)、WALKモードとBICYCLEモードでは最大 7,200 秒(2 時間)の移動時間をサポートしています。 - パフォーマンス: 計算時間は、リクエストされた所要時間と選択した移動手段に応じて変化します。自動車での 1 時間のアイソクロンは、徒歩での 1 時間のアイソクロンよりも地理的範囲と道路網が大幅に広くなるため、自動車でのリクエストのレイテンシが高くなります。
- 形式: API は
google.protobuf.Durationを使用するため、 所要時間は整数ではなく、末尾が「s」の文字列(例:"3600s")としてフォーマットする必要があります。
出発地と道路へのスナップ
アイソクロンの出発地は、次の 2 つの方法で指定できます。
- 座標: 緯度と経度のペア(
location)。 - プレイス ID: Google マップ上の特定の場所の一意の識別子(
place)。プレイス ID を指定すると、その場所の中心が出発地として使用されます。API では、places/ChIJ...などのリソース名形式が想定されています。プレイス ID について詳しくは、 プレイス ID をご覧ください。
入力方法に関係なく、出発地が道路上ではなく、公園や建物の中などの場合、API は正確な物理的な地点からの移動時間を計算しません。この状況に対処するため、サービスは道路へのスナップを使用します。道路へのスナップには次の特徴があります。
- スマート スナップ: サービスは、出発地を最も近い通行可能な道路セグメントにスナップしようとします。
- モード認識: スナップ ロジックは
travel_modeを考慮します。DRIVEまたはTWO_WHEELERをリクエストすると、API は歩行者専用の経路を無視し、最も近い走行可能な道路を探します。WALKをリクエストすると、API は歩行可能な経路と歩道を優先します。 - 失敗ケース: 出発地の最大スナップ距離(移動手段によって異なります。
DRIVEとTWO_WHEELERは 200 メートル、BICYCLEは 180 メートル、WALKは 150 メートル)内に適切な道路セグメントが見つからない場合、API は404 NOT_FOUNDエラーを返します。これは通常、出発地が道路網から離れすぎているか、地図データがリクエストされた移動手段をサポートしていない地域にあることを示しています。
移動方向(インバウンドとアウトバウンド)
travelDirection パラメータを使用すると、上り線と下り線の両方の到達可能性を計算できます。
FROM(下り線): 指定された時間制限内に、出発地から到達できる範囲を計算します。 配送ゾーンやサービス提供範囲などのユースケースに適しています。TO(インバウンド): 指定された時間制限内に、出発地まで移動できる範囲を計算します。 従業員が通勤できる範囲など、集客ゾーンを特定するのに適しています。
交通状況の認識
routing_preference パラメータを使用して、交通データが生成されるポリゴンに与える影響を制御します。
TRAFFIC_UNAWARE(デフォルト): 制限速度と道路階層を使用してアイソクロン ポリゴンを生成します。これにより、時間帯によって変動しない確定的な形状が生成されます。このパラメータは、一般的な分析やベースライン シナリオの計画に最適です。TRAFFIC_AWARE: リクエスト時のリアルタイムまたは予測の交通状況を使用してアイソクロンを計算します。これにより、渋滞時には到達可能な範囲が縮小し、オフピーク時には拡大します。注: 交通状況を考慮したルーティングは、travel_modeがDRIVEまたはTWO_WHEELERに設定されている場合にのみサポートされます。
平滑化と忠実度
polygon_fidelity パラメータと enable_smoothing パラメータを使用して、出力ポリゴンの外観と精度をカスタマイズできます。これらのオプションは独立していますが、連携して最終的な形状を決定します。
polygon_fidelity: 到達可能な範囲の計算に使用される基盤となるグリッド セルのサイズを制御します。LOW: 大きなグリッドセルを使用します。ギャップのない広い範囲をカバーするのに最適で、一般的な形状になります。MEDIUM: バランスの取れた精度。HIGH: 小さなグリッドセルを使用します。道路網にぴったりとフィットしますが、道路網がまばらな場合は空の領域や穴が生じることがあります。POLYGON_FIDELITY_UNSPECIFIED: 指定しない場合、サービスはリクエストされた移動時間に基づいて忠実度を動的に選択します。
ポリゴンの忠実度(高、中、低)
enable_smoothing: 忠実度によって定義されたグリッドセルの鋭いエッジを丸めるかどうかを制御します。false(未加工): デフォルト。正確な幾何学的計算を返します。 エッジがギザギザになったり、階段状になったりします。厳密なポイントインポリゴン テストなど、分析の精度を高めるのに最適です。平滑化されたものよりもレイテンシが短くなります。true(平滑化): 後処理アルゴリズムを適用して角を丸めます。地図上に視覚的に表示するのに最適です。
平滑化ありとなしのアイソクロン