等時線 API のベスト プラクティス

スムージングと忠実度

polygon_fidelity パラメータと enable_smoothing パラメータを使用すると、出力ポリゴンの外観と精度をカスタマイズできます。これらのオプションは独立していますが、連携して最終的な形状を決定します。

  • polygon_fidelity: 解像度。到達可能エリアの計算に使用される基盤となるグリッド セル(S2 セル)のサイズを制御します。
    • LOW: 大きなグリッドセルを使用します。ギャップのない広いエリアをカバーするのに最適で、一般的な形状になります。
    • MEDIUM: バランスの取れた精度。
    • HIGH: 小さいグリッドセルを使用します。道路網に適合しますが、道路網がまばらな場所では空白の領域や「穴」が生じることがあります。
    • デフォルト: 指定しない場合、サービスはリクエストされた移動時間に基づいて忠実度を動的に選択します。
  • enable_smoothing: 美的感覚。忠実度で定義されたグリッド セルの鋭いエッジを丸めるかどうかを制御します。
    • false(未加工): 正確な幾何学的計算を返します。エッジがギザギザになったり、階段状になったりして、グリッド セルが反映されます。厳密なポイントインポリゴン テストなど、分析の精度を重視する場合に最適です。
    • true(スムージング): 角を丸める後処理アルゴリズムを適用します。地図の視覚的な表示に最適です。

相互作用: 忠実度によって、平滑化アルゴリズムが作用するベースラインの詳細が設定されます。

  • 高忠実度 + スムージング: 道路の終端に沿った、詳細で自然な形状を生成します。
  • 低忠実度 + スムージング: 幅広い一般的な「ブロブ」形状を生成します。

ペイロード サイズとレンダリング

大きな等時線には数千の座標が含まれることがあり、ペイロードは 300 ~ 500 キロバイトになることがあります。

  • 帯域幅: 最大期間のリクエストでは、JSON レスポンスのサイズが重要になります。
  • レンダリング: 非常に詳細なポリゴンをレンダリングすると、パフォーマンスに影響します。enable_smoothing パラメータまたはクライアントサイドの簡略化ライブラリを使用して、表示する頂点の数を減らすことを検討してください。

エラー処理

5xx サーバーエラーに対して指数バックオフを使用して再試行ロジックを実装します。ただし、パラメータを変更せずに 4xx クライアント エラーを再試行しないでください。

  • INVALID_ARGUMENT (400): 期間が正の値であり、選択したモードの制限内であることを確認します。制限は、DRIVE モードの場合は最大 3,600 秒、他のモードの場合は 7,200 秒です。
  • NOT_FOUND (404): 起点が道路に自動整列できませんでした。座標を既知の道路に近づけるか、地域がサポートされていることを確認してください。